@hotmeshio/long-tail 0.1.4 → 0.1.5
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/README.md +1 -1
- package/build/examples/seed.js +1 -1
- package/build/examples/workflows/basic-echo/activities.d.ts +2 -2
- package/build/examples/workflows/basic-echo/activities.js +7 -7
- package/build/examples/workflows/basic-echo/index.js +1 -1
- package/build/examples/workflows/kitchen-sink/index.js +2 -2
- package/build/index.d.ts +11 -10
- package/build/index.js +13 -12
- package/build/lib/db/index.d.ts +18 -0
- package/build/{services → lib}/db/index.js +9 -0
- package/build/{services → lib}/db/migrate.js +3 -3
- package/build/{services → lib}/telemetry/honeycomb.d.ts +2 -2
- package/build/{services → lib}/telemetry/honeycomb.js +2 -2
- package/build/modules/defaults.d.ts +2 -0
- package/build/modules/defaults.js +3 -1
- package/build/routes/controlplane.js +1 -1
- package/build/routes/dba.js +4 -0
- package/build/routes/docs.d.ts +2 -0
- package/build/routes/docs.js +87 -0
- package/build/routes/escalations/bulk.js +120 -202
- package/build/routes/escalations/resolve.js +1 -1
- package/build/routes/escalations/single.js +1 -1
- package/build/routes/files.js +1 -1
- package/build/routes/index.js +2 -0
- package/build/routes/insight.js +2 -1
- package/build/routes/mcp.js +3 -2
- package/build/routes/oauth.js +1 -1
- package/build/routes/settings.js +4 -4
- package/build/routes/workflows/discovery.js +3 -3
- package/build/routes/workflows/invocation.js +1 -1
- package/build/routes/yaml-workflows/crud.js +1 -1
- package/build/routes/yaml-workflows/deployment.js +25 -0
- package/build/services/auth/bot-api-key.js +1 -1
- package/build/services/auth/index.d.ts +4 -0
- package/build/services/auth/index.js +17 -0
- package/build/services/auth/service-token.js +1 -1
- package/build/services/config/provider.js +1 -1
- package/build/services/config/read.js +1 -1
- package/build/services/config/write.js +1 -1
- package/build/services/controlplane/index.js +3 -4
- package/build/services/controlplane/quorum-bridge.js +2 -2
- package/build/services/cron/index.js +4 -5
- package/build/services/dba.d.ts +4 -0
- package/build/services/dba.js +3 -6
- package/build/services/escalation/bulk.js +1 -1
- package/build/services/escalation/crud.js +1 -1
- package/build/services/escalation/queries.js +1 -1
- package/build/services/export/client.js +2 -5
- package/build/services/export/index.js +14 -2
- package/build/services/hotmesh-utils.js +1 -1
- package/build/services/iam/bots.js +6 -12
- package/build/services/iam/context.d.ts +1 -1
- package/build/services/iam/context.js +5 -5
- package/build/services/iam/credentials.js +1 -1
- package/build/services/iam/ephemeral.js +8 -15
- package/build/services/iam/principal.js +3 -10
- package/build/services/iam/resolve.js +1 -1
- package/build/services/iam/sql.d.ts +10 -0
- package/build/services/iam/sql.js +42 -0
- package/build/services/insight/index.d.ts +1 -0
- package/build/services/insight/index.js +4 -6
- package/build/services/interceptor/activities/escalation.js +1 -1
- package/build/services/interceptor/activities/task.js +9 -6
- package/build/services/interceptor/activities/workflow.js +4 -5
- package/build/services/interceptor/activity-interceptor.d.ts +1 -1
- package/build/services/interceptor/activity-interceptor.js +5 -5
- package/build/services/interceptor/completion.js +1 -1
- package/build/services/interceptor/escalation.js +1 -1
- package/build/services/interceptor/index.js +4 -4
- package/build/services/interceptor/lifecycle.js +1 -1
- package/build/services/maintenance/index.js +4 -5
- package/build/services/mcp/adapter.js +1 -16
- package/build/services/mcp/client/connection.d.ts +1 -1
- package/build/services/mcp/client/connection.js +2 -2
- package/build/services/mcp/client/tools.js +1 -1
- package/build/services/mcp/db-server/index.js +1 -1
- package/build/services/mcp/db-server/tools.js +17 -4
- package/build/services/mcp/db.js +1 -1
- package/build/services/mcp/playwright-server/index.js +1 -1
- package/build/services/mcp/playwright-server/lifecycle.js +1 -1
- package/build/services/mcp/playwright-server/schemas.d.ts +2 -2
- package/build/services/mcp/playwright-server/tools.js +1 -1
- package/build/services/mcp/server.js +1 -1
- package/build/services/mcp/sql.d.ts +6 -0
- package/build/services/mcp/sql.js +34 -1
- package/build/services/mcp/workflow-compiler-server.js +1 -1
- package/build/services/mcp/workflow-server.js +1 -1
- package/build/services/mcp-runs/execution-builder.js +8 -6
- package/build/services/mcp-runs/queries.js +2 -2
- package/build/services/mcp-runs/sql.d.ts +4 -1
- package/build/services/mcp-runs/sql.js +23 -2
- package/build/services/namespace/index.js +1 -1
- package/build/services/oauth/db.js +9 -37
- package/build/services/oauth/index.js +1 -1
- package/build/services/oauth/providers/registry.js +1 -1
- package/build/services/oauth/sql.d.ts +7 -0
- package/build/services/oauth/sql.js +32 -0
- package/build/services/orchestrator/index.js +3 -3
- package/build/services/role/index.js +1 -1
- package/build/services/task/crud.js +1 -1
- package/build/services/task/process.js +1 -1
- package/build/services/task/resolve.js +1 -1
- package/build/services/user/auth.js +1 -1
- package/build/services/user/crud.js +1 -1
- package/build/services/user/rbac.js +1 -1
- package/build/services/user/roles.js +1 -1
- package/build/services/user/sql.d.ts +2 -0
- package/build/services/user/sql.js +3 -1
- package/build/services/yaml-workflow/db-utils.js +1 -1
- package/build/services/yaml-workflow/db.js +1 -1
- package/build/services/yaml-workflow/deployer-helpers.js +1 -1
- package/build/services/yaml-workflow/deployer.js +4 -4
- package/build/services/yaml-workflow/generator.js +1 -1
- package/build/services/yaml-workflow/input-analyzer-helpers.d.ts +6 -0
- package/build/services/yaml-workflow/input-analyzer-helpers.js +36 -7
- package/build/services/yaml-workflow/input-analyzer.js +16 -3
- package/build/services/yaml-workflow/pipeline/analyze.js +1 -1
- package/build/services/yaml-workflow/pipeline/build/dag.js +10 -5
- package/build/services/yaml-workflow/pipeline/compile/llm-call.js +1 -1
- package/build/services/yaml-workflow/pipeline/extract.js +5 -3
- package/build/services/yaml-workflow/pipeline/index.d.ts +5 -0
- package/build/services/yaml-workflow/pipeline/index.js +22 -0
- package/build/services/yaml-workflow/pipeline/validate.js +2 -2
- package/build/services/yaml-workflow/workers/callbacks.js +1 -1
- package/build/services/yaml-workflow/workers/events.js +2 -2
- package/build/services/yaml-workflow/workers/register.js +8 -8
- package/build/start/adapters.js +7 -7
- package/build/start/index.js +4 -4
- package/build/start/server.js +1 -1
- package/build/start/workers.d.ts +1 -2
- package/build/start/workers.js +8 -7
- package/build/system/activities/claude-code.js +1 -1
- package/build/system/activities/file-storage.js +1 -1
- package/build/system/activities/knowledge.d.ts +58 -0
- package/build/system/activities/knowledge.js +128 -0
- package/build/system/activities/sql.d.ts +9 -0
- package/build/system/activities/sql.js +41 -0
- package/build/system/activities/triage/context.js +1 -1
- package/build/system/activities/triage/discovery.d.ts +2 -14
- package/build/system/activities/triage/discovery.js +5 -161
- package/build/system/activities/triage/llm.d.ts +1 -8
- package/build/system/activities/triage/llm.js +2 -28
- package/build/system/activities/triage/tools.d.ts +1 -17
- package/build/system/activities/triage/tools.js +8 -167
- package/build/system/index.js +5 -4
- package/build/system/mcp-servers/admin/escalations.d.ts +5 -0
- package/build/system/mcp-servers/admin/escalations.js +149 -0
- package/build/system/mcp-servers/admin/index.d.ts +31 -0
- package/build/system/mcp-servers/admin/index.js +80 -0
- package/build/system/mcp-servers/admin/maintenance.d.ts +5 -0
- package/build/system/mcp-servers/admin/maintenance.js +58 -0
- package/build/system/mcp-servers/admin/mcp-servers.d.ts +5 -0
- package/build/system/mcp-servers/admin/mcp-servers.js +146 -0
- package/build/system/mcp-servers/admin/schemas.d.ts +411 -0
- package/build/system/mcp-servers/admin/schemas.js +177 -0
- package/build/system/mcp-servers/admin/tasks.d.ts +5 -0
- package/build/system/mcp-servers/admin/tasks.js +112 -0
- package/build/system/mcp-servers/admin/users.d.ts +5 -0
- package/build/system/mcp-servers/admin/users.js +167 -0
- package/build/system/mcp-servers/admin/workflow-config.d.ts +9 -0
- package/build/system/mcp-servers/admin/workflow-config.js +118 -0
- package/build/system/mcp-servers/admin/workflows.d.ts +6 -0
- package/build/system/mcp-servers/admin/workflows.js +138 -0
- package/build/system/mcp-servers/admin/yaml-workflows.d.ts +8 -0
- package/build/system/mcp-servers/admin/yaml-workflows.js +237 -0
- package/build/system/mcp-servers/claude-code.js +1 -1
- package/build/system/mcp-servers/db-query/index.js +1 -1
- package/build/system/mcp-servers/db-query/tools.js +17 -4
- package/build/system/mcp-servers/docs.d.ts +5 -0
- package/build/system/mcp-servers/docs.js +147 -0
- package/build/system/mcp-servers/file-storage.js +1 -1
- package/build/system/mcp-servers/http-fetch.js +1 -1
- package/build/system/mcp-servers/human-queue.js +1 -1
- package/build/system/mcp-servers/knowledge.d.ts +4 -0
- package/build/system/mcp-servers/knowledge.js +137 -0
- package/build/system/mcp-servers/oauth.js +1 -1
- package/build/system/mcp-servers/playwright/browser-lifecycle.js +1 -1
- package/build/system/mcp-servers/playwright/index.js +1 -1
- package/build/system/mcp-servers/playwright/schemas.d.ts +19 -8
- package/build/system/mcp-servers/playwright/schemas.js +3 -0
- package/build/system/mcp-servers/playwright/tools-navigation.js +22 -9
- package/build/system/mcp-servers/playwright/tools-run-script.js +20 -3
- package/build/system/mcp-servers/playwright/vision-helper.d.ts +12 -0
- package/build/system/mcp-servers/playwright/vision-helper.js +81 -0
- package/build/system/mcp-servers/playwright-cli/helpers.js +2 -2
- package/build/system/mcp-servers/playwright-cli/index.js +1 -1
- package/build/system/mcp-servers/playwright-cli/schemas.d.ts +28 -28
- package/build/system/mcp-servers/playwright-cli/schemas.js +1 -1
- package/build/system/mcp-servers/playwright-cli/tools-auth.js +1 -1
- package/build/system/mcp-servers/playwright-cli/tools-capture.js +4 -2
- package/build/system/mcp-servers/translation.d.ts +14 -0
- package/build/system/mcp-servers/translation.js +130 -0
- package/build/system/mcp-servers/vision-prompts.d.ts +2 -0
- package/build/system/mcp-servers/vision-prompts.js +9 -0
- package/build/system/mcp-servers/{document-vision.d.ts → vision.d.ts} +3 -4
- package/build/system/mcp-servers/vision.js +221 -0
- package/build/system/mcp-servers/workflow-compiler.js +1 -1
- package/build/system/mcp-servers/workflow.js +1 -1
- package/build/system/seed/index.js +13 -2
- package/build/system/seed/server-definitions.d.ts +1954 -322
- package/build/system/seed/server-definitions.js +65 -34
- package/build/system/seed/tool-manifests-admin.d.ts +1645 -0
- package/build/system/seed/tool-manifests-admin.js +45 -0
- package/build/system/seed/tool-manifests-browser.d.ts +1 -1
- package/build/system/seed/tool-manifests-browser.js +3 -3
- package/build/system/seed/tool-manifests-data.d.ts +62 -21
- package/build/system/seed/tool-manifests-data.js +55 -17
- package/build/system/seed/tool-manifests-knowledge.d.ts +171 -0
- package/build/system/seed/tool-manifests-knowledge.js +94 -0
- package/build/system/workflows/mcp-deterministic/index.js +1 -1
- package/build/system/workflows/mcp-query/activities/discovery.d.ts +2 -20
- package/build/system/workflows/mcp-query/activities/discovery.js +5 -163
- package/build/system/workflows/mcp-query/activities/llm.d.ts +1 -7
- package/build/system/workflows/mcp-query/activities/llm.js +2 -27
- package/build/system/workflows/mcp-query/activities/tool-executor.d.ts +0 -4
- package/build/system/workflows/mcp-query/activities/tool-executor.js +2 -106
- package/build/system/workflows/mcp-query/activities/tool-loader.d.ts +0 -9
- package/build/system/workflows/mcp-query/activities/tool-loader.js +2 -87
- package/build/system/workflows/mcp-query/index.js +55 -5
- package/build/system/workflows/mcp-query/prompts.d.ts +1 -2
- package/build/system/workflows/mcp-query/prompts.js +5 -32
- package/build/system/workflows/mcp-query/strategy-advisors.d.ts +3 -14
- package/build/system/workflows/mcp-query/strategy-advisors.js +4 -107
- package/build/system/workflows/mcp-query/types.d.ts +2 -10
- package/build/system/workflows/mcp-query/types.js +0 -1
- package/build/system/workflows/mcp-query-router/index.js +1 -1
- package/build/system/workflows/mcp-triage/index.d.ts +2 -2
- package/build/system/workflows/mcp-triage/index.js +39 -7
- package/build/system/workflows/mcp-triage/prompts.js +7 -14
- package/build/system/workflows/mcp-triage-deterministic/index.js +1 -1
- package/build/system/workflows/mcp-triage-router/index.js +1 -1
- package/build/system/workflows/shared/discovery.d.ts +35 -0
- package/build/system/workflows/shared/discovery.js +175 -0
- package/build/system/workflows/shared/index.d.ts +7 -0
- package/build/system/workflows/shared/index.js +18 -0
- package/build/system/workflows/shared/llm-caller.d.ts +8 -0
- package/build/system/workflows/shared/llm-caller.js +31 -0
- package/build/system/workflows/shared/prompts.d.ts +2 -0
- package/build/system/workflows/shared/prompts.js +32 -0
- package/build/system/workflows/shared/strategy-advisors.d.ts +14 -0
- package/build/system/workflows/shared/strategy-advisors.js +109 -0
- package/build/system/workflows/shared/tool-executor.d.ts +11 -0
- package/build/system/workflows/shared/tool-executor.js +111 -0
- package/build/system/workflows/shared/tool-loader.d.ts +19 -0
- package/build/system/workflows/shared/tool-loader.js +94 -0
- package/build/system/workflows/shared/types.d.ts +9 -0
- package/build/system/workflows/shared/types.js +2 -0
- package/build/system/workflows/tool-result-guard.d.ts +14 -0
- package/build/system/workflows/tool-result-guard.js +78 -0
- package/build/tsconfig.tsbuildinfo +1 -1
- package/build/types/user.d.ts +2 -0
- package/build/vitest.config.d.ts +1 -1
- package/build/vitest.integration.config.d.ts +1 -1
- package/build/workers/index.js +2 -8
- package/dashboard/dist/assets/AdminDashboard-CTyAMUJR.js +2 -0
- package/dashboard/dist/assets/AdminDashboard-CTyAMUJR.js.map +1 -0
- package/dashboard/dist/assets/AvailableEscalationsPage-BMXV3Q4l.js +2 -0
- package/dashboard/dist/assets/AvailableEscalationsPage-BMXV3Q4l.js.map +1 -0
- package/dashboard/dist/assets/BotPicker-C51nKFEu.js +2 -0
- package/dashboard/dist/assets/{BotPicker-D6FYW1Gt.js.map → BotPicker-C51nKFEu.js.map} +1 -1
- package/dashboard/dist/assets/CollapsibleSection-BSyfd8uL.js +2 -0
- package/dashboard/dist/assets/{CollapsibleSection-Cxk4wvjT.js.map → CollapsibleSection-BSyfd8uL.js.map} +1 -1
- package/dashboard/dist/assets/ConfirmDeleteModal-CBdhia5T.js +2 -0
- package/dashboard/dist/assets/{ConfirmDeleteModal-FSXyKjaB.js.map → ConfirmDeleteModal-CBdhia5T.js.map} +1 -1
- package/dashboard/dist/assets/CopyableId-dGlewBCS.js +2 -0
- package/dashboard/dist/assets/{CopyableId-CBdxWfp8.js.map → CopyableId-dGlewBCS.js.map} +1 -1
- package/dashboard/dist/assets/CredentialsPage-CoBNFSAu.js +2 -0
- package/dashboard/dist/assets/{CredentialsPage-Ikzsot0w.js.map → CredentialsPage-CoBNFSAu.js.map} +1 -1
- package/dashboard/dist/assets/CustomDurationPicker-BataWFj8.js +2 -0
- package/dashboard/dist/assets/{CustomDurationPicker-CAninCbl.js.map → CustomDurationPicker-BataWFj8.js.map} +1 -1
- package/dashboard/dist/assets/DataTable-B3uf5CCo.js +2 -0
- package/dashboard/dist/assets/DataTable-B3uf5CCo.js.map +1 -0
- package/dashboard/dist/assets/ElapsedCell-G5oSwTpT.js +2 -0
- package/dashboard/dist/assets/ElapsedCell-G5oSwTpT.js.map +1 -0
- package/dashboard/dist/assets/EmptyState-BChBJNGS.js +2 -0
- package/dashboard/dist/assets/{EmptyState-2CmV-IaS.js.map → EmptyState-BChBJNGS.js.map} +1 -1
- package/dashboard/dist/assets/EscalationsOverview-CxUv8xjG.js +2 -0
- package/dashboard/dist/assets/{EscalationsOverview-GXYFPASS.js.map → EscalationsOverview-CxUv8xjG.js.map} +1 -1
- package/dashboard/dist/assets/EventTable-CVt8B0BZ.js +2 -0
- package/dashboard/dist/assets/{EventTable-B01oJf6Y.js.map → EventTable-CVt8B0BZ.js.map} +1 -1
- package/dashboard/dist/assets/FilterBar-CShf0oe7.js +2 -0
- package/dashboard/dist/assets/{FilterBar-Ck4K4rzu.js.map → FilterBar-CShf0oe7.js.map} +1 -1
- package/dashboard/dist/assets/McpOverview-CbaZRnJl.js +2 -0
- package/dashboard/dist/assets/{McpOverview-JkvRcX2e.js.map → McpOverview-CbaZRnJl.js.map} +1 -1
- package/dashboard/dist/assets/McpQueryDetailPage-CGoR9XK6.js +5 -0
- package/dashboard/dist/assets/McpQueryDetailPage-CGoR9XK6.js.map +1 -0
- package/dashboard/dist/assets/McpQueryPage-BjXoYQuU.js +2 -0
- package/dashboard/dist/assets/McpQueryPage-BjXoYQuU.js.map +1 -0
- package/dashboard/dist/assets/McpRunDetailPage-DLkA5Aar.js +2 -0
- package/dashboard/dist/assets/McpRunDetailPage-DLkA5Aar.js.map +1 -0
- package/dashboard/dist/assets/McpRunsPage-DCh9n11D.js +2 -0
- package/dashboard/dist/assets/McpRunsPage-DCh9n11D.js.map +1 -0
- package/dashboard/dist/assets/Modal-CI5RBPOQ.js +2 -0
- package/dashboard/dist/assets/{Modal-B4rbIVAn.js.map → Modal-CI5RBPOQ.js.map} +1 -1
- package/dashboard/dist/assets/OperatorDashboard-Dc80suXd.js +2 -0
- package/dashboard/dist/assets/OperatorDashboard-Dc80suXd.js.map +1 -0
- package/dashboard/dist/assets/PageHeader-SMD9qtOO.js +2 -0
- package/dashboard/dist/assets/PageHeader-SMD9qtOO.js.map +1 -0
- package/dashboard/dist/assets/PageHeaderWithStats-TikLQsTp.js +2 -0
- package/dashboard/dist/assets/PageHeaderWithStats-TikLQsTp.js.map +1 -0
- package/dashboard/dist/assets/PriorityBadge-CQ0EsLTA.js +2 -0
- package/dashboard/dist/assets/{PriorityBadge-DfQY9St9.js.map → PriorityBadge-CQ0EsLTA.js.map} +1 -1
- package/dashboard/dist/assets/ProcessDetailPage-B2GKuGzk.js +2 -0
- package/dashboard/dist/assets/ProcessDetailPage-B2GKuGzk.js.map +1 -0
- package/dashboard/dist/assets/ProcessesListPage-CTjI3Wn6.js +2 -0
- package/dashboard/dist/assets/ProcessesListPage-CTjI3Wn6.js.map +1 -0
- package/dashboard/dist/assets/RefreshButton-BcQDObrv.js +2 -0
- package/dashboard/dist/assets/RefreshButton-BcQDObrv.js.map +1 -0
- package/dashboard/dist/assets/RolePill-Crj4TH5p.js +2 -0
- package/dashboard/dist/assets/{RolePill-BTPa8L-P.js.map → RolePill-Crj4TH5p.js.map} +1 -1
- package/dashboard/dist/assets/RolesPage-C_RInUwS.js +2 -0
- package/dashboard/dist/assets/RolesPage-C_RInUwS.js.map +1 -0
- package/dashboard/dist/assets/RowActions-Cp5HyK_w.js +2 -0
- package/dashboard/dist/assets/{RowActions-Dg-Fsm5O.js.map → RowActions-Cp5HyK_w.js.map} +1 -1
- package/dashboard/dist/assets/RunAsSelector-BhyWtofX.js +2 -0
- package/dashboard/dist/assets/RunAsSelector-BhyWtofX.js.map +1 -0
- package/dashboard/dist/assets/StatCard-BKZLSgNV.js +2 -0
- package/dashboard/dist/assets/{StatCard-DlgF0CJC.js.map → StatCard-BKZLSgNV.js.map} +1 -1
- package/dashboard/dist/assets/StatusBadge-BYNGGZK5.js +2 -0
- package/dashboard/dist/assets/StatusBadge-BYNGGZK5.js.map +1 -0
- package/dashboard/dist/assets/StickyPagination-CTosgiU2.js +2 -0
- package/dashboard/dist/assets/{StickyPagination-F9FZsRy9.js.map → StickyPagination-CTosgiU2.js.map} +1 -1
- package/dashboard/dist/assets/SwimlaneTimeline-ylG5Ps1s.js +2 -0
- package/dashboard/dist/assets/SwimlaneTimeline-ylG5Ps1s.js.map +1 -0
- package/dashboard/dist/assets/TaskDetailPage-C9pDGdD2.js +2 -0
- package/dashboard/dist/assets/TaskDetailPage-C9pDGdD2.js.map +1 -0
- package/dashboard/dist/assets/TaskQueuePill-BtJbZTT0.js +2 -0
- package/dashboard/dist/assets/{TaskQueuePill-awmtb0qw.js.map → TaskQueuePill-BtJbZTT0.js.map} +1 -1
- package/dashboard/dist/assets/TasksListPage-DtFLUEhg.js +2 -0
- package/dashboard/dist/assets/{TasksListPage-C_QF23c1.js.map → TasksListPage-DtFLUEhg.js.map} +1 -1
- package/dashboard/dist/assets/TimeAgo-WuM6xImZ.js +2 -0
- package/dashboard/dist/assets/TimeAgo-WuM6xImZ.js.map +1 -0
- package/dashboard/dist/assets/TimestampCell-IVL_-Upy.js +2 -0
- package/dashboard/dist/assets/TimestampCell-IVL_-Upy.js.map +1 -0
- package/dashboard/dist/assets/UserName-DU9qeg13.js +2 -0
- package/dashboard/dist/assets/{UserName-DaP4YAKr.js.map → UserName-DU9qeg13.js.map} +1 -1
- package/dashboard/dist/assets/WorkflowExecutionPage-DOocX81f.js +2 -0
- package/dashboard/dist/assets/WorkflowExecutionPage-DOocX81f.js.map +1 -0
- package/dashboard/dist/assets/WorkflowPill-Diw8iWBP.js +2 -0
- package/dashboard/dist/assets/WorkflowPill-Diw8iWBP.js.map +1 -0
- package/dashboard/dist/assets/WorkflowsDashboard-DDtUIrTy.js +2 -0
- package/dashboard/dist/assets/WorkflowsDashboard-DDtUIrTy.js.map +1 -0
- package/dashboard/dist/assets/WorkflowsOverview-CPuvA4t3.js +2 -0
- package/dashboard/dist/assets/{WorkflowsOverview-D9OzzQqw.js.map → WorkflowsOverview-CPuvA4t3.js.map} +1 -1
- package/dashboard/dist/assets/YamlWorkflowsPage-DlwwkluN.js +2 -0
- package/dashboard/dist/assets/YamlWorkflowsPage-DlwwkluN.js.map +1 -0
- package/dashboard/dist/assets/{bots-BkKVMbUW.js → bots-BPiZXf2h.js} +2 -2
- package/dashboard/dist/assets/{bots-BkKVMbUW.js.map → bots-BPiZXf2h.js.map} +1 -1
- package/dashboard/dist/assets/constants-BHkpVaqx.js +2 -0
- package/dashboard/dist/assets/constants-BHkpVaqx.js.map +1 -0
- package/dashboard/dist/assets/escalation-DTY_OKRh.js +2 -0
- package/dashboard/dist/assets/escalation-DTY_OKRh.js.map +1 -0
- package/dashboard/dist/assets/escalation-columns-C91fHSkp.js +2 -0
- package/dashboard/dist/assets/{escalation-columns-D6aqStaY.js.map → escalation-columns-C91fHSkp.js.map} +1 -1
- package/dashboard/dist/assets/helpers-DBUZ9pnG.js +2 -0
- package/dashboard/dist/assets/helpers-DBUZ9pnG.js.map +1 -0
- package/dashboard/dist/assets/index-BOeA-gfK.js +17 -0
- package/dashboard/dist/assets/{index-X85K5bHC.js.map → index-BOeA-gfK.js.map} +1 -1
- package/dashboard/dist/assets/index-BZ6K_kmL.js +3 -0
- package/dashboard/dist/assets/index-BZ6K_kmL.js.map +1 -0
- package/dashboard/dist/assets/index-Bpm0yeoi.js +2 -0
- package/dashboard/dist/assets/index-Bpm0yeoi.js.map +1 -0
- package/dashboard/dist/assets/index-BtOwLI0K.js +2 -0
- package/dashboard/dist/assets/{index-DTPzZr_X.js.map → index-BtOwLI0K.js.map} +1 -1
- package/dashboard/dist/assets/index-CBF3ZvRZ.js +6 -0
- package/dashboard/dist/assets/index-CBF3ZvRZ.js.map +1 -0
- package/dashboard/dist/assets/index-CDWOfCmi.js +2 -0
- package/dashboard/dist/assets/index-CDWOfCmi.js.map +1 -0
- package/dashboard/dist/assets/index-Ce6sL__n.js +2 -0
- package/dashboard/dist/assets/index-Ce6sL__n.js.map +1 -0
- package/dashboard/dist/assets/index-DSzSoku1.js +283 -0
- package/dashboard/dist/assets/index-DSzSoku1.js.map +1 -0
- package/dashboard/dist/assets/index-D_qEAYrg.js +2 -0
- package/dashboard/dist/assets/index-D_qEAYrg.js.map +1 -0
- package/dashboard/dist/assets/index-gCy9XX3W.css +1 -0
- package/dashboard/dist/assets/mcp-BzVpaaKF.js +2 -0
- package/dashboard/dist/assets/{mcp-blCW6IL7.js.map → mcp-BzVpaaKF.js.map} +1 -1
- package/dashboard/dist/assets/mcp-query-wTuxTTCV.js +2 -0
- package/dashboard/dist/assets/mcp-query-wTuxTTCV.js.map +1 -0
- package/dashboard/dist/assets/{mcp-runs-ChPbpvXK.js → mcp-runs-DmXYJD19.js} +2 -2
- package/dashboard/dist/assets/{mcp-runs-ChPbpvXK.js.map → mcp-runs-DmXYJD19.js.map} +1 -1
- package/dashboard/dist/assets/namespaces-DoGa7jc7.js +2 -0
- package/dashboard/dist/assets/{namespaces-BgbaC3ow.js.map → namespaces-DoGa7jc7.js.map} +1 -1
- package/dashboard/dist/assets/{roles-ZNrqqnQl.js → roles-wCdQ2Z7k.js} +2 -2
- package/dashboard/dist/assets/{roles-ZNrqqnQl.js.map → roles-wCdQ2Z7k.js.map} +1 -1
- package/dashboard/dist/assets/settings-DDe_L7JT.js +2 -0
- package/dashboard/dist/assets/{settings-eBRSE0mQ.js.map → settings-DDe_L7JT.js.map} +1 -1
- package/dashboard/dist/assets/tasks-3Hih8Bt7.js +2 -0
- package/dashboard/dist/assets/{tasks-tRqClPns.js.map → tasks-3Hih8Bt7.js.map} +1 -1
- package/dashboard/dist/assets/{useFilterParams-BaXUAkYK.js → useFilterParams-BUyLHcx_.js} +2 -2
- package/dashboard/dist/assets/{useFilterParams-BaXUAkYK.js.map → useFilterParams-BUyLHcx_.js.map} +1 -1
- package/dashboard/dist/assets/{useNatsEvents-Xr43X1fG.js → useNatsEvents-DeGKHFTX.js} +2 -2
- package/dashboard/dist/assets/{useNatsEvents-Xr43X1fG.js.map → useNatsEvents-DeGKHFTX.js.map} +1 -1
- package/dashboard/dist/assets/{useYamlActivityEvents-BO51u8tm.js → useYamlActivityEvents-B5dHec6Y.js} +2 -2
- package/dashboard/dist/assets/{useYamlActivityEvents-BO51u8tm.js.map → useYamlActivityEvents-B5dHec6Y.js.map} +1 -1
- package/dashboard/dist/assets/{users-tMvNyOo8.js → users-BTagPmGW.js} +2 -2
- package/dashboard/dist/assets/{users-tMvNyOo8.js.map → users-BTagPmGW.js.map} +1 -1
- package/dashboard/dist/assets/{vendor-icons-ZTAKVwGc.js → vendor-icons-DCLlGYO9.js} +112 -57
- package/dashboard/dist/assets/vendor-icons-DCLlGYO9.js.map +1 -0
- package/dashboard/dist/assets/vendor-query-DLp59M9_.js +35 -0
- package/dashboard/dist/assets/vendor-query-DLp59M9_.js.map +1 -0
- package/dashboard/dist/assets/vendor-react-Co3Y8ikm.js +26 -0
- package/dashboard/dist/assets/vendor-react-Co3Y8ikm.js.map +1 -0
- package/dashboard/dist/assets/{workflows-Cc4VHcrp.js → workflows-B20dR3NE.js} +2 -2
- package/dashboard/dist/assets/{workflows-Cc4VHcrp.js.map → workflows-B20dR3NE.js.map} +1 -1
- package/dashboard/dist/assets/yaml-workflows-CaLPMQha.js +2 -0
- package/dashboard/dist/assets/yaml-workflows-CaLPMQha.js.map +1 -0
- package/dashboard/dist/index.html +5 -5
- package/docs/api/dba.md +81 -0
- package/docs/api/escalations.md +575 -0
- package/docs/api/exports.md +170 -0
- package/docs/api/maintenance.md +93 -0
- package/docs/api/mcp-runs.md +128 -0
- package/docs/api/mcp-servers.md +195 -0
- package/docs/api/namespaces.md +48 -0
- package/docs/api/roles.md +390 -0
- package/docs/api/service-accounts.md +188 -0
- package/docs/api/settings.md +33 -0
- package/docs/api/tasks.md +167 -0
- package/docs/api/users.md +180 -0
- package/docs/api/workflows.md +616 -0
- package/docs/api/yaml-workflows.md +312 -0
- package/docs/architecture.md +221 -0
- package/docs/auth.md +181 -0
- package/docs/cloud.md +272 -0
- package/docs/compilation.md +136 -0
- package/docs/contributing.md +56 -0
- package/docs/dashboard.md +145 -0
- package/docs/data.md +478 -0
- package/docs/escalation-strategies.md +264 -0
- package/docs/events.md +251 -0
- package/docs/iam.md +222 -0
- package/docs/img/01-login.png +0 -0
- package/docs/img/02-dashboard-home.png +0 -0
- package/docs/img/03-processes-list.png +0 -0
- package/docs/img/04-escalations-list.png +0 -0
- package/docs/img/05-mcp-servers.png +0 -0
- package/docs/img/06-mcp-pipelines.png +0 -0
- package/docs/img/07-workflows-list.png +0 -0
- package/docs/img/compilation/01-query-submit.png +0 -0
- package/docs/img/compilation/02-mcp-servers.png +0 -0
- package/docs/img/compilation/03-query-completed.png +0 -0
- package/docs/img/compilation/04-wizard-original.png +0 -0
- package/docs/img/compilation/05-wizard-timeline.png +0 -0
- package/docs/img/compilation/06-wizard-profile.png +0 -0
- package/docs/img/compilation/07-wizard-deploy.png +0 -0
- package/docs/img/compilation/08-wizard-test-modal.png +0 -0
- package/docs/img/compilation/09-wizard-test-compare.png +0 -0
- package/docs/img/compilation/10-wizard-verify.png +0 -0
- package/docs/logging.md +110 -0
- package/docs/maintenance.md +221 -0
- package/docs/mcp.md +715 -0
- package/docs/oauth-and-delegation.md +469 -0
- package/docs/telemetry.md +144 -0
- package/docs/workflows.md +695 -0
- package/lib/db/schemas/015_knowledge.sql +23 -0
- package/package.json +8 -9
- package/build/services/db/index.d.ts +0 -3
- package/build/services/mcp/vision-server.d.ts +0 -15
- package/build/services/mcp/vision-server.js +0 -214
- package/build/system/mcp-servers/document-vision.js +0 -228
- package/build/system/mcp-servers/prompts.d.ts +0 -4
- package/build/system/mcp-servers/prompts.js +0 -10
- package/dashboard/dist/assets/AdminDashboard-jfacvOC7.js +0 -2
- package/dashboard/dist/assets/AdminDashboard-jfacvOC7.js.map +0 -1
- package/dashboard/dist/assets/AvailableEscalationsPage-BglLDoT8.js +0 -2
- package/dashboard/dist/assets/AvailableEscalationsPage-BglLDoT8.js.map +0 -1
- package/dashboard/dist/assets/BotPicker-D6FYW1Gt.js +0 -2
- package/dashboard/dist/assets/CollapsibleSection-Cxk4wvjT.js +0 -2
- package/dashboard/dist/assets/ConfirmDeleteModal-FSXyKjaB.js +0 -2
- package/dashboard/dist/assets/CopyableId-CBdxWfp8.js +0 -2
- package/dashboard/dist/assets/CredentialsPage-Ikzsot0w.js +0 -2
- package/dashboard/dist/assets/CustomDurationPicker-CAninCbl.js +0 -2
- package/dashboard/dist/assets/DataTable-BDn1WBHS.js +0 -2
- package/dashboard/dist/assets/DataTable-BDn1WBHS.js.map +0 -1
- package/dashboard/dist/assets/EmptyState-2CmV-IaS.js +0 -2
- package/dashboard/dist/assets/EscalationsOverview-GXYFPASS.js +0 -2
- package/dashboard/dist/assets/EventTable-B01oJf6Y.js +0 -2
- package/dashboard/dist/assets/Field-DuFBAYhu.js +0 -2
- package/dashboard/dist/assets/Field-DuFBAYhu.js.map +0 -1
- package/dashboard/dist/assets/FilterBar-Ck4K4rzu.js +0 -2
- package/dashboard/dist/assets/McpOverview-JkvRcX2e.js +0 -2
- package/dashboard/dist/assets/McpQueryDetailPage-CUMqhQdS.js +0 -2
- package/dashboard/dist/assets/McpQueryDetailPage-CUMqhQdS.js.map +0 -1
- package/dashboard/dist/assets/McpQueryPage-DRRhw4nN.js +0 -2
- package/dashboard/dist/assets/McpQueryPage-DRRhw4nN.js.map +0 -1
- package/dashboard/dist/assets/McpRunDetailPage-CmPs5EvE.js +0 -2
- package/dashboard/dist/assets/McpRunDetailPage-CmPs5EvE.js.map +0 -1
- package/dashboard/dist/assets/McpRunsPage-Dl5Y2u6k.js +0 -2
- package/dashboard/dist/assets/McpRunsPage-Dl5Y2u6k.js.map +0 -1
- package/dashboard/dist/assets/Modal-B4rbIVAn.js +0 -2
- package/dashboard/dist/assets/OperatorDashboard-B56il28q.js +0 -2
- package/dashboard/dist/assets/OperatorDashboard-B56il28q.js.map +0 -1
- package/dashboard/dist/assets/PageHeader-CpWFly5S.js +0 -2
- package/dashboard/dist/assets/PageHeader-CpWFly5S.js.map +0 -1
- package/dashboard/dist/assets/PriorityBadge-DfQY9St9.js +0 -2
- package/dashboard/dist/assets/ProcessDetailPage-CMLq4M7D.js +0 -2
- package/dashboard/dist/assets/ProcessDetailPage-CMLq4M7D.js.map +0 -1
- package/dashboard/dist/assets/ProcessesListPage-CZ_HF06v.js +0 -2
- package/dashboard/dist/assets/ProcessesListPage-CZ_HF06v.js.map +0 -1
- package/dashboard/dist/assets/RolePill-BTPa8L-P.js +0 -2
- package/dashboard/dist/assets/RolesPage-9grZW7yR.js +0 -2
- package/dashboard/dist/assets/RolesPage-9grZW7yR.js.map +0 -1
- package/dashboard/dist/assets/RowActions-Dg-Fsm5O.js +0 -2
- package/dashboard/dist/assets/SimpleMarkdown-CBlvaWP4.js +0 -4
- package/dashboard/dist/assets/SimpleMarkdown-CBlvaWP4.js.map +0 -1
- package/dashboard/dist/assets/StatCard-DlgF0CJC.js +0 -2
- package/dashboard/dist/assets/StatusBadge-TlC4jiig.js +0 -2
- package/dashboard/dist/assets/StatusBadge-TlC4jiig.js.map +0 -1
- package/dashboard/dist/assets/StickyPagination-F9FZsRy9.js +0 -2
- package/dashboard/dist/assets/SwimlaneTimeline-7SiwATsZ.js +0 -2
- package/dashboard/dist/assets/SwimlaneTimeline-7SiwATsZ.js.map +0 -1
- package/dashboard/dist/assets/TaskDetailPage-CbPVTakt.js +0 -2
- package/dashboard/dist/assets/TaskDetailPage-CbPVTakt.js.map +0 -1
- package/dashboard/dist/assets/TaskQueuePill-awmtb0qw.js +0 -2
- package/dashboard/dist/assets/TasksListPage-C_QF23c1.js +0 -2
- package/dashboard/dist/assets/TimeAgo-UPG6DoH8.js +0 -2
- package/dashboard/dist/assets/TimeAgo-UPG6DoH8.js.map +0 -1
- package/dashboard/dist/assets/TimestampCell-DoWMKg6w.js +0 -2
- package/dashboard/dist/assets/TimestampCell-DoWMKg6w.js.map +0 -1
- package/dashboard/dist/assets/UserName-DaP4YAKr.js +0 -2
- package/dashboard/dist/assets/VersionHistory-Bt7WBr6m.js +0 -5
- package/dashboard/dist/assets/VersionHistory-Bt7WBr6m.js.map +0 -1
- package/dashboard/dist/assets/WorkflowExecutionPage-DjtAQ3hy.js +0 -2
- package/dashboard/dist/assets/WorkflowExecutionPage-DjtAQ3hy.js.map +0 -1
- package/dashboard/dist/assets/WorkflowPill-CCDSVaQj.js +0 -2
- package/dashboard/dist/assets/WorkflowPill-CCDSVaQj.js.map +0 -1
- package/dashboard/dist/assets/WorkflowsDashboard-D8z9uBNB.js +0 -2
- package/dashboard/dist/assets/WorkflowsDashboard-D8z9uBNB.js.map +0 -1
- package/dashboard/dist/assets/WorkflowsOverview-D9OzzQqw.js +0 -2
- package/dashboard/dist/assets/YamlWorkflowDetailPage-DrDvvP62.js +0 -3
- package/dashboard/dist/assets/YamlWorkflowDetailPage-DrDvvP62.js.map +0 -1
- package/dashboard/dist/assets/YamlWorkflowsPage-COqiNCQK.js +0 -2
- package/dashboard/dist/assets/YamlWorkflowsPage-COqiNCQK.js.map +0 -1
- package/dashboard/dist/assets/constants-CgaZfe5d.js +0 -2
- package/dashboard/dist/assets/constants-CgaZfe5d.js.map +0 -1
- package/dashboard/dist/assets/escalation-columns-D6aqStaY.js +0 -2
- package/dashboard/dist/assets/escalation-qalymbKB.js +0 -2
- package/dashboard/dist/assets/escalation-qalymbKB.js.map +0 -1
- package/dashboard/dist/assets/format-gXZXQ-HJ.js +0 -2
- package/dashboard/dist/assets/format-gXZXQ-HJ.js.map +0 -1
- package/dashboard/dist/assets/helpers-0gSleuzT.js +0 -2
- package/dashboard/dist/assets/helpers-0gSleuzT.js.map +0 -1
- package/dashboard/dist/assets/index-BWvMHed7.js +0 -6
- package/dashboard/dist/assets/index-BWvMHed7.js.map +0 -1
- package/dashboard/dist/assets/index-BaszoPO_.css +0 -1
- package/dashboard/dist/assets/index-Cn2jyj9A.js +0 -2
- package/dashboard/dist/assets/index-Cn2jyj9A.js.map +0 -1
- package/dashboard/dist/assets/index-D8VH6K8B.js +0 -54
- package/dashboard/dist/assets/index-D8VH6K8B.js.map +0 -1
- package/dashboard/dist/assets/index-D9SYwJsi.js +0 -3
- package/dashboard/dist/assets/index-D9SYwJsi.js.map +0 -1
- package/dashboard/dist/assets/index-DTPzZr_X.js +0 -2
- package/dashboard/dist/assets/index-D_6AB5BE.js +0 -2
- package/dashboard/dist/assets/index-D_6AB5BE.js.map +0 -1
- package/dashboard/dist/assets/index-S9Ks2Lj2.js +0 -2
- package/dashboard/dist/assets/index-S9Ks2Lj2.js.map +0 -1
- package/dashboard/dist/assets/index-X85K5bHC.js +0 -17
- package/dashboard/dist/assets/index-rjmgHlSH.js +0 -2
- package/dashboard/dist/assets/index-rjmgHlSH.js.map +0 -1
- package/dashboard/dist/assets/mcp-blCW6IL7.js +0 -2
- package/dashboard/dist/assets/mcp-query-DoAyPbjC.js +0 -2
- package/dashboard/dist/assets/mcp-query-DoAyPbjC.js.map +0 -1
- package/dashboard/dist/assets/namespaces-BgbaC3ow.js +0 -2
- package/dashboard/dist/assets/settings-eBRSE0mQ.js +0 -2
- package/dashboard/dist/assets/tasks-tRqClPns.js +0 -2
- package/dashboard/dist/assets/vendor-icons-ZTAKVwGc.js.map +0 -1
- package/dashboard/dist/assets/vendor-query-B2UbickB.js +0 -18
- package/dashboard/dist/assets/vendor-query-B2UbickB.js.map +0 -1
- package/dashboard/dist/assets/vendor-react-Cw8Gy8NJ.js +0 -22
- package/dashboard/dist/assets/vendor-react-Cw8Gy8NJ.js.map +0 -1
- package/dashboard/dist/assets/yaml-workflows-BL4V5CQy.js +0 -2
- package/dashboard/dist/assets/yaml-workflows-BL4V5CQy.js.map +0 -1
- /package/build/{services → lib}/db/migrate.d.ts +0 -0
- /package/build/{services → lib}/events/index.d.ts +0 -0
- /package/build/{services → lib}/events/index.js +0 -0
- /package/build/{services → lib}/events/memory.d.ts +0 -0
- /package/build/{services → lib}/events/memory.js +0 -0
- /package/build/{services → lib}/events/nats.d.ts +0 -0
- /package/build/{services → lib}/events/nats.js +0 -0
- /package/build/{services → lib}/events/publish.d.ts +0 -0
- /package/build/{services → lib}/events/publish.js +0 -0
- /package/build/{services → lib}/events/socketio.d.ts +0 -0
- /package/build/{services → lib}/events/socketio.js +0 -0
- /package/build/{services → lib}/logger/index.d.ts +0 -0
- /package/build/{services → lib}/logger/index.js +0 -0
- /package/build/{services → lib}/logger/pino.d.ts +0 -0
- /package/build/{services → lib}/logger/pino.js +0 -0
- /package/build/{services → lib}/storage/index.d.ts +0 -0
- /package/build/{services → lib}/storage/index.js +0 -0
- /package/build/{services → lib}/storage/local.d.ts +0 -0
- /package/build/{services → lib}/storage/local.js +0 -0
- /package/build/{services → lib}/storage/s3.d.ts +0 -0
- /package/build/{services → lib}/storage/s3.js +0 -0
- /package/build/{services → lib}/storage/types.d.ts +0 -0
- /package/build/{services → lib}/storage/types.js +0 -0
- /package/build/{services → lib}/telemetry/index.d.ts +0 -0
- /package/build/{services → lib}/telemetry/index.js +0 -0
- /package/{services → lib}/db/README.md +0 -0
- /package/{services → lib}/db/schemas/001_schema.sql +0 -0
- /package/{services → lib}/db/schemas/002_seed.sql +0 -0
- /package/{services → lib}/db/schemas/003_workflow_discovery.sql +0 -0
- /package/{services → lib}/db/schemas/004_query_router.sql +0 -0
- /package/{services → lib}/db/schemas/005_triage_router.sql +0 -0
- /package/{services → lib}/db/schemas/006_oauth.sql +0 -0
- /package/{services → lib}/db/schemas/007_security.sql +0 -0
- /package/{services → lib}/db/schemas/008_bot_accounts.sql +0 -0
- /package/{services → lib}/db/schemas/009_audit_trail.sql +0 -0
- /package/{services → lib}/db/schemas/010_credential_providers.sql +0 -0
- /package/{services → lib}/db/schemas/011_system_workflow_configs.sql +0 -0
- /package/{services → lib}/db/schemas/012_drop_modality.sql +0 -0
- /package/{services → lib}/db/schemas/013_execute_as.sql +0 -0
- /package/{services → lib}/db/schemas/014_ephemeral_credentials.sql +0 -0
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import{r as Ha,a as v,R as Ba}from"./vendor-query-DLp59M9_.js";var kt={exports:{}},ie={},pr;function Wa(){if(pr)return ie;pr=1;/**
|
|
2
|
+
* @license React
|
|
3
|
+
* react-dom.development.js
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
|
6
|
+
*
|
|
7
|
+
* This source code is licensed under the MIT license found in the
|
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
|
9
|
+
*/return(function(){function e(){}function t(u){return""+u}function r(u,l,m){var b=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;try{t(b);var S=!1}catch{S=!0}return S&&(console.error("The provided key is an unsupported type %s. This value must be coerced to a string before using it here.",typeof Symbol=="function"&&Symbol.toStringTag&&b[Symbol.toStringTag]||b.constructor.name||"Object"),t(b)),{$$typeof:f,key:b==null?null:""+b,children:u,containerInfo:l,implementation:m}}function a(u,l){if(u==="font")return"";if(typeof l=="string")return l==="use-credentials"?l:""}function n(u){return u===null?"`null`":u===void 0?"`undefined`":u===""?"an empty string":'something with type "'+typeof u+'"'}function o(u){return u===null?"`null`":u===void 0?"`undefined`":u===""?"an empty string":typeof u=="string"?JSON.stringify(u):typeof u=="number"?"`"+u+"`":'something with type "'+typeof u+'"'}function i(){var u=p.H;return u===null&&console.error(`Invalid hook call. Hooks can only be called inside of the body of a function component. This could happen for one of the following reasons:
|
|
10
|
+
1. You might have mismatching versions of React and the renderer (such as React DOM)
|
|
11
|
+
2. You might be breaking the Rules of Hooks
|
|
12
|
+
3. You might have more than one copy of React in the same app
|
|
13
|
+
See https://react.dev/link/invalid-hook-call for tips about how to debug and fix this problem.`),u}typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStart(Error());var s=Ha(),c={d:{f:e,r:function(){throw Error("Invalid form element. requestFormReset must be passed a form that was rendered by React.")},D:e,C:e,L:e,m:e,X:e,S:e,M:e},p:0,findDOMNode:null},f=Symbol.for("react.portal"),p=s.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;typeof Map=="function"&&Map.prototype!=null&&typeof Map.prototype.forEach=="function"&&typeof Set=="function"&&Set.prototype!=null&&typeof Set.prototype.clear=="function"&&typeof Set.prototype.forEach=="function"||console.error("React depends on Map and Set built-in types. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),ie.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=c,ie.createPortal=function(u,l){var m=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!l||l.nodeType!==1&&l.nodeType!==9&&l.nodeType!==11)throw Error("Target container is not a DOM element.");return r(u,l,null,m)},ie.flushSync=function(u){var l=p.T,m=c.p;try{if(p.T=null,c.p=2,u)return u()}finally{p.T=l,c.p=m,c.d.f()&&console.error("flushSync was called from inside a lifecycle method. React cannot flush when React is already rendering. Consider moving this call to a scheduler task or micro task.")}},ie.preconnect=function(u,l){typeof u=="string"&&u?l!=null&&typeof l!="object"?console.error("ReactDOM.preconnect(): Expected the `options` argument (second) to be an object but encountered %s instead. The only supported option at this time is `crossOrigin` which accepts a string.",o(l)):l!=null&&typeof l.crossOrigin!="string"&&console.error("ReactDOM.preconnect(): Expected the `crossOrigin` option (second argument) to be a string but encountered %s instead. Try removing this option or passing a string value instead.",n(l.crossOrigin)):console.error("ReactDOM.preconnect(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",n(u)),typeof u=="string"&&(l?(l=l.crossOrigin,l=typeof l=="string"?l==="use-credentials"?l:"":void 0):l=null,c.d.C(u,l))},ie.prefetchDNS=function(u){if(typeof u!="string"||!u)console.error("ReactDOM.prefetchDNS(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",n(u));else if(1<arguments.length){var l=arguments[1];typeof l=="object"&&l.hasOwnProperty("crossOrigin")?console.error("ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. It looks like the you are attempting to set a crossOrigin property for this DNS lookup hint. Browsers do not perform DNS queries using CORS and setting this attribute on the resource hint has no effect. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",o(l)):console.error("ReactDOM.prefetchDNS(): Expected only one argument, `href`, but encountered %s as a second argument instead. This argument is reserved for future options and is currently disallowed. Try calling ReactDOM.prefetchDNS() with just a single string argument, `href`.",o(l))}typeof u=="string"&&c.d.D(u)},ie.preinit=function(u,l){if(typeof u=="string"&&u?l==null||typeof l!="object"?console.error("ReactDOM.preinit(): Expected the `options` argument (second) to be an object with an `as` property describing the type of resource to be preinitialized but encountered %s instead.",o(l)):l.as!=="style"&&l.as!=="script"&&console.error('ReactDOM.preinit(): Expected the `as` property in the `options` argument (second) to contain a valid value describing the type of resource to be preinitialized but encountered %s instead. Valid values for `as` are "style" and "script".',o(l.as)):console.error("ReactDOM.preinit(): Expected the `href` argument (first) to be a non-empty string but encountered %s instead.",n(u)),typeof u=="string"&&l&&typeof l.as=="string"){var m=l.as,b=a(m,l.crossOrigin),S=typeof l.integrity=="string"?l.integrity:void 0,R=typeof l.fetchPriority=="string"?l.fetchPriority:void 0;m==="style"?c.d.S(u,typeof l.precedence=="string"?l.precedence:void 0,{crossOrigin:b,integrity:S,fetchPriority:R}):m==="script"&&c.d.X(u,{crossOrigin:b,integrity:S,fetchPriority:R,nonce:typeof l.nonce=="string"?l.nonce:void 0})}},ie.preinitModule=function(u,l){var m="";if(typeof u=="string"&&u||(m+=" The `href` argument encountered was "+n(u)+"."),l!==void 0&&typeof l!="object"?m+=" The `options` argument encountered was "+n(l)+".":l&&"as"in l&&l.as!=="script"&&(m+=" The `as` option encountered was "+o(l.as)+"."),m)console.error("ReactDOM.preinitModule(): Expected up to two arguments, a non-empty `href` string and, optionally, an `options` object with a valid `as` property.%s",m);else switch(m=l&&typeof l.as=="string"?l.as:"script",m){case"script":break;default:m=o(m),console.error('ReactDOM.preinitModule(): Currently the only supported "as" type for this function is "script" but received "%s" instead. This warning was generated for `href` "%s". In the future other module types will be supported, aligning with the import-attributes proposal. Learn more here: (https://github.com/tc39/proposal-import-attributes)',m,u)}typeof u=="string"&&(typeof l=="object"&&l!==null?(l.as==null||l.as==="script")&&(m=a(l.as,l.crossOrigin),c.d.M(u,{crossOrigin:m,integrity:typeof l.integrity=="string"?l.integrity:void 0,nonce:typeof l.nonce=="string"?l.nonce:void 0})):l==null&&c.d.M(u))},ie.preload=function(u,l){var m="";if(typeof u=="string"&&u||(m+=" The `href` argument encountered was "+n(u)+"."),l==null||typeof l!="object"?m+=" The `options` argument encountered was "+n(l)+".":typeof l.as=="string"&&l.as||(m+=" The `as` option encountered was "+n(l.as)+"."),m&&console.error('ReactDOM.preload(): Expected two arguments, a non-empty `href` string and an `options` object with an `as` property valid for a `<link rel="preload" as="..." />` tag.%s',m),typeof u=="string"&&typeof l=="object"&&l!==null&&typeof l.as=="string"){m=l.as;var b=a(m,l.crossOrigin);c.d.L(u,m,{crossOrigin:b,integrity:typeof l.integrity=="string"?l.integrity:void 0,nonce:typeof l.nonce=="string"?l.nonce:void 0,type:typeof l.type=="string"?l.type:void 0,fetchPriority:typeof l.fetchPriority=="string"?l.fetchPriority:void 0,referrerPolicy:typeof l.referrerPolicy=="string"?l.referrerPolicy:void 0,imageSrcSet:typeof l.imageSrcSet=="string"?l.imageSrcSet:void 0,imageSizes:typeof l.imageSizes=="string"?l.imageSizes:void 0,media:typeof l.media=="string"?l.media:void 0})}},ie.preloadModule=function(u,l){var m="";typeof u=="string"&&u||(m+=" The `href` argument encountered was "+n(u)+"."),l!==void 0&&typeof l!="object"?m+=" The `options` argument encountered was "+n(l)+".":l&&"as"in l&&typeof l.as!="string"&&(m+=" The `as` option encountered was "+n(l.as)+"."),m&&console.error('ReactDOM.preloadModule(): Expected two arguments, a non-empty `href` string and, optionally, an `options` object with an `as` property valid for a `<link rel="modulepreload" as="..." />` tag.%s',m),typeof u=="string"&&(l?(m=a(l.as,l.crossOrigin),c.d.m(u,{as:typeof l.as=="string"&&l.as!=="script"?l.as:void 0,crossOrigin:m,integrity:typeof l.integrity=="string"?l.integrity:void 0})):c.d.m(u))},ie.requestFormReset=function(u){c.d.r(u)},ie.unstable_batchedUpdates=function(u,l){return u(l)},ie.useFormState=function(u,l,m){return i().useFormState(u,l,m)},ie.useFormStatus=function(){return i().useHostTransitionStatus()},ie.version="19.2.4",typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"&&typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop=="function"&&__REACT_DEVTOOLS_GLOBAL_HOOK__.registerInternalModuleStop(Error())})(),ie}var yr;function Va(){return yr||(yr=1,kt.exports=Wa()),kt.exports}/**
|
|
14
|
+
* react-router v7.13.1
|
|
15
|
+
*
|
|
16
|
+
* Copyright (c) Remix Software Inc.
|
|
17
|
+
*
|
|
18
|
+
* This source code is licensed under the MIT license found in the
|
|
19
|
+
* LICENSE.md file in the root directory of this source tree.
|
|
20
|
+
*
|
|
21
|
+
* @license MIT
|
|
22
|
+
*/var Kr=e=>{throw TypeError(e)},Ka=(e,t,r)=>t.has(e)||Kr("Cannot "+r),Nt=(e,t,r)=>(Ka(e,t,"read from private field"),r?r.call(e):t.get(e)),Ya=(e,t,r)=>t.has(e)?Kr("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,r),gr="popstate";function vr(e){return typeof e=="object"&&e!=null&&"pathname"in e&&"search"in e&&"hash"in e&&"state"in e&&"key"in e}function Ga(e={}){function t(a,n){var f;let o=(f=n.state)==null?void 0:f.masked,{pathname:i,search:s,hash:c}=o||a.location;return ot("",{pathname:i,search:s,hash:c},n.state&&n.state.usr||null,n.state&&n.state.key||"default",o?{pathname:a.location.pathname,search:a.location.search,hash:a.location.hash}:void 0)}function r(a,n){return typeof n=="string"?n:xe(n)}return qa(t,r,null,e)}function N(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function X(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function Ja(){return Math.random().toString(36).substring(2,10)}function wr(e,t){return{usr:e.state,key:e.key,idx:t,masked:e.unstable_mask?{pathname:e.pathname,search:e.search,hash:e.hash}:void 0}}function ot(e,t,r=null,a,n){return{pathname:typeof e=="string"?e:e.pathname,search:"",hash:"",...typeof t=="string"?Oe(t):t,state:r,key:t&&t.key||a||Ja(),unstable_mask:n}}function xe({pathname:e="/",search:t="",hash:r=""}){return t&&t!=="?"&&(e+=t.charAt(0)==="?"?t:"?"+t),r&&r!=="#"&&(e+=r.charAt(0)==="#"?r:"#"+r),e}function Oe(e){let t={};if(e){let r=e.indexOf("#");r>=0&&(t.hash=e.substring(r),e=e.substring(0,r));let a=e.indexOf("?");a>=0&&(t.search=e.substring(a),e=e.substring(0,a)),e&&(t.pathname=e)}return t}function qa(e,t,r,a={}){let{window:n=document.defaultView,v5Compat:o=!1}=a,i=n.history,s="POP",c=null,f=p();f==null&&(f=0,i.replaceState({...i.state,idx:f},""));function p(){return(i.state||{idx:null}).idx}function u(){s="POP";let R=p(),C=R==null?null:R-f;f=R,c&&c({action:s,location:S.location,delta:C})}function l(R,C){s="PUSH";let P=vr(R)?R:ot(S.location,R,C);f=p()+1;let _=wr(P,f),V=S.createHref(P.unstable_mask||P);try{i.pushState(_,"",V)}catch($){if($ instanceof DOMException&&$.name==="DataCloneError")throw $;n.location.assign(V)}o&&c&&c({action:s,location:S.location,delta:1})}function m(R,C){s="REPLACE";let P=vr(R)?R:ot(S.location,R,C);f=p();let _=wr(P,f),V=S.createHref(P.unstable_mask||P);i.replaceState(_,"",V),o&&c&&c({action:s,location:S.location,delta:0})}function b(R){return Yr(R)}let S={get action(){return s},get location(){return e(n,i)},listen(R){if(c)throw new Error("A history only accepts one active listener");return n.addEventListener(gr,u),c=R,()=>{n.removeEventListener(gr,u),c=null}},createHref(R){return t(n,R)},createURL:b,encodeLocation(R){let C=b(R);return{pathname:C.pathname,search:C.search,hash:C.hash}},push:l,replace:m,go(R){return i.go(R)}};return S}function Yr(e,t=!1){let r="http://localhost";typeof window<"u"&&(r=window.location.origin!=="null"?window.location.origin:window.location.href),N(r,"No window.location.(origin|href) available to create URL");let a=typeof e=="string"?e:xe(e);return a=a.replace(/ $/,"%20"),!t&&a.startsWith("//")&&(a=r+a),new URL(a,r)}var rt,br=class{constructor(e){if(Ya(this,rt,new Map),e)for(let[t,r]of e)this.set(t,r)}get(e){if(Nt(this,rt).has(e))return Nt(this,rt).get(e);if(e.defaultValue!==void 0)return e.defaultValue;throw new Error("No value found for context")}set(e,t){Nt(this,rt).set(e,t)}};rt=new WeakMap;var Xa=new Set(["lazy","caseSensitive","path","id","index","children"]);function Qa(e){return Xa.has(e)}var Za=new Set(["lazy","caseSensitive","path","id","index","middleware","children"]);function en(e){return Za.has(e)}function tn(e){return e.index===!0}function it(e,t,r=[],a={},n=!1){return e.map((o,i)=>{let s=[...r,String(i)],c=typeof o.id=="string"?o.id:s.join("-");if(N(o.index!==!0||!o.children,"Cannot specify children on an index route"),N(n||!a[c],`Found a route id collision on id "${c}". Route id's must be globally unique within Data Router usages`),tn(o)){let f={...o,id:c};return a[c]=Rr(f,t(f)),f}else{let f={...o,id:c,children:void 0};return a[c]=Rr(f,t(f)),o.children&&(f.children=it(o.children,t,s,a,n)),f}})}function Rr(e,t){return Object.assign(e,{...t,...typeof t.lazy=="object"&&t.lazy!=null?{lazy:{...e.lazy,...t.lazy}}:{}})}function _e(e,t,r="/"){return at(e,t,r,!1)}function at(e,t,r,a){let n=typeof t=="string"?Oe(t):t,o=we(n.pathname||"/",r);if(o==null)return null;let i=Gr(e);an(i);let s=null;for(let c=0;s==null&&c<i.length;++c){let f=pn(o);s=hn(i[c],f,a)}return s}function rn(e,t){let{route:r,pathname:a,params:n}=e;return{id:r.id,pathname:a,params:n,data:t[r.id],loaderData:t[r.id],handle:r.handle}}function Gr(e,t=[],r=[],a="",n=!1){let o=(i,s,c=n,f)=>{let p={relativePath:f===void 0?i.path||"":f,caseSensitive:i.caseSensitive===!0,childrenIndex:s,route:i};if(p.relativePath.startsWith("/")){if(!p.relativePath.startsWith(a)&&c)return;N(p.relativePath.startsWith(a),`Absolute route path "${p.relativePath}" nested under path "${a}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),p.relativePath=p.relativePath.slice(a.length)}let u=Ee([a,p.relativePath]),l=r.concat(p);i.children&&i.children.length>0&&(N(i.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${u}".`),Gr(i.children,t,l,u,c)),!(i.path==null&&!i.index)&&t.push({path:u,score:dn(u,i.index),routesMeta:l})};return e.forEach((i,s)=>{var c;if(i.path===""||!((c=i.path)!=null&&c.includes("?")))o(i,s);else for(let f of Jr(i.path))o(i,s,!0,f)}),t}function Jr(e){let t=e.split("/");if(t.length===0)return[];let[r,...a]=t,n=r.endsWith("?"),o=r.replace(/\?$/,"");if(a.length===0)return n?[o,""]:[o];let i=Jr(a.join("/")),s=[];return s.push(...i.map(c=>c===""?o:[o,c].join("/"))),n&&s.push(...i),s.map(c=>e.startsWith("/")&&c===""?"/":c)}function an(e){e.sort((t,r)=>t.score!==r.score?r.score-t.score:fn(t.routesMeta.map(a=>a.childrenIndex),r.routesMeta.map(a=>a.childrenIndex)))}var nn=/^:[\w-]+$/,on=3,ln=2,sn=1,un=10,cn=-2,Er=e=>e==="*";function dn(e,t){let r=e.split("/"),a=r.length;return r.some(Er)&&(a+=cn),t&&(a+=ln),r.filter(n=>!Er(n)).reduce((n,o)=>n+(nn.test(o)?on:o===""?sn:un),a)}function fn(e,t){return e.length===t.length&&e.slice(0,-1).every((a,n)=>a===t[n])?e[e.length-1]-t[t.length-1]:0}function hn(e,t,r=!1){let{routesMeta:a}=e,n={},o="/",i=[];for(let s=0;s<a.length;++s){let c=a[s],f=s===a.length-1,p=o==="/"?t:t.slice(o.length)||"/",u=Pt({path:c.relativePath,caseSensitive:c.caseSensitive,end:f},p),l=c.route;if(!u&&f&&r&&!a[a.length-1].route.index&&(u=Pt({path:c.relativePath,caseSensitive:c.caseSensitive,end:!1},p)),!u)return null;Object.assign(n,u.params),i.push({params:n,pathname:Ee([o,u.pathname]),pathnameBase:vn(Ee([o,u.pathnameBase])),route:l}),u.pathnameBase!=="/"&&(o=Ee([o,u.pathnameBase]))}return i}function Pt(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[r,a]=mn(e.path,e.caseSensitive,e.end),n=t.match(r);if(!n)return null;let o=n[0],i=o.replace(/(.)\/+$/,"$1"),s=n.slice(1);return{params:a.reduce((f,{paramName:p,isOptional:u},l)=>{if(p==="*"){let b=s[l]||"";i=o.slice(0,o.length-b.length).replace(/(.)\/+$/,"$1")}const m=s[l];return u&&!m?f[p]=void 0:f[p]=(m||"").replace(/%2F/g,"/"),f},{}),pathname:o,pathnameBase:i,pattern:e}}function mn(e,t=!1,r=!0){X(e==="*"||!e.endsWith("*")||e.endsWith("/*"),`Route path "${e}" will be treated as if it were "${e.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${e.replace(/\*$/,"/*")}".`);let a=[],n="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(i,s,c,f,p)=>{if(a.push({paramName:s,isOptional:c!=null}),c){let u=p.charAt(f+i.length);return u&&u!=="/"?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return e.endsWith("*")?(a.push({paramName:"*"}),n+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?n+="\\/*$":e!==""&&e!=="/"&&(n+="(?:(?=\\/|$))"),[new RegExp(n,t?void 0:"i"),a]}function pn(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return X(!1,`The URL path "${e}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${t}).`),e}}function we(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let r=t.endsWith("/")?t.length-1:t.length,a=e.charAt(r);return a&&a!=="/"?null:e.slice(r)||"/"}function yn({basename:e,pathname:t}){return t==="/"?e:Ee([e,t])}var qr=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Vt=e=>qr.test(e);function gn(e,t="/"){let{pathname:r,search:a="",hash:n=""}=typeof e=="string"?Oe(e):e,o;return r?(r=r.replace(/\/\/+/g,"/"),r.startsWith("/")?o=Sr(r.substring(1),"/"):o=Sr(r,t)):o=t,{pathname:o,search:wn(a),hash:bn(n)}}function Sr(e,t){let r=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(n=>{n===".."?r.length>1&&r.pop():n!=="."&&r.push(n)}),r.length>1?r.join("/"):"/"}function Ut(e,t,r,a){return`Cannot include a '${e}' character in a manually specified \`to.${t}\` field [${JSON.stringify(a)}]. Please separate it out to the \`to.${r}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function Xr(e){return e.filter((t,r)=>r===0||t.route.path&&t.route.path.length>0)}function Ct(e){let t=Xr(e);return t.map((r,a)=>a===t.length-1?r.pathname:r.pathnameBase)}function st(e,t,r,a=!1){let n;typeof e=="string"?n=Oe(e):(n={...e},N(!n.pathname||!n.pathname.includes("?"),Ut("?","pathname","search",n)),N(!n.pathname||!n.pathname.includes("#"),Ut("#","pathname","hash",n)),N(!n.search||!n.search.includes("#"),Ut("#","search","hash",n)));let o=e===""||n.pathname==="",i=o?"/":n.pathname,s;if(i==null)s=r;else{let u=t.length-1;if(!a&&i.startsWith("..")){let l=i.split("/");for(;l[0]==="..";)l.shift(),u-=1;n.pathname=l.join("/")}s=u>=0?t[u]:"/"}let c=gn(n,s),f=i&&i!=="/"&&i.endsWith("/"),p=(o||i===".")&&r.endsWith("/");return!c.pathname.endsWith("/")&&(f||p)&&(c.pathname+="/"),c}var Ee=e=>e.join("/").replace(/\/\/+/g,"/"),vn=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),wn=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,bn=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e,ut=class{constructor(e,t,r,a=!1){this.status=e,this.statusText=t||"",this.internal=a,r instanceof Error?(this.data=r.toString(),this.error=r):this.data=r}};function lt(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}function ct(e){return e.map(t=>t.route.path).filter(Boolean).join("/").replace(/\/\/*/g,"/")||"/"}var Qr=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function Zr(e,t){let r=e;if(typeof r!="string"||!qr.test(r))return{absoluteURL:void 0,isExternal:!1,to:r};let a=r,n=!1;if(Qr)try{let o=new URL(window.location.href),i=r.startsWith("//")?new URL(o.protocol+r):new URL(r),s=we(i.pathname,t);i.origin===o.origin&&s!=null?r=s+i.search+i.hash:n=!0}catch{X(!1,`<Link to="${r}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:a,isExternal:n,to:r}}var ke=Symbol("Uninstrumented");function Rn(e,t){let r={lazy:[],"lazy.loader":[],"lazy.action":[],"lazy.middleware":[],middleware:[],loader:[],action:[]};e.forEach(n=>n({id:t.id,index:t.index,path:t.path,instrument(o){let i=Object.keys(r);for(let s of i)o[s]&&r[s].push(o[s])}}));let a={};if(typeof t.lazy=="function"&&r.lazy.length>0){let n=Ye(r.lazy,t.lazy,()=>{});n&&(a.lazy=n)}if(typeof t.lazy=="object"){let n=t.lazy;["middleware","loader","action"].forEach(o=>{let i=n[o],s=r[`lazy.${o}`];if(typeof i=="function"&&s.length>0){let c=Ye(s,i,()=>{});c&&(a.lazy=Object.assign(a.lazy||{},{[o]:c}))}})}return["loader","action"].forEach(n=>{let o=t[n];if(typeof o=="function"&&r[n].length>0){let i=o[ke]??o,s=Ye(r[n],i,(...c)=>xr(c[0]));s&&(n==="loader"&&i.hydrate===!0&&(s.hydrate=!0),s[ke]=i,a[n]=s)}}),t.middleware&&t.middleware.length>0&&r.middleware.length>0&&(a.middleware=t.middleware.map(n=>{let o=n[ke]??n,i=Ye(r.middleware,o,(...s)=>xr(s[0]));return i?(i[ke]=o,i):n})),a}function En(e,t){let r={navigate:[],fetch:[]};if(t.forEach(a=>a({instrument(n){let o=Object.keys(n);for(let i of o)n[i]&&r[i].push(n[i])}})),r.navigate.length>0){let a=e.navigate[ke]??e.navigate,n=Ye(r.navigate,a,(...o)=>{let[i,s]=o;return{to:typeof i=="number"||typeof i=="string"?i:i?xe(i):".",...Lr(e,s??{})}});n&&(n[ke]=a,e.navigate=n)}if(r.fetch.length>0){let a=e.fetch[ke]??e.fetch,n=Ye(r.fetch,a,(...o)=>{let[i,,s,c]=o;return{href:s??".",fetcherKey:i,...Lr(e,c??{})}});n&&(n[ke]=a,e.fetch=n)}return e}function Ye(e,t,r){return e.length===0?null:async(...a)=>{let n=await ea(e,r(...a),()=>t(...a),e.length-1);if(n.type==="error")throw n.value;return n.value}}async function ea(e,t,r,a){let n=e[a],o;if(n){let i,s=async()=>(i?console.error("You cannot call instrumented handlers more than once"):i=ea(e,t,r,a-1),o=await i,N(o,"Expected a result"),o.type==="error"&&o.value instanceof Error?{status:"error",error:o.value}:{status:"success",error:void 0});try{await n(s,t)}catch(c){console.error("An instrumentation function threw an error:",c)}i||await s(),await i}else try{o={type:"success",value:await r()}}catch(i){o={type:"error",value:i}}return o||{type:"error",value:new Error("No result assigned in instrumentation chain.")}}function xr(e){let{request:t,context:r,params:a,unstable_pattern:n}=e;return{request:Sn(t),params:{...a},unstable_pattern:n,context:xn(r)}}function Lr(e,t){return{currentUrl:xe(e.state.location),..."formMethod"in t?{formMethod:t.formMethod}:{},..."formEncType"in t?{formEncType:t.formEncType}:{},..."formData"in t?{formData:t.formData}:{},..."body"in t?{body:t.body}:{}}}function Sn(e){return{method:e.method,url:e.url,headers:{get:(...t)=>e.headers.get(...t)}}}function xn(e){if(Pn(e)){let t={...e};return Object.freeze(t),t}else return{get:t=>e.get(t)}}var Ln=Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function Pn(e){if(e===null||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t===Object.prototype||t===null||Object.getOwnPropertyNames(t).sort().join("\0")===Ln}var ta=["POST","PUT","PATCH","DELETE"],Cn=new Set(ta),Dn=["GET",...ta],Mn=new Set(Dn),ra=new Set([301,302,303,307,308]),On=new Set([307,308]),$t={state:"idle",location:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},Tn={state:"idle",data:void 0,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0},Ze={state:"unblocked",proceed:void 0,reset:void 0,location:void 0},_n=e=>({hasErrorBoundary:!!e.hasErrorBoundary}),aa="remix-router-transitions",na=Symbol("ResetLoaderData");function Fn(e){const t=e.window?e.window:typeof window<"u"?window:void 0,r=typeof t<"u"&&typeof t.document<"u"&&typeof t.document.createElement<"u";N(e.routes.length>0,"You must provide a non-empty routes array to createRouter");let a=e.hydrationRouteProperties||[],n=e.mapRouteProperties||_n,o=n;if(e.unstable_instrumentations){let d=e.unstable_instrumentations;o=h=>({...n(h),...Rn(d.map(g=>g.route).filter(Boolean),h)})}let i={},s=it(e.routes,o,void 0,i),c,f=e.basename||"/";f.startsWith("/")||(f=`/${f}`);let p=e.dataStrategy||An,u={...e.future},l=null,m=new Set,b=null,S=null,R=null,C=e.hydrationData!=null,P=_e(s,e.history.location,f),_=!1,V=null,$,H;if(P==null&&!e.patchRoutesOnNavigation){let d=ve(404,{pathname:e.history.location.pathname}),{matches:h,route:g}=bt(s);$=!0,H=!$,P=h,V={[g.id]:d}}else if(P&&!e.hydrationData&&pt(P,s,e.history.location.pathname).active&&(P=null),P)if(P.some(d=>d.route.lazy))$=!1,H=!$;else if(!P.some(d=>Kt(d.route)))$=!0,H=!$;else{let d=e.hydrationData?e.hydrationData.loaderData:null,h=e.hydrationData?e.hydrationData.errors:null,g=P;if(h){let w=P.findIndex(E=>h[E.route.id]!==void 0);g=g.slice(0,w+1)}H=!1,$=g.every(w=>{let E=oa(w.route,d,h);return H=H||E.renderFallback,!E.shouldLoad})}else{$=!1,H=!$,P=[];let d=pt(null,s,e.history.location.pathname);d.active&&d.matches&&(_=!0,P=d.matches)}let Q,y={historyAction:e.history.action,location:e.history.location,matches:P,initialized:$,renderFallback:H,navigation:$t,restoreScrollPosition:e.hydrationData!=null?!1:null,preventScrollReset:!1,revalidation:"idle",loaderData:e.hydrationData&&e.hydrationData.loaderData||{},actionData:e.hydrationData&&e.hydrationData.actionData||null,errors:e.hydrationData&&e.hydrationData.errors||V,fetchers:new Map,blockers:new Map},B="POP",k=null,re=!1,z,ue=!1,K=new Map,Z=null,Y=!1,G=!1,me=new Set,I=new Map,ee=0,ce=-1,Re=new Map,ae=new Set,pe=new Map,ye=new Map,de=new Set,Ne=new Map,ht,Ue=null;function xa(){if(l=e.history.listen(({action:d,location:h,delta:g})=>{if(ht){ht(),ht=void 0;return}X(Ne.size===0||g!=null,"You are trying to use a blocker on a POP navigation to a location that was not created by @remix-run/router. This will fail silently in production. This can happen if you are navigating outside the router via `window.history.pushState`/`window.location.hash` instead of using router navigation APIs. This can also happen if you are using createHashRouter and the user manually changes the URL.");let w=cr({currentLocation:y.location,nextLocation:h,historyAction:d});if(w&&g!=null){let E=new Promise(D=>{ht=D});e.history.go(g*-1),mt(w,{state:"blocked",location:h,proceed(){mt(w,{state:"proceeding",proceed:void 0,reset:void 0,location:h}),E.then(()=>e.history.go(g))},reset(){let D=new Map(y.blockers);D.set(w,Ze),ne({blockers:D})}}),k==null||k.resolve(),k=null;return}return $e(d,h)}),r){ro(t,K);let d=()=>ao(t,K);t.addEventListener("pagehide",d),Z=()=>t.removeEventListener("pagehide",d)}return y.initialized||$e("POP",y.location,{initialHydration:!0}),Q}function La(){l&&l(),Z&&Z(),m.clear(),z&&z.abort(),y.fetchers.forEach((d,h)=>Tt(h)),y.blockers.forEach((d,h)=>ur(h))}function Pa(d){return m.add(d),()=>m.delete(d)}function ne(d,h={}){d.matches&&(d.matches=d.matches.map(E=>{let D=i[E.route.id],O=E.route;return O.element!==D.element||O.errorElement!==D.errorElement||O.hydrateFallbackElement!==D.hydrateFallbackElement?{...E,route:D}:E})),y={...y,...d};let g=[],w=[];y.fetchers.forEach((E,D)=>{E.state==="idle"&&(de.has(D)?g.push(D):w.push(D))}),de.forEach(E=>{!y.fetchers.has(E)&&!I.has(E)&&g.push(E)}),[...m].forEach(E=>E(y,{deletedFetchers:g,newErrors:d.errors??null,viewTransitionOpts:h.viewTransitionOpts,flushSync:h.flushSync===!0})),g.forEach(E=>Tt(E)),w.forEach(E=>y.fetchers.delete(E))}function We(d,h,{flushSync:g}={}){var F,M;let w=y.actionData!=null&&y.navigation.formMethod!=null&&le(y.navigation.formMethod)&&y.navigation.state==="loading"&&((F=d.state)==null?void 0:F._isRedirect)!==!0,E;h.actionData?Object.keys(h.actionData).length>0?E=h.actionData:E=null:w?E=y.actionData:E=null;let D=h.loaderData?Nr(y.loaderData,h.loaderData,h.matches||[],h.errors):y.loaderData,O=y.blockers;O.size>0&&(O=new Map(O),O.forEach((U,A)=>O.set(A,Ze)));let L=Y?!1:fr(d,h.matches||y.matches),x=re===!0||y.navigation.formMethod!=null&&le(y.navigation.formMethod)&&((M=d.state)==null?void 0:M._isRedirect)!==!0;c&&(s=c,c=void 0),Y||B==="POP"||(B==="PUSH"?e.history.push(d,d.state):B==="REPLACE"&&e.history.replace(d,d.state));let T;if(B==="POP"){let U=K.get(y.location.pathname);U&&U.has(d.pathname)?T={currentLocation:y.location,nextLocation:d}:K.has(d.pathname)&&(T={currentLocation:d,nextLocation:y.location})}else if(ue){let U=K.get(y.location.pathname);U?U.add(d.pathname):(U=new Set([d.pathname]),K.set(y.location.pathname,U)),T={currentLocation:y.location,nextLocation:d}}ne({...h,actionData:E,loaderData:D,historyAction:B,location:d,initialized:!0,renderFallback:!1,navigation:$t,revalidation:"idle",restoreScrollPosition:L,preventScrollReset:x,blockers:O},{viewTransitionOpts:T,flushSync:g===!0}),B="POP",re=!1,ue=!1,Y=!1,G=!1,k==null||k.resolve(),k=null,Ue==null||Ue.resolve(),Ue=null}async function rr(d,h){if(k==null||k.resolve(),k=null,typeof d=="number"){k||(k=jr());let J=k.promise;return e.history.go(d),J}let g=It(y.location,y.matches,f,d,h==null?void 0:h.fromRouteId,h==null?void 0:h.relative),{path:w,submission:E,error:D}=Pr(!1,g,h),O;h!=null&&h.unstable_mask&&(O={pathname:"",search:"",hash:"",...typeof h.unstable_mask=="string"?Oe(h.unstable_mask):{...y.location.unstable_mask,...h.unstable_mask}});let L=y.location,x=ot(L,w,h&&h.state,void 0,O);x={...x,...e.history.encodeLocation(x)};let T=h&&h.replace!=null?h.replace:void 0,F="PUSH";T===!0?F="REPLACE":T===!1||E!=null&&le(E.formMethod)&&E.formAction===y.location.pathname+y.location.search&&(F="REPLACE");let M=h&&"preventScrollReset"in h?h.preventScrollReset===!0:void 0,U=(h&&h.flushSync)===!0,A=cr({currentLocation:L,nextLocation:x,historyAction:F});if(A){mt(A,{state:"blocked",location:x,proceed(){mt(A,{state:"proceeding",proceed:void 0,reset:void 0,location:x}),rr(d,h)},reset(){let J=new Map(y.blockers);J.set(A,Ze),ne({blockers:J})}});return}await $e(F,x,{submission:E,pendingError:D,preventScrollReset:M,replace:h&&h.replace,enableViewTransition:h&&h.viewTransition,flushSync:U,callSiteDefaultShouldRevalidate:h&&h.unstable_defaultShouldRevalidate})}function Ca(){Ue||(Ue=jr()),Ot(),ne({revalidation:"loading"});let d=Ue.promise;return y.navigation.state==="submitting"?d:y.navigation.state==="idle"?($e(y.historyAction,y.location,{startUninterruptedRevalidation:!0}),d):($e(B||y.historyAction,y.navigation.location,{overrideNavigation:y.navigation,enableViewTransition:ue===!0}),d)}async function $e(d,h,g){z&&z.abort(),z=null,B=d,Y=(g&&g.startUninterruptedRevalidation)===!0,Aa(y.location,y.matches),re=(g&&g.preventScrollReset)===!0,ue=(g&&g.enableViewTransition)===!0;let w=c||s,E=g&&g.overrideNavigation,D=g!=null&&g.initialHydration&&y.matches&&y.matches.length>0&&!_?y.matches:_e(w,h,f),O=(g&&g.flushSync)===!0;if(D&&y.initialized&&!G&&Kn(y.location,h)&&!(g&&g.submission&&le(g.submission.formMethod))){We(h,{matches:D},{flushSync:O});return}let L=pt(D,w,h.pathname);if(L.active&&L.matches&&(D=L.matches),!D){let{error:te,notFoundMatches:se,route:W}=_t(h.pathname);We(h,{matches:se,loaderData:{},errors:{[W.id]:te}},{flushSync:O});return}z=new AbortController;let x=Ke(e.history,h,z.signal,g&&g.submission),T=e.getContext?await e.getContext():new br,F;if(g&&g.pendingError)F=[Fe(D).route.id,{type:"error",error:g.pendingError}];else if(g&&g.submission&&le(g.submission.formMethod)){let te=await Da(x,h,g.submission,D,T,L.active,g&&g.initialHydration===!0,{replace:g.replace,flushSync:O});if(te.shortCircuited)return;if(te.pendingActionResult){let[se,W]=te.pendingActionResult;if(fe(W)&<(W.error)&&W.error.status===404){z=null,We(h,{matches:te.matches,loaderData:{},errors:{[se]:W.error}});return}}D=te.matches||D,F=te.pendingActionResult,E=At(h,g.submission),O=!1,L.active=!1,x=Ke(e.history,x.url,x.signal)}let{shortCircuited:M,matches:U,loaderData:A,errors:J}=await Ma(x,h,D,T,L.active,E,g&&g.submission,g&&g.fetcherSubmission,g&&g.replace,g&&g.initialHydration===!0,O,F,g&&g.callSiteDefaultShouldRevalidate);M||(z=null,We(h,{matches:U||D,...Ur(F),loaderData:A,errors:J}))}async function Da(d,h,g,w,E,D,O,L={}){Ot();let x=eo(h,g);if(ne({navigation:x},{flushSync:L.flushSync===!0}),D){let M=await yt(w,h.pathname,d.signal);if(M.type==="aborted")return{shortCircuited:!0};if(M.type==="error"){if(M.partialMatches.length===0){let{matches:A,route:J}=bt(s);return{matches:A,pendingActionResult:[J.id,{type:"error",error:M.error}]}}let U=Fe(M.partialMatches).route.id;return{matches:M.partialMatches,pendingActionResult:[U,{type:"error",error:M.error}]}}else if(M.matches)w=M.matches;else{let{notFoundMatches:U,error:A,route:J}=_t(h.pathname);return{matches:U,pendingActionResult:[J.id,{type:"error",error:A}]}}}let T,F=St(w,h);if(!F.route.action&&!F.route.lazy)T={type:"error",error:ve(405,{method:d.method,pathname:h.pathname,routeId:F.route.id})};else{let M=Ge(o,i,d,w,F,O?[]:a,E),U=await qe(d,M,E,null);if(T=U[F.route.id],!T){for(let A of w)if(U[A.route.id]){T=U[A.route.id];break}}if(d.signal.aborted)return{shortCircuited:!0}}if(He(T)){let M;return L&&L.replace!=null?M=L.replace:M=_r(T.response.headers.get("Location"),new URL(d.url),f,e.history)===y.location.pathname+y.location.search,await Ae(d,T,!0,{submission:g,replace:M}),{shortCircuited:!0}}if(fe(T)){let M=Fe(w,F.route.id);return(L&&L.replace)!==!0&&(B="PUSH"),{matches:w,pendingActionResult:[M.route.id,T,F.route.id]}}return{matches:w,pendingActionResult:[F.route.id,T]}}async function Ma(d,h,g,w,E,D,O,L,x,T,F,M,U){let A=D||At(h,O),J=O||L||Ar(A),te=!Y&&!T;if(E){if(te){let oe=ar(M);ne({navigation:A,...oe!==void 0?{actionData:oe}:{}},{flushSync:F})}let j=await yt(g,h.pathname,d.signal);if(j.type==="aborted")return{shortCircuited:!0};if(j.type==="error"){if(j.partialMatches.length===0){let{matches:Ve,route:Ie}=bt(s);return{matches:Ve,loaderData:{},errors:{[Ie.id]:j.error}}}let oe=Fe(j.partialMatches).route.id;return{matches:j.partialMatches,loaderData:{},errors:{[oe]:j.error}}}else if(j.matches)g=j.matches;else{let{error:oe,notFoundMatches:Ve,route:Ie}=_t(h.pathname);return{matches:Ve,loaderData:{},errors:{[Ie.id]:oe}}}}let se=c||s,{dsMatches:W,revalidatingFetchers:ge}=Cr(d,w,o,i,e.history,y,g,J,h,T?[]:a,T===!0,G,me,de,pe,ae,se,f,e.patchRoutesOnNavigation!=null,M,U);if(ce=++ee,!e.dataStrategy&&!W.some(j=>j.shouldLoad)&&!W.some(j=>j.route.middleware&&j.route.middleware.length>0)&&ge.length===0){let j=lr();return We(h,{matches:g,loaderData:{},errors:M&&fe(M[1])?{[M[0]]:M[1].error}:null,...Ur(M),...j?{fetchers:new Map(y.fetchers)}:{}},{flushSync:F}),{shortCircuited:!0}}if(te){let j={};if(!E){j.navigation=A;let oe=ar(M);oe!==void 0&&(j.actionData=oe)}ge.length>0&&(j.fetchers=Oa(ge)),ne(j,{flushSync:F})}ge.forEach(j=>{De(j.key),j.controller&&I.set(j.key,j.controller)});let je=()=>ge.forEach(j=>De(j.key));z&&z.signal.addEventListener("abort",je);let{loaderResults:Xe,fetcherResults:Te}=await nr(W,ge,d,w);if(d.signal.aborted)return{shortCircuited:!0};z&&z.signal.removeEventListener("abort",je),ge.forEach(j=>I.delete(j.key));let Se=Rt(Xe);if(Se)return await Ae(d,Se.result,!0,{replace:x}),{shortCircuited:!0};if(Se=Rt(Te),Se)return ae.add(Se.key),await Ae(d,Se.result,!0,{replace:x}),{shortCircuited:!0};let{loaderData:Ft,errors:Qe}=kr(y,g,Xe,M,ge,Te);T&&y.errors&&(Qe={...y.errors,...Qe});let ze=lr(),gt=sr(ce),vt=ze||gt||ge.length>0;return{matches:g,loaderData:Ft,errors:Qe,...vt?{fetchers:new Map(y.fetchers)}:{}}}function ar(d){if(d&&!fe(d[1]))return{[d[0]]:d[1].data};if(y.actionData)return Object.keys(y.actionData).length===0?null:y.actionData}function Oa(d){return d.forEach(h=>{let g=y.fetchers.get(h.key),w=et(void 0,g?g.data:void 0);y.fetchers.set(h.key,w)}),new Map(y.fetchers)}async function Ta(d,h,g,w){De(d);let E=(w&&w.flushSync)===!0,D=c||s,O=It(y.location,y.matches,f,g,h,w==null?void 0:w.relative),L=_e(D,O,f),x=pt(L,D,O);if(x.active&&x.matches&&(L=x.matches),!L){Ce(d,h,ve(404,{pathname:O}),{flushSync:E});return}let{path:T,submission:F,error:M}=Pr(!0,O,w);if(M){Ce(d,h,M,{flushSync:E});return}let U=e.getContext?await e.getContext():new br,A=(w&&w.preventScrollReset)===!0;if(F&&le(F.formMethod)){await _a(d,h,T,L,U,x.active,E,A,F,w&&w.unstable_defaultShouldRevalidate);return}pe.set(d,{routeId:h,path:T}),await Fa(d,h,T,L,U,x.active,E,A,F)}async function _a(d,h,g,w,E,D,O,L,x,T){Ot(),pe.delete(d);let F=y.fetchers.get(d);Pe(d,to(x,F),{flushSync:O});let M=new AbortController,U=Ke(e.history,g,M.signal,x);if(D){let q=await yt(w,new URL(U.url).pathname,U.signal,d);if(q.type==="aborted")return;if(q.type==="error"){Ce(d,h,q.error,{flushSync:O});return}else if(q.matches)w=q.matches;else{Ce(d,h,ve(404,{pathname:g}),{flushSync:O});return}}let A=St(w,g);if(!A.route.action&&!A.route.lazy){let q=ve(405,{method:x.formMethod,pathname:g,routeId:h});Ce(d,h,q,{flushSync:O});return}I.set(d,M);let J=ee,te=Ge(o,i,U,w,A,a,E),se=await qe(U,te,E,d),W=se[A.route.id];if(!W){for(let q of te)if(se[q.route.id]){W=se[q.route.id];break}}if(U.signal.aborted){I.get(d)===M&&I.delete(d);return}if(de.has(d)){if(He(W)||fe(W)){Pe(d,Me(void 0));return}}else{if(He(W))if(I.delete(d),ce>J){Pe(d,Me(void 0));return}else return ae.add(d),Pe(d,et(x)),Ae(U,W,!1,{fetcherSubmission:x,preventScrollReset:L});if(fe(W)){Ce(d,h,W.error);return}}let ge=y.navigation.location||y.location,je=Ke(e.history,ge,M.signal),Xe=c||s,Te=y.navigation.state!=="idle"?_e(Xe,y.navigation.location,f):y.matches;N(Te,"Didn't find any matches after fetcher action");let Se=++ee;Re.set(d,Se);let Ft=et(x,W.data);y.fetchers.set(d,Ft);let{dsMatches:Qe,revalidatingFetchers:ze}=Cr(je,E,o,i,e.history,y,Te,x,ge,a,!1,G,me,de,pe,ae,Xe,f,e.patchRoutesOnNavigation!=null,[A.route.id,W],T);ze.filter(q=>q.key!==d).forEach(q=>{let wt=q.key,mr=y.fetchers.get(wt),Ia=et(void 0,mr?mr.data:void 0);y.fetchers.set(wt,Ia),De(wt),q.controller&&I.set(wt,q.controller)}),ne({fetchers:new Map(y.fetchers)});let gt=()=>ze.forEach(q=>De(q.key));M.signal.addEventListener("abort",gt);let{loaderResults:vt,fetcherResults:j}=await nr(Qe,ze,je,E);if(M.signal.aborted)return;if(M.signal.removeEventListener("abort",gt),Re.delete(d),I.delete(d),ze.forEach(q=>I.delete(q.key)),y.fetchers.has(d)){let q=Me(W.data);y.fetchers.set(d,q)}let oe=Rt(vt);if(oe)return Ae(je,oe.result,!1,{preventScrollReset:L});if(oe=Rt(j),oe)return ae.add(oe.key),Ae(je,oe.result,!1,{preventScrollReset:L});let{loaderData:Ve,errors:Ie}=kr(y,Te,vt,void 0,ze,j);sr(Se),y.navigation.state==="loading"&&Se>ce?(N(B,"Expected pending action"),z&&z.abort(),We(y.navigation.location,{matches:Te,loaderData:Ve,errors:Ie,fetchers:new Map(y.fetchers)})):(ne({errors:Ie,loaderData:Nr(y.loaderData,Ve,Te,Ie),fetchers:new Map(y.fetchers)}),G=!1)}async function Fa(d,h,g,w,E,D,O,L,x){let T=y.fetchers.get(d);Pe(d,et(x,T?T.data:void 0),{flushSync:O});let F=new AbortController,M=Ke(e.history,g,F.signal);if(D){let W=await yt(w,new URL(M.url).pathname,M.signal,d);if(W.type==="aborted")return;if(W.type==="error"){Ce(d,h,W.error,{flushSync:O});return}else if(W.matches)w=W.matches;else{Ce(d,h,ve(404,{pathname:g}),{flushSync:O});return}}let U=St(w,g);I.set(d,F);let A=ee,J=Ge(o,i,M,w,U,a,E),se=(await qe(M,J,E,d))[U.route.id];if(I.get(d)===F&&I.delete(d),!M.signal.aborted){if(de.has(d)){Pe(d,Me(void 0));return}if(He(se))if(ce>A){Pe(d,Me(void 0));return}else{ae.add(d),await Ae(M,se,!1,{preventScrollReset:L});return}if(fe(se)){Ce(d,h,se.error);return}Pe(d,Me(se.data))}}async function Ae(d,h,g,{submission:w,fetcherSubmission:E,preventScrollReset:D,replace:O}={}){g||(k==null||k.resolve(),k=null),h.response.headers.has("X-Remix-Revalidate")&&(G=!0);let L=h.response.headers.get("Location");N(L,"Expected a Location header on the redirect Response"),L=_r(L,new URL(d.url),f,e.history);let x=ot(y.location,L,{_isRedirect:!0});if(r){let J=!1;if(h.response.headers.has("X-Remix-Reload-Document"))J=!0;else if(Vt(L)){const te=Yr(L,!0);J=te.origin!==t.location.origin||we(te.pathname,f)==null}if(J){O?t.location.replace(L):t.location.assign(L);return}}z=null;let T=O===!0||h.response.headers.has("X-Remix-Replace")?"REPLACE":"PUSH",{formMethod:F,formAction:M,formEncType:U}=y.navigation;!w&&!E&&F&&M&&U&&(w=Ar(y.navigation));let A=w||E;if(On.has(h.response.status)&&A&&le(A.formMethod))await $e(T,x,{submission:{...A,formAction:L},preventScrollReset:D||re,enableViewTransition:g?ue:void 0});else{let J=At(x,w);await $e(T,x,{overrideNavigation:J,fetcherSubmission:E,preventScrollReset:D||re,enableViewTransition:g?ue:void 0})}}async function qe(d,h,g,w){var O;let E,D={};try{E=await zn(p,d,h,w,g,!1)}catch(L){return h.filter(x=>x.shouldLoad).forEach(x=>{D[x.route.id]={type:"error",error:L}}),D}if(d.signal.aborted)return D;if(!le(d.method))for(let L of h){if(((O=E[L.route.id])==null?void 0:O.type)==="error")break;!E.hasOwnProperty(L.route.id)&&!y.loaderData.hasOwnProperty(L.route.id)&&(!y.errors||!y.errors.hasOwnProperty(L.route.id))&&L.shouldCallHandler()&&(E[L.route.id]={type:"error",result:new Error(`No result returned from dataStrategy for route ${L.route.id}`)})}for(let[L,x]of Object.entries(E))if(qn(x)){let T=x.result;D[L]={type:"redirect",response:Wn(T,d,L,h,f)}}else D[L]=await Bn(x);return D}async function nr(d,h,g,w){let E=qe(g,d,w,null),D=Promise.all(h.map(async x=>{if(x.matches&&x.match&&x.request&&x.controller){let F=(await qe(x.request,x.matches,w,x.key))[x.match.route.id];return{[x.key]:F}}else return Promise.resolve({[x.key]:{type:"error",error:ve(404,{pathname:x.path})}})})),O=await E,L=(await D).reduce((x,T)=>Object.assign(x,T),{});return{loaderResults:O,fetcherResults:L}}function Ot(){G=!0,pe.forEach((d,h)=>{I.has(h)&&me.add(h),De(h)})}function Pe(d,h,g={}){y.fetchers.set(d,h),ne({fetchers:new Map(y.fetchers)},{flushSync:(g&&g.flushSync)===!0})}function Ce(d,h,g,w={}){let E=Fe(y.matches,h);Tt(d),ne({errors:{[E.route.id]:g},fetchers:new Map(y.fetchers)},{flushSync:(w&&w.flushSync)===!0})}function or(d){return ye.set(d,(ye.get(d)||0)+1),de.has(d)&&de.delete(d),y.fetchers.get(d)||Tn}function ka(d,h){De(d,h==null?void 0:h.reason),Pe(d,Me(null))}function Tt(d){let h=y.fetchers.get(d);I.has(d)&&!(h&&h.state==="loading"&&Re.has(d))&&De(d),pe.delete(d),Re.delete(d),ae.delete(d),de.delete(d),me.delete(d),y.fetchers.delete(d)}function Na(d){let h=(ye.get(d)||0)-1;h<=0?(ye.delete(d),de.add(d)):ye.set(d,h),ne({fetchers:new Map(y.fetchers)})}function De(d,h){let g=I.get(d);g&&(g.abort(h),I.delete(d))}function ir(d){for(let h of d){let g=or(h),w=Me(g.data);y.fetchers.set(h,w)}}function lr(){let d=[],h=!1;for(let g of ae){let w=y.fetchers.get(g);N(w,`Expected fetcher: ${g}`),w.state==="loading"&&(ae.delete(g),d.push(g),h=!0)}return ir(d),h}function sr(d){let h=[];for(let[g,w]of Re)if(w<d){let E=y.fetchers.get(g);N(E,`Expected fetcher: ${g}`),E.state==="loading"&&(De(g),Re.delete(g),h.push(g))}return ir(h),h.length>0}function Ua(d,h){let g=y.blockers.get(d)||Ze;return Ne.get(d)!==h&&Ne.set(d,h),g}function ur(d){y.blockers.delete(d),Ne.delete(d)}function mt(d,h){let g=y.blockers.get(d)||Ze;N(g.state==="unblocked"&&h.state==="blocked"||g.state==="blocked"&&h.state==="blocked"||g.state==="blocked"&&h.state==="proceeding"||g.state==="blocked"&&h.state==="unblocked"||g.state==="proceeding"&&h.state==="unblocked",`Invalid blocker state transition: ${g.state} -> ${h.state}`);let w=new Map(y.blockers);w.set(d,h),ne({blockers:w})}function cr({currentLocation:d,nextLocation:h,historyAction:g}){if(Ne.size===0)return;Ne.size>1&&X(!1,"A router only supports one blocker at a time");let w=Array.from(Ne.entries()),[E,D]=w[w.length-1],O=y.blockers.get(E);if(!(O&&O.state==="proceeding")&&D({currentLocation:d,nextLocation:h,historyAction:g}))return E}function _t(d){let h=ve(404,{pathname:d}),g=c||s,{matches:w,route:E}=bt(g);return{notFoundMatches:w,route:E,error:h}}function $a(d,h,g){if(b=d,R=h,S=g||null,!C&&y.navigation===$t){C=!0;let w=fr(y.location,y.matches);w!=null&&ne({restoreScrollPosition:w})}return()=>{b=null,R=null,S=null}}function dr(d,h){return S&&S(d,h.map(w=>rn(w,y.loaderData)))||d.key}function Aa(d,h){if(b&&R){let g=dr(d,h);b[g]=R()}}function fr(d,h){if(b){let g=dr(d,h),w=b[g];if(typeof w=="number")return w}return null}function pt(d,h,g){if(e.patchRoutesOnNavigation)if(d){if(Object.keys(d[0].params).length>0)return{active:!0,matches:at(h,g,f,!0)}}else return{active:!0,matches:at(h,g,f,!0)||[]};return{active:!1,matches:null}}async function yt(d,h,g,w){if(!e.patchRoutesOnNavigation)return{type:"success",matches:d};let E=d;for(;;){let D=c==null,O=c||s,L=i;try{await e.patchRoutesOnNavigation({signal:g,path:h,matches:E,fetcherKey:w,patch:(F,M)=>{g.aborted||Dr(F,M,O,L,o,!1)}})}catch(F){return{type:"error",error:F,partialMatches:E}}finally{D&&!g.aborted&&(s=[...s])}if(g.aborted)return{type:"aborted"};let x=_e(O,h,f),T=null;if(x){if(Object.keys(x[0].params).length===0)return{type:"success",matches:x};if(T=at(O,h,f,!0),!(T&&E.length<T.length&&hr(E,T.slice(0,E.length))))return{type:"success",matches:x}}if(T||(T=at(O,h,f,!0)),!T||hr(E,T))return{type:"success",matches:null};E=T}}function hr(d,h){return d.length===h.length&&d.every((g,w)=>g.route.id===h[w].route.id)}function ja(d){i={},c=it(d,o,void 0,i)}function za(d,h,g=!1){let w=c==null;Dr(d,h,c||s,i,o,g),w&&(s=[...s],ne({}))}return Q={get basename(){return f},get future(){return u},get state(){return y},get routes(){return s},get window(){return t},initialize:xa,subscribe:Pa,enableScrollRestoration:$a,navigate:rr,fetch:Ta,revalidate:Ca,createHref:d=>e.history.createHref(d),encodeLocation:d=>e.history.encodeLocation(d),getFetcher:or,resetFetcher:ka,deleteFetcher:Na,dispose:La,getBlocker:Ua,deleteBlocker:ur,patchRoutes:za,_internalFetchControllers:I,_internalSetRoutes:ja,_internalSetStateDoNotUseOrYouWillBreakYourApp(d){ne(d)}},e.unstable_instrumentations&&(Q=En(Q,e.unstable_instrumentations.map(d=>d.router).filter(Boolean))),Q}function kn(e){return e!=null&&("formData"in e&&e.formData!=null||"body"in e&&e.body!==void 0)}function It(e,t,r,a,n,o){let i,s;if(n){i=[];for(let f of t)if(i.push(f),f.route.id===n){s=f;break}}else i=t,s=t[t.length-1];let c=st(a||".",Ct(i),we(e.pathname,r)||e.pathname,o==="path");if(a==null&&(c.search=e.search,c.hash=e.hash),(a==null||a===""||a===".")&&s){let f=Gt(c.search);if(s.route.index&&!f)c.search=c.search?c.search.replace(/^\?/,"?index&"):"?index";else if(!s.route.index&&f){let p=new URLSearchParams(c.search),u=p.getAll("index");p.delete("index"),u.filter(m=>m).forEach(m=>p.append("index",m));let l=p.toString();c.search=l?`?${l}`:""}}return r!=="/"&&(c.pathname=yn({basename:r,pathname:c.pathname})),xe(c)}function Pr(e,t,r){if(!r||!kn(r))return{path:t};if(r.formMethod&&!Zn(r.formMethod))return{path:t,error:ve(405,{method:r.formMethod})};let a=()=>({path:t,error:ve(400,{type:"invalid-body"})}),o=(r.formMethod||"get").toUpperCase(),i=da(t);if(r.body!==void 0){if(r.formEncType==="text/plain"){if(!le(o))return a();let u=typeof r.body=="string"?r.body:r.body instanceof FormData||r.body instanceof URLSearchParams?Array.from(r.body.entries()).reduce((l,[m,b])=>`${l}${m}=${b}
|
|
23
|
+
`,""):String(r.body);return{path:t,submission:{formMethod:o,formAction:i,formEncType:r.formEncType,formData:void 0,json:void 0,text:u}}}else if(r.formEncType==="application/json"){if(!le(o))return a();try{let u=typeof r.body=="string"?JSON.parse(r.body):r.body;return{path:t,submission:{formMethod:o,formAction:i,formEncType:r.formEncType,formData:void 0,json:u,text:void 0}}}catch{return a()}}}N(typeof FormData=="function","FormData is not available in this environment");let s,c;if(r.formData)s=Bt(r.formData),c=r.formData;else if(r.body instanceof FormData)s=Bt(r.body),c=r.body;else if(r.body instanceof URLSearchParams)s=r.body,c=Fr(s);else if(r.body==null)s=new URLSearchParams,c=new FormData;else try{s=new URLSearchParams(r.body),c=Fr(s)}catch{return a()}let f={formMethod:o,formAction:i,formEncType:r&&r.formEncType||"application/x-www-form-urlencoded",formData:c,json:void 0,text:void 0};if(le(f.formMethod))return{path:t,submission:f};let p=Oe(t);return e&&p.search&&Gt(p.search)&&s.append("index",""),p.search=`?${s}`,{path:xe(p),submission:f}}function Cr(e,t,r,a,n,o,i,s,c,f,p,u,l,m,b,S,R,C,P,_,V){var Z;let $=_?fe(_[1])?_[1].error:_[1].data:void 0,H=n.createURL(o.location),Q=n.createURL(c),y;if(p&&o.errors){let Y=Object.keys(o.errors)[0];y=i.findIndex(G=>G.route.id===Y)}else if(_&&fe(_[1])){let Y=_[0];y=i.findIndex(G=>G.route.id===Y)-1}let B=_?_[1].statusCode:void 0,k=B&&B>=400,re={currentUrl:H,currentParams:((Z=o.matches[0])==null?void 0:Z.params)||{},nextUrl:Q,nextParams:i[0].params,...s,actionResult:$,actionStatus:B},z=ct(i),ue=i.map((Y,G)=>{let{route:me}=Y,I=null;if(y!=null&&G>y)I=!1;else if(me.lazy)I=!0;else if(!Kt(me))I=!1;else if(p){let{shouldLoad:ae}=oa(me,o.loaderData,o.errors);I=ae}else Nn(o.loaderData,o.matches[G],Y)&&(I=!0);if(I!==null)return Ht(r,a,e,z,Y,f,t,I);let ee=!1;typeof V=="boolean"?ee=V:k?ee=!1:(u||H.pathname+H.search===Q.pathname+Q.search||H.search!==Q.search||Un(o.matches[G],Y))&&(ee=!0);let ce={...re,defaultShouldRevalidate:ee},Re=nt(Y,ce);return Ht(r,a,e,z,Y,f,t,Re,ce,V)}),K=[];return b.forEach((Y,G)=>{if(p||!i.some(ye=>ye.route.id===Y.routeId)||m.has(G))return;let me=o.fetchers.get(G),I=me&&me.state!=="idle"&&me.data===void 0,ee=_e(R,Y.path,C);if(!ee){if(P&&I)return;K.push({key:G,routeId:Y.routeId,path:Y.path,matches:null,match:null,request:null,controller:null});return}if(S.has(G))return;let ce=St(ee,Y.path),Re=new AbortController,ae=Ke(n,Y.path,Re.signal),pe=null;if(l.has(G))l.delete(G),pe=Ge(r,a,ae,ee,ce,f,t);else if(I)u&&(pe=Ge(r,a,ae,ee,ce,f,t));else{let ye;typeof V=="boolean"?ye=V:k?ye=!1:ye=u;let de={...re,defaultShouldRevalidate:ye};nt(ce,de)&&(pe=Ge(r,a,ae,ee,ce,f,t,de))}pe&&K.push({key:G,routeId:Y.routeId,path:Y.path,matches:pe,match:ce,request:ae,controller:Re})}),{dsMatches:ue,revalidatingFetchers:K}}function Kt(e){return e.loader!=null||e.middleware!=null&&e.middleware.length>0}function oa(e,t,r){if(e.lazy)return{shouldLoad:!0,renderFallback:!0};if(!Kt(e))return{shouldLoad:!1,renderFallback:!1};let a=t!=null&&e.id in t,n=r!=null&&r[e.id]!==void 0;if(!a&&n)return{shouldLoad:!1,renderFallback:!1};if(typeof e.loader=="function"&&e.loader.hydrate===!0)return{shouldLoad:!0,renderFallback:!a};let o=!a&&!n;return{shouldLoad:o,renderFallback:o}}function Nn(e,t,r){let a=!t||r.route.id!==t.route.id,n=!e.hasOwnProperty(r.route.id);return a||n}function Un(e,t){let r=e.route.path;return e.pathname!==t.pathname||r!=null&&r.endsWith("*")&&e.params["*"]!==t.params["*"]}function nt(e,t){if(e.route.shouldRevalidate){let r=e.route.shouldRevalidate(t);if(typeof r=="boolean")return r}return t.defaultShouldRevalidate}function Dr(e,t,r,a,n,o){let i;if(e){let f=a[e];N(f,`No route found to patch children into: routeId = ${e}`),f.children||(f.children=[]),i=f.children}else i=r;let s=[],c=[];if(t.forEach(f=>{let p=i.find(u=>ia(f,u));p?c.push({existingRoute:p,newRoute:f}):s.push(f)}),s.length>0){let f=it(s,n,[e||"_","patch",String((i==null?void 0:i.length)||"0")],a);i.push(...f)}if(o&&c.length>0)for(let f=0;f<c.length;f++){let{existingRoute:p,newRoute:u}=c[f],l=p,[m]=it([u],n,[],{},!0);Object.assign(l,{element:m.element?m.element:l.element,errorElement:m.errorElement?m.errorElement:l.errorElement,hydrateFallbackElement:m.hydrateFallbackElement?m.hydrateFallbackElement:l.hydrateFallbackElement})}}function ia(e,t){var r;return"id"in e&&"id"in t&&e.id===t.id?!0:e.index===t.index&&e.path===t.path&&e.caseSensitive===t.caseSensitive?(!e.children||e.children.length===0)&&(!t.children||t.children.length===0)?!0:((r=e.children)==null?void 0:r.every((a,n)=>{var o;return(o=t.children)==null?void 0:o.some(i=>ia(a,i))}))??!1:!1}var Mr=new WeakMap,la=({key:e,route:t,manifest:r,mapRouteProperties:a})=>{let n=r[t.id];if(N(n,"No route found in manifest"),!n.lazy||typeof n.lazy!="object")return;let o=n.lazy[e];if(!o)return;let i=Mr.get(n);i||(i={},Mr.set(n,i));let s=i[e];if(s)return s;let c=(async()=>{let f=Qa(e),u=n[e]!==void 0&&e!=="hasErrorBoundary";if(f)X(!f,"Route property "+e+" is not a supported lazy route property. This property will be ignored."),i[e]=Promise.resolve();else if(u)X(!1,`Route "${n.id}" has a static property "${e}" defined. The lazy property will be ignored.`);else{let l=await o();l!=null&&(Object.assign(n,{[e]:l}),Object.assign(n,a(n)))}typeof n.lazy=="object"&&(n.lazy[e]=void 0,Object.values(n.lazy).every(l=>l===void 0)&&(n.lazy=void 0))})();return i[e]=c,c},Or=new WeakMap;function $n(e,t,r,a,n){let o=r[e.id];if(N(o,"No route found in manifest"),!e.lazy)return{lazyRoutePromise:void 0,lazyHandlerPromise:void 0};if(typeof e.lazy=="function"){let p=Or.get(o);if(p)return{lazyRoutePromise:p,lazyHandlerPromise:p};let u=(async()=>{N(typeof e.lazy=="function","No lazy route function found");let l=await e.lazy(),m={};for(let b in l){let S=l[b];if(S===void 0)continue;let R=en(b),P=o[b]!==void 0&&b!=="hasErrorBoundary";R?X(!R,"Route property "+b+" is not a supported property to be returned from a lazy route function. This property will be ignored."):P?X(!P,`Route "${o.id}" has a static property "${b}" defined but its lazy function is also returning a value for this property. The lazy route property "${b}" will be ignored.`):m[b]=S}Object.assign(o,m),Object.assign(o,{...a(o),lazy:void 0})})();return Or.set(o,u),u.catch(()=>{}),{lazyRoutePromise:u,lazyHandlerPromise:u}}let i=Object.keys(e.lazy),s=[],c;for(let p of i){if(n&&n.includes(p))continue;let u=la({key:p,route:e,manifest:r,mapRouteProperties:a});u&&(s.push(u),p===t&&(c=u))}let f=s.length>0?Promise.all(s).then(()=>{}):void 0;return f==null||f.catch(()=>{}),c==null||c.catch(()=>{}),{lazyRoutePromise:f,lazyHandlerPromise:c}}async function Tr(e){let t=e.matches.filter(n=>n.shouldLoad),r={};return(await Promise.all(t.map(n=>n.resolve()))).forEach((n,o)=>{r[t[o].route.id]=n}),r}async function An(e){return e.matches.some(t=>t.route.middleware)?sa(e,()=>Tr(e)):Tr(e)}function sa(e,t){return jn(e,t,a=>{if(Qn(a))throw a;return a},Gn,r);function r(a,n,o){if(o)return Promise.resolve(Object.assign(o.value,{[n]:{type:"error",result:a}}));{let{matches:i}=e,s=Math.min(Math.max(i.findIndex(f=>f.route.id===n),0),Math.max(i.findIndex(f=>f.shouldCallHandler()),0)),c=Fe(i,i[s].route.id).route.id;return Promise.resolve({[c]:{type:"error",result:a}})}}}async function jn(e,t,r,a,n){let{matches:o,request:i,params:s,context:c,unstable_pattern:f}=e,p=o.flatMap(l=>l.route.middleware?l.route.middleware.map(m=>[l.route.id,m]):[]);return await ua({request:i,params:s,context:c,unstable_pattern:f},p,t,r,a,n)}async function ua(e,t,r,a,n,o,i=0){let{request:s}=e;if(s.signal.aborted)throw s.signal.reason??new Error(`Request aborted: ${s.method} ${s.url}`);let c=t[i];if(!c)return await r();let[f,p]=c,u,l=async()=>{if(u)throw new Error("You may only call `next()` once per middleware");try{return u={value:await ua(e,t,r,a,n,o,i+1)},u.value}catch(m){return u={value:await o(m,f,u)},u.value}};try{let m=await p(e,l),b=m!=null?a(m):void 0;return n(b)?b:u?b??u.value:(u={value:await l()},u.value)}catch(m){return await o(m,f,u)}}function ca(e,t,r,a,n){let o=la({key:"middleware",route:a.route,manifest:t,mapRouteProperties:e}),i=$n(a.route,le(r.method)?"action":"loader",t,e,n);return{middleware:o,route:i.lazyRoutePromise,handler:i.lazyHandlerPromise}}function Ht(e,t,r,a,n,o,i,s,c=null,f){let p=!1,u=ca(e,t,r,n,o);return{...n,_lazyPromises:u,shouldLoad:s,shouldRevalidateArgs:c,shouldCallHandler(l){return p=!0,c?typeof f=="boolean"?nt(n,{...c,defaultShouldRevalidate:f}):typeof l=="boolean"?nt(n,{...c,defaultShouldRevalidate:l}):nt(n,c):s},resolve(l){let{lazy:m,loader:b,middleware:S}=n.route,R=p||s||l&&!le(r.method)&&(m||b),C=S&&S.length>0&&!b&&!m;return R&&(le(r.method)||!C)?In({request:r,unstable_pattern:a,match:n,lazyHandlerPromise:u==null?void 0:u.handler,lazyRoutePromise:u==null?void 0:u.route,handlerOverride:l,scopedContext:i}):Promise.resolve({type:"data",result:void 0})}}}function Ge(e,t,r,a,n,o,i,s=null){return a.map(c=>c.route.id!==n.route.id?{...c,shouldLoad:!1,shouldRevalidateArgs:s,shouldCallHandler:()=>!1,_lazyPromises:ca(e,t,r,c,o),resolve:()=>Promise.resolve({type:"data",result:void 0})}:Ht(e,t,r,ct(a),c,o,i,!0,s))}async function zn(e,t,r,a,n,o){r.some(f=>{var p;return(p=f._lazyPromises)==null?void 0:p.middleware})&&await Promise.all(r.map(f=>{var p;return(p=f._lazyPromises)==null?void 0:p.middleware}));let i={request:t,unstable_pattern:ct(r),params:r[0].params,context:n,matches:r},c=await e({...i,fetcherKey:a,runClientMiddleware:f=>{let p=i;return sa(p,()=>f({...p,fetcherKey:a,runClientMiddleware:()=>{throw new Error("Cannot call `runClientMiddleware()` from within an `runClientMiddleware` handler")}}))}});try{await Promise.all(r.flatMap(f=>{var p,u;return[(p=f._lazyPromises)==null?void 0:p.handler,(u=f._lazyPromises)==null?void 0:u.route]}))}catch{}return c}async function In({request:e,unstable_pattern:t,match:r,lazyHandlerPromise:a,lazyRoutePromise:n,handlerOverride:o,scopedContext:i}){let s,c,f=le(e.method),p=f?"action":"loader",u=l=>{let m,b=new Promise((C,P)=>m=P);c=()=>m(),e.signal.addEventListener("abort",c);let S=C=>typeof l!="function"?Promise.reject(new Error(`You cannot call the handler for a route which defines a boolean "${p}" [routeId: ${r.route.id}]`)):l({request:e,unstable_pattern:t,params:r.params,context:i},...C!==void 0?[C]:[]),R=(async()=>{try{return{type:"data",result:await(o?o(P=>S(P)):S())}}catch(C){return{type:"error",result:C}}})();return Promise.race([R,b])};try{let l=f?r.route.action:r.route.loader;if(a||n)if(l){let m,[b]=await Promise.all([u(l).catch(S=>{m=S}),a,n]);if(m!==void 0)throw m;s=b}else{await a;let m=f?r.route.action:r.route.loader;if(m)[s]=await Promise.all([u(m),n]);else if(p==="action"){let b=new URL(e.url),S=b.pathname+b.search;throw ve(405,{method:e.method,pathname:S,routeId:r.route.id})}else return{type:"data",result:void 0}}else if(l)s=await u(l);else{let m=new URL(e.url),b=m.pathname+m.search;throw ve(404,{pathname:b})}}catch(l){return{type:"error",result:l}}finally{c&&e.signal.removeEventListener("abort",c)}return s}async function Hn(e){let t=e.headers.get("Content-Type");return t&&/\bapplication\/json\b/.test(t)?e.body==null?null:e.json():e.text()}async function Bn(e){var a,n,o,i,s;let{result:t,type:r}=e;if(Yt(t)){let c;try{c=await Hn(t)}catch(f){return{type:"error",error:f}}return r==="error"?{type:"error",error:new ut(t.status,t.statusText,c),statusCode:t.status,headers:t.headers}:{type:"data",data:c,statusCode:t.status,headers:t.headers}}return r==="error"?$r(t)?t.data instanceof Error?{type:"error",error:t.data,statusCode:(a=t.init)==null?void 0:a.status,headers:(n=t.init)!=null&&n.headers?new Headers(t.init.headers):void 0}:{type:"error",error:Yn(t),statusCode:lt(t)?t.status:void 0,headers:(o=t.init)!=null&&o.headers?new Headers(t.init.headers):void 0}:{type:"error",error:t,statusCode:lt(t)?t.status:void 0}:$r(t)?{type:"data",data:t.data,statusCode:(i=t.init)==null?void 0:i.status,headers:(s=t.init)!=null&&s.headers?new Headers(t.init.headers):void 0}:{type:"data",data:t}}function Wn(e,t,r,a,n){let o=e.headers.get("Location");if(N(o,"Redirects returned/thrown from loaders/actions must have a Location header"),!Vt(o)){let i=a.slice(0,a.findIndex(s=>s.route.id===r)+1);o=It(new URL(t.url),i,n,o),e.headers.set("Location",o)}return e}function _r(e,t,r,a){let n=["about:","blob:","chrome:","chrome-untrusted:","content:","data:","devtools:","file:","filesystem:","javascript:"];if(Vt(e)){let o=e,i=o.startsWith("//")?new URL(t.protocol+o):new URL(o);if(n.includes(i.protocol))throw new Error("Invalid redirect location");let s=we(i.pathname,r)!=null;if(i.origin===t.origin&&s)return i.pathname+i.search+i.hash}try{let o=a.createURL(e);if(n.includes(o.protocol))throw new Error("Invalid redirect location")}catch{}return e}function Ke(e,t,r,a){let n=e.createURL(da(t)).toString(),o={signal:r};if(a&&le(a.formMethod)){let{formMethod:i,formEncType:s}=a;o.method=i.toUpperCase(),s==="application/json"?(o.headers=new Headers({"Content-Type":s}),o.body=JSON.stringify(a.json)):s==="text/plain"?o.body=a.text:s==="application/x-www-form-urlencoded"&&a.formData?o.body=Bt(a.formData):o.body=a.formData}return new Request(n,o)}function Bt(e){let t=new URLSearchParams;for(let[r,a]of e.entries())t.append(r,typeof a=="string"?a:a.name);return t}function Fr(e){let t=new FormData;for(let[r,a]of e.entries())t.append(r,a);return t}function Vn(e,t,r,a=!1,n=!1){let o={},i=null,s,c=!1,f={},p=r&&fe(r[1])?r[1].error:void 0;return e.forEach(u=>{if(!(u.route.id in t))return;let l=u.route.id,m=t[l];if(N(!He(m),"Cannot handle redirect results in processLoaderData"),fe(m)){let b=m.error;if(p!==void 0&&(b=p,p=void 0),i=i||{},n)i[l]=b;else{let S=Fe(e,l);i[S.route.id]==null&&(i[S.route.id]=b)}a||(o[l]=na),c||(c=!0,s=lt(m.error)?m.error.status:500),m.headers&&(f[l]=m.headers)}else o[l]=m.data,m.statusCode&&m.statusCode!==200&&!c&&(s=m.statusCode),m.headers&&(f[l]=m.headers)}),p!==void 0&&r&&(i={[r[0]]:p},r[2]&&(o[r[2]]=void 0)),{loaderData:o,errors:i,statusCode:s||200,loaderHeaders:f}}function kr(e,t,r,a,n,o){let{loaderData:i,errors:s}=Vn(t,r,a);return n.filter(c=>!c.matches||c.matches.some(f=>f.shouldLoad)).forEach(c=>{let{key:f,match:p,controller:u}=c;if(u&&u.signal.aborted)return;let l=o[f];if(N(l,"Did not find corresponding fetcher result"),fe(l)){let m=Fe(e.matches,p==null?void 0:p.route.id);s&&s[m.route.id]||(s={...s,[m.route.id]:l.error}),e.fetchers.delete(f)}else if(He(l))N(!1,"Unhandled fetcher revalidation redirect");else{let m=Me(l.data);e.fetchers.set(f,m)}}),{loaderData:i,errors:s}}function Nr(e,t,r,a){let n=Object.entries(t).filter(([,o])=>o!==na).reduce((o,[i,s])=>(o[i]=s,o),{});for(let o of r){let i=o.route.id;if(!t.hasOwnProperty(i)&&e.hasOwnProperty(i)&&o.route.loader&&(n[i]=e[i]),a&&a.hasOwnProperty(i))break}return n}function Ur(e){return e?fe(e[1])?{actionData:{}}:{actionData:{[e[0]]:e[1].data}}:{}}function Fe(e,t){return(t?e.slice(0,e.findIndex(a=>a.route.id===t)+1):[...e]).reverse().find(a=>a.route.hasErrorBoundary===!0)||e[0]}function bt(e){let t=e.length===1?e[0]:e.find(r=>r.index||!r.path||r.path==="/")||{id:"__shim-error-route__"};return{matches:[{params:{},pathname:"",pathnameBase:"",route:t}],route:t}}function ve(e,{pathname:t,routeId:r,method:a,type:n,message:o}={}){let i="Unknown Server Error",s="Unknown @remix-run/router error";return e===400?(i="Bad Request",a&&t&&r?s=`You made a ${a} request to "${t}" but did not provide a \`loader\` for route "${r}", so there is no way to handle the request.`:n==="invalid-body"&&(s="Unable to encode submission body")):e===403?(i="Forbidden",s=`Route "${r}" does not match URL "${t}"`):e===404?(i="Not Found",s=`No route matches URL "${t}"`):e===405&&(i="Method Not Allowed",a&&t&&r?s=`You made a ${a.toUpperCase()} request to "${t}" but did not provide an \`action\` for route "${r}", so there is no way to handle the request.`:a&&(s=`Invalid request method "${a.toUpperCase()}"`)),new ut(e||500,i,new Error(s),!0)}function Rt(e){let t=Object.entries(e);for(let r=t.length-1;r>=0;r--){let[a,n]=t[r];if(He(n))return{key:a,result:n}}}function da(e){let t=typeof e=="string"?Oe(e):e;return xe({...t,hash:""})}function Kn(e,t){return e.pathname!==t.pathname||e.search!==t.search?!1:e.hash===""?t.hash!=="":e.hash===t.hash?!0:t.hash!==""}function Yn(e){var t,r;return new ut(((t=e.init)==null?void 0:t.status)??500,((r=e.init)==null?void 0:r.statusText)??"Internal Server Error",e.data)}function Gn(e){return e!=null&&typeof e=="object"&&Object.entries(e).every(([t,r])=>typeof t=="string"&&Jn(r))}function Jn(e){return e!=null&&typeof e=="object"&&"type"in e&&"result"in e&&(e.type==="data"||e.type==="error")}function qn(e){return Yt(e.result)&&ra.has(e.result.status)}function fe(e){return e.type==="error"}function He(e){return(e&&e.type)==="redirect"}function $r(e){return typeof e=="object"&&e!=null&&"type"in e&&"data"in e&&"init"in e&&e.type==="DataWithResponseInit"}function Yt(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.headers=="object"&&typeof e.body<"u"}function Xn(e){return ra.has(e)}function Qn(e){return Yt(e)&&Xn(e.status)&&e.headers.has("Location")}function Zn(e){return Mn.has(e.toUpperCase())}function le(e){return Cn.has(e.toUpperCase())}function Gt(e){return new URLSearchParams(e).getAll("index").some(t=>t==="")}function St(e,t){let r=typeof t=="string"?Oe(t).search:t.search;if(e[e.length-1].route.index&&Gt(r||""))return e[e.length-1];let a=Xr(e);return a[a.length-1]}function Ar(e){let{formMethod:t,formAction:r,formEncType:a,text:n,formData:o,json:i}=e;if(!(!t||!r||!a)){if(n!=null)return{formMethod:t,formAction:r,formEncType:a,formData:void 0,json:void 0,text:n};if(o!=null)return{formMethod:t,formAction:r,formEncType:a,formData:o,json:void 0,text:void 0};if(i!==void 0)return{formMethod:t,formAction:r,formEncType:a,formData:void 0,json:i,text:void 0}}}function At(e,t){return t?{state:"loading",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}:{state:"loading",location:e,formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0}}function eo(e,t){return{state:"submitting",location:e,formMethod:t.formMethod,formAction:t.formAction,formEncType:t.formEncType,formData:t.formData,json:t.json,text:t.text}}function et(e,t){return e?{state:"loading",formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t}:{state:"loading",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:t}}function to(e,t){return{state:"submitting",formMethod:e.formMethod,formAction:e.formAction,formEncType:e.formEncType,formData:e.formData,json:e.json,text:e.text,data:t?t.data:void 0}}function Me(e){return{state:"idle",formMethod:void 0,formAction:void 0,formEncType:void 0,formData:void 0,json:void 0,text:void 0,data:e}}function ro(e,t){try{let r=e.sessionStorage.getItem(aa);if(r){let a=JSON.parse(r);for(let[n,o]of Object.entries(a||{}))o&&Array.isArray(o)&&t.set(n,new Set(o||[]))}}catch{}}function ao(e,t){if(t.size>0){let r={};for(let[a,n]of t)r[a]=[...n];try{e.sessionStorage.setItem(aa,JSON.stringify(r))}catch(a){X(!1,`Failed to save applied view transitions in sessionStorage (${a}).`)}}}function jr(){let e,t,r=new Promise((a,n)=>{e=async o=>{a(o);try{await r}catch{}},t=async o=>{n(o);try{await r}catch{}}});return{promise:r,resolve:e,reject:t}}var Be=v.createContext(null);Be.displayName="DataRouter";var dt=v.createContext(null);dt.displayName="DataRouterState";var fa=v.createContext(!1);function no(){return v.useContext(fa)}var Jt=v.createContext({isTransitioning:!1});Jt.displayName="ViewTransition";var ha=v.createContext(new Map);ha.displayName="Fetchers";var oo=v.createContext(null);oo.displayName="Await";var he=v.createContext(null);he.displayName="Navigation";var Dt=v.createContext(null);Dt.displayName="Location";var be=v.createContext({outlet:null,matches:[],isDataRoute:!1});be.displayName="Route";var qt=v.createContext(null);qt.displayName="RouteError";var ma="REACT_ROUTER_ERROR",io="REDIRECT",lo="ROUTE_ERROR_RESPONSE";function so(e){if(e.startsWith(`${ma}:${io}:{`))try{let t=JSON.parse(e.slice(28));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.location=="string"&&typeof t.reloadDocument=="boolean"&&typeof t.replace=="boolean")return t}catch{}}function uo(e){if(e.startsWith(`${ma}:${lo}:{`))try{let t=JSON.parse(e.slice(40));if(typeof t=="object"&&t&&typeof t.status=="number"&&typeof t.statusText=="string")return new ut(t.status,t.statusText,t.data)}catch{}}function co(e,{relative:t}={}){N(Je(),"useHref() may be used only in the context of a <Router> component.");let{basename:r,navigator:a}=v.useContext(he),{hash:n,pathname:o,search:i}=ft(e,{relative:t}),s=o;return r!=="/"&&(s=o==="/"?r:Ee([r,o])),a.createHref({pathname:s,search:i,hash:n})}function Je(){return v.useContext(Dt)!=null}function Le(){return N(Je(),"useLocation() may be used only in the context of a <Router> component."),v.useContext(Dt).location}var pa="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function ya(e){v.useContext(he).static||v.useLayoutEffect(e)}function Xt(){let{isDataRoute:e}=v.useContext(be);return e?Po():fo()}function fo(){N(Je(),"useNavigate() may be used only in the context of a <Router> component.");let e=v.useContext(Be),{basename:t,navigator:r}=v.useContext(he),{matches:a}=v.useContext(be),{pathname:n}=Le(),o=JSON.stringify(Ct(a)),i=v.useRef(!1);return ya(()=>{i.current=!0}),v.useCallback((c,f={})=>{if(X(i.current,pa),!i.current)return;if(typeof c=="number"){r.go(c);return}let p=st(c,JSON.parse(o),n,f.relative==="path");e==null&&t!=="/"&&(p.pathname=p.pathname==="/"?t:Ee([t,p.pathname])),(f.replace?r.replace:r.push)(p,f.state,f)},[t,r,o,n,e])}var ho=v.createContext(null);function mo(e){let t=v.useContext(be).outlet;return v.useMemo(()=>t&&v.createElement(ho.Provider,{value:e},t),[t,e])}function bi(){let{matches:e}=v.useContext(be),t=e[e.length-1];return t?t.params:{}}function ft(e,{relative:t}={}){let{matches:r}=v.useContext(be),{pathname:a}=Le(),n=JSON.stringify(Ct(r));return v.useMemo(()=>st(e,JSON.parse(n),a,t==="path"),[e,n,a,t])}function po(e,t,r){N(Je(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:a}=v.useContext(he),{matches:n}=v.useContext(be),o=n[n.length-1],i=o?o.params:{},s=o?o.pathname:"/",c=o?o.pathnameBase:"/",f=o&&o.route;{let R=f&&f.path||"";va(s,!f||R.endsWith("*")||R.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${s}" (under <Route path="${R}">) but the parent route path has no trailing "*". This means if you navigate deeper, the parent won't match anymore and therefore the child routes will never render.
|
|
24
|
+
|
|
25
|
+
Please change the parent <Route path="${R}"> to <Route path="${R==="/"?"*":`${R}/*`}">.`)}let p=Le(),u;u=p;let l=u.pathname||"/",m=l;if(c!=="/"){let R=c.replace(/^\//,"").split("/");m="/"+l.replace(/^\//,"").split("/").slice(R.length).join("/")}let b=_e(e,{pathname:m});return X(f||b!=null,`No routes matched location "${u.pathname}${u.search}${u.hash}" `),X(b==null||b[b.length-1].route.element!==void 0||b[b.length-1].route.Component!==void 0||b[b.length-1].route.lazy!==void 0,`Matched leaf route at location "${u.pathname}${u.search}${u.hash}" does not have an element or Component. This means it will render an <Outlet /> with a null value by default resulting in an "empty" page.`),bo(b&&b.map(R=>Object.assign({},R,{params:Object.assign({},i,R.params),pathname:Ee([c,a.encodeLocation?a.encodeLocation(R.pathname.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:R.pathname]),pathnameBase:R.pathnameBase==="/"?c:Ee([c,a.encodeLocation?a.encodeLocation(R.pathnameBase.replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:R.pathnameBase])})),n,r)}function yo(){let e=Lo(),t=lt(e)?`${e.status} ${e.statusText}`:e instanceof Error?e.message:JSON.stringify(e),r=e instanceof Error?e.stack:null,a="rgba(200,200,200, 0.5)",n={padding:"0.5rem",backgroundColor:a},o={padding:"2px 4px",backgroundColor:a},i=null;return console.error("Error handled by React Router default ErrorBoundary:",e),i=v.createElement(v.Fragment,null,v.createElement("p",null,"💿 Hey developer 👋"),v.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",v.createElement("code",{style:o},"ErrorBoundary")," or"," ",v.createElement("code",{style:o},"errorElement")," prop on your route.")),v.createElement(v.Fragment,null,v.createElement("h2",null,"Unexpected Application Error!"),v.createElement("h3",{style:{fontStyle:"italic"}},t),r?v.createElement("pre",{style:n},r):null,i)}var go=v.createElement(yo,null),ga=class extends v.Component{constructor(e){super(e),this.state={location:e.location,revalidation:e.revalidation,error:e.error}}static getDerivedStateFromError(e){return{error:e}}static getDerivedStateFromProps(e,t){return t.location!==e.location||t.revalidation!=="idle"&&e.revalidation==="idle"?{error:e.error,location:e.location,revalidation:e.revalidation}:{error:e.error!==void 0?e.error:t.error,location:t.location,revalidation:e.revalidation||t.revalidation}}componentDidCatch(e,t){this.props.onError?this.props.onError(e,t):console.error("React Router caught the following error during render",e)}render(){let e=this.state.error;if(this.context&&typeof e=="object"&&e&&"digest"in e&&typeof e.digest=="string"){const r=uo(e.digest);r&&(e=r)}let t=e!==void 0?v.createElement(be.Provider,{value:this.props.routeContext},v.createElement(qt.Provider,{value:e,children:this.props.component})):this.props.children;return this.context?v.createElement(vo,{error:e},t):t}};ga.contextType=fa;var jt=new WeakMap;function vo({children:e,error:t}){let{basename:r}=v.useContext(he);if(typeof t=="object"&&t&&"digest"in t&&typeof t.digest=="string"){let a=so(t.digest);if(a){let n=jt.get(t);if(n)throw n;let o=Zr(a.location,r);if(Qr&&!jt.get(t))if(o.isExternal||a.reloadDocument)window.location.href=o.absoluteURL||o.to;else{const i=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(o.to,{replace:a.replace}));throw jt.set(t,i),i}return v.createElement("meta",{httpEquiv:"refresh",content:`0;url=${o.absoluteURL||o.to}`})}}return e}function wo({routeContext:e,match:t,children:r}){let a=v.useContext(Be);return a&&a.static&&a.staticContext&&(t.route.errorElement||t.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=t.route.id),v.createElement(be.Provider,{value:e},r)}function bo(e,t=[],r){let a=r==null?void 0:r.state;if(e==null){if(!a)return null;if(a.errors)e=a.matches;else if(t.length===0&&!a.initialized&&a.matches.length>0)e=a.matches;else return null}let n=e,o=a==null?void 0:a.errors;if(o!=null){let p=n.findIndex(u=>u.route.id&&(o==null?void 0:o[u.route.id])!==void 0);N(p>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(o).join(",")}`),n=n.slice(0,Math.min(n.length,p+1))}let i=!1,s=-1;if(r&&a){i=a.renderFallback;for(let p=0;p<n.length;p++){let u=n[p];if((u.route.HydrateFallback||u.route.hydrateFallbackElement)&&(s=p),u.route.id){let{loaderData:l,errors:m}=a,b=u.route.loader&&!l.hasOwnProperty(u.route.id)&&(!m||m[u.route.id]===void 0);if(u.route.lazy||b){r.isStatic&&(i=!0),s>=0?n=n.slice(0,s+1):n=[n[0]];break}}}}let c=r==null?void 0:r.onError,f=a&&c?(p,u)=>{var l,m;c(p,{location:a.location,params:((m=(l=a.matches)==null?void 0:l[0])==null?void 0:m.params)??{},unstable_pattern:ct(a.matches),errorInfo:u})}:void 0;return n.reduceRight((p,u,l)=>{let m,b=!1,S=null,R=null;a&&(m=o&&u.route.id?o[u.route.id]:void 0,S=u.route.errorElement||go,i&&(s<0&&l===0?(va("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),b=!0,R=null):s===l&&(b=!0,R=u.route.hydrateFallbackElement||null)));let C=t.concat(n.slice(0,l+1)),P=()=>{let _;return m?_=S:b?_=R:u.route.Component?_=v.createElement(u.route.Component,null):u.route.element?_=u.route.element:_=p,v.createElement(wo,{match:u,routeContext:{outlet:p,matches:C,isDataRoute:a!=null},children:_})};return a&&(u.route.ErrorBoundary||u.route.errorElement||l===0)?v.createElement(ga,{location:a.location,revalidation:a.revalidation,component:S,error:m,children:P(),routeContext:{outlet:null,matches:C,isDataRoute:!0},onError:f}):P()},null)}function Qt(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Ro(e){let t=v.useContext(Be);return N(t,Qt(e)),t}function Eo(e){let t=v.useContext(dt);return N(t,Qt(e)),t}function So(e){let t=v.useContext(be);return N(t,Qt(e)),t}function Zt(e){let t=So(e),r=t.matches[t.matches.length-1];return N(r.route.id,`${e} can only be used on routes that contain a unique "id"`),r.route.id}function xo(){return Zt("useRouteId")}function Lo(){var a;let e=v.useContext(qt),t=Eo("useRouteError"),r=Zt("useRouteError");return e!==void 0?e:(a=t.errors)==null?void 0:a[r]}function Po(){let{router:e}=Ro("useNavigate"),t=Zt("useNavigate"),r=v.useRef(!1);return ya(()=>{r.current=!0}),v.useCallback(async(n,o={})=>{X(r.current,pa),r.current&&(typeof n=="number"?await e.navigate(n):await e.navigate(n,{fromRouteId:t,...o}))},[e,t])}var zr={};function va(e,t,r){!t&&!zr[e]&&(zr[e]=!0,X(!1,r))}var Ir={};function Hr(e,t){!e&&!Ir[t]&&(Ir[t]=!0,console.warn(t))}var Co="useOptimistic",Br=Ba[Co],Do=()=>{};function Mo(e){return Br?Br(e):[e,Do]}function Oo(e){let t={hasErrorBoundary:e.hasErrorBoundary||e.ErrorBoundary!=null||e.errorElement!=null};return e.Component&&(e.element&&X(!1,"You should not include both `Component` and `element` on your route - `Component` will be used."),Object.assign(t,{element:v.createElement(e.Component),Component:void 0})),e.HydrateFallback&&(e.hydrateFallbackElement&&X(!1,"You should not include both `HydrateFallback` and `hydrateFallbackElement` on your route - `HydrateFallback` will be used."),Object.assign(t,{hydrateFallbackElement:v.createElement(e.HydrateFallback),HydrateFallback:void 0})),e.ErrorBoundary&&(e.errorElement&&X(!1,"You should not include both `ErrorBoundary` and `errorElement` on your route - `ErrorBoundary` will be used."),Object.assign(t,{errorElement:v.createElement(e.ErrorBoundary),ErrorBoundary:void 0})),t}var To=["HydrateFallback","hydrateFallbackElement"],_o=class{constructor(){this.status="pending",this.promise=new Promise((e,t)=>{this.resolve=r=>{this.status==="pending"&&(this.status="resolved",e(r))},this.reject=r=>{this.status==="pending"&&(this.status="rejected",t(r))}})}};function Fo({router:e,flushSync:t,onError:r,unstable_useTransitions:a}){a=no()||a;let[o,i]=v.useState(e.state),[s,c]=Mo(o),[f,p]=v.useState(),[u,l]=v.useState({isTransitioning:!1}),[m,b]=v.useState(),[S,R]=v.useState(),[C,P]=v.useState(),_=v.useRef(new Map),V=v.useCallback((y,{deletedFetchers:B,newErrors:k,flushSync:re,viewTransitionOpts:z})=>{k&&r&&Object.values(k).forEach(K=>{var Z;return r(K,{location:y.location,params:((Z=y.matches[0])==null?void 0:Z.params)??{},unstable_pattern:ct(y.matches)})}),y.fetchers.forEach((K,Z)=>{K.data!==void 0&&_.current.set(Z,K.data)}),B.forEach(K=>_.current.delete(K)),Hr(re===!1||t!=null,'You provided the `flushSync` option to a router update, but you are not using the `<RouterProvider>` from `react-router/dom` so `ReactDOM.flushSync()` is unavailable. Please update your app to `import { RouterProvider } from "react-router/dom"` and ensure you have `react-dom` installed as a dependency to use the `flushSync` option.');let ue=e.window!=null&&e.window.document!=null&&typeof e.window.document.startViewTransition=="function";if(Hr(z==null||ue,"You provided the `viewTransition` option to a router update, but you do not appear to be running in a DOM environment as `window.startViewTransition` is not available."),!z||!ue){t&&re?t(()=>i(y)):a===!1?i(y):v.startTransition(()=>{a===!0&&c(K=>Wr(K,y)),i(y)});return}if(t&&re){t(()=>{S&&(m==null||m.resolve(),S.skipTransition()),l({isTransitioning:!0,flushSync:!0,currentLocation:z.currentLocation,nextLocation:z.nextLocation})});let K=e.window.document.startViewTransition(()=>{t(()=>i(y))});K.finished.finally(()=>{t(()=>{b(void 0),R(void 0),p(void 0),l({isTransitioning:!1})})}),t(()=>R(K));return}S?(m==null||m.resolve(),S.skipTransition(),P({state:y,currentLocation:z.currentLocation,nextLocation:z.nextLocation})):(p(y),l({isTransitioning:!0,flushSync:!1,currentLocation:z.currentLocation,nextLocation:z.nextLocation}))},[e.window,t,S,m,a,c,r]);v.useLayoutEffect(()=>e.subscribe(V),[e,V]),v.useEffect(()=>{u.isTransitioning&&!u.flushSync&&b(new _o)},[u]),v.useEffect(()=>{if(m&&f&&e.window){let y=f,B=m.promise,k=e.window.document.startViewTransition(async()=>{a===!1?i(y):v.startTransition(()=>{a===!0&&c(re=>Wr(re,y)),i(y)}),await B});k.finished.finally(()=>{b(void 0),R(void 0),p(void 0),l({isTransitioning:!1})}),R(k)}},[f,m,e.window,a,c]),v.useEffect(()=>{m&&f&&s.location.key===f.location.key&&m.resolve()},[m,S,s.location,f]),v.useEffect(()=>{!u.isTransitioning&&C&&(p(C.state),l({isTransitioning:!0,flushSync:!1,currentLocation:C.currentLocation,nextLocation:C.nextLocation}),P(void 0))},[u.isTransitioning,C]);let $=v.useMemo(()=>({createHref:e.createHref,encodeLocation:e.encodeLocation,go:y=>e.navigate(y),push:(y,B,k)=>e.navigate(y,{state:B,preventScrollReset:k==null?void 0:k.preventScrollReset}),replace:(y,B,k)=>e.navigate(y,{replace:!0,state:B,preventScrollReset:k==null?void 0:k.preventScrollReset})}),[e]),H=e.basename||"/",Q=v.useMemo(()=>({router:e,navigator:$,static:!1,basename:H,onError:r}),[e,$,H,r]);return v.createElement(v.Fragment,null,v.createElement(Be.Provider,{value:Q},v.createElement(dt.Provider,{value:s},v.createElement(ha.Provider,{value:_.current},v.createElement(Jt.Provider,{value:u},v.createElement(Uo,{basename:H,location:s.location,navigationType:s.historyAction,navigator:$,unstable_useTransitions:a},v.createElement(ko,{routes:e.routes,future:e.future,state:s,isStatic:!1,onError:r})))))),null)}function Wr(e,t){return{...e,navigation:t.navigation.state!=="idle"?t.navigation:e.navigation,revalidation:t.revalidation!=="idle"?t.revalidation:e.revalidation,actionData:t.navigation.state!=="submitting"?t.actionData:e.actionData,fetchers:t.fetchers}}var ko=v.memo(No);function No({routes:e,future:t,state:r,isStatic:a,onError:n}){return po(e,void 0,{state:r,isStatic:a,onError:n})}function Ri({to:e,replace:t,state:r,relative:a}){N(Je(),"<Navigate> may be used only in the context of a <Router> component.");let{static:n}=v.useContext(he);X(!n,"<Navigate> must not be used on the initial render in a <StaticRouter>. This is a no-op, but you should modify your code so the <Navigate> is only ever rendered in response to some user interaction or state change.");let{matches:o}=v.useContext(be),{pathname:i}=Le(),s=Xt(),c=st(e,Ct(o),i,a==="path"),f=JSON.stringify(c);return v.useEffect(()=>{s(JSON.parse(f),{replace:t,state:r,relative:a})},[s,f,a,t,r]),null}function Ei(e){return mo(e.context)}function Uo({basename:e="/",children:t=null,location:r,navigationType:a="POP",navigator:n,static:o=!1,unstable_useTransitions:i}){N(!Je(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let s=e.replace(/^\/*/,"/"),c=v.useMemo(()=>({basename:s,navigator:n,static:o,unstable_useTransitions:i,future:{}}),[s,n,o,i]);typeof r=="string"&&(r=Oe(r));let{pathname:f="/",search:p="",hash:u="",state:l=null,key:m="default",unstable_mask:b}=r,S=v.useMemo(()=>{let R=we(f,s);return R==null?null:{location:{pathname:R,search:p,hash:u,state:l,key:m,unstable_mask:b},navigationType:a}},[s,f,p,u,l,m,a,b]);return X(S!=null,`<Router basename="${s}"> is not able to match the URL "${f}${p}${u}" because it does not start with the basename, so the <Router> won't render anything.`),S==null?null:v.createElement(he.Provider,{value:c},v.createElement(Dt.Provider,{children:t,value:S}))}var xt="get",Lt="application/x-www-form-urlencoded";function Mt(e){return typeof HTMLElement<"u"&&e instanceof HTMLElement}function $o(e){return Mt(e)&&e.tagName.toLowerCase()==="button"}function Ao(e){return Mt(e)&&e.tagName.toLowerCase()==="form"}function jo(e){return Mt(e)&&e.tagName.toLowerCase()==="input"}function zo(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function Io(e,t){return e.button===0&&(!t||t==="_self")&&!zo(e)}function Wt(e=""){return new URLSearchParams(typeof e=="string"||Array.isArray(e)||e instanceof URLSearchParams?e:Object.keys(e).reduce((t,r)=>{let a=e[r];return t.concat(Array.isArray(a)?a.map(n=>[r,n]):[[r,a]])},[]))}function Ho(e,t){let r=Wt(e);return t&&t.forEach((a,n)=>{r.has(n)||t.getAll(n).forEach(o=>{r.append(n,o)})}),r}var Et=null;function Bo(){if(Et===null)try{new FormData(document.createElement("form"),0),Et=!1}catch{Et=!0}return Et}var Wo=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function zt(e){return e!=null&&!Wo.has(e)?(X(!1,`"${e}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Lt}"`),null):e}function Vo(e,t){let r,a,n,o,i;if(Ao(e)){let s=e.getAttribute("action");a=s?we(s,t):null,r=e.getAttribute("method")||xt,n=zt(e.getAttribute("enctype"))||Lt,o=new FormData(e)}else if($o(e)||jo(e)&&(e.type==="submit"||e.type==="image")){let s=e.form;if(s==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let c=e.getAttribute("formaction")||s.getAttribute("action");if(a=c?we(c,t):null,r=e.getAttribute("formmethod")||s.getAttribute("method")||xt,n=zt(e.getAttribute("formenctype"))||zt(s.getAttribute("enctype"))||Lt,o=new FormData(s,e),!Bo()){let{name:f,type:p,value:u}=e;if(p==="image"){let l=f?`${f}.`:"";o.append(`${l}x`,"0"),o.append(`${l}y`,"0")}else f&&o.append(f,u)}}else{if(Mt(e))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');r=xt,a=null,n=Lt,i=e}return o&&n==="text/plain"&&(i=o,o=void 0),{action:a,method:r.toLowerCase(),encType:n,formData:o,body:i}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function er(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Ko(e,t,r,a){let n=typeof e=="string"?new URL(e,typeof window>"u"?"server://singlefetch/":window.location.origin):e;return r?n.pathname.endsWith("/")?n.pathname=`${n.pathname}_.${a}`:n.pathname=`${n.pathname}.${a}`:n.pathname==="/"?n.pathname=`_root.${a}`:t&&we(n.pathname,t)==="/"?n.pathname=`${t.replace(/\/$/,"")}/_root.${a}`:n.pathname=`${n.pathname.replace(/\/$/,"")}.${a}`,n}async function Yo(e,t){if(e.id in t)return t[e.id];try{let r=await import(e.module);return t[e.id]=r,r}catch(r){return console.error(`Error loading route module \`${e.module}\`, reloading page...`),console.error(r),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function Go(e){return e==null?!1:e.href==null?e.rel==="preload"&&typeof e.imageSrcSet=="string"&&typeof e.imageSizes=="string":typeof e.rel=="string"&&typeof e.href=="string"}async function Jo(e,t,r){let a=await Promise.all(e.map(async n=>{let o=t.routes[n.route.id];if(o){let i=await Yo(o,r);return i.links?i.links():[]}return[]}));return Zo(a.flat(1).filter(Go).filter(n=>n.rel==="stylesheet"||n.rel==="preload").map(n=>n.rel==="stylesheet"?{...n,rel:"prefetch",as:"style"}:{...n,rel:"prefetch"}))}function Vr(e,t,r,a,n,o){let i=(c,f)=>r[f]?c.route.id!==r[f].route.id:!0,s=(c,f)=>{var p;return r[f].pathname!==c.pathname||((p=r[f].route.path)==null?void 0:p.endsWith("*"))&&r[f].params["*"]!==c.params["*"]};return o==="assets"?t.filter((c,f)=>i(c,f)||s(c,f)):o==="data"?t.filter((c,f)=>{var u;let p=a.routes[c.route.id];if(!p||!p.hasLoader)return!1;if(i(c,f)||s(c,f))return!0;if(c.route.shouldRevalidate){let l=c.route.shouldRevalidate({currentUrl:new URL(n.pathname+n.search+n.hash,window.origin),currentParams:((u=r[0])==null?void 0:u.params)||{},nextUrl:new URL(e,window.origin),nextParams:c.params,defaultShouldRevalidate:!0});if(typeof l=="boolean")return l}return!0}):[]}function qo(e,t,{includeHydrateFallback:r}={}){return Xo(e.map(a=>{let n=t.routes[a.route.id];if(!n)return[];let o=[n.module];return n.clientActionModule&&(o=o.concat(n.clientActionModule)),n.clientLoaderModule&&(o=o.concat(n.clientLoaderModule)),r&&n.hydrateFallbackModule&&(o=o.concat(n.hydrateFallbackModule)),n.imports&&(o=o.concat(n.imports)),o}).flat(1))}function Xo(e){return[...new Set(e)]}function Qo(e){let t={},r=Object.keys(e).sort();for(let a of r)t[a]=e[a];return t}function Zo(e,t){let r=new Set;return new Set(t),e.reduce((a,n)=>{let o=JSON.stringify(Qo(n));return r.has(o)||(r.add(o),a.push({key:o,link:n})),a},[])}function wa(){let e=v.useContext(Be);return er(e,"You must render this element inside a <DataRouterContext.Provider> element"),e}function ei(){let e=v.useContext(dt);return er(e,"You must render this element inside a <DataRouterStateContext.Provider> element"),e}var tr=v.createContext(void 0);tr.displayName="FrameworkContext";function ba(){let e=v.useContext(tr);return er(e,"You must render this element inside a <HydratedRouter> element"),e}function ti(e,t){let r=v.useContext(tr),[a,n]=v.useState(!1),[o,i]=v.useState(!1),{onFocus:s,onBlur:c,onMouseEnter:f,onMouseLeave:p,onTouchStart:u}=t,l=v.useRef(null);v.useEffect(()=>{if(e==="render"&&i(!0),e==="viewport"){let S=C=>{C.forEach(P=>{i(P.isIntersecting)})},R=new IntersectionObserver(S,{threshold:.5});return l.current&&R.observe(l.current),()=>{R.disconnect()}}},[e]),v.useEffect(()=>{if(a){let S=setTimeout(()=>{i(!0)},100);return()=>{clearTimeout(S)}}},[a]);let m=()=>{n(!0)},b=()=>{n(!1),i(!1)};return r?e!=="intent"?[o,l,{}]:[o,l,{onFocus:tt(s,m),onBlur:tt(c,b),onMouseEnter:tt(f,m),onMouseLeave:tt(p,b),onTouchStart:tt(u,m)}]:[!1,l,{}]}function tt(e,t){return r=>{e&&e(r),r.defaultPrevented||t(r)}}function ri({page:e,...t}){let{router:r}=wa(),a=v.useMemo(()=>_e(r.routes,e,r.basename),[r.routes,e,r.basename]);return a?v.createElement(ni,{page:e,matches:a,...t}):null}function ai(e){let{manifest:t,routeModules:r}=ba(),[a,n]=v.useState([]);return v.useEffect(()=>{let o=!1;return Jo(e,t,r).then(i=>{o||n(i)}),()=>{o=!0}},[e,t,r]),a}function ni({page:e,matches:t,...r}){let a=Le(),{future:n,manifest:o,routeModules:i}=ba(),{basename:s}=wa(),{loaderData:c,matches:f}=ei(),p=v.useMemo(()=>Vr(e,t,f,o,a,"data"),[e,t,f,o,a]),u=v.useMemo(()=>Vr(e,t,f,o,a,"assets"),[e,t,f,o,a]),l=v.useMemo(()=>{if(e===a.pathname+a.search+a.hash)return[];let S=new Set,R=!1;if(t.forEach(P=>{var V;let _=o.routes[P.route.id];!_||!_.hasLoader||(!p.some($=>$.route.id===P.route.id)&&P.route.id in c&&((V=i[P.route.id])!=null&&V.shouldRevalidate)||_.hasClientLoader?R=!0:S.add(P.route.id))}),S.size===0)return[];let C=Ko(e,s,n.unstable_trailingSlashAwareDataRequests,"data");return R&&S.size>0&&C.searchParams.set("_routes",t.filter(P=>S.has(P.route.id)).map(P=>P.route.id).join(",")),[C.pathname+C.search]},[s,n.unstable_trailingSlashAwareDataRequests,c,a,o,p,t,e,i]),m=v.useMemo(()=>qo(u,o),[u,o]),b=ai(u);return v.createElement(v.Fragment,null,l.map(S=>v.createElement("link",{key:S,rel:"prefetch",as:"fetch",href:S,...r})),m.map(S=>v.createElement("link",{key:S,rel:"modulepreload",href:S,...r})),b.map(({key:S,link:R})=>v.createElement("link",{key:S,nonce:r.nonce,...R,crossOrigin:R.crossOrigin??r.crossOrigin})))}function oi(...e){return t=>{e.forEach(r=>{typeof r=="function"?r(t):r!=null&&(r.current=t)})}}var ii=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{ii&&(window.__reactRouterVersion="7.13.1")}catch{}function Si(e,t){return Fn({basename:t==null?void 0:t.basename,getContext:t==null?void 0:t.getContext,future:t==null?void 0:t.future,history:Ga({window:t==null?void 0:t.window}),hydrationData:li(),routes:e,mapRouteProperties:Oo,hydrationRouteProperties:To,dataStrategy:t==null?void 0:t.dataStrategy,patchRoutesOnNavigation:t==null?void 0:t.patchRoutesOnNavigation,window:t==null?void 0:t.window,unstable_instrumentations:t==null?void 0:t.unstable_instrumentations}).initialize()}function li(){let e=window==null?void 0:window.__staticRouterHydrationData;return e&&e.errors&&(e={...e,errors:si(e.errors)}),e}function si(e){if(!e)return null;let t=Object.entries(e),r={};for(let[a,n]of t)if(n&&n.__type==="RouteErrorResponse")r[a]=new ut(n.status,n.statusText,n.data,n.internal===!0);else if(n&&n.__type==="Error"){if(n.__subType){let o=window[n.__subType];if(typeof o=="function")try{let i=new o(n.message);i.stack="",r[a]=i}catch{}}if(r[a]==null){let o=new Error(n.message);o.stack="",r[a]=o}}else r[a]=n;return r}var Ra=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Ea=v.forwardRef(function({onClick:t,discover:r="render",prefetch:a="none",relative:n,reloadDocument:o,replace:i,unstable_mask:s,state:c,target:f,to:p,preventScrollReset:u,viewTransition:l,unstable_defaultShouldRevalidate:m,...b},S){let{basename:R,navigator:C,unstable_useTransitions:P}=v.useContext(he),_=typeof p=="string"&&Ra.test(p),V=Zr(p,R);p=V.to;let $=co(p,{relative:n}),H=Le(),Q=null;if(s){let Z=st(s,[],H.unstable_mask?H.unstable_mask.pathname:"/",!0);R!=="/"&&(Z.pathname=Z.pathname==="/"?R:Ee([R,Z.pathname])),Q=C.createHref(Z)}let[y,B,k]=ti(a,b),re=fi(p,{replace:i,unstable_mask:s,state:c,target:f,preventScrollReset:u,relative:n,viewTransition:l,unstable_defaultShouldRevalidate:m,unstable_useTransitions:P});function z(Z){t&&t(Z),Z.defaultPrevented||re(Z)}let ue=!(V.isExternal||o),K=v.createElement("a",{...b,...k,href:(ue?Q:void 0)||V.absoluteURL||$,onClick:ue?z:t,ref:oi(S,B),target:f,"data-discover":!_&&r==="render"?"true":void 0});return y&&!_?v.createElement(v.Fragment,null,K,v.createElement(ri,{page:$})):K});Ea.displayName="Link";var ui=v.forwardRef(function({"aria-current":t="page",caseSensitive:r=!1,className:a="",end:n=!1,style:o,to:i,viewTransition:s,children:c,...f},p){let u=ft(i,{relative:f.relative}),l=Le(),m=v.useContext(dt),{navigator:b,basename:S}=v.useContext(he),R=m!=null&&gi(u)&&s===!0,C=b.encodeLocation?b.encodeLocation(u).pathname:u.pathname,P=l.pathname,_=m&&m.navigation&&m.navigation.location?m.navigation.location.pathname:null;r||(P=P.toLowerCase(),_=_?_.toLowerCase():null,C=C.toLowerCase()),_&&S&&(_=we(_,S)||_);const V=C!=="/"&&C.endsWith("/")?C.length-1:C.length;let $=P===C||!n&&P.startsWith(C)&&P.charAt(V)==="/",H=_!=null&&(_===C||!n&&_.startsWith(C)&&_.charAt(C.length)==="/"),Q={isActive:$,isPending:H,isTransitioning:R},y=$?t:void 0,B;typeof a=="function"?B=a(Q):B=[a,$?"active":null,H?"pending":null,R?"transitioning":null].filter(Boolean).join(" ");let k=typeof o=="function"?o(Q):o;return v.createElement(Ea,{...f,"aria-current":y,className:B,ref:p,style:k,to:i,viewTransition:s},typeof c=="function"?c(Q):c)});ui.displayName="NavLink";var ci=v.forwardRef(({discover:e="render",fetcherKey:t,navigate:r,reloadDocument:a,replace:n,state:o,method:i=xt,action:s,onSubmit:c,relative:f,preventScrollReset:p,viewTransition:u,unstable_defaultShouldRevalidate:l,...m},b)=>{let{unstable_useTransitions:S}=v.useContext(he),R=pi(),C=yi(s,{relative:f}),P=i.toLowerCase()==="get"?"get":"post",_=typeof s=="string"&&Ra.test(s),V=$=>{if(c&&c($),$.defaultPrevented)return;$.preventDefault();let H=$.nativeEvent.submitter,Q=(H==null?void 0:H.getAttribute("formmethod"))||i,y=()=>R(H||$.currentTarget,{fetcherKey:t,method:Q,navigate:r,replace:n,state:o,relative:f,preventScrollReset:p,viewTransition:u,unstable_defaultShouldRevalidate:l});S&&r!==!1?v.startTransition(()=>y()):y()};return v.createElement("form",{ref:b,method:P,action:C,onSubmit:a?c:V,...m,"data-discover":!_&&e==="render"?"true":void 0})});ci.displayName="Form";function di(e){return`${e} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Sa(e){let t=v.useContext(Be);return N(t,di(e)),t}function fi(e,{target:t,replace:r,unstable_mask:a,state:n,preventScrollReset:o,relative:i,viewTransition:s,unstable_defaultShouldRevalidate:c,unstable_useTransitions:f}={}){let p=Xt(),u=Le(),l=ft(e,{relative:i});return v.useCallback(m=>{if(Io(m,t)){m.preventDefault();let b=r!==void 0?r:xe(u)===xe(l),S=()=>p(e,{replace:b,unstable_mask:a,state:n,preventScrollReset:o,relative:i,viewTransition:s,unstable_defaultShouldRevalidate:c});f?v.startTransition(()=>S()):S()}},[u,p,l,r,a,n,t,e,o,i,s,c,f])}function xi(e){X(typeof URLSearchParams<"u","You cannot use the `useSearchParams` hook in a browser that does not support the URLSearchParams API. If you need to support Internet Explorer 11, we recommend you load a polyfill such as https://github.com/ungap/url-search-params.");let t=v.useRef(Wt(e)),r=v.useRef(!1),a=Le(),n=v.useMemo(()=>Ho(a.search,r.current?null:t.current),[a.search]),o=Xt(),i=v.useCallback((s,c)=>{const f=Wt(typeof s=="function"?s(new URLSearchParams(n)):s);r.current=!0,o("?"+f,c)},[o,n]);return[n,i]}var hi=0,mi=()=>`__${String(++hi)}__`;function pi(){let{router:e}=Sa("useSubmit"),{basename:t}=v.useContext(he),r=xo(),a=e.fetch,n=e.navigate;return v.useCallback(async(o,i={})=>{let{action:s,method:c,encType:f,formData:p,body:u}=Vo(o,t);if(i.navigate===!1){let l=i.fetcherKey||mi();await a(l,r,i.action||s,{unstable_defaultShouldRevalidate:i.unstable_defaultShouldRevalidate,preventScrollReset:i.preventScrollReset,formData:p,body:u,formMethod:i.method||c,formEncType:i.encType||f,flushSync:i.flushSync})}else await n(i.action||s,{unstable_defaultShouldRevalidate:i.unstable_defaultShouldRevalidate,preventScrollReset:i.preventScrollReset,formData:p,body:u,formMethod:i.method||c,formEncType:i.encType||f,replace:i.replace,state:i.state,fromRouteId:r,flushSync:i.flushSync,viewTransition:i.viewTransition})},[a,n,t,r])}function yi(e,{relative:t}={}){let{basename:r}=v.useContext(he),a=v.useContext(be);N(a,"useFormAction must be used inside a RouteContext");let[n]=a.matches.slice(-1),o={...ft(e||".",{relative:t})},i=Le();if(e==null){o.search=i.search;let s=new URLSearchParams(o.search),c=s.getAll("index");if(c.some(p=>p==="")){s.delete("index"),c.filter(u=>u).forEach(u=>s.append("index",u));let p=s.toString();o.search=p?`?${p}`:""}}return(!e||e===".")&&n.route.index&&(o.search=o.search?o.search.replace(/^\?/,"?index&"):"?index"),r!=="/"&&(o.pathname=o.pathname==="/"?r:Ee([r,o.pathname])),xe(o)}function gi(e,{relative:t}={}){let r=v.useContext(Jt);N(r!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:a}=Sa("useViewTransitionState"),n=ft(e,{relative:t});if(!r.isTransitioning)return!1;let o=we(r.currentLocation.pathname,a)||r.currentLocation.pathname,i=we(r.nextLocation.pathname,a)||r.nextLocation.pathname;return Pt(n.pathname,i)!=null||Pt(n.pathname,o)!=null}var vi=Va();function Li(e){return v.createElement(Fo,{flushSync:vi.flushSync,...e})}export{Ea as L,ui as N,Ei as O,Li as R,vi as a,Ri as b,Xt as c,Si as d,bi as e,xi as f,Va as r,Le as u};
|
|
26
|
+
//# sourceMappingURL=vendor-react-Co3Y8ikm.js.map
|