ai-delivery-workflow 0.2.2 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +45 -14
- package/bin/ai-delivery.mjs +181 -6
- package/bin/benchmark-autonomy.mjs +217 -0
- package/bin/release-check.mjs +382 -0
- package/docs/CLI-PARAMETER-REFERENCE.zh-CN.md +346 -0
- package/docs/CODEGRAPH-INTEGRATION.zh-CN.md +89 -0
- package/docs/DUAL-REPOSITORY-WORKSPACE.zh-CN.md +2 -2
- package/docs/EVOLUTION-MAINTENANCE.zh-CN.md +7 -7
- package/docs/EVOLUTION-USER-GUIDE.zh-CN.md +2 -2
- package/docs/FILE-REFERENCE.zh-CN.md +120 -39
- package/docs/MAINTENANCE-VERIFICATION.zh-CN.md +51 -0
- package/docs/MOCK-SYSTEM.zh-CN.md +141 -0
- package/docs/NPM-RELEASE-MANAGEMENT.zh-CN.md +106 -0
- package/docs/PROJECT-MANUAL.zh-CN.md +154 -95
- package/docs/PROTOTYPE-MIGRATION.zh-CN.md +164 -0
- package/docs/STATE-CLI-MAINTENANCE.zh-CN.md +35 -17
- package/docs/STATE-CLI-USER-GUIDE.zh-CN.md +115 -39
- package/docs/VIEWER-MAINTENANCE.zh-CN.md +101 -324
- package/docs/VIEWER-USER-GUIDE.zh-CN.md +68 -190
- package/docs/adr/0001-prototype-first-ui-governance.md +3 -0
- package/docs/adr/0002-microcks-as-default-mock-system.md +3 -0
- package/docs/adr/0003-workflow-manager-governed-control-surface.md +46 -0
- package/docs/adr/0004-operational-carbon-visual-standard.md +9 -0
- package/docs/adr/0005-prototype-management-as-routed-pages.md +7 -0
- package/docs/agents/domain.md +12 -0
- package/docs/agents/issue-tracker.md +27 -0
- package/docs/agents/triage-labels.md +11 -0
- package/docs/agents/workflow-manager-acceptance-matrix.md +93 -0
- package/docs/agents/workflow-manager-agent-interface.md +145 -0
- package/docs/agents/workflow-manager-current-state.md +205 -0
- package/lib/artifact-files.mjs +47 -0
- package/lib/codegraph.mjs +405 -0
- package/lib/delivery-state.mjs +3079 -198
- package/lib/frontend-guard.mjs +288 -0
- package/lib/fs-utils.mjs +53 -0
- package/lib/history-anchor.mjs +98 -0
- package/lib/mock-scenario-pack.mjs +687 -0
- package/lib/mock-system.mjs +897 -0
- package/lib/npm-package-result.mjs +11 -0
- package/lib/png-evidence.mjs +149 -0
- package/lib/project-bootstrap.mjs +96 -55
- package/lib/project-installer.mjs +1484 -164
- package/lib/project-migration.mjs +1193 -0
- package/lib/prototype-migration.mjs +713 -0
- package/lib/prototype-page-review.mjs +384 -0
- package/lib/prototype-review-target.mjs +334 -0
- package/lib/prototype-revision.mjs +812 -0
- package/lib/stable-value.mjs +15 -0
- package/lib/toml-hooks.mjs +69 -0
- package/lib/ui-acceptance.mjs +565 -0
- package/lib/visual-standard.mjs +232 -0
- package/lib/workflow-manager-contracts.mjs +367 -0
- package/lib/workflow-manager-facts.mjs +778 -0
- package/lib/workflow-manager-governance.mjs +514 -0
- package/lib/workflow-manager-mock.mjs +183 -0
- package/lib/workflow-manager-prototypes.mjs +1847 -0
- package/lib/workflow-manager-public/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff +0 -0
- package/lib/workflow-manager-public/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2 +0 -0
- package/lib/workflow-manager-public/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2 +0 -0
- package/lib/workflow-manager-public/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff +0 -0
- package/lib/workflow-manager-public/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2 +0 -0
- package/lib/workflow-manager-public/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff +0 -0
- package/lib/workflow-manager-public/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff +0 -0
- package/lib/workflow-manager-public/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2 +0 -0
- package/lib/workflow-manager-public/assets/index-Chlg6r8f.css +1 -0
- package/lib/workflow-manager-public/assets/index-E-hGB5ZD.js +13 -0
- package/lib/workflow-manager-public/fonts/OFL-1.1.txt +90 -0
- package/lib/workflow-manager-public/index.html +14 -0
- package/lib/workflow-manager-systems.mjs +519 -0
- package/lib/workflow-manager-transaction.mjs +397 -0
- package/lib/workflow-manager.mjs +745 -0
- package/package.json +8 -2
- package/skills/ai-delivery-assemble-release/agents/openai.yaml +3 -3
- package/skills/ai-delivery-assemble-release/assets/release-material-index.csv +1 -1
- package/skills/ai-delivery-assemble-release/assets/version-inclusion.csv +1 -1
- package/skills/ai-delivery-bootstrap/SKILL.md +4 -4
- package/skills/ai-delivery-bootstrap/agents/openai.yaml +3 -3
- package/skills/ai-delivery-bootstrap/references/bootstrap-contract.md +4 -2
- package/skills/ai-delivery-checkpoint-task/SKILL.md +17 -3
- package/skills/ai-delivery-checkpoint-task/agents/openai.yaml +3 -3
- package/skills/ai-delivery-checkpoint-task/assets/runtime-template/task.json +7 -1
- package/skills/ai-delivery-checkpoint-task/references/checkpoint-contract.md +22 -8
- package/skills/ai-delivery-checkpoint-task/scripts/hook-event.mjs +91 -0
- package/skills/ai-delivery-checkpoint-task/scripts/task-state.mjs +1086 -51
- package/skills/ai-delivery-close-version/SKILL.md +9 -8
- package/skills/ai-delivery-close-version/agents/openai.yaml +3 -3
- package/skills/ai-delivery-close-version/assets/version-lineage.yaml +1 -1
- package/skills/ai-delivery-close-version/references/version-closeout-contract.md +2 -2
- package/skills/ai-delivery-define-product/SKILL.md +8 -4
- package/skills/ai-delivery-define-product/agents/openai.yaml +4 -4
- package/skills/ai-delivery-define-product/references/product-contract.md +2 -2
- package/skills/ai-delivery-deploy-production/agents/openai.yaml +3 -3
- package/skills/ai-delivery-design-architecture/SKILL.md +9 -5
- package/skills/ai-delivery-design-architecture/assets/architecture-template/prototype-architecture-validation.yaml +16 -16
- package/skills/ai-delivery-design-architecture/references/architecture-contract.md +1 -1
- package/skills/ai-delivery-design-experience/SKILL.md +36 -30
- package/skills/ai-delivery-design-experience/agents/openai.yaml +4 -4
- package/skills/ai-delivery-design-experience/assets/experience-template/LEGACY-COMPATIBILITY.md +16 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/design-reference-selection.yaml +32 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/experience-baseline.yaml +2 -2
- package/skills/ai-delivery-design-experience/assets/experience-template/formal-ui-confirmation.yaml +16 -3
- package/skills/ai-delivery-design-experience/assets/experience-template/frontend-change-scope.yaml +30 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/interaction-contract.csv +1 -1
- package/skills/ai-delivery-design-experience/assets/experience-template/mock-admin-export.yaml +8 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/mock-scenario-mappings.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/mock-scenario-pack-request.yaml +24 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/product-prototype-reconciliation.yaml +2 -1
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-adjustment-log.csv +1 -1
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-component-bindings.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-component-candidates.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-components.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-confirmation.yaml +18 -18
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-data-contracts.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-impact-assessment.yaml +5 -5
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-implementation-bindings.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-manifest.yaml +2 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-pages.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-product-coverage.csv +1 -1
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-review-comments.csv +1 -1
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-review-decision.yaml +13 -12
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-review-scenes.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-review-sessions.csv +1 -1
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-review-unit-pages.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-review-units.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-revision.yaml +88 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-routes.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-set.yaml +2 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-source-inspection-snapshots.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-terminals.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-tool-candidates.csv +1 -1
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-tool-selection.yaml +2 -3
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-traceability.csv +1 -1
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype-trigger-conditions.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/prototype.yaml +6 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/ui-framework-selection.yaml +17 -1
- package/skills/ai-delivery-design-experience/assets/experience-template/ui-handoff.yaml +6 -5
- package/skills/ai-delivery-design-experience/assets/experience-template/ui-mapping.csv +1 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/visual-direction.yaml +4 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/visual-reference-manifest.yaml +23 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/visual-reference.html +163 -0
- package/skills/ai-delivery-design-experience/assets/experience-template/visual-system-confirmation.yaml +11 -0
- package/skills/ai-delivery-design-experience/references/experience-contract.md +26 -27
- package/skills/ai-delivery-design-experience/references/prototype-management-contract.md +42 -21
- package/skills/ai-delivery-design-tests/SKILL.md +13 -7
- package/skills/ai-delivery-design-tests/assets/test-design-template/prototype-test-scope.csv +1 -1
- package/skills/ai-delivery-design-tests/assets/test-design-template/prototype-test-validation.yaml +17 -16
- package/skills/ai-delivery-design-tests/references/test-design-contract.md +7 -5
- package/skills/ai-delivery-develop-iteration/SKILL.md +18 -11
- package/skills/ai-delivery-develop-iteration/agents/openai.yaml +3 -3
- package/skills/ai-delivery-develop-iteration/assets/development-template/candidate-manifest.yaml +36 -0
- package/skills/ai-delivery-develop-iteration/assets/development-template/task-prototype-traceability.csv +1 -1
- package/skills/ai-delivery-develop-iteration/references/development-contract.md +5 -3
- package/skills/ai-delivery-evolve-workflow/agents/openai.yaml +3 -3
- package/skills/ai-delivery-execute-test/SKILL.md +6 -2
- package/skills/ai-delivery-execute-test/agents/openai.yaml +4 -4
- package/skills/ai-delivery-execute-work-package/SKILL.md +10 -3
- package/skills/ai-delivery-execute-work-package/agents/openai.yaml +4 -4
- package/skills/ai-delivery-execute-work-package/references/work-package-contract.md +1 -1
- package/skills/ai-delivery-manage-git/agents/openai.yaml +3 -3
- package/skills/ai-delivery-manage-standards/agents/openai.yaml +4 -4
- package/skills/ai-delivery-orchestrate/SKILL.md +47 -29
- package/skills/ai-delivery-orchestrate/agents/openai.yaml +3 -3
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/control/migrations/.gitkeep +0 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/control/repairs/.gitkeep +0 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/delivery/project.yaml +1 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/delivery/workflow-state.yaml +2 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/frontend-guard/frontend-guard.mjs +50 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/hooks/hook-event.mjs +91 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/manager/manager.mjs +64 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/manager/start.cmd +4 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/manager/start.ps1 +2 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/{viewer → manager}/start.sh +1 -1
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/mock/mock.mjs +50 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/ui-acceptance/ui-acceptance.mjs +37 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/AGENTS.md +32 -6
- package/skills/ai-delivery-orchestrate/assets/project-template/gitignore.template +1 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/CONTRIBUTING.md +25 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/LICENSE +21 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/README.md +250 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/UPSTREAM.yaml +19 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/airbnb/DESIGN.md +545 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/airbnb/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/airtable/DESIGN.md +554 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/airtable/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/apple/DESIGN.md +562 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/apple/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/binance/DESIGN.md +634 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/binance/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/bmw/DESIGN.md +544 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/bmw/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/bmw-m/DESIGN.md +503 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/bmw-m/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/bugatti/DESIGN.md +454 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/bugatti/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/cal/DESIGN.md +542 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/cal/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/claude/DESIGN.md +589 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/claude/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/clay/DESIGN.md +541 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/clay/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/clickhouse/DESIGN.md +544 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/clickhouse/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/cohere/DESIGN.md +451 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/cohere/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/coinbase/DESIGN.md +570 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/coinbase/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/composio/DESIGN.md +506 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/composio/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/cursor/DESIGN.md +537 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/cursor/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/dell-1996/DESIGN.md +632 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/dell-1996/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/elevenlabs/DESIGN.md +504 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/elevenlabs/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/expo/DESIGN.md +526 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/expo/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/ferrari/DESIGN.md +531 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/ferrari/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/figma/DESIGN.md +578 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/figma/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/framer/DESIGN.md +544 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/framer/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/hashicorp/DESIGN.md +575 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/hashicorp/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/hp/DESIGN.md +670 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/hp/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/ibm/DESIGN.md +550 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/ibm/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/intercom/DESIGN.md +546 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/intercom/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/kraken/DESIGN.md +125 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/kraken/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/lamborghini/DESIGN.md +288 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/lamborghini/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/linear.app/DESIGN.md +548 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/linear.app/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/lovable/DESIGN.md +298 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/lovable/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/mastercard/DESIGN.md +365 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/mastercard/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/meta/DESIGN.md +683 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/meta/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/minimax/DESIGN.md +746 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/minimax/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/mintlify/DESIGN.md +852 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/mintlify/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/miro/DESIGN.md +825 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/miro/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/mistral.ai/DESIGN.md +773 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/mistral.ai/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/mongodb/DESIGN.md +767 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/mongodb/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/nike/DESIGN.md +575 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/nike/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/nintendo-2001/DESIGN.md +649 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/nintendo-2001/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/notion/DESIGN.md +821 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/notion/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/nvidia/DESIGN.md +640 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/nvidia/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/ollama/DESIGN.md +539 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/ollama/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/opencode.ai/DESIGN.md +521 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/opencode.ai/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/pinterest/DESIGN.md +597 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/pinterest/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/playstation/DESIGN.md +661 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/playstation/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/posthog/DESIGN.md +690 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/posthog/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/raycast/DESIGN.md +669 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/raycast/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/renault/DESIGN.md +589 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/renault/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/replicate/DESIGN.md +616 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/replicate/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/resend/DESIGN.md +585 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/resend/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/revolut/DESIGN.md +636 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/revolut/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/runwayml/DESIGN.md +244 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/runwayml/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/sanity/DESIGN.md +357 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/sanity/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/sentry/DESIGN.md +551 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/sentry/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/shopify/DESIGN.md +516 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/shopify/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/slack/DESIGN.md +482 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/spacex/DESIGN.md +363 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/spacex/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/spotify/DESIGN.md +246 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/spotify/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/starbucks/DESIGN.md +580 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/starbucks/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/stripe/DESIGN.md +487 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/stripe/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/supabase/DESIGN.md +462 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/supabase/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/superhuman/DESIGN.md +448 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/superhuman/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/tesla/DESIGN.md +286 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/tesla/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/theverge/DESIGN.md +339 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/theverge/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/together.ai/DESIGN.md +633 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/together.ai/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/uber/DESIGN.md +636 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/uber/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/vercel/DESIGN.md +736 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/vercel/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/vodafone/DESIGN.md +538 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/vodafone/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/voltagent/DESIGN.md +521 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/voltagent/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/warp/DESIGN.md +526 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/warp/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/webflow/DESIGN.md +588 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/webflow/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/wired/DESIGN.md +497 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/wired/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/wise/DESIGN.md +544 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/wise/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/x.ai/DESIGN.md +465 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/x.ai/README.md +5 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/zapier/DESIGN.md +537 -0
- package/skills/ai-delivery-orchestrate/assets/project-template/ref/ui/design-md/zapier/README.md +5 -0
- package/skills/ai-delivery-orchestrate/references/formal-state-contract.md +65 -20
- package/skills/ai-delivery-orchestrate/references/workflow-model.md +7 -5
- package/skills/ai-delivery-orchestrate-release/SKILL.md +2 -2
- package/skills/ai-delivery-orchestrate-release/agents/openai.yaml +4 -4
- package/skills/ai-delivery-orchestrate-release/references/release-workflow-contract.md +1 -1
- package/skills/ai-delivery-plan-iteration/SKILL.md +11 -4
- package/skills/ai-delivery-plan-iteration/agents/openai.yaml +4 -4
- package/skills/ai-delivery-plan-iteration/assets/planning-template/scope-manifest.yaml +17 -0
- package/skills/ai-delivery-plan-iteration/assets/planning-template/slice-prototype-traceability.csv +1 -1
- package/skills/ai-delivery-plan-iteration/references/planning-contract.md +8 -2
- package/skills/ai-delivery-prepare-platform/SKILL.md +5 -1
- package/skills/ai-delivery-prepare-platform/agents/openai.yaml +4 -4
- package/skills/ai-delivery-prepare-release/agents/openai.yaml +4 -4
- package/skills/ai-delivery-review-change/SKILL.md +14 -4
- package/skills/ai-delivery-review-change/agents/openai.yaml +4 -4
- package/skills/ai-delivery-review-change/references/review-contract.md +6 -0
- package/skills/ai-delivery-triage-failure/SKILL.md +5 -1
- package/skills/ai-delivery-triage-failure/agents/openai.yaml +4 -4
- package/skills/ai-delivery-validate-artifacts/SKILL.md +6 -3
- package/skills/ai-delivery-validate-artifacts/agents/openai.yaml +4 -4
- package/skills/ai-delivery-validate-artifacts/references/artifact-contract.md +13 -13
- package/skills/ai-delivery-verify-candidate/SKILL.md +13 -6
- package/skills/ai-delivery-verify-candidate/agents/openai.yaml +3 -3
- package/skills/ai-delivery-verify-candidate/assets/verification-template/ui-acceptance-request.yaml +19 -0
- package/skills/ai-delivery-verify-candidate/assets/verification-template/ui-acceptance-results.yaml +53 -0
- package/skills/ai-delivery-verify-candidate/references/candidate-verification-contract.md +10 -2
- package/skills/ai-delivery-verify-production/agents/openai.yaml +3 -3
- package/skills/ai-delivery-design-experience/assets/experience-template/low-fidelity-confirmation.yaml +0 -32
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/viewer/public/app.js +0 -546
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/viewer/public/index.html +0 -199
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/viewer/public/styles.css +0 -529
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/viewer/server.mjs +0 -780
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/viewer/start.cmd +0 -4
- package/skills/ai-delivery-orchestrate/assets/project-template/.workflow/tools/viewer/start.ps1 +0 -2
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
(function(){const u=document.createElement("link").relList;if(u&&u.supports&&u.supports("modulepreload"))return;for(const f of document.querySelectorAll('link[rel="modulepreload"]'))r(f);new MutationObserver(f=>{for(const h of f)if(h.type==="childList")for(const p of h.addedNodes)p.tagName==="LINK"&&p.rel==="modulepreload"&&r(p)}).observe(document,{childList:!0,subtree:!0});function o(f){const h={};return f.integrity&&(h.integrity=f.integrity),f.referrerPolicy&&(h.referrerPolicy=f.referrerPolicy),f.crossOrigin==="use-credentials"?h.credentials="include":f.crossOrigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function r(f){if(f.ep)return;f.ep=!0;const h=o(f);fetch(f.href,h)}})();var ru={exports:{}},In={};var Qh;function vx(){if(Qh)return In;Qh=1;var s=Symbol.for("react.transitional.element"),u=Symbol.for("react.fragment");function o(r,f,h){var p=null;if(h!==void 0&&(p=""+h),f.key!==void 0&&(p=""+f.key),"key"in f){h={};for(var x in f)x!=="key"&&(h[x]=f[x])}else h=f;return f=h.ref,{$$typeof:s,type:r,key:p,ref:f!==void 0?f:null,props:h}}return In.Fragment=u,In.jsx=o,In.jsxs=o,In}var Vh;function xx(){return Vh||(Vh=1,ru.exports=vx()),ru.exports}var a=xx(),uu={exports:{}},ue={};var Xh;function gx(){if(Xh)return ue;Xh=1;var s=Symbol.for("react.transitional.element"),u=Symbol.for("react.portal"),o=Symbol.for("react.fragment"),r=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),h=Symbol.for("react.consumer"),p=Symbol.for("react.context"),x=Symbol.for("react.forward_ref"),y=Symbol.for("react.suspense"),v=Symbol.for("react.memo"),S=Symbol.for("react.lazy"),g=Symbol.for("react.activity"),w=Symbol.iterator;function O(N){return N===null||typeof N!="object"?null:(N=w&&N[w]||N["@@iterator"],typeof N=="function"?N:null)}var k={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},B=Object.assign,Y={};function D(N,L,X){this.props=N,this.context=L,this.refs=Y,this.updater=X||k}D.prototype.isReactComponent={},D.prototype.setState=function(N,L){if(typeof N!="object"&&typeof N!="function"&&N!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,N,L,"setState")},D.prototype.forceUpdate=function(N){this.updater.enqueueForceUpdate(this,N,"forceUpdate")};function G(){}G.prototype=D.prototype;function K(N,L,X){this.props=N,this.context=L,this.refs=Y,this.updater=X||k}var ce=K.prototype=new G;ce.constructor=K,B(ce,D.prototype),ce.isPureReactComponent=!0;var ie=Array.isArray;function he(){}var $={H:null,A:null,T:null,S:null},I=Object.prototype.hasOwnProperty;function je(N,L,X){var P=X.ref;return{$$typeof:s,type:N,key:L,ref:P!==void 0?P:null,props:X}}function we(N,L){return je(N.type,L,N.props)}function ke(N){return typeof N=="object"&&N!==null&&N.$$typeof===s}function z(N){var L={"=":"=0",":":"=2"};return"$"+N.replace(/[=:]/g,function(X){return L[X]})}var ae=/\/+/g;function _e(N,L){return typeof N=="object"&&N!==null&&N.key!=null?z(""+N.key):L.toString(36)}function V(N){switch(N.status){case"fulfilled":return N.value;case"rejected":throw N.reason;default:switch(typeof N.status=="string"?N.then(he,he):(N.status="pending",N.then(function(L){N.status==="pending"&&(N.status="fulfilled",N.value=L)},function(L){N.status==="pending"&&(N.status="rejected",N.reason=L)})),N.status){case"fulfilled":return N.value;case"rejected":throw N.reason}}throw N}function R(N,L,X,P,re){var me=typeof N;(me==="undefined"||me==="boolean")&&(N=null);var Z=!1;if(N===null)Z=!0;else switch(me){case"bigint":case"string":case"number":Z=!0;break;case"object":switch(N.$$typeof){case s:case u:Z=!0;break;case S:return Z=N._init,R(Z(N._payload),L,X,P,re)}}if(Z)return re=re(N),Z=P===""?"."+_e(N,0):P,ie(re)?(X="",Z!=null&&(X=Z.replace(ae,"$&/")+"/"),R(re,L,X,"",function(sn){return sn})):re!=null&&(ke(re)&&(re=we(re,X+(re.key==null||N&&N.key===re.key?"":(""+re.key).replace(ae,"$&/")+"/")+Z)),L.push(re)),1;Z=0;var We=P===""?".":P+":";if(ie(N))for(var Ye=0;Ye<N.length;Ye++)P=N[Ye],me=We+_e(P,Ye),Z+=R(P,L,X,me,re);else if(Ye=O(N),typeof Ye=="function")for(N=Ye.call(N),Ye=0;!(P=N.next()).done;)P=P.value,me=We+_e(P,Ye++),Z+=R(P,L,X,me,re);else if(me==="object"){if(typeof N.then=="function")return R(V(N),L,X,P,re);throw L=String(N),Error("Objects are not valid as a React child (found: "+(L==="[object Object]"?"object with keys {"+Object.keys(N).join(", ")+"}":L)+"). If you meant to render a collection of children, use an array instead.")}return Z}function Q(N,L,X){if(N==null)return N;var P=[],re=0;return R(N,P,"","",function(me){return L.call(X,me,re++)}),P}function F(N){if(N._status===-1){var L=N._result;L=L(),L.then(function(X){(N._status===0||N._status===-1)&&(N._status=1,N._result=X)},function(X){(N._status===0||N._status===-1)&&(N._status=2,N._result=X)}),N._status===-1&&(N._status=0,N._result=L)}if(N._status===1)return N._result.default;throw N._result}var de=typeof reportError=="function"?reportError:function(N){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var L=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof N=="object"&&N!==null&&typeof N.message=="string"?String(N.message):String(N),error:N});if(!window.dispatchEvent(L))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",N);return}console.error(N)},J={map:Q,forEach:function(N,L,X){Q(N,function(){L.apply(this,arguments)},X)},count:function(N){var L=0;return Q(N,function(){L++}),L},toArray:function(N){return Q(N,function(L){return L})||[]},only:function(N){if(!ke(N))throw Error("React.Children.only expected to receive a single React element child.");return N}};return ue.Activity=g,ue.Children=J,ue.Component=D,ue.Fragment=o,ue.Profiler=f,ue.PureComponent=K,ue.StrictMode=r,ue.Suspense=y,ue.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=$,ue.__COMPILER_RUNTIME={__proto__:null,c:function(N){return $.H.useMemoCache(N)}},ue.cache=function(N){return function(){return N.apply(null,arguments)}},ue.cacheSignal=function(){return null},ue.cloneElement=function(N,L,X){if(N==null)throw Error("The argument must be a React element, but you passed "+N+".");var P=B({},N.props),re=N.key;if(L!=null)for(me in L.key!==void 0&&(re=""+L.key),L)!I.call(L,me)||me==="key"||me==="__self"||me==="__source"||me==="ref"&&L.ref===void 0||(P[me]=L[me]);var me=arguments.length-2;if(me===1)P.children=X;else if(1<me){for(var Z=Array(me),We=0;We<me;We++)Z[We]=arguments[We+2];P.children=Z}return je(N.type,re,P)},ue.createContext=function(N){return N={$$typeof:p,_currentValue:N,_currentValue2:N,_threadCount:0,Provider:null,Consumer:null},N.Provider=N,N.Consumer={$$typeof:h,_context:N},N},ue.createElement=function(N,L,X){var P,re={},me=null;if(L!=null)for(P in L.key!==void 0&&(me=""+L.key),L)I.call(L,P)&&P!=="key"&&P!=="__self"&&P!=="__source"&&(re[P]=L[P]);var Z=arguments.length-2;if(Z===1)re.children=X;else if(1<Z){for(var We=Array(Z),Ye=0;Ye<Z;Ye++)We[Ye]=arguments[Ye+2];re.children=We}if(N&&N.defaultProps)for(P in Z=N.defaultProps,Z)re[P]===void 0&&(re[P]=Z[P]);return je(N,me,re)},ue.createRef=function(){return{current:null}},ue.forwardRef=function(N){return{$$typeof:x,render:N}},ue.isValidElement=ke,ue.lazy=function(N){return{$$typeof:S,_payload:{_status:-1,_result:N},_init:F}},ue.memo=function(N,L){return{$$typeof:v,type:N,compare:L===void 0?null:L}},ue.startTransition=function(N){var L=$.T,X={};$.T=X;try{var P=N(),re=$.S;re!==null&&re(X,P),typeof P=="object"&&P!==null&&typeof P.then=="function"&&P.then(he,de)}catch(me){de(me)}finally{L!==null&&X.types!==null&&(L.types=X.types),$.T=L}},ue.unstable_useCacheRefresh=function(){return $.H.useCacheRefresh()},ue.use=function(N){return $.H.use(N)},ue.useActionState=function(N,L,X){return $.H.useActionState(N,L,X)},ue.useCallback=function(N,L){return $.H.useCallback(N,L)},ue.useContext=function(N){return $.H.useContext(N)},ue.useDebugValue=function(){},ue.useDeferredValue=function(N,L){return $.H.useDeferredValue(N,L)},ue.useEffect=function(N,L){return $.H.useEffect(N,L)},ue.useEffectEvent=function(N){return $.H.useEffectEvent(N)},ue.useId=function(){return $.H.useId()},ue.useImperativeHandle=function(N,L,X){return $.H.useImperativeHandle(N,L,X)},ue.useInsertionEffect=function(N,L){return $.H.useInsertionEffect(N,L)},ue.useLayoutEffect=function(N,L){return $.H.useLayoutEffect(N,L)},ue.useMemo=function(N,L){return $.H.useMemo(N,L)},ue.useOptimistic=function(N,L){return $.H.useOptimistic(N,L)},ue.useReducer=function(N,L,X){return $.H.useReducer(N,L,X)},ue.useRef=function(N){return $.H.useRef(N)},ue.useState=function(N){return $.H.useState(N)},ue.useSyncExternalStore=function(N,L,X){return $.H.useSyncExternalStore(N,L,X)},ue.useTransition=function(){return $.H.useTransition()},ue.version="19.2.8",ue}var Zh;function Eu(){return Zh||(Zh=1,uu.exports=gx()),uu.exports}var j=Eu(),ou={exports:{}},ei={},du={exports:{}},fu={};var Kh;function yx(){return Kh||(Kh=1,(function(s){function u(R,Q){var F=R.length;R.push(Q);e:for(;0<F;){var de=F-1>>>1,J=R[de];if(0<f(J,Q))R[de]=Q,R[F]=J,F=de;else break e}}function o(R){return R.length===0?null:R[0]}function r(R){if(R.length===0)return null;var Q=R[0],F=R.pop();if(F!==Q){R[0]=F;e:for(var de=0,J=R.length,N=J>>>1;de<N;){var L=2*(de+1)-1,X=R[L],P=L+1,re=R[P];if(0>f(X,F))P<J&&0>f(re,X)?(R[de]=re,R[P]=F,de=P):(R[de]=X,R[L]=F,de=L);else if(P<J&&0>f(re,F))R[de]=re,R[P]=F,de=P;else break e}}return Q}function f(R,Q){var F=R.sortIndex-Q.sortIndex;return F!==0?F:R.id-Q.id}if(s.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var h=performance;s.unstable_now=function(){return h.now()}}else{var p=Date,x=p.now();s.unstable_now=function(){return p.now()-x}}var y=[],v=[],S=1,g=null,w=3,O=!1,k=!1,B=!1,Y=!1,D=typeof setTimeout=="function"?setTimeout:null,G=typeof clearTimeout=="function"?clearTimeout:null,K=typeof setImmediate<"u"?setImmediate:null;function ce(R){for(var Q=o(v);Q!==null;){if(Q.callback===null)r(v);else if(Q.startTime<=R)r(v),Q.sortIndex=Q.expirationTime,u(y,Q);else break;Q=o(v)}}function ie(R){if(B=!1,ce(R),!k)if(o(y)!==null)k=!0,he||(he=!0,z());else{var Q=o(v);Q!==null&&V(ie,Q.startTime-R)}}var he=!1,$=-1,I=5,je=-1;function we(){return Y?!0:!(s.unstable_now()-je<I)}function ke(){if(Y=!1,he){var R=s.unstable_now();je=R;var Q=!0;try{e:{k=!1,B&&(B=!1,G($),$=-1),O=!0;var F=w;try{t:{for(ce(R),g=o(y);g!==null&&!(g.expirationTime>R&&we());){var de=g.callback;if(typeof de=="function"){g.callback=null,w=g.priorityLevel;var J=de(g.expirationTime<=R);if(R=s.unstable_now(),typeof J=="function"){g.callback=J,ce(R),Q=!0;break t}g===o(y)&&r(y),ce(R)}else r(y);g=o(y)}if(g!==null)Q=!0;else{var N=o(v);N!==null&&V(ie,N.startTime-R),Q=!1}}break e}finally{g=null,w=F,O=!1}Q=void 0}}finally{Q?z():he=!1}}}var z;if(typeof K=="function")z=function(){K(ke)};else if(typeof MessageChannel<"u"){var ae=new MessageChannel,_e=ae.port2;ae.port1.onmessage=ke,z=function(){_e.postMessage(null)}}else z=function(){D(ke,0)};function V(R,Q){$=D(function(){R(s.unstable_now())},Q)}s.unstable_IdlePriority=5,s.unstable_ImmediatePriority=1,s.unstable_LowPriority=4,s.unstable_NormalPriority=3,s.unstable_Profiling=null,s.unstable_UserBlockingPriority=2,s.unstable_cancelCallback=function(R){R.callback=null},s.unstable_forceFrameRate=function(R){0>R||125<R?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):I=0<R?Math.floor(1e3/R):5},s.unstable_getCurrentPriorityLevel=function(){return w},s.unstable_next=function(R){switch(w){case 1:case 2:case 3:var Q=3;break;default:Q=w}var F=w;w=Q;try{return R()}finally{w=F}},s.unstable_requestPaint=function(){Y=!0},s.unstable_runWithPriority=function(R,Q){switch(R){case 1:case 2:case 3:case 4:case 5:break;default:R=3}var F=w;w=R;try{return Q()}finally{w=F}},s.unstable_scheduleCallback=function(R,Q,F){var de=s.unstable_now();switch(typeof F=="object"&&F!==null?(F=F.delay,F=typeof F=="number"&&0<F?de+F:de):F=de,R){case 1:var J=-1;break;case 2:J=250;break;case 5:J=1073741823;break;case 4:J=1e4;break;default:J=5e3}return J=F+J,R={id:S++,callback:Q,priorityLevel:R,startTime:F,expirationTime:J,sortIndex:-1},F>de?(R.sortIndex=F,u(v,R),o(y)===null&&R===o(v)&&(B?(G($),$=-1):B=!0,V(ie,F-de))):(R.sortIndex=J,u(y,R),k||O||(k=!0,he||(he=!0,z()))),R},s.unstable_shouldYield=we,s.unstable_wrapCallback=function(R){var Q=w;return function(){var F=w;w=Q;try{return R.apply(this,arguments)}finally{w=F}}}})(fu)),fu}var Jh;function jx(){return Jh||(Jh=1,du.exports=yx()),du.exports}var hu={exports:{}},at={};var $h;function _x(){if($h)return at;$h=1;var s=Eu();function u(y){var v="https://react.dev/errors/"+y;if(1<arguments.length){v+="?args[]="+encodeURIComponent(arguments[1]);for(var S=2;S<arguments.length;S++)v+="&args[]="+encodeURIComponent(arguments[S])}return"Minified React error #"+y+"; visit "+v+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function o(){}var r={d:{f:o,r:function(){throw Error(u(522))},D:o,C:o,L:o,m:o,X:o,S:o,M:o},p:0,findDOMNode:null},f=Symbol.for("react.portal");function h(y,v,S){var g=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:f,key:g==null?null:""+g,children:y,containerInfo:v,implementation:S}}var p=s.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function x(y,v){if(y==="font")return"";if(typeof v=="string")return v==="use-credentials"?v:""}return at.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=r,at.createPortal=function(y,v){var S=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!v||v.nodeType!==1&&v.nodeType!==9&&v.nodeType!==11)throw Error(u(299));return h(y,v,null,S)},at.flushSync=function(y){var v=p.T,S=r.p;try{if(p.T=null,r.p=2,y)return y()}finally{p.T=v,r.p=S,r.d.f()}},at.preconnect=function(y,v){typeof y=="string"&&(v?(v=v.crossOrigin,v=typeof v=="string"?v==="use-credentials"?v:"":void 0):v=null,r.d.C(y,v))},at.prefetchDNS=function(y){typeof y=="string"&&r.d.D(y)},at.preinit=function(y,v){if(typeof y=="string"&&v&&typeof v.as=="string"){var S=v.as,g=x(S,v.crossOrigin),w=typeof v.integrity=="string"?v.integrity:void 0,O=typeof v.fetchPriority=="string"?v.fetchPriority:void 0;S==="style"?r.d.S(y,typeof v.precedence=="string"?v.precedence:void 0,{crossOrigin:g,integrity:w,fetchPriority:O}):S==="script"&&r.d.X(y,{crossOrigin:g,integrity:w,fetchPriority:O,nonce:typeof v.nonce=="string"?v.nonce:void 0})}},at.preinitModule=function(y,v){if(typeof y=="string")if(typeof v=="object"&&v!==null){if(v.as==null||v.as==="script"){var S=x(v.as,v.crossOrigin);r.d.M(y,{crossOrigin:S,integrity:typeof v.integrity=="string"?v.integrity:void 0,nonce:typeof v.nonce=="string"?v.nonce:void 0})}}else v==null&&r.d.M(y)},at.preload=function(y,v){if(typeof y=="string"&&typeof v=="object"&&v!==null&&typeof v.as=="string"){var S=v.as,g=x(S,v.crossOrigin);r.d.L(y,S,{crossOrigin:g,integrity:typeof v.integrity=="string"?v.integrity:void 0,nonce:typeof v.nonce=="string"?v.nonce:void 0,type:typeof v.type=="string"?v.type:void 0,fetchPriority:typeof v.fetchPriority=="string"?v.fetchPriority:void 0,referrerPolicy:typeof v.referrerPolicy=="string"?v.referrerPolicy:void 0,imageSrcSet:typeof v.imageSrcSet=="string"?v.imageSrcSet:void 0,imageSizes:typeof v.imageSizes=="string"?v.imageSizes:void 0,media:typeof v.media=="string"?v.media:void 0})}},at.preloadModule=function(y,v){if(typeof y=="string")if(v){var S=x(v.as,v.crossOrigin);r.d.m(y,{as:typeof v.as=="string"&&v.as!=="script"?v.as:void 0,crossOrigin:S,integrity:typeof v.integrity=="string"?v.integrity:void 0})}else r.d.m(y)},at.requestFormReset=function(y){r.d.r(y)},at.unstable_batchedUpdates=function(y,v){return y(v)},at.useFormState=function(y,v,S){return p.H.useFormState(y,v,S)},at.useFormStatus=function(){return p.H.useHostTransitionStatus()},at.version="19.2.8",at}var Fh;function Sx(){if(Fh)return hu.exports;Fh=1;function s(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(u){console.error(u)}}return s(),hu.exports=_x(),hu.exports}var Wh;function bx(){if(Wh)return ei;Wh=1;var s=jx(),u=Eu(),o=Sx();function r(e){var t="https://react.dev/errors/"+e;if(1<arguments.length){t+="?args[]="+encodeURIComponent(arguments[1]);for(var l=2;l<arguments.length;l++)t+="&args[]="+encodeURIComponent(arguments[l])}return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function f(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function h(e){var t=e,l=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,(t.flags&4098)!==0&&(l=t.return),e=t.return;while(e)}return t.tag===3?l:null}function p(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function x(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function y(e){if(h(e)!==e)throw Error(r(188))}function v(e){var t=e.alternate;if(!t){if(t=h(e),t===null)throw Error(r(188));return t!==e?null:e}for(var l=e,n=t;;){var i=l.return;if(i===null)break;var c=i.alternate;if(c===null){if(n=i.return,n!==null){l=n;continue}break}if(i.child===c.child){for(c=i.child;c;){if(c===l)return y(i),e;if(c===n)return y(i),t;c=c.sibling}throw Error(r(188))}if(l.return!==n.return)l=i,n=c;else{for(var d=!1,m=i.child;m;){if(m===l){d=!0,l=i,n=c;break}if(m===n){d=!0,n=i,l=c;break}m=m.sibling}if(!d){for(m=c.child;m;){if(m===l){d=!0,l=c,n=i;break}if(m===n){d=!0,n=c,l=i;break}m=m.sibling}if(!d)throw Error(r(189))}}if(l.alternate!==n)throw Error(r(190))}if(l.tag!==3)throw Error(r(188));return l.stateNode.current===l?e:t}function S(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=S(e),t!==null)return t;e=e.sibling}return null}var g=Object.assign,w=Symbol.for("react.element"),O=Symbol.for("react.transitional.element"),k=Symbol.for("react.portal"),B=Symbol.for("react.fragment"),Y=Symbol.for("react.strict_mode"),D=Symbol.for("react.profiler"),G=Symbol.for("react.consumer"),K=Symbol.for("react.context"),ce=Symbol.for("react.forward_ref"),ie=Symbol.for("react.suspense"),he=Symbol.for("react.suspense_list"),$=Symbol.for("react.memo"),I=Symbol.for("react.lazy"),je=Symbol.for("react.activity"),we=Symbol.for("react.memo_cache_sentinel"),ke=Symbol.iterator;function z(e){return e===null||typeof e!="object"?null:(e=ke&&e[ke]||e["@@iterator"],typeof e=="function"?e:null)}var ae=Symbol.for("react.client.reference");function _e(e){if(e==null)return null;if(typeof e=="function")return e.$$typeof===ae?null:e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case B:return"Fragment";case D:return"Profiler";case Y:return"StrictMode";case ie:return"Suspense";case he:return"SuspenseList";case je:return"Activity"}if(typeof e=="object")switch(e.$$typeof){case k:return"Portal";case K:return e.displayName||"Context";case G:return(e._context.displayName||"Context")+".Consumer";case ce:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case $:return t=e.displayName||null,t!==null?t:_e(e.type)||"Memo";case I:t=e._payload,e=e._init;try{return _e(e(t))}catch{}}return null}var V=Array.isArray,R=u.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Q=o.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,F={pending:!1,data:null,method:null,action:null},de=[],J=-1;function N(e){return{current:e}}function L(e){0>J||(e.current=de[J],de[J]=null,J--)}function X(e,t){J++,de[J]=e.current,e.current=t}var P=N(null),re=N(null),me=N(null),Z=N(null);function We(e,t){switch(X(me,t),X(re,e),X(P,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?fh(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=fh(t),e=hh(t,e);else switch(e){case"svg":e=1;break;case"math":e=2;break;default:e=0}}L(P),X(P,e)}function Ye(){L(P),L(re),L(me)}function sn(e){e.memoizedState!==null&&X(Z,e);var t=P.current,l=hh(t,e.type);t!==l&&(X(re,e),X(P,l))}function oi(e){re.current===e&&(L(P),L(re)),Z.current===e&&(L(Z),$n._currentValue=F)}var Vs,Bu;function Jl(e){if(Vs===void 0)try{throw Error()}catch(l){var t=l.stack.trim().match(/\n( *(at )?)/);Vs=t&&t[1]||"",Bu=-1<l.stack.indexOf(`
|
|
2
|
+
at`)?" (<anonymous>)":-1<l.stack.indexOf("@")?"@unknown:0:0":""}return`
|
|
3
|
+
`+Vs+e+Bu}var Xs=!1;function Zs(e,t){if(!e||Xs)return"";Xs=!0;var l=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var n={DetermineComponentFrameRoot:function(){try{if(t){var H=function(){throw Error()};if(Object.defineProperty(H.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(H,[])}catch(M){var T=M}Reflect.construct(e,[],H)}else{try{H.call()}catch(M){T=M}e.call(H.prototype)}}else{try{throw Error()}catch(M){T=M}(H=e())&&typeof H.catch=="function"&&H.catch(function(){})}}catch(M){if(M&&T&&typeof M.stack=="string")return[M.stack,T.stack]}return[null,null]}};n.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var i=Object.getOwnPropertyDescriptor(n.DetermineComponentFrameRoot,"name");i&&i.configurable&&Object.defineProperty(n.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var c=n.DetermineComponentFrameRoot(),d=c[0],m=c[1];if(d&&m){var _=d.split(`
|
|
4
|
+
`),C=m.split(`
|
|
5
|
+
`);for(i=n=0;n<_.length&&!_[n].includes("DetermineComponentFrameRoot");)n++;for(;i<C.length&&!C[i].includes("DetermineComponentFrameRoot");)i++;if(n===_.length||i===C.length)for(n=_.length-1,i=C.length-1;1<=n&&0<=i&&_[n]!==C[i];)i--;for(;1<=n&&0<=i;n--,i--)if(_[n]!==C[i]){if(n!==1||i!==1)do if(n--,i--,0>i||_[n]!==C[i]){var U=`
|
|
6
|
+
`+_[n].replace(" at new "," at ");return e.displayName&&U.includes("<anonymous>")&&(U=U.replace("<anonymous>",e.displayName)),U}while(1<=n&&0<=i);break}}}finally{Xs=!1,Error.prepareStackTrace=l}return(l=e?e.displayName||e.name:"")?Jl(l):""}function Km(e,t){switch(e.tag){case 26:case 27:case 5:return Jl(e.type);case 16:return Jl("Lazy");case 13:return e.child!==t&&t!==null?Jl("Suspense Fallback"):Jl("Suspense");case 19:return Jl("SuspenseList");case 0:case 15:return Zs(e.type,!1);case 11:return Zs(e.type.render,!1);case 1:return Zs(e.type,!0);case 31:return Jl("Activity");default:return""}}function Yu(e){try{var t="",l=null;do t+=Km(e,l),l=e,e=e.return;while(e);return t}catch(n){return`
|
|
7
|
+
Error generating stack: `+n.message+`
|
|
8
|
+
`+n.stack}}var Ks=Object.prototype.hasOwnProperty,Js=s.unstable_scheduleCallback,$s=s.unstable_cancelCallback,Jm=s.unstable_shouldYield,$m=s.unstable_requestPaint,vt=s.unstable_now,Fm=s.unstable_getCurrentPriorityLevel,Gu=s.unstable_ImmediatePriority,Qu=s.unstable_UserBlockingPriority,di=s.unstable_NormalPriority,Wm=s.unstable_LowPriority,Vu=s.unstable_IdlePriority,Pm=s.log,Im=s.unstable_setDisableYieldValue,cn=null,xt=null;function jl(e){if(typeof Pm=="function"&&Im(e),xt&&typeof xt.setStrictMode=="function")try{xt.setStrictMode(cn,e)}catch{}}var gt=Math.clz32?Math.clz32:lp,ep=Math.log,tp=Math.LN2;function lp(e){return e>>>=0,e===0?32:31-(ep(e)/tp|0)|0}var fi=256,hi=262144,mi=4194304;function $l(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function pi(e,t,l){var n=e.pendingLanes;if(n===0)return 0;var i=0,c=e.suspendedLanes,d=e.pingedLanes;e=e.warmLanes;var m=n&134217727;return m!==0?(n=m&~c,n!==0?i=$l(n):(d&=m,d!==0?i=$l(d):l||(l=m&~e,l!==0&&(i=$l(l))))):(m=n&~c,m!==0?i=$l(m):d!==0?i=$l(d):l||(l=n&~e,l!==0&&(i=$l(l)))),i===0?0:t!==0&&t!==i&&(t&c)===0&&(c=i&-i,l=t&-t,c>=l||c===32&&(l&4194048)!==0)?t:i}function rn(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function ap(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Xu(){var e=mi;return mi<<=1,(mi&62914560)===0&&(mi=4194304),e}function Fs(e){for(var t=[],l=0;31>l;l++)t.push(e);return t}function un(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function np(e,t,l,n,i,c){var d=e.pendingLanes;e.pendingLanes=l,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=l,e.entangledLanes&=l,e.errorRecoveryDisabledLanes&=l,e.shellSuspendCounter=0;var m=e.entanglements,_=e.expirationTimes,C=e.hiddenUpdates;for(l=d&~l;0<l;){var U=31-gt(l),H=1<<U;m[U]=0,_[U]=-1;var T=C[U];if(T!==null)for(C[U]=null,U=0;U<T.length;U++){var M=T[U];M!==null&&(M.lane&=-536870913)}l&=~H}n!==0&&Zu(e,n,0),c!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=c&~(d&~t))}function Zu(e,t,l){e.pendingLanes|=t,e.suspendedLanes&=~t;var n=31-gt(t);e.entangledLanes|=t,e.entanglements[n]=e.entanglements[n]|1073741824|l&261930}function Ku(e,t){var l=e.entangledLanes|=t;for(e=e.entanglements;l;){var n=31-gt(l),i=1<<n;i&t|e[n]&t&&(e[n]|=t),l&=~i}}function Ju(e,t){var l=t&-t;return l=(l&42)!==0?1:Ws(l),(l&(e.suspendedLanes|t))!==0?0:l}function Ws(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function Ps(e){return e&=-e,2<e?8<e?(e&134217727)!==0?32:268435456:8:2}function $u(){var e=Q.p;return e!==0?e:(e=window.event,e===void 0?32:Dh(e.type))}function Fu(e,t){var l=Q.p;try{return Q.p=e,t()}finally{Q.p=l}}var _l=Math.random().toString(36).slice(2),Pe="__reactFiber$"+_l,st="__reactProps$"+_l,ma="__reactContainer$"+_l,Is="__reactEvents$"+_l,ip="__reactListeners$"+_l,sp="__reactHandles$"+_l,Wu="__reactResources$"+_l,on="__reactMarker$"+_l;function ec(e){delete e[Pe],delete e[st],delete e[Is],delete e[ip],delete e[sp]}function pa(e){var t=e[Pe];if(t)return t;for(var l=e.parentNode;l;){if(t=l[ma]||l[Pe]){if(l=t.alternate,t.child!==null||l!==null&&l.child!==null)for(e=jh(e);e!==null;){if(l=e[Pe])return l;e=jh(e)}return t}e=l,l=e.parentNode}return null}function va(e){if(e=e[Pe]||e[ma]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function dn(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(r(33))}function xa(e){var t=e[Wu];return t||(t=e[Wu]={hoistableStyles:new Map,hoistableScripts:new Map}),t}function $e(e){e[on]=!0}var Pu=new Set,Iu={};function Fl(e,t){ga(e,t),ga(e+"Capture",t)}function ga(e,t){for(Iu[e]=t,e=0;e<t.length;e++)Pu.add(t[e])}var cp=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),eo={},to={};function rp(e){return Ks.call(to,e)?!0:Ks.call(eo,e)?!1:cp.test(e)?to[e]=!0:(eo[e]=!0,!1)}function vi(e,t,l){if(rp(t))if(l===null)e.removeAttribute(t);else{switch(typeof l){case"undefined":case"function":case"symbol":e.removeAttribute(t);return;case"boolean":var n=t.toLowerCase().slice(0,5);if(n!=="data-"&&n!=="aria-"){e.removeAttribute(t);return}}e.setAttribute(t,""+l)}}function xi(e,t,l){if(l===null)e.removeAttribute(t);else{switch(typeof l){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(t);return}e.setAttribute(t,""+l)}}function el(e,t,l,n){if(n===null)e.removeAttribute(l);else{switch(typeof n){case"undefined":case"function":case"symbol":case"boolean":e.removeAttribute(l);return}e.setAttributeNS(t,l,""+n)}}function Tt(e){switch(typeof e){case"bigint":case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function lo(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function up(e,t,l){var n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var i=n.get,c=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(d){l=""+d,c.call(this,d)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return l},setValue:function(d){l=""+d},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function tc(e){if(!e._valueTracker){var t=lo(e)?"checked":"value";e._valueTracker=up(e,t,""+e[t])}}function ao(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var l=t.getValue(),n="";return e&&(n=lo(e)?e.checked?"true":"false":e.value),e=n,e!==l?(t.setValue(e),!0):!1}function gi(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}var op=/[\n"\\]/g;function zt(e){return e.replace(op,function(t){return"\\"+t.charCodeAt(0).toString(16)+" "})}function lc(e,t,l,n,i,c,d,m){e.name="",d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"?e.type=d:e.removeAttribute("type"),t!=null?d==="number"?(t===0&&e.value===""||e.value!=t)&&(e.value=""+Tt(t)):e.value!==""+Tt(t)&&(e.value=""+Tt(t)):d!=="submit"&&d!=="reset"||e.removeAttribute("value"),t!=null?ac(e,d,Tt(t)):l!=null?ac(e,d,Tt(l)):n!=null&&e.removeAttribute("value"),i==null&&c!=null&&(e.defaultChecked=!!c),i!=null&&(e.checked=i&&typeof i!="function"&&typeof i!="symbol"),m!=null&&typeof m!="function"&&typeof m!="symbol"&&typeof m!="boolean"?e.name=""+Tt(m):e.removeAttribute("name")}function no(e,t,l,n,i,c,d,m){if(c!=null&&typeof c!="function"&&typeof c!="symbol"&&typeof c!="boolean"&&(e.type=c),t!=null||l!=null){if(!(c!=="submit"&&c!=="reset"||t!=null)){tc(e);return}l=l!=null?""+Tt(l):"",t=t!=null?""+Tt(t):l,m||t===e.value||(e.value=t),e.defaultValue=t}n=n??i,n=typeof n!="function"&&typeof n!="symbol"&&!!n,e.checked=m?e.checked:!!n,e.defaultChecked=!!n,d!=null&&typeof d!="function"&&typeof d!="symbol"&&typeof d!="boolean"&&(e.name=d),tc(e)}function ac(e,t,l){t==="number"&&gi(e.ownerDocument)===e||e.defaultValue===""+l||(e.defaultValue=""+l)}function ya(e,t,l,n){if(e=e.options,t){t={};for(var i=0;i<l.length;i++)t["$"+l[i]]=!0;for(l=0;l<e.length;l++)i=t.hasOwnProperty("$"+e[l].value),e[l].selected!==i&&(e[l].selected=i),i&&n&&(e[l].defaultSelected=!0)}else{for(l=""+Tt(l),t=null,i=0;i<e.length;i++){if(e[i].value===l){e[i].selected=!0,n&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function io(e,t,l){if(t!=null&&(t=""+Tt(t),t!==e.value&&(e.value=t),l==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=l!=null?""+Tt(l):""}function so(e,t,l,n){if(t==null){if(n!=null){if(l!=null)throw Error(r(92));if(V(n)){if(1<n.length)throw Error(r(93));n=n[0]}l=n}l==null&&(l=""),t=l}l=Tt(t),e.defaultValue=l,n=e.textContent,n===l&&n!==""&&n!==null&&(e.value=n),tc(e)}function ja(e,t){if(t){var l=e.firstChild;if(l&&l===e.lastChild&&l.nodeType===3){l.nodeValue=t;return}}e.textContent=t}var dp=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function co(e,t,l){var n=t.indexOf("--")===0;l==null||typeof l=="boolean"||l===""?n?e.setProperty(t,""):t==="float"?e.cssFloat="":e[t]="":n?e.setProperty(t,l):typeof l!="number"||l===0||dp.has(t)?t==="float"?e.cssFloat=l:e[t]=(""+l).trim():e[t]=l+"px"}function ro(e,t,l){if(t!=null&&typeof t!="object")throw Error(r(62));if(e=e.style,l!=null){for(var n in l)!l.hasOwnProperty(n)||t!=null&&t.hasOwnProperty(n)||(n.indexOf("--")===0?e.setProperty(n,""):n==="float"?e.cssFloat="":e[n]="");for(var i in t)n=t[i],t.hasOwnProperty(i)&&l[i]!==n&&co(e,i,n)}else for(var c in t)t.hasOwnProperty(c)&&co(e,c,t[c])}function nc(e){if(e.indexOf("-")===-1)return!1;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var fp=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),hp=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function yi(e){return hp.test(""+e)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":e}function tl(){}var ic=null;function sc(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var _a=null,Sa=null;function uo(e){var t=va(e);if(t&&(e=t.stateNode)){var l=e[st]||null;e:switch(e=t.stateNode,t.type){case"input":if(lc(e,l.value,l.defaultValue,l.defaultValue,l.checked,l.defaultChecked,l.type,l.name),t=l.name,l.type==="radio"&&t!=null){for(l=e;l.parentNode;)l=l.parentNode;for(l=l.querySelectorAll('input[name="'+zt(""+t)+'"][type="radio"]'),t=0;t<l.length;t++){var n=l[t];if(n!==e&&n.form===e.form){var i=n[st]||null;if(!i)throw Error(r(90));lc(n,i.value,i.defaultValue,i.defaultValue,i.checked,i.defaultChecked,i.type,i.name)}}for(t=0;t<l.length;t++)n=l[t],n.form===e.form&&ao(n)}break e;case"textarea":io(e,l.value,l.defaultValue);break e;case"select":t=l.value,t!=null&&ya(e,!!l.multiple,t,!1)}}}var cc=!1;function oo(e,t,l){if(cc)return e(t,l);cc=!0;try{var n=e(t);return n}finally{if(cc=!1,(_a!==null||Sa!==null)&&(ss(),_a&&(t=_a,e=Sa,Sa=_a=null,uo(t),e)))for(t=0;t<e.length;t++)uo(e[t])}}function fn(e,t){var l=e.stateNode;if(l===null)return null;var n=l[st]||null;if(n===null)return null;l=n[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(n=!n.disabled)||(e=e.type,n=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!n;break e;default:e=!1}if(e)return null;if(l&&typeof l!="function")throw Error(r(231,t,typeof l));return l}var ll=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),rc=!1;if(ll)try{var hn={};Object.defineProperty(hn,"passive",{get:function(){rc=!0}}),window.addEventListener("test",hn,hn),window.removeEventListener("test",hn,hn)}catch{rc=!1}var Sl=null,uc=null,ji=null;function fo(){if(ji)return ji;var e,t=uc,l=t.length,n,i="value"in Sl?Sl.value:Sl.textContent,c=i.length;for(e=0;e<l&&t[e]===i[e];e++);var d=l-e;for(n=1;n<=d&&t[l-n]===i[c-n];n++);return ji=i.slice(e,1<n?1-n:void 0)}function _i(e){var t=e.keyCode;return"charCode"in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function Si(){return!0}function ho(){return!1}function ct(e){function t(l,n,i,c,d){this._reactName=l,this._targetInst=i,this.type=n,this.nativeEvent=c,this.target=d,this.currentTarget=null;for(var m in e)e.hasOwnProperty(m)&&(l=e[m],this[m]=l?l(c):c[m]);return this.isDefaultPrevented=(c.defaultPrevented!=null?c.defaultPrevented:c.returnValue===!1)?Si:ho,this.isPropagationStopped=ho,this}return g(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var l=this.nativeEvent;l&&(l.preventDefault?l.preventDefault():typeof l.returnValue!="unknown"&&(l.returnValue=!1),this.isDefaultPrevented=Si)},stopPropagation:function(){var l=this.nativeEvent;l&&(l.stopPropagation?l.stopPropagation():typeof l.cancelBubble!="unknown"&&(l.cancelBubble=!0),this.isPropagationStopped=Si)},persist:function(){},isPersistent:Si}),t}var Wl={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},bi=ct(Wl),mn=g({},Wl,{view:0,detail:0}),mp=ct(mn),oc,dc,pn,Ni=g({},mn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:hc,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==pn&&(pn&&e.type==="mousemove"?(oc=e.screenX-pn.screenX,dc=e.screenY-pn.screenY):dc=oc=0,pn=e),oc)},movementY:function(e){return"movementY"in e?e.movementY:dc}}),mo=ct(Ni),pp=g({},Ni,{dataTransfer:0}),vp=ct(pp),xp=g({},mn,{relatedTarget:0}),fc=ct(xp),gp=g({},Wl,{animationName:0,elapsedTime:0,pseudoElement:0}),yp=ct(gp),jp=g({},Wl,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),_p=ct(jp),Sp=g({},Wl,{data:0}),po=ct(Sp),bp={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Np={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},Ep={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function Ap(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Ep[e])?!!t[e]:!1}function hc(){return Ap}var Cp=g({},mn,{key:function(e){if(e.key){var t=bp[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=_i(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?Np[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:hc,charCode:function(e){return e.type==="keypress"?_i(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?_i(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),Rp=ct(Cp),Tp=g({},Ni,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),vo=ct(Tp),zp=g({},mn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:hc}),Mp=ct(zp),wp=g({},Wl,{propertyName:0,elapsedTime:0,pseudoElement:0}),kp=ct(wp),Op=g({},Ni,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0}),Up=ct(Op),Dp=g({},Wl,{newState:0,oldState:0}),qp=ct(Dp),Hp=[9,13,27,32],mc=ll&&"CompositionEvent"in window,vn=null;ll&&"documentMode"in document&&(vn=document.documentMode);var Lp=ll&&"TextEvent"in window&&!vn,xo=ll&&(!mc||vn&&8<vn&&11>=vn),go=" ",yo=!1;function jo(e,t){switch(e){case"keyup":return Hp.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function _o(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var ba=!1;function Bp(e,t){switch(e){case"compositionend":return _o(t);case"keypress":return t.which!==32?null:(yo=!0,go);case"textInput":return e=t.data,e===go&&yo?null:e;default:return null}}function Yp(e,t){if(ba)return e==="compositionend"||!mc&&jo(e,t)?(e=fo(),ji=uc=Sl=null,ba=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return xo&&t.locale!=="ko"?null:t.data;default:return null}}var Gp={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function So(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!Gp[e.type]:t==="textarea"}function bo(e,t,l,n){_a?Sa?Sa.push(n):Sa=[n]:_a=n,t=hs(t,"onChange"),0<t.length&&(l=new bi("onChange","change",null,l,n),e.push({event:l,listeners:t}))}var xn=null,gn=null;function Qp(e){sh(e,0)}function Ei(e){var t=dn(e);if(ao(t))return e}function No(e,t){if(e==="change")return t}var Eo=!1;if(ll){var pc;if(ll){var vc="oninput"in document;if(!vc){var Ao=document.createElement("div");Ao.setAttribute("oninput","return;"),vc=typeof Ao.oninput=="function"}pc=vc}else pc=!1;Eo=pc&&(!document.documentMode||9<document.documentMode)}function Co(){xn&&(xn.detachEvent("onpropertychange",Ro),gn=xn=null)}function Ro(e){if(e.propertyName==="value"&&Ei(gn)){var t=[];bo(t,gn,e,sc(e)),oo(Qp,t)}}function Vp(e,t,l){e==="focusin"?(Co(),xn=t,gn=l,xn.attachEvent("onpropertychange",Ro)):e==="focusout"&&Co()}function Xp(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return Ei(gn)}function Zp(e,t){if(e==="click")return Ei(t)}function Kp(e,t){if(e==="input"||e==="change")return Ei(t)}function Jp(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var yt=typeof Object.is=="function"?Object.is:Jp;function yn(e,t){if(yt(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var l=Object.keys(e),n=Object.keys(t);if(l.length!==n.length)return!1;for(n=0;n<l.length;n++){var i=l[n];if(!Ks.call(t,i)||!yt(e[i],t[i]))return!1}return!0}function To(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function zo(e,t){var l=To(e);e=0;for(var n;l;){if(l.nodeType===3){if(n=e+l.textContent.length,e<=t&&n>=t)return{node:l,offset:t-e};e=n}e:{for(;l;){if(l.nextSibling){l=l.nextSibling;break e}l=l.parentNode}l=void 0}l=To(l)}}function Mo(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Mo(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function wo(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=gi(e.document);t instanceof e.HTMLIFrameElement;){try{var l=typeof t.contentWindow.location.href=="string"}catch{l=!1}if(l)e=t.contentWindow;else break;t=gi(e.document)}return t}function xc(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}var $p=ll&&"documentMode"in document&&11>=document.documentMode,Na=null,gc=null,jn=null,yc=!1;function ko(e,t,l){var n=l.window===l?l.document:l.nodeType===9?l:l.ownerDocument;yc||Na==null||Na!==gi(n)||(n=Na,"selectionStart"in n&&xc(n)?n={start:n.selectionStart,end:n.selectionEnd}:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection(),n={anchorNode:n.anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset}),jn&&yn(jn,n)||(jn=n,n=hs(gc,"onSelect"),0<n.length&&(t=new bi("onSelect","select",null,t,l),e.push({event:t,listeners:n}),t.target=Na)))}function Pl(e,t){var l={};return l[e.toLowerCase()]=t.toLowerCase(),l["Webkit"+e]="webkit"+t,l["Moz"+e]="moz"+t,l}var Ea={animationend:Pl("Animation","AnimationEnd"),animationiteration:Pl("Animation","AnimationIteration"),animationstart:Pl("Animation","AnimationStart"),transitionrun:Pl("Transition","TransitionRun"),transitionstart:Pl("Transition","TransitionStart"),transitioncancel:Pl("Transition","TransitionCancel"),transitionend:Pl("Transition","TransitionEnd")},jc={},Oo={};ll&&(Oo=document.createElement("div").style,"AnimationEvent"in window||(delete Ea.animationend.animation,delete Ea.animationiteration.animation,delete Ea.animationstart.animation),"TransitionEvent"in window||delete Ea.transitionend.transition);function Il(e){if(jc[e])return jc[e];if(!Ea[e])return e;var t=Ea[e],l;for(l in t)if(t.hasOwnProperty(l)&&l in Oo)return jc[e]=t[l];return e}var Uo=Il("animationend"),Do=Il("animationiteration"),qo=Il("animationstart"),Fp=Il("transitionrun"),Wp=Il("transitionstart"),Pp=Il("transitioncancel"),Ho=Il("transitionend"),Lo=new Map,_c="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");_c.push("scrollEnd");function Qt(e,t){Lo.set(e,t),Fl(t,[e])}var Ai=typeof reportError=="function"?reportError:function(e){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var t=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof e=="object"&&e!==null&&typeof e.message=="string"?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",e);return}console.error(e)},Mt=[],Aa=0,Sc=0;function Ci(){for(var e=Aa,t=Sc=Aa=0;t<e;){var l=Mt[t];Mt[t++]=null;var n=Mt[t];Mt[t++]=null;var i=Mt[t];Mt[t++]=null;var c=Mt[t];if(Mt[t++]=null,n!==null&&i!==null){var d=n.pending;d===null?i.next=i:(i.next=d.next,d.next=i),n.pending=i}c!==0&&Bo(l,i,c)}}function Ri(e,t,l,n){Mt[Aa++]=e,Mt[Aa++]=t,Mt[Aa++]=l,Mt[Aa++]=n,Sc|=n,e.lanes|=n,e=e.alternate,e!==null&&(e.lanes|=n)}function bc(e,t,l,n){return Ri(e,t,l,n),Ti(e)}function ea(e,t){return Ri(e,null,null,t),Ti(e)}function Bo(e,t,l){e.lanes|=l;var n=e.alternate;n!==null&&(n.lanes|=l);for(var i=!1,c=e.return;c!==null;)c.childLanes|=l,n=c.alternate,n!==null&&(n.childLanes|=l),c.tag===22&&(e=c.stateNode,e===null||e._visibility&1||(i=!0)),e=c,c=c.return;return e.tag===3?(c=e.stateNode,i&&t!==null&&(i=31-gt(l),e=c.hiddenUpdates,n=e[i],n===null?e[i]=[t]:n.push(t),t.lane=l|536870912),c):null}function Ti(e){if(50<Gn)throw Gn=0,wr=null,Error(r(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var Ca={};function Ip(e,t,l,n){this.tag=e,this.key=l,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=n,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function jt(e,t,l,n){return new Ip(e,t,l,n)}function Nc(e){return e=e.prototype,!(!e||!e.isReactComponent)}function al(e,t){var l=e.alternate;return l===null?(l=jt(e.tag,t,e.key,e.mode),l.elementType=e.elementType,l.type=e.type,l.stateNode=e.stateNode,l.alternate=e,e.alternate=l):(l.pendingProps=t,l.type=e.type,l.flags=0,l.subtreeFlags=0,l.deletions=null),l.flags=e.flags&65011712,l.childLanes=e.childLanes,l.lanes=e.lanes,l.child=e.child,l.memoizedProps=e.memoizedProps,l.memoizedState=e.memoizedState,l.updateQueue=e.updateQueue,t=e.dependencies,l.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},l.sibling=e.sibling,l.index=e.index,l.ref=e.ref,l.refCleanup=e.refCleanup,l}function Yo(e,t){e.flags&=65011714;var l=e.alternate;return l===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=l.childLanes,e.lanes=l.lanes,e.child=l.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=l.memoizedProps,e.memoizedState=l.memoizedState,e.updateQueue=l.updateQueue,e.type=l.type,t=l.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function zi(e,t,l,n,i,c){var d=0;if(n=e,typeof e=="function")Nc(e)&&(d=1);else if(typeof e=="string")d=nx(e,l,P.current)?26:e==="html"||e==="head"||e==="body"?27:5;else e:switch(e){case je:return e=jt(31,l,t,i),e.elementType=je,e.lanes=c,e;case B:return ta(l.children,i,c,t);case Y:d=8,i|=24;break;case D:return e=jt(12,l,t,i|2),e.elementType=D,e.lanes=c,e;case ie:return e=jt(13,l,t,i),e.elementType=ie,e.lanes=c,e;case he:return e=jt(19,l,t,i),e.elementType=he,e.lanes=c,e;default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case K:d=10;break e;case G:d=9;break e;case ce:d=11;break e;case $:d=14;break e;case I:d=16,n=null;break e}d=29,l=Error(r(130,e===null?"null":typeof e,"")),n=null}return t=jt(d,l,t,i),t.elementType=e,t.type=n,t.lanes=c,t}function ta(e,t,l,n){return e=jt(7,e,n,t),e.lanes=l,e}function Ec(e,t,l){return e=jt(6,e,null,t),e.lanes=l,e}function Go(e){var t=jt(18,null,null,0);return t.stateNode=e,t}function Ac(e,t,l){return t=jt(4,e.children!==null?e.children:[],e.key,t),t.lanes=l,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var Qo=new WeakMap;function wt(e,t){if(typeof e=="object"&&e!==null){var l=Qo.get(e);return l!==void 0?l:(t={value:e,source:t,stack:Yu(t)},Qo.set(e,t),t)}return{value:e,source:t,stack:Yu(t)}}var Ra=[],Ta=0,Mi=null,_n=0,kt=[],Ot=0,bl=null,Jt=1,$t="";function nl(e,t){Ra[Ta++]=_n,Ra[Ta++]=Mi,Mi=e,_n=t}function Vo(e,t,l){kt[Ot++]=Jt,kt[Ot++]=$t,kt[Ot++]=bl,bl=e;var n=Jt;e=$t;var i=32-gt(n)-1;n&=~(1<<i),l+=1;var c=32-gt(t)+i;if(30<c){var d=i-i%5;c=(n&(1<<d)-1).toString(32),n>>=d,i-=d,Jt=1<<32-gt(t)+i|l<<i|n,$t=c+e}else Jt=1<<c|l<<i|n,$t=e}function Cc(e){e.return!==null&&(nl(e,1),Vo(e,1,0))}function Rc(e){for(;e===Mi;)Mi=Ra[--Ta],Ra[Ta]=null,_n=Ra[--Ta],Ra[Ta]=null;for(;e===bl;)bl=kt[--Ot],kt[Ot]=null,$t=kt[--Ot],kt[Ot]=null,Jt=kt[--Ot],kt[Ot]=null}function Xo(e,t){kt[Ot++]=Jt,kt[Ot++]=$t,kt[Ot++]=bl,Jt=t.id,$t=t.overflow,bl=e}var Ie=null,Oe=null,ye=!1,Nl=null,Ut=!1,Tc=Error(r(519));function El(e){var t=Error(r(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Sn(wt(t,e)),Tc}function Zo(e){var t=e.stateNode,l=e.type,n=e.memoizedProps;switch(t[Pe]=e,t[st]=n,l){case"dialog":ve("cancel",t),ve("close",t);break;case"iframe":case"object":case"embed":ve("load",t);break;case"video":case"audio":for(l=0;l<Vn.length;l++)ve(Vn[l],t);break;case"source":ve("error",t);break;case"img":case"image":case"link":ve("error",t),ve("load",t);break;case"details":ve("toggle",t);break;case"input":ve("invalid",t),no(t,n.value,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name,!0);break;case"select":ve("invalid",t);break;case"textarea":ve("invalid",t),so(t,n.value,n.defaultValue,n.children)}l=n.children,typeof l!="string"&&typeof l!="number"&&typeof l!="bigint"||t.textContent===""+l||n.suppressHydrationWarning===!0||oh(t.textContent,l)?(n.popover!=null&&(ve("beforetoggle",t),ve("toggle",t)),n.onScroll!=null&&ve("scroll",t),n.onScrollEnd!=null&&ve("scrollend",t),n.onClick!=null&&(t.onclick=tl),t=!0):t=!1,t||El(e,!0)}function Ko(e){for(Ie=e.return;Ie;)switch(Ie.tag){case 5:case 31:case 13:Ut=!1;return;case 27:case 3:Ut=!0;return;default:Ie=Ie.return}}function za(e){if(e!==Ie)return!1;if(!ye)return Ko(e),ye=!0,!1;var t=e.tag,l;if((l=t!==3&&t!==27)&&((l=t===5)&&(l=e.type,l=!(l!=="form"&&l!=="button")||Kr(e.type,e.memoizedProps)),l=!l),l&&Oe&&El(e),Ko(e),t===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(317));Oe=yh(e)}else if(t===31){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(317));Oe=yh(e)}else t===27?(t=Oe,Ll(e.type)?(e=Pr,Pr=null,Oe=e):Oe=t):Oe=Ie?qt(e.stateNode.nextSibling):null;return!0}function la(){Oe=Ie=null,ye=!1}function zc(){var e=Nl;return e!==null&&(dt===null?dt=e:dt.push.apply(dt,e),Nl=null),e}function Sn(e){Nl===null?Nl=[e]:Nl.push(e)}var Mc=N(null),aa=null,il=null;function Al(e,t,l){X(Mc,t._currentValue),t._currentValue=l}function sl(e){e._currentValue=Mc.current,L(Mc)}function wc(e,t,l){for(;e!==null;){var n=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,n!==null&&(n.childLanes|=t)):n!==null&&(n.childLanes&t)!==t&&(n.childLanes|=t),e===l)break;e=e.return}}function kc(e,t,l,n){var i=e.child;for(i!==null&&(i.return=e);i!==null;){var c=i.dependencies;if(c!==null){var d=i.child;c=c.firstContext;e:for(;c!==null;){var m=c;c=i;for(var _=0;_<t.length;_++)if(m.context===t[_]){c.lanes|=l,m=c.alternate,m!==null&&(m.lanes|=l),wc(c.return,l,e),n||(d=null);break e}c=m.next}}else if(i.tag===18){if(d=i.return,d===null)throw Error(r(341));d.lanes|=l,c=d.alternate,c!==null&&(c.lanes|=l),wc(d,l,e),d=null}else d=i.child;if(d!==null)d.return=i;else for(d=i;d!==null;){if(d===e){d=null;break}if(i=d.sibling,i!==null){i.return=d.return,d=i;break}d=d.return}i=d}}function Ma(e,t,l,n){e=null;for(var i=t,c=!1;i!==null;){if(!c){if((i.flags&524288)!==0)c=!0;else if((i.flags&262144)!==0)break}if(i.tag===10){var d=i.alternate;if(d===null)throw Error(r(387));if(d=d.memoizedProps,d!==null){var m=i.type;yt(i.pendingProps.value,d.value)||(e!==null?e.push(m):e=[m])}}else if(i===Z.current){if(d=i.alternate,d===null)throw Error(r(387));d.memoizedState.memoizedState!==i.memoizedState.memoizedState&&(e!==null?e.push($n):e=[$n])}i=i.return}e!==null&&kc(t,e,l,n),t.flags|=262144}function wi(e){for(e=e.firstContext;e!==null;){if(!yt(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function na(e){aa=e,il=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function et(e){return Jo(aa,e)}function ki(e,t){return aa===null&&na(e),Jo(e,t)}function Jo(e,t){var l=t._currentValue;if(t={context:t,memoizedValue:l,next:null},il===null){if(e===null)throw Error(r(308));il=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else il=il.next=t;return l}var ev=typeof AbortController<"u"?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(l,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(l){return l()})}},tv=s.unstable_scheduleCallback,lv=s.unstable_NormalPriority,Ve={$$typeof:K,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function Oc(){return{controller:new ev,data:new Map,refCount:0}}function bn(e){e.refCount--,e.refCount===0&&tv(lv,function(){e.controller.abort()})}var Nn=null,Uc=0,wa=0,ka=null;function av(e,t){if(Nn===null){var l=Nn=[];Uc=0,wa=Hr(),ka={status:"pending",value:void 0,then:function(n){l.push(n)}}}return Uc++,t.then($o,$o),t}function $o(){if(--Uc===0&&Nn!==null){ka!==null&&(ka.status="fulfilled");var e=Nn;Nn=null,wa=0,ka=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function nv(e,t){var l=[],n={status:"pending",value:null,reason:null,then:function(i){l.push(i)}};return e.then(function(){n.status="fulfilled",n.value=t;for(var i=0;i<l.length;i++)(0,l[i])(t)},function(i){for(n.status="rejected",n.reason=i,i=0;i<l.length;i++)(0,l[i])(void 0)}),n}var Fo=R.S;R.S=function(e,t){Of=vt(),typeof t=="object"&&t!==null&&typeof t.then=="function"&&av(e,t),Fo!==null&&Fo(e,t)};var ia=N(null);function Dc(){var e=ia.current;return e!==null?e:Me.pooledCache}function Oi(e,t){t===null?X(ia,ia.current):X(ia,t.pool)}function Wo(){var e=Dc();return e===null?null:{parent:Ve._currentValue,pool:e}}var Oa=Error(r(460)),qc=Error(r(474)),Ui=Error(r(542)),Di={then:function(){}};function Po(e){return e=e.status,e==="fulfilled"||e==="rejected"}function Io(e,t,l){switch(l=e[l],l===void 0?e.push(t):l!==t&&(t.then(tl,tl),t=l),t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,td(e),e;default:if(typeof t.status=="string")t.then(tl,tl);else{if(e=Me,e!==null&&100<e.shellSuspendCounter)throw Error(r(482));e=t,e.status="pending",e.then(function(n){if(t.status==="pending"){var i=t;i.status="fulfilled",i.value=n}},function(n){if(t.status==="pending"){var i=t;i.status="rejected",i.reason=n}})}switch(t.status){case"fulfilled":return t.value;case"rejected":throw e=t.reason,td(e),e}throw ca=t,Oa}}function sa(e){try{var t=e._init;return t(e._payload)}catch(l){throw l!==null&&typeof l=="object"&&typeof l.then=="function"?(ca=l,Oa):l}}var ca=null;function ed(){if(ca===null)throw Error(r(459));var e=ca;return ca=null,e}function td(e){if(e===Oa||e===Ui)throw Error(r(483))}var Ua=null,En=0;function qi(e){var t=En;return En+=1,Ua===null&&(Ua=[]),Io(Ua,e,t)}function An(e,t){t=t.props.ref,e.ref=t!==void 0?t:null}function Hi(e,t){throw t.$$typeof===w?Error(r(525)):(e=Object.prototype.toString.call(t),Error(r(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e)))}function ld(e){function t(E,b){if(e){var A=E.deletions;A===null?(E.deletions=[b],E.flags|=16):A.push(b)}}function l(E,b){if(!e)return null;for(;b!==null;)t(E,b),b=b.sibling;return null}function n(E){for(var b=new Map;E!==null;)E.key!==null?b.set(E.key,E):b.set(E.index,E),E=E.sibling;return b}function i(E,b){return E=al(E,b),E.index=0,E.sibling=null,E}function c(E,b,A){return E.index=A,e?(A=E.alternate,A!==null?(A=A.index,A<b?(E.flags|=67108866,b):A):(E.flags|=67108866,b)):(E.flags|=1048576,b)}function d(E){return e&&E.alternate===null&&(E.flags|=67108866),E}function m(E,b,A,q){return b===null||b.tag!==6?(b=Ec(A,E.mode,q),b.return=E,b):(b=i(b,A),b.return=E,b)}function _(E,b,A,q){var le=A.type;return le===B?U(E,b,A.props.children,q,A.key):b!==null&&(b.elementType===le||typeof le=="object"&&le!==null&&le.$$typeof===I&&sa(le)===b.type)?(b=i(b,A.props),An(b,A),b.return=E,b):(b=zi(A.type,A.key,A.props,null,E.mode,q),An(b,A),b.return=E,b)}function C(E,b,A,q){return b===null||b.tag!==4||b.stateNode.containerInfo!==A.containerInfo||b.stateNode.implementation!==A.implementation?(b=Ac(A,E.mode,q),b.return=E,b):(b=i(b,A.children||[]),b.return=E,b)}function U(E,b,A,q,le){return b===null||b.tag!==7?(b=ta(A,E.mode,q,le),b.return=E,b):(b=i(b,A),b.return=E,b)}function H(E,b,A){if(typeof b=="string"&&b!==""||typeof b=="number"||typeof b=="bigint")return b=Ec(""+b,E.mode,A),b.return=E,b;if(typeof b=="object"&&b!==null){switch(b.$$typeof){case O:return A=zi(b.type,b.key,b.props,null,E.mode,A),An(A,b),A.return=E,A;case k:return b=Ac(b,E.mode,A),b.return=E,b;case I:return b=sa(b),H(E,b,A)}if(V(b)||z(b))return b=ta(b,E.mode,A,null),b.return=E,b;if(typeof b.then=="function")return H(E,qi(b),A);if(b.$$typeof===K)return H(E,ki(E,b),A);Hi(E,b)}return null}function T(E,b,A,q){var le=b!==null?b.key:null;if(typeof A=="string"&&A!==""||typeof A=="number"||typeof A=="bigint")return le!==null?null:m(E,b,""+A,q);if(typeof A=="object"&&A!==null){switch(A.$$typeof){case O:return A.key===le?_(E,b,A,q):null;case k:return A.key===le?C(E,b,A,q):null;case I:return A=sa(A),T(E,b,A,q)}if(V(A)||z(A))return le!==null?null:U(E,b,A,q,null);if(typeof A.then=="function")return T(E,b,qi(A),q);if(A.$$typeof===K)return T(E,b,ki(E,A),q);Hi(E,A)}return null}function M(E,b,A,q,le){if(typeof q=="string"&&q!==""||typeof q=="number"||typeof q=="bigint")return E=E.get(A)||null,m(b,E,""+q,le);if(typeof q=="object"&&q!==null){switch(q.$$typeof){case O:return E=E.get(q.key===null?A:q.key)||null,_(b,E,q,le);case k:return E=E.get(q.key===null?A:q.key)||null,C(b,E,q,le);case I:return q=sa(q),M(E,b,A,q,le)}if(V(q)||z(q))return E=E.get(A)||null,U(b,E,q,le,null);if(typeof q.then=="function")return M(E,b,A,qi(q),le);if(q.$$typeof===K)return M(E,b,A,ki(b,q),le);Hi(b,q)}return null}function W(E,b,A,q){for(var le=null,Se=null,ee=b,fe=b=0,ge=null;ee!==null&&fe<A.length;fe++){ee.index>fe?(ge=ee,ee=null):ge=ee.sibling;var be=T(E,ee,A[fe],q);if(be===null){ee===null&&(ee=ge);break}e&&ee&&be.alternate===null&&t(E,ee),b=c(be,b,fe),Se===null?le=be:Se.sibling=be,Se=be,ee=ge}if(fe===A.length)return l(E,ee),ye&&nl(E,fe),le;if(ee===null){for(;fe<A.length;fe++)ee=H(E,A[fe],q),ee!==null&&(b=c(ee,b,fe),Se===null?le=ee:Se.sibling=ee,Se=ee);return ye&&nl(E,fe),le}for(ee=n(ee);fe<A.length;fe++)ge=M(ee,E,fe,A[fe],q),ge!==null&&(e&&ge.alternate!==null&&ee.delete(ge.key===null?fe:ge.key),b=c(ge,b,fe),Se===null?le=ge:Se.sibling=ge,Se=ge);return e&&ee.forEach(function(Vl){return t(E,Vl)}),ye&&nl(E,fe),le}function se(E,b,A,q){if(A==null)throw Error(r(151));for(var le=null,Se=null,ee=b,fe=b=0,ge=null,be=A.next();ee!==null&&!be.done;fe++,be=A.next()){ee.index>fe?(ge=ee,ee=null):ge=ee.sibling;var Vl=T(E,ee,be.value,q);if(Vl===null){ee===null&&(ee=ge);break}e&&ee&&Vl.alternate===null&&t(E,ee),b=c(Vl,b,fe),Se===null?le=Vl:Se.sibling=Vl,Se=Vl,ee=ge}if(be.done)return l(E,ee),ye&&nl(E,fe),le;if(ee===null){for(;!be.done;fe++,be=A.next())be=H(E,be.value,q),be!==null&&(b=c(be,b,fe),Se===null?le=be:Se.sibling=be,Se=be);return ye&&nl(E,fe),le}for(ee=n(ee);!be.done;fe++,be=A.next())be=M(ee,E,fe,be.value,q),be!==null&&(e&&be.alternate!==null&&ee.delete(be.key===null?fe:be.key),b=c(be,b,fe),Se===null?le=be:Se.sibling=be,Se=be);return e&&ee.forEach(function(px){return t(E,px)}),ye&&nl(E,fe),le}function Te(E,b,A,q){if(typeof A=="object"&&A!==null&&A.type===B&&A.key===null&&(A=A.props.children),typeof A=="object"&&A!==null){switch(A.$$typeof){case O:e:{for(var le=A.key;b!==null;){if(b.key===le){if(le=A.type,le===B){if(b.tag===7){l(E,b.sibling),q=i(b,A.props.children),q.return=E,E=q;break e}}else if(b.elementType===le||typeof le=="object"&&le!==null&&le.$$typeof===I&&sa(le)===b.type){l(E,b.sibling),q=i(b,A.props),An(q,A),q.return=E,E=q;break e}l(E,b);break}else t(E,b);b=b.sibling}A.type===B?(q=ta(A.props.children,E.mode,q,A.key),q.return=E,E=q):(q=zi(A.type,A.key,A.props,null,E.mode,q),An(q,A),q.return=E,E=q)}return d(E);case k:e:{for(le=A.key;b!==null;){if(b.key===le)if(b.tag===4&&b.stateNode.containerInfo===A.containerInfo&&b.stateNode.implementation===A.implementation){l(E,b.sibling),q=i(b,A.children||[]),q.return=E,E=q;break e}else{l(E,b);break}else t(E,b);b=b.sibling}q=Ac(A,E.mode,q),q.return=E,E=q}return d(E);case I:return A=sa(A),Te(E,b,A,q)}if(V(A))return W(E,b,A,q);if(z(A)){if(le=z(A),typeof le!="function")throw Error(r(150));return A=le.call(A),se(E,b,A,q)}if(typeof A.then=="function")return Te(E,b,qi(A),q);if(A.$$typeof===K)return Te(E,b,ki(E,A),q);Hi(E,A)}return typeof A=="string"&&A!==""||typeof A=="number"||typeof A=="bigint"?(A=""+A,b!==null&&b.tag===6?(l(E,b.sibling),q=i(b,A),q.return=E,E=q):(l(E,b),q=Ec(A,E.mode,q),q.return=E,E=q),d(E)):l(E,b)}return function(E,b,A,q){try{En=0;var le=Te(E,b,A,q);return Ua=null,le}catch(ee){if(ee===Oa||ee===Ui)throw ee;var Se=jt(29,ee,null,E.mode);return Se.lanes=q,Se.return=E,Se}}}var ra=ld(!0),ad=ld(!1),Cl=!1;function Hc(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function Lc(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function Rl(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function Tl(e,t,l){var n=e.updateQueue;if(n===null)return null;if(n=n.shared,(Ne&2)!==0){var i=n.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),n.pending=t,t=Ti(e),Bo(e,null,l),t}return Ri(e,n,t,l),Ti(e)}function Cn(e,t,l){if(t=t.updateQueue,t!==null&&(t=t.shared,(l&4194048)!==0)){var n=t.lanes;n&=e.pendingLanes,l|=n,t.lanes=l,Ku(e,l)}}function Bc(e,t){var l=e.updateQueue,n=e.alternate;if(n!==null&&(n=n.updateQueue,l===n)){var i=null,c=null;if(l=l.firstBaseUpdate,l!==null){do{var d={lane:l.lane,tag:l.tag,payload:l.payload,callback:null,next:null};c===null?i=c=d:c=c.next=d,l=l.next}while(l!==null);c===null?i=c=t:c=c.next=t}else i=c=t;l={baseState:n.baseState,firstBaseUpdate:i,lastBaseUpdate:c,shared:n.shared,callbacks:n.callbacks},e.updateQueue=l;return}e=l.lastBaseUpdate,e===null?l.firstBaseUpdate=t:e.next=t,l.lastBaseUpdate=t}var Yc=!1;function Rn(){if(Yc){var e=ka;if(e!==null)throw e}}function Tn(e,t,l,n){Yc=!1;var i=e.updateQueue;Cl=!1;var c=i.firstBaseUpdate,d=i.lastBaseUpdate,m=i.shared.pending;if(m!==null){i.shared.pending=null;var _=m,C=_.next;_.next=null,d===null?c=C:d.next=C,d=_;var U=e.alternate;U!==null&&(U=U.updateQueue,m=U.lastBaseUpdate,m!==d&&(m===null?U.firstBaseUpdate=C:m.next=C,U.lastBaseUpdate=_))}if(c!==null){var H=i.baseState;d=0,U=C=_=null,m=c;do{var T=m.lane&-536870913,M=T!==m.lane;if(M?(xe&T)===T:(n&T)===T){T!==0&&T===wa&&(Yc=!0),U!==null&&(U=U.next={lane:0,tag:m.tag,payload:m.payload,callback:null,next:null});e:{var W=e,se=m;T=t;var Te=l;switch(se.tag){case 1:if(W=se.payload,typeof W=="function"){H=W.call(Te,H,T);break e}H=W;break e;case 3:W.flags=W.flags&-65537|128;case 0:if(W=se.payload,T=typeof W=="function"?W.call(Te,H,T):W,T==null)break e;H=g({},H,T);break e;case 2:Cl=!0}}T=m.callback,T!==null&&(e.flags|=64,M&&(e.flags|=8192),M=i.callbacks,M===null?i.callbacks=[T]:M.push(T))}else M={lane:T,tag:m.tag,payload:m.payload,callback:m.callback,next:null},U===null?(C=U=M,_=H):U=U.next=M,d|=T;if(m=m.next,m===null){if(m=i.shared.pending,m===null)break;M=m,m=M.next,M.next=null,i.lastBaseUpdate=M,i.shared.pending=null}}while(!0);U===null&&(_=H),i.baseState=_,i.firstBaseUpdate=C,i.lastBaseUpdate=U,c===null&&(i.shared.lanes=0),Ol|=d,e.lanes=d,e.memoizedState=H}}function nd(e,t){if(typeof e!="function")throw Error(r(191,e));e.call(t)}function id(e,t){var l=e.callbacks;if(l!==null)for(e.callbacks=null,e=0;e<l.length;e++)nd(l[e],t)}var Da=N(null),Li=N(0);function sd(e,t){e=pl,X(Li,e),X(Da,t),pl=e|t.baseLanes}function Gc(){X(Li,pl),X(Da,Da.current)}function Qc(){pl=Li.current,L(Da),L(Li)}var _t=N(null),Dt=null;function zl(e){var t=e.alternate;X(Ge,Ge.current&1),X(_t,e),Dt===null&&(t===null||Da.current!==null||t.memoizedState!==null)&&(Dt=e)}function Vc(e){X(Ge,Ge.current),X(_t,e),Dt===null&&(Dt=e)}function cd(e){e.tag===22?(X(Ge,Ge.current),X(_t,e),Dt===null&&(Dt=e)):Ml()}function Ml(){X(Ge,Ge.current),X(_t,_t.current)}function St(e){L(_t),Dt===e&&(Dt=null),L(Ge)}var Ge=N(0);function Bi(e){for(var t=e;t!==null;){if(t.tag===13){var l=t.memoizedState;if(l!==null&&(l=l.dehydrated,l===null||Fr(l)||Wr(l)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder==="forwards"||t.memoizedProps.revealOrder==="backwards"||t.memoizedProps.revealOrder==="unstable_legacy-backwards"||t.memoizedProps.revealOrder==="together")){if((t.flags&128)!==0)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var cl=0,oe=null,Ce=null,Xe=null,Yi=!1,qa=!1,ua=!1,Gi=0,zn=0,Ha=null,iv=0;function Le(){throw Error(r(321))}function Xc(e,t){if(t===null)return!1;for(var l=0;l<t.length&&l<e.length;l++)if(!yt(e[l],t[l]))return!1;return!0}function Zc(e,t,l,n,i,c){return cl=c,oe=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,R.H=e===null||e.memoizedState===null?Vd:cr,ua=!1,c=l(n,i),ua=!1,qa&&(c=ud(t,l,n,i)),rd(e),c}function rd(e){R.H=kn;var t=Ce!==null&&Ce.next!==null;if(cl=0,Xe=Ce=oe=null,Yi=!1,zn=0,Ha=null,t)throw Error(r(300));e===null||Ze||(e=e.dependencies,e!==null&&wi(e)&&(Ze=!0))}function ud(e,t,l,n){oe=e;var i=0;do{if(qa&&(Ha=null),zn=0,qa=!1,25<=i)throw Error(r(301));if(i+=1,Xe=Ce=null,e.updateQueue!=null){var c=e.updateQueue;c.lastEffect=null,c.events=null,c.stores=null,c.memoCache!=null&&(c.memoCache.index=0)}R.H=Xd,c=t(l,n)}while(qa);return c}function sv(){var e=R.H,t=e.useState()[0];return t=typeof t.then=="function"?Mn(t):t,e=e.useState()[0],(Ce!==null?Ce.memoizedState:null)!==e&&(oe.flags|=1024),t}function Kc(){var e=Gi!==0;return Gi=0,e}function Jc(e,t,l){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~l}function $c(e){if(Yi){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}Yi=!1}cl=0,Xe=Ce=oe=null,qa=!1,zn=Gi=0,Ha=null}function nt(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Xe===null?oe.memoizedState=Xe=e:Xe=Xe.next=e,Xe}function Qe(){if(Ce===null){var e=oe.alternate;e=e!==null?e.memoizedState:null}else e=Ce.next;var t=Xe===null?oe.memoizedState:Xe.next;if(t!==null)Xe=t,Ce=e;else{if(e===null)throw oe.alternate===null?Error(r(467)):Error(r(310));Ce=e,e={memoizedState:Ce.memoizedState,baseState:Ce.baseState,baseQueue:Ce.baseQueue,queue:Ce.queue,next:null},Xe===null?oe.memoizedState=Xe=e:Xe=Xe.next=e}return Xe}function Qi(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Mn(e){var t=zn;return zn+=1,Ha===null&&(Ha=[]),e=Io(Ha,e,t),t=oe,(Xe===null?t.memoizedState:Xe.next)===null&&(t=t.alternate,R.H=t===null||t.memoizedState===null?Vd:cr),e}function Vi(e){if(e!==null&&typeof e=="object"){if(typeof e.then=="function")return Mn(e);if(e.$$typeof===K)return et(e)}throw Error(r(438,String(e)))}function Fc(e){var t=null,l=oe.updateQueue;if(l!==null&&(t=l.memoCache),t==null){var n=oe.alternate;n!==null&&(n=n.updateQueue,n!==null&&(n=n.memoCache,n!=null&&(t={data:n.data.map(function(i){return i.slice()}),index:0})))}if(t==null&&(t={data:[],index:0}),l===null&&(l=Qi(),oe.updateQueue=l),l.memoCache=t,l=t.data[t.index],l===void 0)for(l=t.data[t.index]=Array(e),n=0;n<e;n++)l[n]=we;return t.index++,l}function rl(e,t){return typeof t=="function"?t(e):t}function Xi(e){var t=Qe();return Wc(t,Ce,e)}function Wc(e,t,l){var n=e.queue;if(n===null)throw Error(r(311));n.lastRenderedReducer=l;var i=e.baseQueue,c=n.pending;if(c!==null){if(i!==null){var d=i.next;i.next=c.next,c.next=d}t.baseQueue=i=c,n.pending=null}if(c=e.baseState,i===null)e.memoizedState=c;else{t=i.next;var m=d=null,_=null,C=t,U=!1;do{var H=C.lane&-536870913;if(H!==C.lane?(xe&H)===H:(cl&H)===H){var T=C.revertLane;if(T===0)_!==null&&(_=_.next={lane:0,revertLane:0,gesture:null,action:C.action,hasEagerState:C.hasEagerState,eagerState:C.eagerState,next:null}),H===wa&&(U=!0);else if((cl&T)===T){C=C.next,T===wa&&(U=!0);continue}else H={lane:0,revertLane:C.revertLane,gesture:null,action:C.action,hasEagerState:C.hasEagerState,eagerState:C.eagerState,next:null},_===null?(m=_=H,d=c):_=_.next=H,oe.lanes|=T,Ol|=T;H=C.action,ua&&l(c,H),c=C.hasEagerState?C.eagerState:l(c,H)}else T={lane:H,revertLane:C.revertLane,gesture:C.gesture,action:C.action,hasEagerState:C.hasEagerState,eagerState:C.eagerState,next:null},_===null?(m=_=T,d=c):_=_.next=T,oe.lanes|=H,Ol|=H;C=C.next}while(C!==null&&C!==t);if(_===null?d=c:_.next=m,!yt(c,e.memoizedState)&&(Ze=!0,U&&(l=ka,l!==null)))throw l;e.memoizedState=c,e.baseState=d,e.baseQueue=_,n.lastRenderedState=c}return i===null&&(n.lanes=0),[e.memoizedState,n.dispatch]}function Pc(e){var t=Qe(),l=t.queue;if(l===null)throw Error(r(311));l.lastRenderedReducer=e;var n=l.dispatch,i=l.pending,c=t.memoizedState;if(i!==null){l.pending=null;var d=i=i.next;do c=e(c,d.action),d=d.next;while(d!==i);yt(c,t.memoizedState)||(Ze=!0),t.memoizedState=c,t.baseQueue===null&&(t.baseState=c),l.lastRenderedState=c}return[c,n]}function od(e,t,l){var n=oe,i=Qe(),c=ye;if(c){if(l===void 0)throw Error(r(407));l=l()}else l=t();var d=!yt((Ce||i).memoizedState,l);if(d&&(i.memoizedState=l,Ze=!0),i=i.queue,tr(hd.bind(null,n,i,e),[e]),i.getSnapshot!==t||d||Xe!==null&&Xe.memoizedState.tag&1){if(n.flags|=2048,La(9,{destroy:void 0},fd.bind(null,n,i,l,t),null),Me===null)throw Error(r(349));c||(cl&127)!==0||dd(n,t,l)}return l}function dd(e,t,l){e.flags|=16384,e={getSnapshot:t,value:l},t=oe.updateQueue,t===null?(t=Qi(),oe.updateQueue=t,t.stores=[e]):(l=t.stores,l===null?t.stores=[e]:l.push(e))}function fd(e,t,l,n){t.value=l,t.getSnapshot=n,md(t)&&pd(e)}function hd(e,t,l){return l(function(){md(t)&&pd(e)})}function md(e){var t=e.getSnapshot;e=e.value;try{var l=t();return!yt(e,l)}catch{return!0}}function pd(e){var t=ea(e,2);t!==null&&ft(t,e,2)}function Ic(e){var t=nt();if(typeof e=="function"){var l=e;if(e=l(),ua){jl(!0);try{l()}finally{jl(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:rl,lastRenderedState:e},t}function vd(e,t,l,n){return e.baseState=l,Wc(e,Ce,typeof n=="function"?n:rl)}function cv(e,t,l,n,i){if(Ji(e))throw Error(r(485));if(e=t.action,e!==null){var c={payload:i,action:e,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(d){c.listeners.push(d)}};R.T!==null?l(!0):c.isTransition=!1,n(c),l=t.pending,l===null?(c.next=t.pending=c,xd(t,c)):(c.next=l.next,t.pending=l.next=c)}}function xd(e,t){var l=t.action,n=t.payload,i=e.state;if(t.isTransition){var c=R.T,d={};R.T=d;try{var m=l(i,n),_=R.S;_!==null&&_(d,m),gd(e,t,m)}catch(C){er(e,t,C)}finally{c!==null&&d.types!==null&&(c.types=d.types),R.T=c}}else try{c=l(i,n),gd(e,t,c)}catch(C){er(e,t,C)}}function gd(e,t,l){l!==null&&typeof l=="object"&&typeof l.then=="function"?l.then(function(n){yd(e,t,n)},function(n){return er(e,t,n)}):yd(e,t,l)}function yd(e,t,l){t.status="fulfilled",t.value=l,jd(t),e.state=l,t=e.pending,t!==null&&(l=t.next,l===t?e.pending=null:(l=l.next,t.next=l,xd(e,l)))}function er(e,t,l){var n=e.pending;if(e.pending=null,n!==null){n=n.next;do t.status="rejected",t.reason=l,jd(t),t=t.next;while(t!==n)}e.action=null}function jd(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function _d(e,t){return t}function Sd(e,t){if(ye){var l=Me.formState;if(l!==null){e:{var n=oe;if(ye){if(Oe){t:{for(var i=Oe,c=Ut;i.nodeType!==8;){if(!c){i=null;break t}if(i=qt(i.nextSibling),i===null){i=null;break t}}c=i.data,i=c==="F!"||c==="F"?i:null}if(i){Oe=qt(i.nextSibling),n=i.data==="F!";break e}}El(n)}n=!1}n&&(t=l[0])}}return l=nt(),l.memoizedState=l.baseState=t,n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:_d,lastRenderedState:t},l.queue=n,l=Yd.bind(null,oe,n),n.dispatch=l,n=Ic(!1),c=sr.bind(null,oe,!1,n.queue),n=nt(),i={state:t,dispatch:null,action:e,pending:null},n.queue=i,l=cv.bind(null,oe,i,c,l),i.dispatch=l,n.memoizedState=e,[t,l,!1]}function bd(e){var t=Qe();return Nd(t,Ce,e)}function Nd(e,t,l){if(t=Wc(e,t,_d)[0],e=Xi(rl)[0],typeof t=="object"&&t!==null&&typeof t.then=="function")try{var n=Mn(t)}catch(d){throw d===Oa?Ui:d}else n=t;t=Qe();var i=t.queue,c=i.dispatch;return l!==t.memoizedState&&(oe.flags|=2048,La(9,{destroy:void 0},rv.bind(null,i,l),null)),[n,c,e]}function rv(e,t){e.action=t}function Ed(e){var t=Qe(),l=Ce;if(l!==null)return Nd(t,l,e);Qe(),t=t.memoizedState,l=Qe();var n=l.queue.dispatch;return l.memoizedState=e,[t,n,!1]}function La(e,t,l,n){return e={tag:e,create:l,deps:n,inst:t,next:null},t=oe.updateQueue,t===null&&(t=Qi(),oe.updateQueue=t),l=t.lastEffect,l===null?t.lastEffect=e.next=e:(n=l.next,l.next=e,e.next=n,t.lastEffect=e),e}function Ad(){return Qe().memoizedState}function Zi(e,t,l,n){var i=nt();oe.flags|=e,i.memoizedState=La(1|t,{destroy:void 0},l,n===void 0?null:n)}function Ki(e,t,l,n){var i=Qe();n=n===void 0?null:n;var c=i.memoizedState.inst;Ce!==null&&n!==null&&Xc(n,Ce.memoizedState.deps)?i.memoizedState=La(t,c,l,n):(oe.flags|=e,i.memoizedState=La(1|t,c,l,n))}function Cd(e,t){Zi(8390656,8,e,t)}function tr(e,t){Ki(2048,8,e,t)}function uv(e){oe.flags|=4;var t=oe.updateQueue;if(t===null)t=Qi(),oe.updateQueue=t,t.events=[e];else{var l=t.events;l===null?t.events=[e]:l.push(e)}}function Rd(e){var t=Qe().memoizedState;return uv({ref:t,nextImpl:e}),function(){if((Ne&2)!==0)throw Error(r(440));return t.impl.apply(void 0,arguments)}}function Td(e,t){return Ki(4,2,e,t)}function zd(e,t){return Ki(4,4,e,t)}function Md(e,t){if(typeof t=="function"){e=e();var l=t(e);return function(){typeof l=="function"?l():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function wd(e,t,l){l=l!=null?l.concat([e]):null,Ki(4,4,Md.bind(null,t,e),l)}function lr(){}function kd(e,t){var l=Qe();t=t===void 0?null:t;var n=l.memoizedState;return t!==null&&Xc(t,n[1])?n[0]:(l.memoizedState=[e,t],e)}function Od(e,t){var l=Qe();t=t===void 0?null:t;var n=l.memoizedState;if(t!==null&&Xc(t,n[1]))return n[0];if(n=e(),ua){jl(!0);try{e()}finally{jl(!1)}}return l.memoizedState=[n,t],n}function ar(e,t,l){return l===void 0||(cl&1073741824)!==0&&(xe&261930)===0?e.memoizedState=t:(e.memoizedState=l,e=Df(),oe.lanes|=e,Ol|=e,l)}function Ud(e,t,l,n){return yt(l,t)?l:Da.current!==null?(e=ar(e,l,n),yt(e,t)||(Ze=!0),e):(cl&42)===0||(cl&1073741824)!==0&&(xe&261930)===0?(Ze=!0,e.memoizedState=l):(e=Df(),oe.lanes|=e,Ol|=e,t)}function Dd(e,t,l,n,i){var c=Q.p;Q.p=c!==0&&8>c?c:8;var d=R.T,m={};R.T=m,sr(e,!1,t,l);try{var _=i(),C=R.S;if(C!==null&&C(m,_),_!==null&&typeof _=="object"&&typeof _.then=="function"){var U=nv(_,n);wn(e,t,U,Et(e))}else wn(e,t,n,Et(e))}catch(H){wn(e,t,{then:function(){},status:"rejected",reason:H},Et())}finally{Q.p=c,d!==null&&m.types!==null&&(d.types=m.types),R.T=d}}function ov(){}function nr(e,t,l,n){if(e.tag!==5)throw Error(r(476));var i=qd(e).queue;Dd(e,i,t,F,l===null?ov:function(){return Hd(e),l(n)})}function qd(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:F,baseState:F,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:rl,lastRenderedState:F},next:null};var l={};return t.next={memoizedState:l,baseState:l,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:rl,lastRenderedState:l},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Hd(e){var t=qd(e);t.next===null&&(t=e.alternate.memoizedState),wn(e,t.next.queue,{},Et())}function ir(){return et($n)}function Ld(){return Qe().memoizedState}function Bd(){return Qe().memoizedState}function dv(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var l=Et();e=Rl(l);var n=Tl(t,e,l);n!==null&&(ft(n,t,l),Cn(n,t,l)),t={cache:Oc()},e.payload=t;return}t=t.return}}function fv(e,t,l){var n=Et();l={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null},Ji(e)?Gd(t,l):(l=bc(e,t,l,n),l!==null&&(ft(l,e,n),Qd(l,t,n)))}function Yd(e,t,l){var n=Et();wn(e,t,l,n)}function wn(e,t,l,n){var i={lane:n,revertLane:0,gesture:null,action:l,hasEagerState:!1,eagerState:null,next:null};if(Ji(e))Gd(t,i);else{var c=e.alternate;if(e.lanes===0&&(c===null||c.lanes===0)&&(c=t.lastRenderedReducer,c!==null))try{var d=t.lastRenderedState,m=c(d,l);if(i.hasEagerState=!0,i.eagerState=m,yt(m,d))return Ri(e,t,i,0),Me===null&&Ci(),!1}catch{}if(l=bc(e,t,i,n),l!==null)return ft(l,e,n),Qd(l,t,n),!0}return!1}function sr(e,t,l,n){if(n={lane:2,revertLane:Hr(),gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Ji(e)){if(t)throw Error(r(479))}else t=bc(e,l,n,2),t!==null&&ft(t,e,2)}function Ji(e){var t=e.alternate;return e===oe||t!==null&&t===oe}function Gd(e,t){qa=Yi=!0;var l=e.pending;l===null?t.next=t:(t.next=l.next,l.next=t),e.pending=t}function Qd(e,t,l){if((l&4194048)!==0){var n=t.lanes;n&=e.pendingLanes,l|=n,t.lanes=l,Ku(e,l)}}var kn={readContext:et,use:Vi,useCallback:Le,useContext:Le,useEffect:Le,useImperativeHandle:Le,useLayoutEffect:Le,useInsertionEffect:Le,useMemo:Le,useReducer:Le,useRef:Le,useState:Le,useDebugValue:Le,useDeferredValue:Le,useTransition:Le,useSyncExternalStore:Le,useId:Le,useHostTransitionStatus:Le,useFormState:Le,useActionState:Le,useOptimistic:Le,useMemoCache:Le,useCacheRefresh:Le};kn.useEffectEvent=Le;var Vd={readContext:et,use:Vi,useCallback:function(e,t){return nt().memoizedState=[e,t===void 0?null:t],e},useContext:et,useEffect:Cd,useImperativeHandle:function(e,t,l){l=l!=null?l.concat([e]):null,Zi(4194308,4,Md.bind(null,t,e),l)},useLayoutEffect:function(e,t){return Zi(4194308,4,e,t)},useInsertionEffect:function(e,t){Zi(4,2,e,t)},useMemo:function(e,t){var l=nt();t=t===void 0?null:t;var n=e();if(ua){jl(!0);try{e()}finally{jl(!1)}}return l.memoizedState=[n,t],n},useReducer:function(e,t,l){var n=nt();if(l!==void 0){var i=l(t);if(ua){jl(!0);try{l(t)}finally{jl(!1)}}}else i=t;return n.memoizedState=n.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},n.queue=e,e=e.dispatch=fv.bind(null,oe,e),[n.memoizedState,e]},useRef:function(e){var t=nt();return e={current:e},t.memoizedState=e},useState:function(e){e=Ic(e);var t=e.queue,l=Yd.bind(null,oe,t);return t.dispatch=l,[e.memoizedState,l]},useDebugValue:lr,useDeferredValue:function(e,t){var l=nt();return ar(l,e,t)},useTransition:function(){var e=Ic(!1);return e=Dd.bind(null,oe,e.queue,!0,!1),nt().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,l){var n=oe,i=nt();if(ye){if(l===void 0)throw Error(r(407));l=l()}else{if(l=t(),Me===null)throw Error(r(349));(xe&127)!==0||dd(n,t,l)}i.memoizedState=l;var c={value:l,getSnapshot:t};return i.queue=c,Cd(hd.bind(null,n,c,e),[e]),n.flags|=2048,La(9,{destroy:void 0},fd.bind(null,n,c,l,t),null),l},useId:function(){var e=nt(),t=Me.identifierPrefix;if(ye){var l=$t,n=Jt;l=(n&~(1<<32-gt(n)-1)).toString(32)+l,t="_"+t+"R_"+l,l=Gi++,0<l&&(t+="H"+l.toString(32)),t+="_"}else l=iv++,t="_"+t+"r_"+l.toString(32)+"_";return e.memoizedState=t},useHostTransitionStatus:ir,useFormState:Sd,useActionState:Sd,useOptimistic:function(e){var t=nt();t.memoizedState=t.baseState=e;var l={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=l,t=sr.bind(null,oe,!0,l),l.dispatch=t,[e,t]},useMemoCache:Fc,useCacheRefresh:function(){return nt().memoizedState=dv.bind(null,oe)},useEffectEvent:function(e){var t=nt(),l={impl:e};return t.memoizedState=l,function(){if((Ne&2)!==0)throw Error(r(440));return l.impl.apply(void 0,arguments)}}},cr={readContext:et,use:Vi,useCallback:kd,useContext:et,useEffect:tr,useImperativeHandle:wd,useInsertionEffect:Td,useLayoutEffect:zd,useMemo:Od,useReducer:Xi,useRef:Ad,useState:function(){return Xi(rl)},useDebugValue:lr,useDeferredValue:function(e,t){var l=Qe();return Ud(l,Ce.memoizedState,e,t)},useTransition:function(){var e=Xi(rl)[0],t=Qe().memoizedState;return[typeof e=="boolean"?e:Mn(e),t]},useSyncExternalStore:od,useId:Ld,useHostTransitionStatus:ir,useFormState:bd,useActionState:bd,useOptimistic:function(e,t){var l=Qe();return vd(l,Ce,e,t)},useMemoCache:Fc,useCacheRefresh:Bd};cr.useEffectEvent=Rd;var Xd={readContext:et,use:Vi,useCallback:kd,useContext:et,useEffect:tr,useImperativeHandle:wd,useInsertionEffect:Td,useLayoutEffect:zd,useMemo:Od,useReducer:Pc,useRef:Ad,useState:function(){return Pc(rl)},useDebugValue:lr,useDeferredValue:function(e,t){var l=Qe();return Ce===null?ar(l,e,t):Ud(l,Ce.memoizedState,e,t)},useTransition:function(){var e=Pc(rl)[0],t=Qe().memoizedState;return[typeof e=="boolean"?e:Mn(e),t]},useSyncExternalStore:od,useId:Ld,useHostTransitionStatus:ir,useFormState:Ed,useActionState:Ed,useOptimistic:function(e,t){var l=Qe();return Ce!==null?vd(l,Ce,e,t):(l.baseState=e,[e,l.queue.dispatch])},useMemoCache:Fc,useCacheRefresh:Bd};Xd.useEffectEvent=Rd;function rr(e,t,l,n){t=e.memoizedState,l=l(n,t),l=l==null?t:g({},t,l),e.memoizedState=l,e.lanes===0&&(e.updateQueue.baseState=l)}var ur={enqueueSetState:function(e,t,l){e=e._reactInternals;var n=Et(),i=Rl(n);i.payload=t,l!=null&&(i.callback=l),t=Tl(e,i,n),t!==null&&(ft(t,e,n),Cn(t,e,n))},enqueueReplaceState:function(e,t,l){e=e._reactInternals;var n=Et(),i=Rl(n);i.tag=1,i.payload=t,l!=null&&(i.callback=l),t=Tl(e,i,n),t!==null&&(ft(t,e,n),Cn(t,e,n))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var l=Et(),n=Rl(l);n.tag=2,t!=null&&(n.callback=t),t=Tl(e,n,l),t!==null&&(ft(t,e,l),Cn(t,e,l))}};function Zd(e,t,l,n,i,c,d){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(n,c,d):t.prototype&&t.prototype.isPureReactComponent?!yn(l,n)||!yn(i,c):!0}function Kd(e,t,l,n){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(l,n),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(l,n),t.state!==e&&ur.enqueueReplaceState(t,t.state,null)}function oa(e,t){var l=t;if("ref"in t){l={};for(var n in t)n!=="ref"&&(l[n]=t[n])}if(e=e.defaultProps){l===t&&(l=g({},l));for(var i in e)l[i]===void 0&&(l[i]=e[i])}return l}function Jd(e){Ai(e)}function $d(e){console.error(e)}function Fd(e){Ai(e)}function $i(e,t){try{var l=e.onUncaughtError;l(t.value,{componentStack:t.stack})}catch(n){setTimeout(function(){throw n})}}function Wd(e,t,l){try{var n=e.onCaughtError;n(l.value,{componentStack:l.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(i){setTimeout(function(){throw i})}}function or(e,t,l){return l=Rl(l),l.tag=3,l.payload={element:null},l.callback=function(){$i(e,t)},l}function Pd(e){return e=Rl(e),e.tag=3,e}function Id(e,t,l,n){var i=l.type.getDerivedStateFromError;if(typeof i=="function"){var c=n.value;e.payload=function(){return i(c)},e.callback=function(){Wd(t,l,n)}}var d=l.stateNode;d!==null&&typeof d.componentDidCatch=="function"&&(e.callback=function(){Wd(t,l,n),typeof i!="function"&&(Ul===null?Ul=new Set([this]):Ul.add(this));var m=n.stack;this.componentDidCatch(n.value,{componentStack:m!==null?m:""})})}function hv(e,t,l,n,i){if(l.flags|=32768,n!==null&&typeof n=="object"&&typeof n.then=="function"){if(t=l.alternate,t!==null&&Ma(t,l,i,!0),l=_t.current,l!==null){switch(l.tag){case 31:case 13:return Dt===null?cs():l.alternate===null&&Be===0&&(Be=3),l.flags&=-257,l.flags|=65536,l.lanes=i,n===Di?l.flags|=16384:(t=l.updateQueue,t===null?l.updateQueue=new Set([n]):t.add(n),Ur(e,n,i)),!1;case 22:return l.flags|=65536,n===Di?l.flags|=16384:(t=l.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([n])},l.updateQueue=t):(l=t.retryQueue,l===null?t.retryQueue=new Set([n]):l.add(n)),Ur(e,n,i)),!1}throw Error(r(435,l.tag))}return Ur(e,n,i),cs(),!1}if(ye)return t=_t.current,t!==null?((t.flags&65536)===0&&(t.flags|=256),t.flags|=65536,t.lanes=i,n!==Tc&&(e=Error(r(422),{cause:n}),Sn(wt(e,l)))):(n!==Tc&&(t=Error(r(423),{cause:n}),Sn(wt(t,l))),e=e.current.alternate,e.flags|=65536,i&=-i,e.lanes|=i,n=wt(n,l),i=or(e.stateNode,n,i),Bc(e,i),Be!==4&&(Be=2)),!1;var c=Error(r(520),{cause:n});if(c=wt(c,l),Yn===null?Yn=[c]:Yn.push(c),Be!==4&&(Be=2),t===null)return!0;n=wt(n,l),l=t;do{switch(l.tag){case 3:return l.flags|=65536,e=i&-i,l.lanes|=e,e=or(l.stateNode,n,e),Bc(l,e),!1;case 1:if(t=l.type,c=l.stateNode,(l.flags&128)===0&&(typeof t.getDerivedStateFromError=="function"||c!==null&&typeof c.componentDidCatch=="function"&&(Ul===null||!Ul.has(c))))return l.flags|=65536,i&=-i,l.lanes|=i,i=Pd(i),Id(i,e,l,n),Bc(l,i),!1}l=l.return}while(l!==null);return!1}var dr=Error(r(461)),Ze=!1;function tt(e,t,l,n){t.child=e===null?ad(t,null,l,n):ra(t,e.child,l,n)}function ef(e,t,l,n,i){l=l.render;var c=t.ref;if("ref"in n){var d={};for(var m in n)m!=="ref"&&(d[m]=n[m])}else d=n;return na(t),n=Zc(e,t,l,d,c,i),m=Kc(),e!==null&&!Ze?(Jc(e,t,i),ul(e,t,i)):(ye&&m&&Cc(t),t.flags|=1,tt(e,t,n,i),t.child)}function tf(e,t,l,n,i){if(e===null){var c=l.type;return typeof c=="function"&&!Nc(c)&&c.defaultProps===void 0&&l.compare===null?(t.tag=15,t.type=c,lf(e,t,c,n,i)):(e=zi(l.type,null,n,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(c=e.child,!yr(e,i)){var d=c.memoizedProps;if(l=l.compare,l=l!==null?l:yn,l(d,n)&&e.ref===t.ref)return ul(e,t,i)}return t.flags|=1,e=al(c,n),e.ref=t.ref,e.return=t,t.child=e}function lf(e,t,l,n,i){if(e!==null){var c=e.memoizedProps;if(yn(c,n)&&e.ref===t.ref)if(Ze=!1,t.pendingProps=n=c,yr(e,i))(e.flags&131072)!==0&&(Ze=!0);else return t.lanes=e.lanes,ul(e,t,i)}return fr(e,t,l,n,i)}function af(e,t,l,n){var i=n.children,c=e!==null?e.memoizedState:null;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),n.mode==="hidden"){if((t.flags&128)!==0){if(c=c!==null?c.baseLanes|l:l,e!==null){for(n=t.child=e.child,i=0;n!==null;)i=i|n.lanes|n.childLanes,n=n.sibling;n=i&~c}else n=0,t.child=null;return nf(e,t,c,l,n)}if((l&536870912)!==0)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&Oi(t,c!==null?c.cachePool:null),c!==null?sd(t,c):Gc(),cd(t);else return n=t.lanes=536870912,nf(e,t,c!==null?c.baseLanes|l:l,l,n)}else c!==null?(Oi(t,c.cachePool),sd(t,c),Ml(),t.memoizedState=null):(e!==null&&Oi(t,null),Gc(),Ml());return tt(e,t,i,l),t.child}function On(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function nf(e,t,l,n,i){var c=Dc();return c=c===null?null:{parent:Ve._currentValue,pool:c},t.memoizedState={baseLanes:l,cachePool:c},e!==null&&Oi(t,null),Gc(),cd(t),e!==null&&Ma(e,t,n,!0),t.childLanes=i,null}function Fi(e,t){return t=Pi({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function sf(e,t,l){return ra(t,e.child,null,l),e=Fi(t,t.pendingProps),e.flags|=2,St(t),t.memoizedState=null,e}function mv(e,t,l){var n=t.pendingProps,i=(t.flags&128)!==0;if(t.flags&=-129,e===null){if(ye){if(n.mode==="hidden")return e=Fi(t,n),t.lanes=536870912,On(null,e);if(Vc(t),(e=Oe)?(e=gh(e,Ut),e=e!==null&&e.data==="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:bl!==null?{id:Jt,overflow:$t}:null,retryLane:536870912,hydrationErrors:null},l=Go(e),l.return=t,t.child=l,Ie=t,Oe=null)):e=null,e===null)throw El(t);return t.lanes=536870912,null}return Fi(t,n)}var c=e.memoizedState;if(c!==null){var d=c.dehydrated;if(Vc(t),i)if(t.flags&256)t.flags&=-257,t=sf(e,t,l);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(r(558));else if(Ze||Ma(e,t,l,!1),i=(l&e.childLanes)!==0,Ze||i){if(n=Me,n!==null&&(d=Ju(n,l),d!==0&&d!==c.retryLane))throw c.retryLane=d,ea(e,d),ft(n,e,d),dr;cs(),t=sf(e,t,l)}else e=c.treeContext,Oe=qt(d.nextSibling),Ie=t,ye=!0,Nl=null,Ut=!1,e!==null&&Xo(t,e),t=Fi(t,n),t.flags|=4096;return t}return e=al(e.child,{mode:n.mode,children:n.children}),e.ref=t.ref,t.child=e,e.return=t,e}function Wi(e,t){var l=t.ref;if(l===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof l!="function"&&typeof l!="object")throw Error(r(284));(e===null||e.ref!==l)&&(t.flags|=4194816)}}function fr(e,t,l,n,i){return na(t),l=Zc(e,t,l,n,void 0,i),n=Kc(),e!==null&&!Ze?(Jc(e,t,i),ul(e,t,i)):(ye&&n&&Cc(t),t.flags|=1,tt(e,t,l,i),t.child)}function cf(e,t,l,n,i,c){return na(t),t.updateQueue=null,l=ud(t,n,l,i),rd(e),n=Kc(),e!==null&&!Ze?(Jc(e,t,c),ul(e,t,c)):(ye&&n&&Cc(t),t.flags|=1,tt(e,t,l,c),t.child)}function rf(e,t,l,n,i){if(na(t),t.stateNode===null){var c=Ca,d=l.contextType;typeof d=="object"&&d!==null&&(c=et(d)),c=new l(n,c),t.memoizedState=c.state!==null&&c.state!==void 0?c.state:null,c.updater=ur,t.stateNode=c,c._reactInternals=t,c=t.stateNode,c.props=n,c.state=t.memoizedState,c.refs={},Hc(t),d=l.contextType,c.context=typeof d=="object"&&d!==null?et(d):Ca,c.state=t.memoizedState,d=l.getDerivedStateFromProps,typeof d=="function"&&(rr(t,l,d,n),c.state=t.memoizedState),typeof l.getDerivedStateFromProps=="function"||typeof c.getSnapshotBeforeUpdate=="function"||typeof c.UNSAFE_componentWillMount!="function"&&typeof c.componentWillMount!="function"||(d=c.state,typeof c.componentWillMount=="function"&&c.componentWillMount(),typeof c.UNSAFE_componentWillMount=="function"&&c.UNSAFE_componentWillMount(),d!==c.state&&ur.enqueueReplaceState(c,c.state,null),Tn(t,n,c,i),Rn(),c.state=t.memoizedState),typeof c.componentDidMount=="function"&&(t.flags|=4194308),n=!0}else if(e===null){c=t.stateNode;var m=t.memoizedProps,_=oa(l,m);c.props=_;var C=c.context,U=l.contextType;d=Ca,typeof U=="object"&&U!==null&&(d=et(U));var H=l.getDerivedStateFromProps;U=typeof H=="function"||typeof c.getSnapshotBeforeUpdate=="function",m=t.pendingProps!==m,U||typeof c.UNSAFE_componentWillReceiveProps!="function"&&typeof c.componentWillReceiveProps!="function"||(m||C!==d)&&Kd(t,c,n,d),Cl=!1;var T=t.memoizedState;c.state=T,Tn(t,n,c,i),Rn(),C=t.memoizedState,m||T!==C||Cl?(typeof H=="function"&&(rr(t,l,H,n),C=t.memoizedState),(_=Cl||Zd(t,l,_,n,T,C,d))?(U||typeof c.UNSAFE_componentWillMount!="function"&&typeof c.componentWillMount!="function"||(typeof c.componentWillMount=="function"&&c.componentWillMount(),typeof c.UNSAFE_componentWillMount=="function"&&c.UNSAFE_componentWillMount()),typeof c.componentDidMount=="function"&&(t.flags|=4194308)):(typeof c.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=n,t.memoizedState=C),c.props=n,c.state=C,c.context=d,n=_):(typeof c.componentDidMount=="function"&&(t.flags|=4194308),n=!1)}else{c=t.stateNode,Lc(e,t),d=t.memoizedProps,U=oa(l,d),c.props=U,H=t.pendingProps,T=c.context,C=l.contextType,_=Ca,typeof C=="object"&&C!==null&&(_=et(C)),m=l.getDerivedStateFromProps,(C=typeof m=="function"||typeof c.getSnapshotBeforeUpdate=="function")||typeof c.UNSAFE_componentWillReceiveProps!="function"&&typeof c.componentWillReceiveProps!="function"||(d!==H||T!==_)&&Kd(t,c,n,_),Cl=!1,T=t.memoizedState,c.state=T,Tn(t,n,c,i),Rn();var M=t.memoizedState;d!==H||T!==M||Cl||e!==null&&e.dependencies!==null&&wi(e.dependencies)?(typeof m=="function"&&(rr(t,l,m,n),M=t.memoizedState),(U=Cl||Zd(t,l,U,n,T,M,_)||e!==null&&e.dependencies!==null&&wi(e.dependencies))?(C||typeof c.UNSAFE_componentWillUpdate!="function"&&typeof c.componentWillUpdate!="function"||(typeof c.componentWillUpdate=="function"&&c.componentWillUpdate(n,M,_),typeof c.UNSAFE_componentWillUpdate=="function"&&c.UNSAFE_componentWillUpdate(n,M,_)),typeof c.componentDidUpdate=="function"&&(t.flags|=4),typeof c.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof c.componentDidUpdate!="function"||d===e.memoizedProps&&T===e.memoizedState||(t.flags|=4),typeof c.getSnapshotBeforeUpdate!="function"||d===e.memoizedProps&&T===e.memoizedState||(t.flags|=1024),t.memoizedProps=n,t.memoizedState=M),c.props=n,c.state=M,c.context=_,n=U):(typeof c.componentDidUpdate!="function"||d===e.memoizedProps&&T===e.memoizedState||(t.flags|=4),typeof c.getSnapshotBeforeUpdate!="function"||d===e.memoizedProps&&T===e.memoizedState||(t.flags|=1024),n=!1)}return c=n,Wi(e,t),n=(t.flags&128)!==0,c||n?(c=t.stateNode,l=n&&typeof l.getDerivedStateFromError!="function"?null:c.render(),t.flags|=1,e!==null&&n?(t.child=ra(t,e.child,null,i),t.child=ra(t,null,l,i)):tt(e,t,l,i),t.memoizedState=c.state,e=t.child):e=ul(e,t,i),e}function uf(e,t,l,n){return la(),t.flags|=256,tt(e,t,l,n),t.child}var hr={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function mr(e){return{baseLanes:e,cachePool:Wo()}}function pr(e,t,l){return e=e!==null?e.childLanes&~l:0,t&&(e|=Nt),e}function of(e,t,l){var n=t.pendingProps,i=!1,c=(t.flags&128)!==0,d;if((d=c)||(d=e!==null&&e.memoizedState===null?!1:(Ge.current&2)!==0),d&&(i=!0,t.flags&=-129),d=(t.flags&32)!==0,t.flags&=-33,e===null){if(ye){if(i?zl(t):Ml(),(e=Oe)?(e=gh(e,Ut),e=e!==null&&e.data!=="&"?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:bl!==null?{id:Jt,overflow:$t}:null,retryLane:536870912,hydrationErrors:null},l=Go(e),l.return=t,t.child=l,Ie=t,Oe=null)):e=null,e===null)throw El(t);return Wr(e)?t.lanes=32:t.lanes=536870912,null}var m=n.children;return n=n.fallback,i?(Ml(),i=t.mode,m=Pi({mode:"hidden",children:m},i),n=ta(n,i,l,null),m.return=t,n.return=t,m.sibling=n,t.child=m,n=t.child,n.memoizedState=mr(l),n.childLanes=pr(e,d,l),t.memoizedState=hr,On(null,n)):(zl(t),vr(t,m))}var _=e.memoizedState;if(_!==null&&(m=_.dehydrated,m!==null)){if(c)t.flags&256?(zl(t),t.flags&=-257,t=xr(e,t,l)):t.memoizedState!==null?(Ml(),t.child=e.child,t.flags|=128,t=null):(Ml(),m=n.fallback,i=t.mode,n=Pi({mode:"visible",children:n.children},i),m=ta(m,i,l,null),m.flags|=2,n.return=t,m.return=t,n.sibling=m,t.child=n,ra(t,e.child,null,l),n=t.child,n.memoizedState=mr(l),n.childLanes=pr(e,d,l),t.memoizedState=hr,t=On(null,n));else if(zl(t),Wr(m)){if(d=m.nextSibling&&m.nextSibling.dataset,d)var C=d.dgst;d=C,n=Error(r(419)),n.stack="",n.digest=d,Sn({value:n,source:null,stack:null}),t=xr(e,t,l)}else if(Ze||Ma(e,t,l,!1),d=(l&e.childLanes)!==0,Ze||d){if(d=Me,d!==null&&(n=Ju(d,l),n!==0&&n!==_.retryLane))throw _.retryLane=n,ea(e,n),ft(d,e,n),dr;Fr(m)||cs(),t=xr(e,t,l)}else Fr(m)?(t.flags|=192,t.child=e.child,t=null):(e=_.treeContext,Oe=qt(m.nextSibling),Ie=t,ye=!0,Nl=null,Ut=!1,e!==null&&Xo(t,e),t=vr(t,n.children),t.flags|=4096);return t}return i?(Ml(),m=n.fallback,i=t.mode,_=e.child,C=_.sibling,n=al(_,{mode:"hidden",children:n.children}),n.subtreeFlags=_.subtreeFlags&65011712,C!==null?m=al(C,m):(m=ta(m,i,l,null),m.flags|=2),m.return=t,n.return=t,n.sibling=m,t.child=n,On(null,n),n=t.child,m=e.child.memoizedState,m===null?m=mr(l):(i=m.cachePool,i!==null?(_=Ve._currentValue,i=i.parent!==_?{parent:_,pool:_}:i):i=Wo(),m={baseLanes:m.baseLanes|l,cachePool:i}),n.memoizedState=m,n.childLanes=pr(e,d,l),t.memoizedState=hr,On(e.child,n)):(zl(t),l=e.child,e=l.sibling,l=al(l,{mode:"visible",children:n.children}),l.return=t,l.sibling=null,e!==null&&(d=t.deletions,d===null?(t.deletions=[e],t.flags|=16):d.push(e)),t.child=l,t.memoizedState=null,l)}function vr(e,t){return t=Pi({mode:"visible",children:t},e.mode),t.return=e,e.child=t}function Pi(e,t){return e=jt(22,e,null,t),e.lanes=0,e}function xr(e,t,l){return ra(t,e.child,null,l),e=vr(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function df(e,t,l){e.lanes|=t;var n=e.alternate;n!==null&&(n.lanes|=t),wc(e.return,t,l)}function gr(e,t,l,n,i,c){var d=e.memoizedState;d===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:n,tail:l,tailMode:i,treeForkCount:c}:(d.isBackwards=t,d.rendering=null,d.renderingStartTime=0,d.last=n,d.tail=l,d.tailMode=i,d.treeForkCount=c)}function ff(e,t,l){var n=t.pendingProps,i=n.revealOrder,c=n.tail;n=n.children;var d=Ge.current,m=(d&2)!==0;if(m?(d=d&1|2,t.flags|=128):d&=1,X(Ge,d),tt(e,t,n,l),n=ye?_n:0,!m&&e!==null&&(e.flags&128)!==0)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&df(e,l,t);else if(e.tag===19)df(e,l,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;e.sibling===null;){if(e.return===null||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case"forwards":for(l=t.child,i=null;l!==null;)e=l.alternate,e!==null&&Bi(e)===null&&(i=l),l=l.sibling;l=i,l===null?(i=t.child,t.child=null):(i=l.sibling,l.sibling=null),gr(t,!1,i,l,c,n);break;case"backwards":case"unstable_legacy-backwards":for(l=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Bi(e)===null){t.child=i;break}e=i.sibling,i.sibling=l,l=i,i=e}gr(t,!0,l,null,c,n);break;case"together":gr(t,!1,null,null,void 0,n);break;default:t.memoizedState=null}return t.child}function ul(e,t,l){if(e!==null&&(t.dependencies=e.dependencies),Ol|=t.lanes,(l&t.childLanes)===0)if(e!==null){if(Ma(e,t,l,!1),(l&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(r(153));if(t.child!==null){for(e=t.child,l=al(e,e.pendingProps),t.child=l,l.return=t;e.sibling!==null;)e=e.sibling,l=l.sibling=al(e,e.pendingProps),l.return=t;l.sibling=null}return t.child}function yr(e,t){return(e.lanes&t)!==0?!0:(e=e.dependencies,!!(e!==null&&wi(e)))}function pv(e,t,l){switch(t.tag){case 3:We(t,t.stateNode.containerInfo),Al(t,Ve,e.memoizedState.cache),la();break;case 27:case 5:sn(t);break;case 4:We(t,t.stateNode.containerInfo);break;case 10:Al(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,Vc(t),null;break;case 13:var n=t.memoizedState;if(n!==null)return n.dehydrated!==null?(zl(t),t.flags|=128,null):(l&t.child.childLanes)!==0?of(e,t,l):(zl(t),e=ul(e,t,l),e!==null?e.sibling:null);zl(t);break;case 19:var i=(e.flags&128)!==0;if(n=(l&t.childLanes)!==0,n||(Ma(e,t,l,!1),n=(l&t.childLanes)!==0),i){if(n)return ff(e,t,l);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),X(Ge,Ge.current),n)break;return null;case 22:return t.lanes=0,af(e,t,l,t.pendingProps);case 24:Al(t,Ve,e.memoizedState.cache)}return ul(e,t,l)}function hf(e,t,l){if(e!==null)if(e.memoizedProps!==t.pendingProps)Ze=!0;else{if(!yr(e,l)&&(t.flags&128)===0)return Ze=!1,pv(e,t,l);Ze=(e.flags&131072)!==0}else Ze=!1,ye&&(t.flags&1048576)!==0&&Vo(t,_n,t.index);switch(t.lanes=0,t.tag){case 16:e:{var n=t.pendingProps;if(e=sa(t.elementType),t.type=e,typeof e=="function")Nc(e)?(n=oa(e,n),t.tag=1,t=rf(null,t,e,n,l)):(t.tag=0,t=fr(null,t,e,n,l));else{if(e!=null){var i=e.$$typeof;if(i===ce){t.tag=11,t=ef(null,t,e,n,l);break e}else if(i===$){t.tag=14,t=tf(null,t,e,n,l);break e}}throw t=_e(e)||e,Error(r(306,t,""))}}return t;case 0:return fr(e,t,t.type,t.pendingProps,l);case 1:return n=t.type,i=oa(n,t.pendingProps),rf(e,t,n,i,l);case 3:e:{if(We(t,t.stateNode.containerInfo),e===null)throw Error(r(387));n=t.pendingProps;var c=t.memoizedState;i=c.element,Lc(e,t),Tn(t,n,null,l);var d=t.memoizedState;if(n=d.cache,Al(t,Ve,n),n!==c.cache&&kc(t,[Ve],l,!0),Rn(),n=d.element,c.isDehydrated)if(c={element:n,isDehydrated:!1,cache:d.cache},t.updateQueue.baseState=c,t.memoizedState=c,t.flags&256){t=uf(e,t,n,l);break e}else if(n!==i){i=wt(Error(r(424)),t),Sn(i),t=uf(e,t,n,l);break e}else for(e=t.stateNode.containerInfo,e.nodeType===9?e=e.body:e=e.nodeName==="HTML"?e.ownerDocument.body:e,Oe=qt(e.firstChild),Ie=t,ye=!0,Nl=null,Ut=!0,l=ad(t,null,n,l),t.child=l;l;)l.flags=l.flags&-3|4096,l=l.sibling;else{if(la(),n===i){t=ul(e,t,l);break e}tt(e,t,n,l)}t=t.child}return t;case 26:return Wi(e,t),e===null?(l=Nh(t.type,null,t.pendingProps,null))?t.memoizedState=l:ye||(l=t.type,e=t.pendingProps,n=ms(me.current).createElement(l),n[Pe]=t,n[st]=e,lt(n,l,e),$e(n),t.stateNode=n):t.memoizedState=Nh(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return sn(t),e===null&&ye&&(n=t.stateNode=_h(t.type,t.pendingProps,me.current),Ie=t,Ut=!0,i=Oe,Ll(t.type)?(Pr=i,Oe=qt(n.firstChild)):Oe=i),tt(e,t,t.pendingProps.children,l),Wi(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&ye&&((i=n=Oe)&&(n=Xv(n,t.type,t.pendingProps,Ut),n!==null?(t.stateNode=n,Ie=t,Oe=qt(n.firstChild),Ut=!1,i=!0):i=!1),i||El(t)),sn(t),i=t.type,c=t.pendingProps,d=e!==null?e.memoizedProps:null,n=c.children,Kr(i,c)?n=null:d!==null&&Kr(i,d)&&(t.flags|=32),t.memoizedState!==null&&(i=Zc(e,t,sv,null,null,l),$n._currentValue=i),Wi(e,t),tt(e,t,n,l),t.child;case 6:return e===null&&ye&&((e=l=Oe)&&(l=Zv(l,t.pendingProps,Ut),l!==null?(t.stateNode=l,Ie=t,Oe=null,e=!0):e=!1),e||El(t)),null;case 13:return of(e,t,l);case 4:return We(t,t.stateNode.containerInfo),n=t.pendingProps,e===null?t.child=ra(t,null,n,l):tt(e,t,n,l),t.child;case 11:return ef(e,t,t.type,t.pendingProps,l);case 7:return tt(e,t,t.pendingProps,l),t.child;case 8:return tt(e,t,t.pendingProps.children,l),t.child;case 12:return tt(e,t,t.pendingProps.children,l),t.child;case 10:return n=t.pendingProps,Al(t,t.type,n.value),tt(e,t,n.children,l),t.child;case 9:return i=t.type._context,n=t.pendingProps.children,na(t),i=et(i),n=n(i),t.flags|=1,tt(e,t,n,l),t.child;case 14:return tf(e,t,t.type,t.pendingProps,l);case 15:return lf(e,t,t.type,t.pendingProps,l);case 19:return ff(e,t,l);case 31:return mv(e,t,l);case 22:return af(e,t,l,t.pendingProps);case 24:return na(t),n=et(Ve),e===null?(i=Dc(),i===null&&(i=Me,c=Oc(),i.pooledCache=c,c.refCount++,c!==null&&(i.pooledCacheLanes|=l),i=c),t.memoizedState={parent:n,cache:i},Hc(t),Al(t,Ve,i)):((e.lanes&l)!==0&&(Lc(e,t),Tn(t,null,null,l),Rn()),i=e.memoizedState,c=t.memoizedState,i.parent!==n?(i={parent:n,cache:n},t.memoizedState=i,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=i),Al(t,Ve,n)):(n=c.cache,Al(t,Ve,n),n!==i.cache&&kc(t,[Ve],l,!0))),tt(e,t,t.pendingProps.children,l),t.child;case 29:throw t.pendingProps}throw Error(r(156,t.tag))}function ol(e){e.flags|=4}function jr(e,t,l,n,i){if((t=(e.mode&32)!==0)&&(t=!1),t){if(e.flags|=16777216,(i&335544128)===i)if(e.stateNode.complete)e.flags|=8192;else if(Bf())e.flags|=8192;else throw ca=Di,qc}else e.flags&=-16777217}function mf(e,t){if(t.type!=="stylesheet"||(t.state.loading&4)!==0)e.flags&=-16777217;else if(e.flags|=16777216,!Th(t))if(Bf())e.flags|=8192;else throw ca=Di,qc}function Ii(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag!==22?Xu():536870912,e.lanes|=t,Qa|=t)}function Un(e,t){if(!ye)switch(e.tailMode){case"hidden":t=e.tail;for(var l=null;t!==null;)t.alternate!==null&&(l=t),t=t.sibling;l===null?e.tail=null:l.sibling=null;break;case"collapsed":l=e.tail;for(var n=null;l!==null;)l.alternate!==null&&(n=l),l=l.sibling;n===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:n.sibling=null}}function Ue(e){var t=e.alternate!==null&&e.alternate.child===e.child,l=0,n=0;if(t)for(var i=e.child;i!==null;)l|=i.lanes|i.childLanes,n|=i.subtreeFlags&65011712,n|=i.flags&65011712,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)l|=i.lanes|i.childLanes,n|=i.subtreeFlags,n|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=n,e.childLanes=l,t}function vv(e,t,l){var n=t.pendingProps;switch(Rc(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Ue(t),null;case 1:return Ue(t),null;case 3:return l=t.stateNode,n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),sl(Ve),Ye(),l.pendingContext&&(l.context=l.pendingContext,l.pendingContext=null),(e===null||e.child===null)&&(za(t)?ol(t):e===null||e.memoizedState.isDehydrated&&(t.flags&256)===0||(t.flags|=1024,zc())),Ue(t),null;case 26:var i=t.type,c=t.memoizedState;return e===null?(ol(t),c!==null?(Ue(t),mf(t,c)):(Ue(t),jr(t,i,null,n,l))):c?c!==e.memoizedState?(ol(t),Ue(t),mf(t,c)):(Ue(t),t.flags&=-16777217):(e=e.memoizedProps,e!==n&&ol(t),Ue(t),jr(t,i,e,n,l)),null;case 27:if(oi(t),l=me.current,i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==n&&ol(t);else{if(!n){if(t.stateNode===null)throw Error(r(166));return Ue(t),null}e=P.current,za(t)?Zo(t):(e=_h(i,n,l),t.stateNode=e,ol(t))}return Ue(t),null;case 5:if(oi(t),i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==n&&ol(t);else{if(!n){if(t.stateNode===null)throw Error(r(166));return Ue(t),null}if(c=P.current,za(t))Zo(t);else{var d=ms(me.current);switch(c){case 1:c=d.createElementNS("http://www.w3.org/2000/svg",i);break;case 2:c=d.createElementNS("http://www.w3.org/1998/Math/MathML",i);break;default:switch(i){case"svg":c=d.createElementNS("http://www.w3.org/2000/svg",i);break;case"math":c=d.createElementNS("http://www.w3.org/1998/Math/MathML",i);break;case"script":c=d.createElement("div"),c.innerHTML="<script><\/script>",c=c.removeChild(c.firstChild);break;case"select":c=typeof n.is=="string"?d.createElement("select",{is:n.is}):d.createElement("select"),n.multiple?c.multiple=!0:n.size&&(c.size=n.size);break;default:c=typeof n.is=="string"?d.createElement(i,{is:n.is}):d.createElement(i)}}c[Pe]=t,c[st]=n;e:for(d=t.child;d!==null;){if(d.tag===5||d.tag===6)c.appendChild(d.stateNode);else if(d.tag!==4&&d.tag!==27&&d.child!==null){d.child.return=d,d=d.child;continue}if(d===t)break e;for(;d.sibling===null;){if(d.return===null||d.return===t)break e;d=d.return}d.sibling.return=d.return,d=d.sibling}t.stateNode=c;e:switch(lt(c,i,n),i){case"button":case"input":case"select":case"textarea":n=!!n.autoFocus;break e;case"img":n=!0;break e;default:n=!1}n&&ol(t)}}return Ue(t),jr(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,l),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==n&&ol(t);else{if(typeof n!="string"&&t.stateNode===null)throw Error(r(166));if(e=me.current,za(t)){if(e=t.stateNode,l=t.memoizedProps,n=null,i=Ie,i!==null)switch(i.tag){case 27:case 5:n=i.memoizedProps}e[Pe]=t,e=!!(e.nodeValue===l||n!==null&&n.suppressHydrationWarning===!0||oh(e.nodeValue,l)),e||El(t,!0)}else e=ms(e).createTextNode(n),e[Pe]=t,t.stateNode=e}return Ue(t),null;case 31:if(l=t.memoizedState,e===null||e.memoizedState!==null){if(n=za(t),l!==null){if(e===null){if(!n)throw Error(r(318));if(e=t.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(r(557));e[Pe]=t}else la(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ue(t),e=!1}else l=zc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=l),e=!0;if(!e)return t.flags&256?(St(t),t):(St(t),null);if((t.flags&128)!==0)throw Error(r(558))}return Ue(t),null;case 13:if(n=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(i=za(t),n!==null&&n.dehydrated!==null){if(e===null){if(!i)throw Error(r(318));if(i=t.memoizedState,i=i!==null?i.dehydrated:null,!i)throw Error(r(317));i[Pe]=t}else la(),(t.flags&128)===0&&(t.memoizedState=null),t.flags|=4;Ue(t),i=!1}else i=zc(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),i=!0;if(!i)return t.flags&256?(St(t),t):(St(t),null)}return St(t),(t.flags&128)!==0?(t.lanes=l,t):(l=n!==null,e=e!==null&&e.memoizedState!==null,l&&(n=t.child,i=null,n.alternate!==null&&n.alternate.memoizedState!==null&&n.alternate.memoizedState.cachePool!==null&&(i=n.alternate.memoizedState.cachePool.pool),c=null,n.memoizedState!==null&&n.memoizedState.cachePool!==null&&(c=n.memoizedState.cachePool.pool),c!==i&&(n.flags|=2048)),l!==e&&l&&(t.child.flags|=8192),Ii(t,t.updateQueue),Ue(t),null);case 4:return Ye(),e===null&&Gr(t.stateNode.containerInfo),Ue(t),null;case 10:return sl(t.type),Ue(t),null;case 19:if(L(Ge),n=t.memoizedState,n===null)return Ue(t),null;if(i=(t.flags&128)!==0,c=n.rendering,c===null)if(i)Un(n,!1);else{if(Be!==0||e!==null&&(e.flags&128)!==0)for(e=t.child;e!==null;){if(c=Bi(e),c!==null){for(t.flags|=128,Un(n,!1),e=c.updateQueue,t.updateQueue=e,Ii(t,e),t.subtreeFlags=0,e=l,l=t.child;l!==null;)Yo(l,e),l=l.sibling;return X(Ge,Ge.current&1|2),ye&&nl(t,n.treeForkCount),t.child}e=e.sibling}n.tail!==null&&vt()>ns&&(t.flags|=128,i=!0,Un(n,!1),t.lanes=4194304)}else{if(!i)if(e=Bi(c),e!==null){if(t.flags|=128,i=!0,e=e.updateQueue,t.updateQueue=e,Ii(t,e),Un(n,!0),n.tail===null&&n.tailMode==="hidden"&&!c.alternate&&!ye)return Ue(t),null}else 2*vt()-n.renderingStartTime>ns&&l!==536870912&&(t.flags|=128,i=!0,Un(n,!1),t.lanes=4194304);n.isBackwards?(c.sibling=t.child,t.child=c):(e=n.last,e!==null?e.sibling=c:t.child=c,n.last=c)}return n.tail!==null?(e=n.tail,n.rendering=e,n.tail=e.sibling,n.renderingStartTime=vt(),e.sibling=null,l=Ge.current,X(Ge,i?l&1|2:l&1),ye&&nl(t,n.treeForkCount),e):(Ue(t),null);case 22:case 23:return St(t),Qc(),n=t.memoizedState!==null,e!==null?e.memoizedState!==null!==n&&(t.flags|=8192):n&&(t.flags|=8192),n?(l&536870912)!==0&&(t.flags&128)===0&&(Ue(t),t.subtreeFlags&6&&(t.flags|=8192)):Ue(t),l=t.updateQueue,l!==null&&Ii(t,l.retryQueue),l=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(l=e.memoizedState.cachePool.pool),n=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(n=t.memoizedState.cachePool.pool),n!==l&&(t.flags|=2048),e!==null&&L(ia),null;case 24:return l=null,e!==null&&(l=e.memoizedState.cache),t.memoizedState.cache!==l&&(t.flags|=2048),sl(Ve),Ue(t),null;case 25:return null;case 30:return null}throw Error(r(156,t.tag))}function xv(e,t){switch(Rc(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return sl(Ve),Ye(),e=t.flags,(e&65536)!==0&&(e&128)===0?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return oi(t),null;case 31:if(t.memoizedState!==null){if(St(t),t.alternate===null)throw Error(r(340));la()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(St(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(r(340));la()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return L(Ge),null;case 4:return Ye(),null;case 10:return sl(t.type),null;case 22:case 23:return St(t),Qc(),e!==null&&L(ia),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return sl(Ve),null;case 25:return null;default:return null}}function pf(e,t){switch(Rc(t),t.tag){case 3:sl(Ve),Ye();break;case 26:case 27:case 5:oi(t);break;case 4:Ye();break;case 31:t.memoizedState!==null&&St(t);break;case 13:St(t);break;case 19:L(Ge);break;case 10:sl(t.type);break;case 22:case 23:St(t),Qc(),e!==null&&L(ia);break;case 24:sl(Ve)}}function Dn(e,t){try{var l=t.updateQueue,n=l!==null?l.lastEffect:null;if(n!==null){var i=n.next;l=i;do{if((l.tag&e)===e){n=void 0;var c=l.create,d=l.inst;n=c(),d.destroy=n}l=l.next}while(l!==i)}}catch(m){Ae(t,t.return,m)}}function wl(e,t,l){try{var n=t.updateQueue,i=n!==null?n.lastEffect:null;if(i!==null){var c=i.next;n=c;do{if((n.tag&e)===e){var d=n.inst,m=d.destroy;if(m!==void 0){d.destroy=void 0,i=t;var _=l,C=m;try{C()}catch(U){Ae(i,_,U)}}}n=n.next}while(n!==c)}}catch(U){Ae(t,t.return,U)}}function vf(e){var t=e.updateQueue;if(t!==null){var l=e.stateNode;try{id(t,l)}catch(n){Ae(e,e.return,n)}}}function xf(e,t,l){l.props=oa(e.type,e.memoizedProps),l.state=e.memoizedState;try{l.componentWillUnmount()}catch(n){Ae(e,t,n)}}function qn(e,t){try{var l=e.ref;if(l!==null){switch(e.tag){case 26:case 27:case 5:var n=e.stateNode;break;case 30:n=e.stateNode;break;default:n=e.stateNode}typeof l=="function"?e.refCleanup=l(n):l.current=n}}catch(i){Ae(e,t,i)}}function Ft(e,t){var l=e.ref,n=e.refCleanup;if(l!==null)if(typeof n=="function")try{n()}catch(i){Ae(e,t,i)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof l=="function")try{l(null)}catch(i){Ae(e,t,i)}else l.current=null}function gf(e){var t=e.type,l=e.memoizedProps,n=e.stateNode;try{e:switch(t){case"button":case"input":case"select":case"textarea":l.autoFocus&&n.focus();break e;case"img":l.src?n.src=l.src:l.srcSet&&(n.srcset=l.srcSet)}}catch(i){Ae(e,e.return,i)}}function _r(e,t,l){try{var n=e.stateNode;Lv(n,e.type,l,t),n[st]=t}catch(i){Ae(e,e.return,i)}}function yf(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&Ll(e.type)||e.tag===4}function Sr(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||yf(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&Ll(e.type)||e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function br(e,t,l){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?(l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l).insertBefore(e,t):(t=l.nodeType===9?l.body:l.nodeName==="HTML"?l.ownerDocument.body:l,t.appendChild(e),l=l._reactRootContainer,l!=null||t.onclick!==null||(t.onclick=tl));else if(n!==4&&(n===27&&Ll(e.type)&&(l=e.stateNode,t=null),e=e.child,e!==null))for(br(e,t,l),e=e.sibling;e!==null;)br(e,t,l),e=e.sibling}function es(e,t,l){var n=e.tag;if(n===5||n===6)e=e.stateNode,t?l.insertBefore(e,t):l.appendChild(e);else if(n!==4&&(n===27&&Ll(e.type)&&(l=e.stateNode),e=e.child,e!==null))for(es(e,t,l),e=e.sibling;e!==null;)es(e,t,l),e=e.sibling}function jf(e){var t=e.stateNode,l=e.memoizedProps;try{for(var n=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);lt(t,n,l),t[Pe]=e,t[st]=l}catch(c){Ae(e,e.return,c)}}var dl=!1,Ke=!1,Nr=!1,_f=typeof WeakSet=="function"?WeakSet:Set,Fe=null;function gv(e,t){if(e=e.containerInfo,Xr=_s,e=wo(e),xc(e)){if("selectionStart"in e)var l={start:e.selectionStart,end:e.selectionEnd};else e:{l=(l=e.ownerDocument)&&l.defaultView||window;var n=l.getSelection&&l.getSelection();if(n&&n.rangeCount!==0){l=n.anchorNode;var i=n.anchorOffset,c=n.focusNode;n=n.focusOffset;try{l.nodeType,c.nodeType}catch{l=null;break e}var d=0,m=-1,_=-1,C=0,U=0,H=e,T=null;t:for(;;){for(var M;H!==l||i!==0&&H.nodeType!==3||(m=d+i),H!==c||n!==0&&H.nodeType!==3||(_=d+n),H.nodeType===3&&(d+=H.nodeValue.length),(M=H.firstChild)!==null;)T=H,H=M;for(;;){if(H===e)break t;if(T===l&&++C===i&&(m=d),T===c&&++U===n&&(_=d),(M=H.nextSibling)!==null)break;H=T,T=H.parentNode}H=M}l=m===-1||_===-1?null:{start:m,end:_}}else l=null}l=l||{start:0,end:0}}else l=null;for(Zr={focusedElem:e,selectionRange:l},_s=!1,Fe=t;Fe!==null;)if(t=Fe,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,Fe=e;else for(;Fe!==null;){switch(t=Fe,c=t.alternate,e=t.flags,t.tag){case 0:if((e&4)!==0&&(e=t.updateQueue,e=e!==null?e.events:null,e!==null))for(l=0;l<e.length;l++)i=e[l],i.ref.impl=i.nextImpl;break;case 11:case 15:break;case 1:if((e&1024)!==0&&c!==null){e=void 0,l=t,i=c.memoizedProps,c=c.memoizedState,n=l.stateNode;try{var W=oa(l.type,i);e=n.getSnapshotBeforeUpdate(W,c),n.__reactInternalSnapshotBeforeUpdate=e}catch(se){Ae(l,l.return,se)}}break;case 3:if((e&1024)!==0){if(e=t.stateNode.containerInfo,l=e.nodeType,l===9)$r(e);else if(l===1)switch(e.nodeName){case"HEAD":case"HTML":case"BODY":$r(e);break;default:e.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((e&1024)!==0)throw Error(r(163))}if(e=t.sibling,e!==null){e.return=t.return,Fe=e;break}Fe=t.return}}function Sf(e,t,l){var n=l.flags;switch(l.tag){case 0:case 11:case 15:hl(e,l),n&4&&Dn(5,l);break;case 1:if(hl(e,l),n&4)if(e=l.stateNode,t===null)try{e.componentDidMount()}catch(d){Ae(l,l.return,d)}else{var i=oa(l.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(d){Ae(l,l.return,d)}}n&64&&vf(l),n&512&&qn(l,l.return);break;case 3:if(hl(e,l),n&64&&(e=l.updateQueue,e!==null)){if(t=null,l.child!==null)switch(l.child.tag){case 27:case 5:t=l.child.stateNode;break;case 1:t=l.child.stateNode}try{id(e,t)}catch(d){Ae(l,l.return,d)}}break;case 27:t===null&&n&4&&jf(l);case 26:case 5:hl(e,l),t===null&&n&4&&gf(l),n&512&&qn(l,l.return);break;case 12:hl(e,l);break;case 31:hl(e,l),n&4&&Ef(e,l);break;case 13:hl(e,l),n&4&&Af(e,l),n&64&&(e=l.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(l=Cv.bind(null,l),Kv(e,l))));break;case 22:if(n=l.memoizedState!==null||dl,!n){t=t!==null&&t.memoizedState!==null||Ke,i=dl;var c=Ke;dl=n,(Ke=t)&&!c?ml(e,l,(l.subtreeFlags&8772)!==0):hl(e,l),dl=i,Ke=c}break;case 30:break;default:hl(e,l)}}function bf(e){var t=e.alternate;t!==null&&(e.alternate=null,bf(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&ec(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var De=null,rt=!1;function fl(e,t,l){for(l=l.child;l!==null;)Nf(e,t,l),l=l.sibling}function Nf(e,t,l){if(xt&&typeof xt.onCommitFiberUnmount=="function")try{xt.onCommitFiberUnmount(cn,l)}catch{}switch(l.tag){case 26:Ke||Ft(l,t),fl(e,t,l),l.memoizedState?l.memoizedState.count--:l.stateNode&&(l=l.stateNode,l.parentNode.removeChild(l));break;case 27:Ke||Ft(l,t);var n=De,i=rt;Ll(l.type)&&(De=l.stateNode,rt=!1),fl(e,t,l),Zn(l.stateNode),De=n,rt=i;break;case 5:Ke||Ft(l,t);case 6:if(n=De,i=rt,De=null,fl(e,t,l),De=n,rt=i,De!==null)if(rt)try{(De.nodeType===9?De.body:De.nodeName==="HTML"?De.ownerDocument.body:De).removeChild(l.stateNode)}catch(c){Ae(l,t,c)}else try{De.removeChild(l.stateNode)}catch(c){Ae(l,t,c)}break;case 18:De!==null&&(rt?(e=De,vh(e.nodeType===9?e.body:e.nodeName==="HTML"?e.ownerDocument.body:e,l.stateNode),Wa(e)):vh(De,l.stateNode));break;case 4:n=De,i=rt,De=l.stateNode.containerInfo,rt=!0,fl(e,t,l),De=n,rt=i;break;case 0:case 11:case 14:case 15:wl(2,l,t),Ke||wl(4,l,t),fl(e,t,l);break;case 1:Ke||(Ft(l,t),n=l.stateNode,typeof n.componentWillUnmount=="function"&&xf(l,t,n)),fl(e,t,l);break;case 21:fl(e,t,l);break;case 22:Ke=(n=Ke)||l.memoizedState!==null,fl(e,t,l),Ke=n;break;default:fl(e,t,l)}}function Ef(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Wa(e)}catch(l){Ae(t,t.return,l)}}}function Af(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Wa(e)}catch(l){Ae(t,t.return,l)}}function yv(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new _f),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new _f),t;default:throw Error(r(435,e.tag))}}function ts(e,t){var l=yv(e);t.forEach(function(n){if(!l.has(n)){l.add(n);var i=Rv.bind(null,e,n);n.then(i,i)}})}function ut(e,t){var l=t.deletions;if(l!==null)for(var n=0;n<l.length;n++){var i=l[n],c=e,d=t,m=d;e:for(;m!==null;){switch(m.tag){case 27:if(Ll(m.type)){De=m.stateNode,rt=!1;break e}break;case 5:De=m.stateNode,rt=!1;break e;case 3:case 4:De=m.stateNode.containerInfo,rt=!0;break e}m=m.return}if(De===null)throw Error(r(160));Nf(c,d,i),De=null,rt=!1,c=i.alternate,c!==null&&(c.return=null),i.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)Cf(t,e),t=t.sibling}var Vt=null;function Cf(e,t){var l=e.alternate,n=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:ut(t,e),ot(e),n&4&&(wl(3,e,e.return),Dn(3,e),wl(5,e,e.return));break;case 1:ut(t,e),ot(e),n&512&&(Ke||l===null||Ft(l,l.return)),n&64&&dl&&(e=e.updateQueue,e!==null&&(n=e.callbacks,n!==null&&(l=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=l===null?n:l.concat(n))));break;case 26:var i=Vt;if(ut(t,e),ot(e),n&512&&(Ke||l===null||Ft(l,l.return)),n&4){var c=l!==null?l.memoizedState:null;if(n=e.memoizedState,l===null)if(n===null)if(e.stateNode===null){e:{n=e.type,l=e.memoizedProps,i=i.ownerDocument||i;t:switch(n){case"title":c=i.getElementsByTagName("title")[0],(!c||c[on]||c[Pe]||c.namespaceURI==="http://www.w3.org/2000/svg"||c.hasAttribute("itemprop"))&&(c=i.createElement(n),i.head.insertBefore(c,i.querySelector("head > title"))),lt(c,n,l),c[Pe]=e,$e(c),n=c;break e;case"link":var d=Ch("link","href",i).get(n+(l.href||""));if(d){for(var m=0;m<d.length;m++)if(c=d[m],c.getAttribute("href")===(l.href==null||l.href===""?null:l.href)&&c.getAttribute("rel")===(l.rel==null?null:l.rel)&&c.getAttribute("title")===(l.title==null?null:l.title)&&c.getAttribute("crossorigin")===(l.crossOrigin==null?null:l.crossOrigin)){d.splice(m,1);break t}}c=i.createElement(n),lt(c,n,l),i.head.appendChild(c);break;case"meta":if(d=Ch("meta","content",i).get(n+(l.content||""))){for(m=0;m<d.length;m++)if(c=d[m],c.getAttribute("content")===(l.content==null?null:""+l.content)&&c.getAttribute("name")===(l.name==null?null:l.name)&&c.getAttribute("property")===(l.property==null?null:l.property)&&c.getAttribute("http-equiv")===(l.httpEquiv==null?null:l.httpEquiv)&&c.getAttribute("charset")===(l.charSet==null?null:l.charSet)){d.splice(m,1);break t}}c=i.createElement(n),lt(c,n,l),i.head.appendChild(c);break;default:throw Error(r(468,n))}c[Pe]=e,$e(c),n=c}e.stateNode=n}else Rh(i,e.type,e.stateNode);else e.stateNode=Ah(i,n,e.memoizedProps);else c!==n?(c===null?l.stateNode!==null&&(l=l.stateNode,l.parentNode.removeChild(l)):c.count--,n===null?Rh(i,e.type,e.stateNode):Ah(i,n,e.memoizedProps)):n===null&&e.stateNode!==null&&_r(e,e.memoizedProps,l.memoizedProps)}break;case 27:ut(t,e),ot(e),n&512&&(Ke||l===null||Ft(l,l.return)),l!==null&&n&4&&_r(e,e.memoizedProps,l.memoizedProps);break;case 5:if(ut(t,e),ot(e),n&512&&(Ke||l===null||Ft(l,l.return)),e.flags&32){i=e.stateNode;try{ja(i,"")}catch(W){Ae(e,e.return,W)}}n&4&&e.stateNode!=null&&(i=e.memoizedProps,_r(e,i,l!==null?l.memoizedProps:i)),n&1024&&(Nr=!0);break;case 6:if(ut(t,e),ot(e),n&4){if(e.stateNode===null)throw Error(r(162));n=e.memoizedProps,l=e.stateNode;try{l.nodeValue=n}catch(W){Ae(e,e.return,W)}}break;case 3:if(xs=null,i=Vt,Vt=ps(t.containerInfo),ut(t,e),Vt=i,ot(e),n&4&&l!==null&&l.memoizedState.isDehydrated)try{Wa(t.containerInfo)}catch(W){Ae(e,e.return,W)}Nr&&(Nr=!1,Rf(e));break;case 4:n=Vt,Vt=ps(e.stateNode.containerInfo),ut(t,e),ot(e),Vt=n;break;case 12:ut(t,e),ot(e);break;case 31:ut(t,e),ot(e),n&4&&(n=e.updateQueue,n!==null&&(e.updateQueue=null,ts(e,n)));break;case 13:ut(t,e),ot(e),e.child.flags&8192&&e.memoizedState!==null!=(l!==null&&l.memoizedState!==null)&&(as=vt()),n&4&&(n=e.updateQueue,n!==null&&(e.updateQueue=null,ts(e,n)));break;case 22:i=e.memoizedState!==null;var _=l!==null&&l.memoizedState!==null,C=dl,U=Ke;if(dl=C||i,Ke=U||_,ut(t,e),Ke=U,dl=C,ot(e),n&8192)e:for(t=e.stateNode,t._visibility=i?t._visibility&-2:t._visibility|1,i&&(l===null||_||dl||Ke||da(e)),l=null,t=e;;){if(t.tag===5||t.tag===26){if(l===null){_=l=t;try{if(c=_.stateNode,i)d=c.style,typeof d.setProperty=="function"?d.setProperty("display","none","important"):d.display="none";else{m=_.stateNode;var H=_.memoizedProps.style,T=H!=null&&H.hasOwnProperty("display")?H.display:null;m.style.display=T==null||typeof T=="boolean"?"":(""+T).trim()}}catch(W){Ae(_,_.return,W)}}}else if(t.tag===6){if(l===null){_=t;try{_.stateNode.nodeValue=i?"":_.memoizedProps}catch(W){Ae(_,_.return,W)}}}else if(t.tag===18){if(l===null){_=t;try{var M=_.stateNode;i?xh(M,!0):xh(_.stateNode,!1)}catch(W){Ae(_,_.return,W)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break e;for(;t.sibling===null;){if(t.return===null||t.return===e)break e;l===t&&(l=null),t=t.return}l===t&&(l=null),t.sibling.return=t.return,t=t.sibling}n&4&&(n=e.updateQueue,n!==null&&(l=n.retryQueue,l!==null&&(n.retryQueue=null,ts(e,l))));break;case 19:ut(t,e),ot(e),n&4&&(n=e.updateQueue,n!==null&&(e.updateQueue=null,ts(e,n)));break;case 30:break;case 21:break;default:ut(t,e),ot(e)}}function ot(e){var t=e.flags;if(t&2){try{for(var l,n=e.return;n!==null;){if(yf(n)){l=n;break}n=n.return}if(l==null)throw Error(r(160));switch(l.tag){case 27:var i=l.stateNode,c=Sr(e);es(e,c,i);break;case 5:var d=l.stateNode;l.flags&32&&(ja(d,""),l.flags&=-33);var m=Sr(e);es(e,m,d);break;case 3:case 4:var _=l.stateNode.containerInfo,C=Sr(e);br(e,C,_);break;default:throw Error(r(161))}}catch(U){Ae(e,e.return,U)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Rf(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;Rf(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function hl(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)Sf(e,t.alternate,t),t=t.sibling}function da(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:wl(4,t,t.return),da(t);break;case 1:Ft(t,t.return);var l=t.stateNode;typeof l.componentWillUnmount=="function"&&xf(t,t.return,l),da(t);break;case 27:Zn(t.stateNode);case 26:case 5:Ft(t,t.return),da(t);break;case 22:t.memoizedState===null&&da(t);break;case 30:da(t);break;default:da(t)}e=e.sibling}}function ml(e,t,l){for(l=l&&(t.subtreeFlags&8772)!==0,t=t.child;t!==null;){var n=t.alternate,i=e,c=t,d=c.flags;switch(c.tag){case 0:case 11:case 15:ml(i,c,l),Dn(4,c);break;case 1:if(ml(i,c,l),n=c,i=n.stateNode,typeof i.componentDidMount=="function")try{i.componentDidMount()}catch(C){Ae(n,n.return,C)}if(n=c,i=n.updateQueue,i!==null){var m=n.stateNode;try{var _=i.shared.hiddenCallbacks;if(_!==null)for(i.shared.hiddenCallbacks=null,i=0;i<_.length;i++)nd(_[i],m)}catch(C){Ae(n,n.return,C)}}l&&d&64&&vf(c),qn(c,c.return);break;case 27:jf(c);case 26:case 5:ml(i,c,l),l&&n===null&&d&4&&gf(c),qn(c,c.return);break;case 12:ml(i,c,l);break;case 31:ml(i,c,l),l&&d&4&&Ef(i,c);break;case 13:ml(i,c,l),l&&d&4&&Af(i,c);break;case 22:c.memoizedState===null&&ml(i,c,l),qn(c,c.return);break;case 30:break;default:ml(i,c,l)}t=t.sibling}}function Er(e,t){var l=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(l=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==l&&(e!=null&&e.refCount++,l!=null&&bn(l))}function Ar(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&bn(e))}function Xt(e,t,l,n){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)Tf(e,t,l,n),t=t.sibling}function Tf(e,t,l,n){var i=t.flags;switch(t.tag){case 0:case 11:case 15:Xt(e,t,l,n),i&2048&&Dn(9,t);break;case 1:Xt(e,t,l,n);break;case 3:Xt(e,t,l,n),i&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&bn(e)));break;case 12:if(i&2048){Xt(e,t,l,n),e=t.stateNode;try{var c=t.memoizedProps,d=c.id,m=c.onPostCommit;typeof m=="function"&&m(d,t.alternate===null?"mount":"update",e.passiveEffectDuration,-0)}catch(_){Ae(t,t.return,_)}}else Xt(e,t,l,n);break;case 31:Xt(e,t,l,n);break;case 13:Xt(e,t,l,n);break;case 23:break;case 22:c=t.stateNode,d=t.alternate,t.memoizedState!==null?c._visibility&2?Xt(e,t,l,n):Hn(e,t):c._visibility&2?Xt(e,t,l,n):(c._visibility|=2,Ba(e,t,l,n,(t.subtreeFlags&10256)!==0||!1)),i&2048&&Er(d,t);break;case 24:Xt(e,t,l,n),i&2048&&Ar(t.alternate,t);break;default:Xt(e,t,l,n)}}function Ba(e,t,l,n,i){for(i=i&&((t.subtreeFlags&10256)!==0||!1),t=t.child;t!==null;){var c=e,d=t,m=l,_=n,C=d.flags;switch(d.tag){case 0:case 11:case 15:Ba(c,d,m,_,i),Dn(8,d);break;case 23:break;case 22:var U=d.stateNode;d.memoizedState!==null?U._visibility&2?Ba(c,d,m,_,i):Hn(c,d):(U._visibility|=2,Ba(c,d,m,_,i)),i&&C&2048&&Er(d.alternate,d);break;case 24:Ba(c,d,m,_,i),i&&C&2048&&Ar(d.alternate,d);break;default:Ba(c,d,m,_,i)}t=t.sibling}}function Hn(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var l=e,n=t,i=n.flags;switch(n.tag){case 22:Hn(l,n),i&2048&&Er(n.alternate,n);break;case 24:Hn(l,n),i&2048&&Ar(n.alternate,n);break;default:Hn(l,n)}t=t.sibling}}var Ln=8192;function Ya(e,t,l){if(e.subtreeFlags&Ln)for(e=e.child;e!==null;)zf(e,t,l),e=e.sibling}function zf(e,t,l){switch(e.tag){case 26:Ya(e,t,l),e.flags&Ln&&e.memoizedState!==null&&ix(l,Vt,e.memoizedState,e.memoizedProps);break;case 5:Ya(e,t,l);break;case 3:case 4:var n=Vt;Vt=ps(e.stateNode.containerInfo),Ya(e,t,l),Vt=n;break;case 22:e.memoizedState===null&&(n=e.alternate,n!==null&&n.memoizedState!==null?(n=Ln,Ln=16777216,Ya(e,t,l),Ln=n):Ya(e,t,l));break;default:Ya(e,t,l)}}function Mf(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function Bn(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var l=0;l<t.length;l++){var n=t[l];Fe=n,kf(n,e)}Mf(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)wf(e),e=e.sibling}function wf(e){switch(e.tag){case 0:case 11:case 15:Bn(e),e.flags&2048&&wl(9,e,e.return);break;case 3:Bn(e);break;case 12:Bn(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,ls(e)):Bn(e);break;default:Bn(e)}}function ls(e){var t=e.deletions;if((e.flags&16)!==0){if(t!==null)for(var l=0;l<t.length;l++){var n=t[l];Fe=n,kf(n,e)}Mf(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:wl(8,t,t.return),ls(t);break;case 22:l=t.stateNode,l._visibility&2&&(l._visibility&=-3,ls(t));break;default:ls(t)}e=e.sibling}}function kf(e,t){for(;Fe!==null;){var l=Fe;switch(l.tag){case 0:case 11:case 15:wl(8,l,t);break;case 23:case 22:if(l.memoizedState!==null&&l.memoizedState.cachePool!==null){var n=l.memoizedState.cachePool.pool;n!=null&&n.refCount++}break;case 24:bn(l.memoizedState.cache)}if(n=l.child,n!==null)n.return=l,Fe=n;else e:for(l=e;Fe!==null;){n=Fe;var i=n.sibling,c=n.return;if(bf(n),n===l){Fe=null;break e}if(i!==null){i.return=c,Fe=i;break e}Fe=c}}}var jv={getCacheForType:function(e){var t=et(Ve),l=t.data.get(e);return l===void 0&&(l=e(),t.data.set(e,l)),l},cacheSignal:function(){return et(Ve).controller.signal}},_v=typeof WeakMap=="function"?WeakMap:Map,Ne=0,Me=null,pe=null,xe=0,Ee=0,bt=null,kl=!1,Ga=!1,Cr=!1,pl=0,Be=0,Ol=0,fa=0,Rr=0,Nt=0,Qa=0,Yn=null,dt=null,Tr=!1,as=0,Of=0,ns=1/0,is=null,Ul=null,Je=0,Dl=null,Va=null,vl=0,zr=0,Mr=null,Uf=null,Gn=0,wr=null;function Et(){return(Ne&2)!==0&&xe!==0?xe&-xe:R.T!==null?Hr():$u()}function Df(){if(Nt===0)if((xe&536870912)===0||ye){var e=hi;hi<<=1,(hi&3932160)===0&&(hi=262144),Nt=e}else Nt=536870912;return e=_t.current,e!==null&&(e.flags|=32),Nt}function ft(e,t,l){(e===Me&&(Ee===2||Ee===9)||e.cancelPendingCommit!==null)&&(Xa(e,0),ql(e,xe,Nt,!1)),un(e,l),((Ne&2)===0||e!==Me)&&(e===Me&&((Ne&2)===0&&(fa|=l),Be===4&&ql(e,xe,Nt,!1)),Wt(e))}function qf(e,t,l){if((Ne&6)!==0)throw Error(r(327));var n=!l&&(t&127)===0&&(t&e.expiredLanes)===0||rn(e,t),i=n?Nv(e,t):Or(e,t,!0),c=n;do{if(i===0){Ga&&!n&&ql(e,t,0,!1);break}else{if(l=e.current.alternate,c&&!Sv(l)){i=Or(e,t,!1),c=!1;continue}if(i===2){if(c=t,e.errorRecoveryDisabledLanes&c)var d=0;else d=e.pendingLanes&-536870913,d=d!==0?d:d&536870912?536870912:0;if(d!==0){t=d;e:{var m=e;i=Yn;var _=m.current.memoizedState.isDehydrated;if(_&&(Xa(m,d).flags|=256),d=Or(m,d,!1),d!==2){if(Cr&&!_){m.errorRecoveryDisabledLanes|=c,fa|=c,i=4;break e}c=dt,dt=i,c!==null&&(dt===null?dt=c:dt.push.apply(dt,c))}i=d}if(c=!1,i!==2)continue}}if(i===1){Xa(e,0),ql(e,t,0,!0);break}e:{switch(n=e,c=i,c){case 0:case 1:throw Error(r(345));case 4:if((t&4194048)!==t)break;case 6:ql(n,t,Nt,!kl);break e;case 2:dt=null;break;case 3:case 5:break;default:throw Error(r(329))}if((t&62914560)===t&&(i=as+300-vt(),10<i)){if(ql(n,t,Nt,!kl),pi(n,0,!0)!==0)break e;vl=t,n.timeoutHandle=mh(Hf.bind(null,n,l,dt,is,Tr,t,Nt,fa,Qa,kl,c,"Throttled",-0,0),i);break e}Hf(n,l,dt,is,Tr,t,Nt,fa,Qa,kl,c,null,-0,0)}}break}while(!0);Wt(e)}function Hf(e,t,l,n,i,c,d,m,_,C,U,H,T,M){if(e.timeoutHandle=-1,H=t.subtreeFlags,H&8192||(H&16785408)===16785408){H={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:tl},zf(t,c,H);var W=(c&62914560)===c?as-vt():(c&4194048)===c?Of-vt():0;if(W=sx(H,W),W!==null){vl=c,e.cancelPendingCommit=W(Zf.bind(null,e,t,c,l,n,i,d,m,_,U,H,null,T,M)),ql(e,c,d,!C);return}}Zf(e,t,c,l,n,i,d,m,_)}function Sv(e){for(var t=e;;){var l=t.tag;if((l===0||l===11||l===15)&&t.flags&16384&&(l=t.updateQueue,l!==null&&(l=l.stores,l!==null)))for(var n=0;n<l.length;n++){var i=l[n],c=i.getSnapshot;i=i.value;try{if(!yt(c(),i))return!1}catch{return!1}}if(l=t.child,t.subtreeFlags&16384&&l!==null)l.return=t,t=l;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function ql(e,t,l,n){t&=~Rr,t&=~fa,e.suspendedLanes|=t,e.pingedLanes&=~t,n&&(e.warmLanes|=t),n=e.expirationTimes;for(var i=t;0<i;){var c=31-gt(i),d=1<<c;n[c]=-1,i&=~d}l!==0&&Zu(e,l,t)}function ss(){return(Ne&6)===0?(Qn(0),!1):!0}function kr(){if(pe!==null){if(Ee===0)var e=pe.return;else e=pe,il=aa=null,$c(e),Ua=null,En=0,e=pe;for(;e!==null;)pf(e.alternate,e),e=e.return;pe=null}}function Xa(e,t){var l=e.timeoutHandle;l!==-1&&(e.timeoutHandle=-1,Gv(l)),l=e.cancelPendingCommit,l!==null&&(e.cancelPendingCommit=null,l()),vl=0,kr(),Me=e,pe=l=al(e.current,null),xe=t,Ee=0,bt=null,kl=!1,Ga=rn(e,t),Cr=!1,Qa=Nt=Rr=fa=Ol=Be=0,dt=Yn=null,Tr=!1,(t&8)!==0&&(t|=t&32);var n=e.entangledLanes;if(n!==0)for(e=e.entanglements,n&=t;0<n;){var i=31-gt(n),c=1<<i;t|=e[i],n&=~c}return pl=t,Ci(),l}function Lf(e,t){oe=null,R.H=kn,t===Oa||t===Ui?(t=ed(),Ee=3):t===qc?(t=ed(),Ee=4):Ee=t===dr?8:t!==null&&typeof t=="object"&&typeof t.then=="function"?6:1,bt=t,pe===null&&(Be=1,$i(e,wt(t,e.current)))}function Bf(){var e=_t.current;return e===null?!0:(xe&4194048)===xe?Dt===null:(xe&62914560)===xe||(xe&536870912)!==0?e===Dt:!1}function Yf(){var e=R.H;return R.H=kn,e===null?kn:e}function Gf(){var e=R.A;return R.A=jv,e}function cs(){Be=4,kl||(xe&4194048)!==xe&&_t.current!==null||(Ga=!0),(Ol&134217727)===0&&(fa&134217727)===0||Me===null||ql(Me,xe,Nt,!1)}function Or(e,t,l){var n=Ne;Ne|=2;var i=Yf(),c=Gf();(Me!==e||xe!==t)&&(is=null,Xa(e,t)),t=!1;var d=Be;e:do try{if(Ee!==0&&pe!==null){var m=pe,_=bt;switch(Ee){case 8:kr(),d=6;break e;case 3:case 2:case 9:case 6:_t.current===null&&(t=!0);var C=Ee;if(Ee=0,bt=null,Za(e,m,_,C),l&&Ga){d=0;break e}break;default:C=Ee,Ee=0,bt=null,Za(e,m,_,C)}}bv(),d=Be;break}catch(U){Lf(e,U)}while(!0);return t&&e.shellSuspendCounter++,il=aa=null,Ne=n,R.H=i,R.A=c,pe===null&&(Me=null,xe=0,Ci()),d}function bv(){for(;pe!==null;)Qf(pe)}function Nv(e,t){var l=Ne;Ne|=2;var n=Yf(),i=Gf();Me!==e||xe!==t?(is=null,ns=vt()+500,Xa(e,t)):Ga=rn(e,t);e:do try{if(Ee!==0&&pe!==null){t=pe;var c=bt;t:switch(Ee){case 1:Ee=0,bt=null,Za(e,t,c,1);break;case 2:case 9:if(Po(c)){Ee=0,bt=null,Vf(t);break}t=function(){Ee!==2&&Ee!==9||Me!==e||(Ee=7),Wt(e)},c.then(t,t);break e;case 3:Ee=7;break e;case 4:Ee=5;break e;case 7:Po(c)?(Ee=0,bt=null,Vf(t)):(Ee=0,bt=null,Za(e,t,c,7));break;case 5:var d=null;switch(pe.tag){case 26:d=pe.memoizedState;case 5:case 27:var m=pe;if(d?Th(d):m.stateNode.complete){Ee=0,bt=null;var _=m.sibling;if(_!==null)pe=_;else{var C=m.return;C!==null?(pe=C,rs(C)):pe=null}break t}}Ee=0,bt=null,Za(e,t,c,5);break;case 6:Ee=0,bt=null,Za(e,t,c,6);break;case 8:kr(),Be=6;break e;default:throw Error(r(462))}}Ev();break}catch(U){Lf(e,U)}while(!0);return il=aa=null,R.H=n,R.A=i,Ne=l,pe!==null?0:(Me=null,xe=0,Ci(),Be)}function Ev(){for(;pe!==null&&!Jm();)Qf(pe)}function Qf(e){var t=hf(e.alternate,e,pl);e.memoizedProps=e.pendingProps,t===null?rs(e):pe=t}function Vf(e){var t=e,l=t.alternate;switch(t.tag){case 15:case 0:t=cf(l,t,t.pendingProps,t.type,void 0,xe);break;case 11:t=cf(l,t,t.pendingProps,t.type.render,t.ref,xe);break;case 5:$c(t);default:pf(l,t),t=pe=Yo(t,pl),t=hf(l,t,pl)}e.memoizedProps=e.pendingProps,t===null?rs(e):pe=t}function Za(e,t,l,n){il=aa=null,$c(t),Ua=null,En=0;var i=t.return;try{if(hv(e,i,t,l,xe)){Be=1,$i(e,wt(l,e.current)),pe=null;return}}catch(c){if(i!==null)throw pe=i,c;Be=1,$i(e,wt(l,e.current)),pe=null;return}t.flags&32768?(ye||n===1?e=!0:Ga||(xe&536870912)!==0?e=!1:(kl=e=!0,(n===2||n===9||n===3||n===6)&&(n=_t.current,n!==null&&n.tag===13&&(n.flags|=16384))),Xf(t,e)):rs(t)}function rs(e){var t=e;do{if((t.flags&32768)!==0){Xf(t,kl);return}e=t.return;var l=vv(t.alternate,t,pl);if(l!==null){pe=l;return}if(t=t.sibling,t!==null){pe=t;return}pe=t=e}while(t!==null);Be===0&&(Be=5)}function Xf(e,t){do{var l=xv(e.alternate,e);if(l!==null){l.flags&=32767,pe=l;return}if(l=e.return,l!==null&&(l.flags|=32768,l.subtreeFlags=0,l.deletions=null),!t&&(e=e.sibling,e!==null)){pe=e;return}pe=e=l}while(e!==null);Be=6,pe=null}function Zf(e,t,l,n,i,c,d,m,_){e.cancelPendingCommit=null;do us();while(Je!==0);if((Ne&6)!==0)throw Error(r(327));if(t!==null){if(t===e.current)throw Error(r(177));if(c=t.lanes|t.childLanes,c|=Sc,np(e,l,c,d,m,_),e===Me&&(pe=Me=null,xe=0),Va=t,Dl=e,vl=l,zr=c,Mr=i,Uf=n,(t.subtreeFlags&10256)!==0||(t.flags&10256)!==0?(e.callbackNode=null,e.callbackPriority=0,Tv(di,function(){return Wf(),null})):(e.callbackNode=null,e.callbackPriority=0),n=(t.flags&13878)!==0,(t.subtreeFlags&13878)!==0||n){n=R.T,R.T=null,i=Q.p,Q.p=2,d=Ne,Ne|=4;try{gv(e,t,l)}finally{Ne=d,Q.p=i,R.T=n}}Je=1,Kf(),Jf(),$f()}}function Kf(){if(Je===1){Je=0;var e=Dl,t=Va,l=(t.flags&13878)!==0;if((t.subtreeFlags&13878)!==0||l){l=R.T,R.T=null;var n=Q.p;Q.p=2;var i=Ne;Ne|=4;try{Cf(t,e);var c=Zr,d=wo(e.containerInfo),m=c.focusedElem,_=c.selectionRange;if(d!==m&&m&&m.ownerDocument&&Mo(m.ownerDocument.documentElement,m)){if(_!==null&&xc(m)){var C=_.start,U=_.end;if(U===void 0&&(U=C),"selectionStart"in m)m.selectionStart=C,m.selectionEnd=Math.min(U,m.value.length);else{var H=m.ownerDocument||document,T=H&&H.defaultView||window;if(T.getSelection){var M=T.getSelection(),W=m.textContent.length,se=Math.min(_.start,W),Te=_.end===void 0?se:Math.min(_.end,W);!M.extend&&se>Te&&(d=Te,Te=se,se=d);var E=zo(m,se),b=zo(m,Te);if(E&&b&&(M.rangeCount!==1||M.anchorNode!==E.node||M.anchorOffset!==E.offset||M.focusNode!==b.node||M.focusOffset!==b.offset)){var A=H.createRange();A.setStart(E.node,E.offset),M.removeAllRanges(),se>Te?(M.addRange(A),M.extend(b.node,b.offset)):(A.setEnd(b.node,b.offset),M.addRange(A))}}}}for(H=[],M=m;M=M.parentNode;)M.nodeType===1&&H.push({element:M,left:M.scrollLeft,top:M.scrollTop});for(typeof m.focus=="function"&&m.focus(),m=0;m<H.length;m++){var q=H[m];q.element.scrollLeft=q.left,q.element.scrollTop=q.top}}_s=!!Xr,Zr=Xr=null}finally{Ne=i,Q.p=n,R.T=l}}e.current=t,Je=2}}function Jf(){if(Je===2){Je=0;var e=Dl,t=Va,l=(t.flags&8772)!==0;if((t.subtreeFlags&8772)!==0||l){l=R.T,R.T=null;var n=Q.p;Q.p=2;var i=Ne;Ne|=4;try{Sf(e,t.alternate,t)}finally{Ne=i,Q.p=n,R.T=l}}Je=3}}function $f(){if(Je===4||Je===3){Je=0,$m();var e=Dl,t=Va,l=vl,n=Uf;(t.subtreeFlags&10256)!==0||(t.flags&10256)!==0?Je=5:(Je=0,Va=Dl=null,Ff(e,e.pendingLanes));var i=e.pendingLanes;if(i===0&&(Ul=null),Ps(l),t=t.stateNode,xt&&typeof xt.onCommitFiberRoot=="function")try{xt.onCommitFiberRoot(cn,t,void 0,(t.current.flags&128)===128)}catch{}if(n!==null){t=R.T,i=Q.p,Q.p=2,R.T=null;try{for(var c=e.onRecoverableError,d=0;d<n.length;d++){var m=n[d];c(m.value,{componentStack:m.stack})}}finally{R.T=t,Q.p=i}}(vl&3)!==0&&us(),Wt(e),i=e.pendingLanes,(l&261930)!==0&&(i&42)!==0?e===wr?Gn++:(Gn=0,wr=e):Gn=0,Qn(0)}}function Ff(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,bn(t)))}function us(){return Kf(),Jf(),$f(),Wf()}function Wf(){if(Je!==5)return!1;var e=Dl,t=zr;zr=0;var l=Ps(vl),n=R.T,i=Q.p;try{Q.p=32>l?32:l,R.T=null,l=Mr,Mr=null;var c=Dl,d=vl;if(Je=0,Va=Dl=null,vl=0,(Ne&6)!==0)throw Error(r(331));var m=Ne;if(Ne|=4,wf(c.current),Tf(c,c.current,d,l),Ne=m,Qn(0,!1),xt&&typeof xt.onPostCommitFiberRoot=="function")try{xt.onPostCommitFiberRoot(cn,c)}catch{}return!0}finally{Q.p=i,R.T=n,Ff(e,t)}}function Pf(e,t,l){t=wt(l,t),t=or(e.stateNode,t,2),e=Tl(e,t,2),e!==null&&(un(e,2),Wt(e))}function Ae(e,t,l){if(e.tag===3)Pf(e,e,l);else for(;t!==null;){if(t.tag===3){Pf(t,e,l);break}else if(t.tag===1){var n=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof n.componentDidCatch=="function"&&(Ul===null||!Ul.has(n))){e=wt(l,e),l=Pd(2),n=Tl(t,l,2),n!==null&&(Id(l,n,t,e),un(n,2),Wt(n));break}}t=t.return}}function Ur(e,t,l){var n=e.pingCache;if(n===null){n=e.pingCache=new _v;var i=new Set;n.set(t,i)}else i=n.get(t),i===void 0&&(i=new Set,n.set(t,i));i.has(l)||(Cr=!0,i.add(l),e=Av.bind(null,e,t,l),t.then(e,e))}function Av(e,t,l){var n=e.pingCache;n!==null&&n.delete(t),e.pingedLanes|=e.suspendedLanes&l,e.warmLanes&=~l,Me===e&&(xe&l)===l&&(Be===4||Be===3&&(xe&62914560)===xe&&300>vt()-as?(Ne&2)===0&&Xa(e,0):Rr|=l,Qa===xe&&(Qa=0)),Wt(e)}function If(e,t){t===0&&(t=Xu()),e=ea(e,t),e!==null&&(un(e,t),Wt(e))}function Cv(e){var t=e.memoizedState,l=0;t!==null&&(l=t.retryLane),If(e,l)}function Rv(e,t){var l=0;switch(e.tag){case 31:case 13:var n=e.stateNode,i=e.memoizedState;i!==null&&(l=i.retryLane);break;case 19:n=e.stateNode;break;case 22:n=e.stateNode._retryCache;break;default:throw Error(r(314))}n!==null&&n.delete(t),If(e,l)}function Tv(e,t){return Js(e,t)}var os=null,Ka=null,Dr=!1,ds=!1,qr=!1,Hl=0;function Wt(e){e!==Ka&&e.next===null&&(Ka===null?os=Ka=e:Ka=Ka.next=e),ds=!0,Dr||(Dr=!0,Mv())}function Qn(e,t){if(!qr&&ds){qr=!0;do for(var l=!1,n=os;n!==null;){if(e!==0){var i=n.pendingLanes;if(i===0)var c=0;else{var d=n.suspendedLanes,m=n.pingedLanes;c=(1<<31-gt(42|e)+1)-1,c&=i&~(d&~m),c=c&201326741?c&201326741|1:c?c|2:0}c!==0&&(l=!0,ah(n,c))}else c=xe,c=pi(n,n===Me?c:0,n.cancelPendingCommit!==null||n.timeoutHandle!==-1),(c&3)===0||rn(n,c)||(l=!0,ah(n,c));n=n.next}while(l);qr=!1}}function zv(){eh()}function eh(){ds=Dr=!1;var e=0;Hl!==0&&Yv()&&(e=Hl);for(var t=vt(),l=null,n=os;n!==null;){var i=n.next,c=th(n,t);c===0?(n.next=null,l===null?os=i:l.next=i,i===null&&(Ka=l)):(l=n,(e!==0||(c&3)!==0)&&(ds=!0)),n=i}Je!==0&&Je!==5||Qn(e),Hl!==0&&(Hl=0)}function th(e,t){for(var l=e.suspendedLanes,n=e.pingedLanes,i=e.expirationTimes,c=e.pendingLanes&-62914561;0<c;){var d=31-gt(c),m=1<<d,_=i[d];_===-1?((m&l)===0||(m&n)!==0)&&(i[d]=ap(m,t)):_<=t&&(e.expiredLanes|=m),c&=~m}if(t=Me,l=xe,l=pi(e,e===t?l:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),n=e.callbackNode,l===0||e===t&&(Ee===2||Ee===9)||e.cancelPendingCommit!==null)return n!==null&&n!==null&&$s(n),e.callbackNode=null,e.callbackPriority=0;if((l&3)===0||rn(e,l)){if(t=l&-l,t===e.callbackPriority)return t;switch(n!==null&&$s(n),Ps(l)){case 2:case 8:l=Qu;break;case 32:l=di;break;case 268435456:l=Vu;break;default:l=di}return n=lh.bind(null,e),l=Js(l,n),e.callbackPriority=t,e.callbackNode=l,t}return n!==null&&n!==null&&$s(n),e.callbackPriority=2,e.callbackNode=null,2}function lh(e,t){if(Je!==0&&Je!==5)return e.callbackNode=null,e.callbackPriority=0,null;var l=e.callbackNode;if(us()&&e.callbackNode!==l)return null;var n=xe;return n=pi(e,e===Me?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),n===0?null:(qf(e,n,t),th(e,vt()),e.callbackNode!=null&&e.callbackNode===l?lh.bind(null,e):null)}function ah(e,t){if(us())return null;qf(e,t,!0)}function Mv(){Qv(function(){(Ne&6)!==0?Js(Gu,zv):eh()})}function Hr(){if(Hl===0){var e=wa;e===0&&(e=fi,fi<<=1,(fi&261888)===0&&(fi=256)),Hl=e}return Hl}function nh(e){return e==null||typeof e=="symbol"||typeof e=="boolean"?null:typeof e=="function"?e:yi(""+e)}function ih(e,t){var l=t.ownerDocument.createElement("input");return l.name=t.name,l.value=t.value,e.id&&l.setAttribute("form",e.id),t.parentNode.insertBefore(l,t),e=new FormData(e),l.parentNode.removeChild(l),e}function wv(e,t,l,n,i){if(t==="submit"&&l&&l.stateNode===i){var c=nh((i[st]||null).action),d=n.submitter;d&&(t=(t=d[st]||null)?nh(t.formAction):d.getAttribute("formAction"),t!==null&&(c=t,d=null));var m=new bi("action","action",null,n,i);e.push({event:m,listeners:[{instance:null,listener:function(){if(n.defaultPrevented){if(Hl!==0){var _=d?ih(i,d):new FormData(i);nr(l,{pending:!0,data:_,method:i.method,action:c},null,_)}}else typeof c=="function"&&(m.preventDefault(),_=d?ih(i,d):new FormData(i),nr(l,{pending:!0,data:_,method:i.method,action:c},c,_))},currentTarget:i}]})}}for(var Lr=0;Lr<_c.length;Lr++){var Br=_c[Lr],kv=Br.toLowerCase(),Ov=Br[0].toUpperCase()+Br.slice(1);Qt(kv,"on"+Ov)}Qt(Uo,"onAnimationEnd"),Qt(Do,"onAnimationIteration"),Qt(qo,"onAnimationStart"),Qt("dblclick","onDoubleClick"),Qt("focusin","onFocus"),Qt("focusout","onBlur"),Qt(Fp,"onTransitionRun"),Qt(Wp,"onTransitionStart"),Qt(Pp,"onTransitionCancel"),Qt(Ho,"onTransitionEnd"),ga("onMouseEnter",["mouseout","mouseover"]),ga("onMouseLeave",["mouseout","mouseover"]),ga("onPointerEnter",["pointerout","pointerover"]),ga("onPointerLeave",["pointerout","pointerover"]),Fl("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),Fl("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),Fl("onBeforeInput",["compositionend","keypress","textInput","paste"]),Fl("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),Fl("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),Fl("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var Vn="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Uv=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(Vn));function sh(e,t){t=(t&4)!==0;for(var l=0;l<e.length;l++){var n=e[l],i=n.event;n=n.listeners;e:{var c=void 0;if(t)for(var d=n.length-1;0<=d;d--){var m=n[d],_=m.instance,C=m.currentTarget;if(m=m.listener,_!==c&&i.isPropagationStopped())break e;c=m,i.currentTarget=C;try{c(i)}catch(U){Ai(U)}i.currentTarget=null,c=_}else for(d=0;d<n.length;d++){if(m=n[d],_=m.instance,C=m.currentTarget,m=m.listener,_!==c&&i.isPropagationStopped())break e;c=m,i.currentTarget=C;try{c(i)}catch(U){Ai(U)}i.currentTarget=null,c=_}}}}function ve(e,t){var l=t[Is];l===void 0&&(l=t[Is]=new Set);var n=e+"__bubble";l.has(n)||(ch(t,e,2,!1),l.add(n))}function Yr(e,t,l){var n=0;t&&(n|=4),ch(l,e,n,t)}var fs="_reactListening"+Math.random().toString(36).slice(2);function Gr(e){if(!e[fs]){e[fs]=!0,Pu.forEach(function(l){l!=="selectionchange"&&(Uv.has(l)||Yr(l,!1,e),Yr(l,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[fs]||(t[fs]=!0,Yr("selectionchange",!1,t))}}function ch(e,t,l,n){switch(Dh(t)){case 2:var i=ux;break;case 8:i=ox;break;default:i=au}l=i.bind(null,t,l,e),i=void 0,!rc||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(i=!0),n?i!==void 0?e.addEventListener(t,l,{capture:!0,passive:i}):e.addEventListener(t,l,!0):i!==void 0?e.addEventListener(t,l,{passive:i}):e.addEventListener(t,l,!1)}function Qr(e,t,l,n,i){var c=n;if((t&1)===0&&(t&2)===0&&n!==null)e:for(;;){if(n===null)return;var d=n.tag;if(d===3||d===4){var m=n.stateNode.containerInfo;if(m===i)break;if(d===4)for(d=n.return;d!==null;){var _=d.tag;if((_===3||_===4)&&d.stateNode.containerInfo===i)return;d=d.return}for(;m!==null;){if(d=pa(m),d===null)return;if(_=d.tag,_===5||_===6||_===26||_===27){n=c=d;continue e}m=m.parentNode}}n=n.return}oo(function(){var C=c,U=sc(l),H=[];e:{var T=Lo.get(e);if(T!==void 0){var M=bi,W=e;switch(e){case"keypress":if(_i(l)===0)break e;case"keydown":case"keyup":M=Rp;break;case"focusin":W="focus",M=fc;break;case"focusout":W="blur",M=fc;break;case"beforeblur":case"afterblur":M=fc;break;case"click":if(l.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":M=mo;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":M=vp;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":M=Mp;break;case Uo:case Do:case qo:M=yp;break;case Ho:M=kp;break;case"scroll":case"scrollend":M=mp;break;case"wheel":M=Up;break;case"copy":case"cut":case"paste":M=_p;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":M=vo;break;case"toggle":case"beforetoggle":M=qp}var se=(t&4)!==0,Te=!se&&(e==="scroll"||e==="scrollend"),E=se?T!==null?T+"Capture":null:T;se=[];for(var b=C,A;b!==null;){var q=b;if(A=q.stateNode,q=q.tag,q!==5&&q!==26&&q!==27||A===null||E===null||(q=fn(b,E),q!=null&&se.push(Xn(b,q,A))),Te)break;b=b.return}0<se.length&&(T=new M(T,W,null,l,U),H.push({event:T,listeners:se}))}}if((t&7)===0){e:{if(T=e==="mouseover"||e==="pointerover",M=e==="mouseout"||e==="pointerout",T&&l!==ic&&(W=l.relatedTarget||l.fromElement)&&(pa(W)||W[ma]))break e;if((M||T)&&(T=U.window===U?U:(T=U.ownerDocument)?T.defaultView||T.parentWindow:window,M?(W=l.relatedTarget||l.toElement,M=C,W=W?pa(W):null,W!==null&&(Te=h(W),se=W.tag,W!==Te||se!==5&&se!==27&&se!==6)&&(W=null)):(M=null,W=C),M!==W)){if(se=mo,q="onMouseLeave",E="onMouseEnter",b="mouse",(e==="pointerout"||e==="pointerover")&&(se=vo,q="onPointerLeave",E="onPointerEnter",b="pointer"),Te=M==null?T:dn(M),A=W==null?T:dn(W),T=new se(q,b+"leave",M,l,U),T.target=Te,T.relatedTarget=A,q=null,pa(U)===C&&(se=new se(E,b+"enter",W,l,U),se.target=A,se.relatedTarget=Te,q=se),Te=q,M&&W)t:{for(se=Dv,E=M,b=W,A=0,q=E;q;q=se(q))A++;q=0;for(var le=b;le;le=se(le))q++;for(;0<A-q;)E=se(E),A--;for(;0<q-A;)b=se(b),q--;for(;A--;){if(E===b||b!==null&&E===b.alternate){se=E;break t}E=se(E),b=se(b)}se=null}else se=null;M!==null&&rh(H,T,M,se,!1),W!==null&&Te!==null&&rh(H,Te,W,se,!0)}}e:{if(T=C?dn(C):window,M=T.nodeName&&T.nodeName.toLowerCase(),M==="select"||M==="input"&&T.type==="file")var Se=No;else if(So(T))if(Eo)Se=Kp;else{Se=Xp;var ee=Vp}else M=T.nodeName,!M||M.toLowerCase()!=="input"||T.type!=="checkbox"&&T.type!=="radio"?C&&nc(C.elementType)&&(Se=No):Se=Zp;if(Se&&(Se=Se(e,C))){bo(H,Se,l,U);break e}ee&&ee(e,T,C),e==="focusout"&&C&&T.type==="number"&&C.memoizedProps.value!=null&&ac(T,"number",T.value)}switch(ee=C?dn(C):window,e){case"focusin":(So(ee)||ee.contentEditable==="true")&&(Na=ee,gc=C,jn=null);break;case"focusout":jn=gc=Na=null;break;case"mousedown":yc=!0;break;case"contextmenu":case"mouseup":case"dragend":yc=!1,ko(H,l,U);break;case"selectionchange":if($p)break;case"keydown":case"keyup":ko(H,l,U)}var fe;if(mc)e:{switch(e){case"compositionstart":var ge="onCompositionStart";break e;case"compositionend":ge="onCompositionEnd";break e;case"compositionupdate":ge="onCompositionUpdate";break e}ge=void 0}else ba?jo(e,l)&&(ge="onCompositionEnd"):e==="keydown"&&l.keyCode===229&&(ge="onCompositionStart");ge&&(xo&&l.locale!=="ko"&&(ba||ge!=="onCompositionStart"?ge==="onCompositionEnd"&&ba&&(fe=fo()):(Sl=U,uc="value"in Sl?Sl.value:Sl.textContent,ba=!0)),ee=hs(C,ge),0<ee.length&&(ge=new po(ge,e,null,l,U),H.push({event:ge,listeners:ee}),fe?ge.data=fe:(fe=_o(l),fe!==null&&(ge.data=fe)))),(fe=Lp?Bp(e,l):Yp(e,l))&&(ge=hs(C,"onBeforeInput"),0<ge.length&&(ee=new po("onBeforeInput","beforeinput",null,l,U),H.push({event:ee,listeners:ge}),ee.data=fe)),wv(H,e,C,l,U)}sh(H,t)})}function Xn(e,t,l){return{instance:e,listener:t,currentTarget:l}}function hs(e,t){for(var l=t+"Capture",n=[];e!==null;){var i=e,c=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||c===null||(i=fn(e,l),i!=null&&n.unshift(Xn(e,i,c)),i=fn(e,t),i!=null&&n.push(Xn(e,i,c))),e.tag===3)return n;e=e.return}return[]}function Dv(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function rh(e,t,l,n,i){for(var c=t._reactName,d=[];l!==null&&l!==n;){var m=l,_=m.alternate,C=m.stateNode;if(m=m.tag,_!==null&&_===n)break;m!==5&&m!==26&&m!==27||C===null||(_=C,i?(C=fn(l,c),C!=null&&d.unshift(Xn(l,C,_))):i||(C=fn(l,c),C!=null&&d.push(Xn(l,C,_)))),l=l.return}d.length!==0&&e.push({event:t,listeners:d})}var qv=/\r\n?/g,Hv=/\u0000|\uFFFD/g;function uh(e){return(typeof e=="string"?e:""+e).replace(qv,`
|
|
9
|
+
`).replace(Hv,"")}function oh(e,t){return t=uh(t),uh(e)===t}function Re(e,t,l,n,i,c){switch(l){case"children":typeof n=="string"?t==="body"||t==="textarea"&&n===""||ja(e,n):(typeof n=="number"||typeof n=="bigint")&&t!=="body"&&ja(e,""+n);break;case"className":xi(e,"class",n);break;case"tabIndex":xi(e,"tabindex",n);break;case"dir":case"role":case"viewBox":case"width":case"height":xi(e,l,n);break;case"style":ro(e,n,c);break;case"data":if(t!=="object"){xi(e,"data",n);break}case"src":case"href":if(n===""&&(t!=="a"||l!=="href")){e.removeAttribute(l);break}if(n==null||typeof n=="function"||typeof n=="symbol"||typeof n=="boolean"){e.removeAttribute(l);break}n=yi(""+n),e.setAttribute(l,n);break;case"action":case"formAction":if(typeof n=="function"){e.setAttribute(l,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof c=="function"&&(l==="formAction"?(t!=="input"&&Re(e,t,"name",i.name,i,null),Re(e,t,"formEncType",i.formEncType,i,null),Re(e,t,"formMethod",i.formMethod,i,null),Re(e,t,"formTarget",i.formTarget,i,null)):(Re(e,t,"encType",i.encType,i,null),Re(e,t,"method",i.method,i,null),Re(e,t,"target",i.target,i,null)));if(n==null||typeof n=="symbol"||typeof n=="boolean"){e.removeAttribute(l);break}n=yi(""+n),e.setAttribute(l,n);break;case"onClick":n!=null&&(e.onclick=tl);break;case"onScroll":n!=null&&ve("scroll",e);break;case"onScrollEnd":n!=null&&ve("scrollend",e);break;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(r(61));if(l=n.__html,l!=null){if(i.children!=null)throw Error(r(60));e.innerHTML=l}}break;case"multiple":e.multiple=n&&typeof n!="function"&&typeof n!="symbol";break;case"muted":e.muted=n&&typeof n!="function"&&typeof n!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(n==null||typeof n=="function"||typeof n=="boolean"||typeof n=="symbol"){e.removeAttribute("xlink:href");break}l=yi(""+n),e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",l);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":n!=null&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(l,""+n):e.removeAttribute(l);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":n&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(l,""):e.removeAttribute(l);break;case"capture":case"download":n===!0?e.setAttribute(l,""):n!==!1&&n!=null&&typeof n!="function"&&typeof n!="symbol"?e.setAttribute(l,n):e.removeAttribute(l);break;case"cols":case"rows":case"size":case"span":n!=null&&typeof n!="function"&&typeof n!="symbol"&&!isNaN(n)&&1<=n?e.setAttribute(l,n):e.removeAttribute(l);break;case"rowSpan":case"start":n==null||typeof n=="function"||typeof n=="symbol"||isNaN(n)?e.removeAttribute(l):e.setAttribute(l,n);break;case"popover":ve("beforetoggle",e),ve("toggle",e),vi(e,"popover",n);break;case"xlinkActuate":el(e,"http://www.w3.org/1999/xlink","xlink:actuate",n);break;case"xlinkArcrole":el(e,"http://www.w3.org/1999/xlink","xlink:arcrole",n);break;case"xlinkRole":el(e,"http://www.w3.org/1999/xlink","xlink:role",n);break;case"xlinkShow":el(e,"http://www.w3.org/1999/xlink","xlink:show",n);break;case"xlinkTitle":el(e,"http://www.w3.org/1999/xlink","xlink:title",n);break;case"xlinkType":el(e,"http://www.w3.org/1999/xlink","xlink:type",n);break;case"xmlBase":el(e,"http://www.w3.org/XML/1998/namespace","xml:base",n);break;case"xmlLang":el(e,"http://www.w3.org/XML/1998/namespace","xml:lang",n);break;case"xmlSpace":el(e,"http://www.w3.org/XML/1998/namespace","xml:space",n);break;case"is":vi(e,"is",n);break;case"innerText":case"textContent":break;default:(!(2<l.length)||l[0]!=="o"&&l[0]!=="O"||l[1]!=="n"&&l[1]!=="N")&&(l=fp.get(l)||l,vi(e,l,n))}}function Vr(e,t,l,n,i,c){switch(l){case"style":ro(e,n,c);break;case"dangerouslySetInnerHTML":if(n!=null){if(typeof n!="object"||!("__html"in n))throw Error(r(61));if(l=n.__html,l!=null){if(i.children!=null)throw Error(r(60));e.innerHTML=l}}break;case"children":typeof n=="string"?ja(e,n):(typeof n=="number"||typeof n=="bigint")&&ja(e,""+n);break;case"onScroll":n!=null&&ve("scroll",e);break;case"onScrollEnd":n!=null&&ve("scrollend",e);break;case"onClick":n!=null&&(e.onclick=tl);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!Iu.hasOwnProperty(l))e:{if(l[0]==="o"&&l[1]==="n"&&(i=l.endsWith("Capture"),t=l.slice(2,i?l.length-7:void 0),c=e[st]||null,c=c!=null?c[l]:null,typeof c=="function"&&e.removeEventListener(t,c,i),typeof n=="function")){typeof c!="function"&&c!==null&&(l in e?e[l]=null:e.hasAttribute(l)&&e.removeAttribute(l)),e.addEventListener(t,n,i);break e}l in e?e[l]=n:n===!0?e.setAttribute(l,""):vi(e,l,n)}}}function lt(e,t,l){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":ve("error",e),ve("load",e);var n=!1,i=!1,c;for(c in l)if(l.hasOwnProperty(c)){var d=l[c];if(d!=null)switch(c){case"src":n=!0;break;case"srcSet":i=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(r(137,t));default:Re(e,t,c,d,l,null)}}i&&Re(e,t,"srcSet",l.srcSet,l,null),n&&Re(e,t,"src",l.src,l,null);return;case"input":ve("invalid",e);var m=c=d=i=null,_=null,C=null;for(n in l)if(l.hasOwnProperty(n)){var U=l[n];if(U!=null)switch(n){case"name":i=U;break;case"type":d=U;break;case"checked":_=U;break;case"defaultChecked":C=U;break;case"value":c=U;break;case"defaultValue":m=U;break;case"children":case"dangerouslySetInnerHTML":if(U!=null)throw Error(r(137,t));break;default:Re(e,t,n,U,l,null)}}no(e,c,m,_,C,d,i,!1);return;case"select":ve("invalid",e),n=d=c=null;for(i in l)if(l.hasOwnProperty(i)&&(m=l[i],m!=null))switch(i){case"value":c=m;break;case"defaultValue":d=m;break;case"multiple":n=m;default:Re(e,t,i,m,l,null)}t=c,l=d,e.multiple=!!n,t!=null?ya(e,!!n,t,!1):l!=null&&ya(e,!!n,l,!0);return;case"textarea":ve("invalid",e),c=i=n=null;for(d in l)if(l.hasOwnProperty(d)&&(m=l[d],m!=null))switch(d){case"value":n=m;break;case"defaultValue":i=m;break;case"children":c=m;break;case"dangerouslySetInnerHTML":if(m!=null)throw Error(r(91));break;default:Re(e,t,d,m,l,null)}so(e,n,i,c);return;case"option":for(_ in l)l.hasOwnProperty(_)&&(n=l[_],n!=null)&&(_==="selected"?e.selected=n&&typeof n!="function"&&typeof n!="symbol":Re(e,t,_,n,l,null));return;case"dialog":ve("beforetoggle",e),ve("toggle",e),ve("cancel",e),ve("close",e);break;case"iframe":case"object":ve("load",e);break;case"video":case"audio":for(n=0;n<Vn.length;n++)ve(Vn[n],e);break;case"image":ve("error",e),ve("load",e);break;case"details":ve("toggle",e);break;case"embed":case"source":case"link":ve("error",e),ve("load",e);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(C in l)if(l.hasOwnProperty(C)&&(n=l[C],n!=null))switch(C){case"children":case"dangerouslySetInnerHTML":throw Error(r(137,t));default:Re(e,t,C,n,l,null)}return;default:if(nc(t)){for(U in l)l.hasOwnProperty(U)&&(n=l[U],n!==void 0&&Vr(e,t,U,n,l,void 0));return}}for(m in l)l.hasOwnProperty(m)&&(n=l[m],n!=null&&Re(e,t,m,n,l,null))}function Lv(e,t,l,n){switch(t){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var i=null,c=null,d=null,m=null,_=null,C=null,U=null;for(M in l){var H=l[M];if(l.hasOwnProperty(M)&&H!=null)switch(M){case"checked":break;case"value":break;case"defaultValue":_=H;default:n.hasOwnProperty(M)||Re(e,t,M,null,n,H)}}for(var T in n){var M=n[T];if(H=l[T],n.hasOwnProperty(T)&&(M!=null||H!=null))switch(T){case"type":c=M;break;case"name":i=M;break;case"checked":C=M;break;case"defaultChecked":U=M;break;case"value":d=M;break;case"defaultValue":m=M;break;case"children":case"dangerouslySetInnerHTML":if(M!=null)throw Error(r(137,t));break;default:M!==H&&Re(e,t,T,M,n,H)}}lc(e,d,m,_,C,U,c,i);return;case"select":M=d=m=T=null;for(c in l)if(_=l[c],l.hasOwnProperty(c)&&_!=null)switch(c){case"value":break;case"multiple":M=_;default:n.hasOwnProperty(c)||Re(e,t,c,null,n,_)}for(i in n)if(c=n[i],_=l[i],n.hasOwnProperty(i)&&(c!=null||_!=null))switch(i){case"value":T=c;break;case"defaultValue":m=c;break;case"multiple":d=c;default:c!==_&&Re(e,t,i,c,n,_)}t=m,l=d,n=M,T!=null?ya(e,!!l,T,!1):!!n!=!!l&&(t!=null?ya(e,!!l,t,!0):ya(e,!!l,l?[]:"",!1));return;case"textarea":M=T=null;for(m in l)if(i=l[m],l.hasOwnProperty(m)&&i!=null&&!n.hasOwnProperty(m))switch(m){case"value":break;case"children":break;default:Re(e,t,m,null,n,i)}for(d in n)if(i=n[d],c=l[d],n.hasOwnProperty(d)&&(i!=null||c!=null))switch(d){case"value":T=i;break;case"defaultValue":M=i;break;case"children":break;case"dangerouslySetInnerHTML":if(i!=null)throw Error(r(91));break;default:i!==c&&Re(e,t,d,i,n,c)}io(e,T,M);return;case"option":for(var W in l)T=l[W],l.hasOwnProperty(W)&&T!=null&&!n.hasOwnProperty(W)&&(W==="selected"?e.selected=!1:Re(e,t,W,null,n,T));for(_ in n)T=n[_],M=l[_],n.hasOwnProperty(_)&&T!==M&&(T!=null||M!=null)&&(_==="selected"?e.selected=T&&typeof T!="function"&&typeof T!="symbol":Re(e,t,_,T,n,M));return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var se in l)T=l[se],l.hasOwnProperty(se)&&T!=null&&!n.hasOwnProperty(se)&&Re(e,t,se,null,n,T);for(C in n)if(T=n[C],M=l[C],n.hasOwnProperty(C)&&T!==M&&(T!=null||M!=null))switch(C){case"children":case"dangerouslySetInnerHTML":if(T!=null)throw Error(r(137,t));break;default:Re(e,t,C,T,n,M)}return;default:if(nc(t)){for(var Te in l)T=l[Te],l.hasOwnProperty(Te)&&T!==void 0&&!n.hasOwnProperty(Te)&&Vr(e,t,Te,void 0,n,T);for(U in n)T=n[U],M=l[U],!n.hasOwnProperty(U)||T===M||T===void 0&&M===void 0||Vr(e,t,U,T,n,M);return}}for(var E in l)T=l[E],l.hasOwnProperty(E)&&T!=null&&!n.hasOwnProperty(E)&&Re(e,t,E,null,n,T);for(H in n)T=n[H],M=l[H],!n.hasOwnProperty(H)||T===M||T==null&&M==null||Re(e,t,H,T,n,M)}function dh(e){switch(e){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function Bv(){if(typeof performance.getEntriesByType=="function"){for(var e=0,t=0,l=performance.getEntriesByType("resource"),n=0;n<l.length;n++){var i=l[n],c=i.transferSize,d=i.initiatorType,m=i.duration;if(c&&m&&dh(d)){for(d=0,m=i.responseEnd,n+=1;n<l.length;n++){var _=l[n],C=_.startTime;if(C>m)break;var U=_.transferSize,H=_.initiatorType;U&&dh(H)&&(_=_.responseEnd,d+=U*(_<m?1:(m-C)/(_-C)))}if(--n,t+=8*(c+d)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e=="number")?e:5}var Xr=null,Zr=null;function ms(e){return e.nodeType===9?e:e.ownerDocument}function fh(e){switch(e){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function hh(e,t){if(e===0)switch(t){case"svg":return 1;case"math":return 2;default:return 0}return e===1&&t==="foreignObject"?0:e}function Kr(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.children=="bigint"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Jr=null;function Yv(){var e=window.event;return e&&e.type==="popstate"?e===Jr?!1:(Jr=e,!0):(Jr=null,!1)}var mh=typeof setTimeout=="function"?setTimeout:void 0,Gv=typeof clearTimeout=="function"?clearTimeout:void 0,ph=typeof Promise=="function"?Promise:void 0,Qv=typeof queueMicrotask=="function"?queueMicrotask:typeof ph<"u"?function(e){return ph.resolve(null).then(e).catch(Vv)}:mh;function Vv(e){setTimeout(function(){throw e})}function Ll(e){return e==="head"}function vh(e,t){var l=t,n=0;do{var i=l.nextSibling;if(e.removeChild(l),i&&i.nodeType===8)if(l=i.data,l==="/$"||l==="/&"){if(n===0){e.removeChild(i),Wa(t);return}n--}else if(l==="$"||l==="$?"||l==="$~"||l==="$!"||l==="&")n++;else if(l==="html")Zn(e.ownerDocument.documentElement);else if(l==="head"){l=e.ownerDocument.head,Zn(l);for(var c=l.firstChild;c;){var d=c.nextSibling,m=c.nodeName;c[on]||m==="SCRIPT"||m==="STYLE"||m==="LINK"&&c.rel.toLowerCase()==="stylesheet"||l.removeChild(c),c=d}}else l==="body"&&Zn(e.ownerDocument.body);l=i}while(l);Wa(t)}function xh(e,t){var l=e;e=0;do{var n=l.nextSibling;if(l.nodeType===1?t?(l._stashedDisplay=l.style.display,l.style.display="none"):(l.style.display=l._stashedDisplay||"",l.getAttribute("style")===""&&l.removeAttribute("style")):l.nodeType===3&&(t?(l._stashedText=l.nodeValue,l.nodeValue=""):l.nodeValue=l._stashedText||""),n&&n.nodeType===8)if(l=n.data,l==="/$"){if(e===0)break;e--}else l!=="$"&&l!=="$?"&&l!=="$~"&&l!=="$!"||e++;l=n}while(l)}function $r(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var l=t;switch(t=t.nextSibling,l.nodeName){case"HTML":case"HEAD":case"BODY":$r(l),ec(l);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(l.rel.toLowerCase()==="stylesheet")continue}e.removeChild(l)}}function Xv(e,t,l,n){for(;e.nodeType===1;){var i=l;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!n&&(e.nodeName!=="INPUT"||e.type!=="hidden"))break}else if(n){if(!e[on])switch(t){case"meta":if(!e.hasAttribute("itemprop"))break;return e;case"link":if(c=e.getAttribute("rel"),c==="stylesheet"&&e.hasAttribute("data-precedence"))break;if(c!==i.rel||e.getAttribute("href")!==(i.href==null||i.href===""?null:i.href)||e.getAttribute("crossorigin")!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute("title")!==(i.title==null?null:i.title))break;return e;case"style":if(e.hasAttribute("data-precedence"))break;return e;case"script":if(c=e.getAttribute("src"),(c!==(i.src==null?null:i.src)||e.getAttribute("type")!==(i.type==null?null:i.type)||e.getAttribute("crossorigin")!==(i.crossOrigin==null?null:i.crossOrigin))&&c&&e.hasAttribute("async")&&!e.hasAttribute("itemprop"))break;return e;default:return e}}else if(t==="input"&&e.type==="hidden"){var c=i.name==null?null:""+i.name;if(i.type==="hidden"&&e.getAttribute("name")===c)return e}else return e;if(e=qt(e.nextSibling),e===null)break}return null}function Zv(e,t,l){if(t==="")return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!l||(e=qt(e.nextSibling),e===null))return null;return e}function gh(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!=="INPUT"||e.type!=="hidden")&&!t||(e=qt(e.nextSibling),e===null))return null;return e}function Fr(e){return e.data==="$?"||e.data==="$~"}function Wr(e){return e.data==="$!"||e.data==="$?"&&e.ownerDocument.readyState!=="loading"}function Kv(e,t){var l=e.ownerDocument;if(e.data==="$~")e._reactRetry=t;else if(e.data!=="$?"||l.readyState!=="loading")t();else{var n=function(){t(),l.removeEventListener("DOMContentLoaded",n)};l.addEventListener("DOMContentLoaded",n),e._reactRetry=n}}function qt(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t==="$"||t==="$!"||t==="$?"||t==="$~"||t==="&"||t==="F!"||t==="F")break;if(t==="/$"||t==="/&")return null}}return e}var Pr=null;function yh(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var l=e.data;if(l==="/$"||l==="/&"){if(t===0)return qt(e.nextSibling);t--}else l!=="$"&&l!=="$!"&&l!=="$?"&&l!=="$~"&&l!=="&"||t++}e=e.nextSibling}return null}function jh(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var l=e.data;if(l==="$"||l==="$!"||l==="$?"||l==="$~"||l==="&"){if(t===0)return e;t--}else l!=="/$"&&l!=="/&"||t++}e=e.previousSibling}return null}function _h(e,t,l){switch(t=ms(l),e){case"html":if(e=t.documentElement,!e)throw Error(r(452));return e;case"head":if(e=t.head,!e)throw Error(r(453));return e;case"body":if(e=t.body,!e)throw Error(r(454));return e;default:throw Error(r(451))}}function Zn(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);ec(e)}var Ht=new Map,Sh=new Set;function ps(e){return typeof e.getRootNode=="function"?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var xl=Q.d;Q.d={f:Jv,r:$v,D:Fv,C:Wv,L:Pv,m:Iv,X:tx,S:ex,M:lx};function Jv(){var e=xl.f(),t=ss();return e||t}function $v(e){var t=va(e);t!==null&&t.tag===5&&t.type==="form"?Hd(t):xl.r(e)}var Ja=typeof document>"u"?null:document;function bh(e,t,l){var n=Ja;if(n&&typeof t=="string"&&t){var i=zt(t);i='link[rel="'+e+'"][href="'+i+'"]',typeof l=="string"&&(i+='[crossorigin="'+l+'"]'),Sh.has(i)||(Sh.add(i),e={rel:e,crossOrigin:l,href:t},n.querySelector(i)===null&&(t=n.createElement("link"),lt(t,"link",e),$e(t),n.head.appendChild(t)))}}function Fv(e){xl.D(e),bh("dns-prefetch",e,null)}function Wv(e,t){xl.C(e,t),bh("preconnect",e,t)}function Pv(e,t,l){xl.L(e,t,l);var n=Ja;if(n&&e&&t){var i='link[rel="preload"][as="'+zt(t)+'"]';t==="image"&&l&&l.imageSrcSet?(i+='[imagesrcset="'+zt(l.imageSrcSet)+'"]',typeof l.imageSizes=="string"&&(i+='[imagesizes="'+zt(l.imageSizes)+'"]')):i+='[href="'+zt(e)+'"]';var c=i;switch(t){case"style":c=$a(e);break;case"script":c=Fa(e)}Ht.has(c)||(e=g({rel:"preload",href:t==="image"&&l&&l.imageSrcSet?void 0:e,as:t},l),Ht.set(c,e),n.querySelector(i)!==null||t==="style"&&n.querySelector(Kn(c))||t==="script"&&n.querySelector(Jn(c))||(t=n.createElement("link"),lt(t,"link",e),$e(t),n.head.appendChild(t)))}}function Iv(e,t){xl.m(e,t);var l=Ja;if(l&&e){var n=t&&typeof t.as=="string"?t.as:"script",i='link[rel="modulepreload"][as="'+zt(n)+'"][href="'+zt(e)+'"]',c=i;switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":c=Fa(e)}if(!Ht.has(c)&&(e=g({rel:"modulepreload",href:e},t),Ht.set(c,e),l.querySelector(i)===null)){switch(n){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(l.querySelector(Jn(c)))return}n=l.createElement("link"),lt(n,"link",e),$e(n),l.head.appendChild(n)}}}function ex(e,t,l){xl.S(e,t,l);var n=Ja;if(n&&e){var i=xa(n).hoistableStyles,c=$a(e);t=t||"default";var d=i.get(c);if(!d){var m={loading:0,preload:null};if(d=n.querySelector(Kn(c)))m.loading=5;else{e=g({rel:"stylesheet",href:e,"data-precedence":t},l),(l=Ht.get(c))&&Ir(e,l);var _=d=n.createElement("link");$e(_),lt(_,"link",e),_._p=new Promise(function(C,U){_.onload=C,_.onerror=U}),_.addEventListener("load",function(){m.loading|=1}),_.addEventListener("error",function(){m.loading|=2}),m.loading|=4,vs(d,t,n)}d={type:"stylesheet",instance:d,count:1,state:m},i.set(c,d)}}}function tx(e,t){xl.X(e,t);var l=Ja;if(l&&e){var n=xa(l).hoistableScripts,i=Fa(e),c=n.get(i);c||(c=l.querySelector(Jn(i)),c||(e=g({src:e,async:!0},t),(t=Ht.get(i))&&eu(e,t),c=l.createElement("script"),$e(c),lt(c,"link",e),l.head.appendChild(c)),c={type:"script",instance:c,count:1,state:null},n.set(i,c))}}function lx(e,t){xl.M(e,t);var l=Ja;if(l&&e){var n=xa(l).hoistableScripts,i=Fa(e),c=n.get(i);c||(c=l.querySelector(Jn(i)),c||(e=g({src:e,async:!0,type:"module"},t),(t=Ht.get(i))&&eu(e,t),c=l.createElement("script"),$e(c),lt(c,"link",e),l.head.appendChild(c)),c={type:"script",instance:c,count:1,state:null},n.set(i,c))}}function Nh(e,t,l,n){var i=(i=me.current)?ps(i):null;if(!i)throw Error(r(446));switch(e){case"meta":case"title":return null;case"style":return typeof l.precedence=="string"&&typeof l.href=="string"?(t=$a(l.href),l=xa(i).hoistableStyles,n=l.get(t),n||(n={type:"style",instance:null,count:0,state:null},l.set(t,n)),n):{type:"void",instance:null,count:0,state:null};case"link":if(l.rel==="stylesheet"&&typeof l.href=="string"&&typeof l.precedence=="string"){e=$a(l.href);var c=xa(i).hoistableStyles,d=c.get(e);if(d||(i=i.ownerDocument||i,d={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},c.set(e,d),(c=i.querySelector(Kn(e)))&&!c._p&&(d.instance=c,d.state.loading=5),Ht.has(e)||(l={rel:"preload",as:"style",href:l.href,crossOrigin:l.crossOrigin,integrity:l.integrity,media:l.media,hrefLang:l.hrefLang,referrerPolicy:l.referrerPolicy},Ht.set(e,l),c||ax(i,e,l,d.state))),t&&n===null)throw Error(r(528,""));return d}if(t&&n!==null)throw Error(r(529,""));return null;case"script":return t=l.async,l=l.src,typeof l=="string"&&t&&typeof t!="function"&&typeof t!="symbol"?(t=Fa(l),l=xa(i).hoistableScripts,n=l.get(t),n||(n={type:"script",instance:null,count:0,state:null},l.set(t,n)),n):{type:"void",instance:null,count:0,state:null};default:throw Error(r(444,e))}}function $a(e){return'href="'+zt(e)+'"'}function Kn(e){return'link[rel="stylesheet"]['+e+"]"}function Eh(e){return g({},e,{"data-precedence":e.precedence,precedence:null})}function ax(e,t,l,n){e.querySelector('link[rel="preload"][as="style"]['+t+"]")?n.loading=1:(t=e.createElement("link"),n.preload=t,t.addEventListener("load",function(){return n.loading|=1}),t.addEventListener("error",function(){return n.loading|=2}),lt(t,"link",l),$e(t),e.head.appendChild(t))}function Fa(e){return'[src="'+zt(e)+'"]'}function Jn(e){return"script[async]"+e}function Ah(e,t,l){if(t.count++,t.instance===null)switch(t.type){case"style":var n=e.querySelector('style[data-href~="'+zt(l.href)+'"]');if(n)return t.instance=n,$e(n),n;var i=g({},l,{"data-href":l.href,"data-precedence":l.precedence,href:null,precedence:null});return n=(e.ownerDocument||e).createElement("style"),$e(n),lt(n,"style",i),vs(n,l.precedence,e),t.instance=n;case"stylesheet":i=$a(l.href);var c=e.querySelector(Kn(i));if(c)return t.state.loading|=4,t.instance=c,$e(c),c;n=Eh(l),(i=Ht.get(i))&&Ir(n,i),c=(e.ownerDocument||e).createElement("link"),$e(c);var d=c;return d._p=new Promise(function(m,_){d.onload=m,d.onerror=_}),lt(c,"link",n),t.state.loading|=4,vs(c,l.precedence,e),t.instance=c;case"script":return c=Fa(l.src),(i=e.querySelector(Jn(c)))?(t.instance=i,$e(i),i):(n=l,(i=Ht.get(c))&&(n=g({},l),eu(n,i)),e=e.ownerDocument||e,i=e.createElement("script"),$e(i),lt(i,"link",n),e.head.appendChild(i),t.instance=i);case"void":return null;default:throw Error(r(443,t.type))}else t.type==="stylesheet"&&(t.state.loading&4)===0&&(n=t.instance,t.state.loading|=4,vs(n,l.precedence,e));return t.instance}function vs(e,t,l){for(var n=l.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),i=n.length?n[n.length-1]:null,c=i,d=0;d<n.length;d++){var m=n[d];if(m.dataset.precedence===t)c=m;else if(c!==i)break}c?c.parentNode.insertBefore(e,c.nextSibling):(t=l.nodeType===9?l.head:l,t.insertBefore(e,t.firstChild))}function Ir(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.title==null&&(e.title=t.title)}function eu(e,t){e.crossOrigin==null&&(e.crossOrigin=t.crossOrigin),e.referrerPolicy==null&&(e.referrerPolicy=t.referrerPolicy),e.integrity==null&&(e.integrity=t.integrity)}var xs=null;function Ch(e,t,l){if(xs===null){var n=new Map,i=xs=new Map;i.set(l,n)}else i=xs,n=i.get(l),n||(n=new Map,i.set(l,n));if(n.has(e))return n;for(n.set(e,null),l=l.getElementsByTagName(e),i=0;i<l.length;i++){var c=l[i];if(!(c[on]||c[Pe]||e==="link"&&c.getAttribute("rel")==="stylesheet")&&c.namespaceURI!=="http://www.w3.org/2000/svg"){var d=c.getAttribute(t)||"";d=e+d;var m=n.get(d);m?m.push(c):n.set(d,[c])}}return n}function Rh(e,t,l){e=e.ownerDocument||e,e.head.insertBefore(l,t==="title"?e.querySelector("head > title"):null)}function nx(e,t,l){if(l===1||t.itemProp!=null)return!1;switch(e){case"meta":case"title":return!0;case"style":if(typeof t.precedence!="string"||typeof t.href!="string"||t.href==="")break;return!0;case"link":if(typeof t.rel!="string"||typeof t.href!="string"||t.href===""||t.onLoad||t.onError)break;return t.rel==="stylesheet"?(e=t.disabled,typeof t.precedence=="string"&&e==null):!0;case"script":if(t.async&&typeof t.async!="function"&&typeof t.async!="symbol"&&!t.onLoad&&!t.onError&&t.src&&typeof t.src=="string")return!0}return!1}function Th(e){return!(e.type==="stylesheet"&&(e.state.loading&3)===0)}function ix(e,t,l,n){if(l.type==="stylesheet"&&(typeof n.media!="string"||matchMedia(n.media).matches!==!1)&&(l.state.loading&4)===0){if(l.instance===null){var i=$a(n.href),c=t.querySelector(Kn(i));if(c){t=c._p,t!==null&&typeof t=="object"&&typeof t.then=="function"&&(e.count++,e=gs.bind(e),t.then(e,e)),l.state.loading|=4,l.instance=c,$e(c);return}c=t.ownerDocument||t,n=Eh(n),(i=Ht.get(i))&&Ir(n,i),c=c.createElement("link"),$e(c);var d=c;d._p=new Promise(function(m,_){d.onload=m,d.onerror=_}),lt(c,"link",n),l.instance=c}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(l,t),(t=l.state.preload)&&(l.state.loading&3)===0&&(e.count++,l=gs.bind(e),t.addEventListener("load",l),t.addEventListener("error",l))}}var tu=0;function sx(e,t){return e.stylesheets&&e.count===0&&js(e,e.stylesheets),0<e.count||0<e.imgCount?function(l){var n=setTimeout(function(){if(e.stylesheets&&js(e,e.stylesheets),e.unsuspend){var c=e.unsuspend;e.unsuspend=null,c()}},6e4+t);0<e.imgBytes&&tu===0&&(tu=62500*Bv());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&js(e,e.stylesheets),e.unsuspend)){var c=e.unsuspend;e.unsuspend=null,c()}},(e.imgBytes>tu?50:800)+t);return e.unsuspend=l,function(){e.unsuspend=null,clearTimeout(n),clearTimeout(i)}}:null}function gs(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)js(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var ys=null;function js(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,ys=new Map,t.forEach(cx,e),ys=null,gs.call(e))}function cx(e,t){if(!(t.state.loading&4)){var l=ys.get(e);if(l)var n=l.get(null);else{l=new Map,ys.set(e,l);for(var i=e.querySelectorAll("link[data-precedence],style[data-precedence]"),c=0;c<i.length;c++){var d=i[c];(d.nodeName==="LINK"||d.getAttribute("media")!=="not all")&&(l.set(d.dataset.precedence,d),n=d)}n&&l.set(null,n)}i=t.instance,d=i.getAttribute("data-precedence"),c=l.get(d)||n,c===n&&l.set(null,i),l.set(d,i),this.count++,n=gs.bind(this),i.addEventListener("load",n),i.addEventListener("error",n),c?c.parentNode.insertBefore(i,c.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var $n={$$typeof:K,Provider:null,Consumer:null,_currentValue:F,_currentValue2:F,_threadCount:0};function rx(e,t,l,n,i,c,d,m,_){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=Fs(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Fs(0),this.hiddenUpdates=Fs(null),this.identifierPrefix=n,this.onUncaughtError=i,this.onCaughtError=c,this.onRecoverableError=d,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=_,this.incompleteTransitions=new Map}function zh(e,t,l,n,i,c,d,m,_,C,U,H){return e=new rx(e,t,l,d,_,C,U,H,m),t=1,c===!0&&(t|=24),c=jt(3,null,null,t),e.current=c,c.stateNode=e,t=Oc(),t.refCount++,e.pooledCache=t,t.refCount++,c.memoizedState={element:n,isDehydrated:l,cache:t},Hc(c),e}function Mh(e){return e?(e=Ca,e):Ca}function wh(e,t,l,n,i,c){i=Mh(i),n.context===null?n.context=i:n.pendingContext=i,n=Rl(t),n.payload={element:l},c=c===void 0?null:c,c!==null&&(n.callback=c),l=Tl(e,n,t),l!==null&&(ft(l,e,t),Cn(l,e,t))}function kh(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var l=e.retryLane;e.retryLane=l!==0&&l<t?l:t}}function lu(e,t){kh(e,t),(e=e.alternate)&&kh(e,t)}function Oh(e){if(e.tag===13||e.tag===31){var t=ea(e,67108864);t!==null&&ft(t,e,67108864),lu(e,67108864)}}function Uh(e){if(e.tag===13||e.tag===31){var t=Et();t=Ws(t);var l=ea(e,t);l!==null&&ft(l,e,t),lu(e,t)}}var _s=!0;function ux(e,t,l,n){var i=R.T;R.T=null;var c=Q.p;try{Q.p=2,au(e,t,l,n)}finally{Q.p=c,R.T=i}}function ox(e,t,l,n){var i=R.T;R.T=null;var c=Q.p;try{Q.p=8,au(e,t,l,n)}finally{Q.p=c,R.T=i}}function au(e,t,l,n){if(_s){var i=nu(n);if(i===null)Qr(e,t,n,Ss,l),qh(e,n);else if(fx(i,e,t,l,n))n.stopPropagation();else if(qh(e,n),t&4&&-1<dx.indexOf(e)){for(;i!==null;){var c=va(i);if(c!==null)switch(c.tag){case 3:if(c=c.stateNode,c.current.memoizedState.isDehydrated){var d=$l(c.pendingLanes);if(d!==0){var m=c;for(m.pendingLanes|=2,m.entangledLanes|=2;d;){var _=1<<31-gt(d);m.entanglements[1]|=_,d&=~_}Wt(c),(Ne&6)===0&&(ns=vt()+500,Qn(0))}}break;case 31:case 13:m=ea(c,2),m!==null&&ft(m,c,2),ss(),lu(c,2)}if(c=nu(n),c===null&&Qr(e,t,n,Ss,l),c===i)break;i=c}i!==null&&n.stopPropagation()}else Qr(e,t,n,null,l)}}function nu(e){return e=sc(e),iu(e)}var Ss=null;function iu(e){if(Ss=null,e=pa(e),e!==null){var t=h(e);if(t===null)e=null;else{var l=t.tag;if(l===13){if(e=p(t),e!==null)return e;e=null}else if(l===31){if(e=x(t),e!==null)return e;e=null}else if(l===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return Ss=e,null}function Dh(e){switch(e){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(Fm()){case Gu:return 2;case Qu:return 8;case di:case Wm:return 32;case Vu:return 268435456;default:return 32}default:return 32}}var su=!1,Bl=null,Yl=null,Gl=null,Fn=new Map,Wn=new Map,Ql=[],dx="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function qh(e,t){switch(e){case"focusin":case"focusout":Bl=null;break;case"dragenter":case"dragleave":Yl=null;break;case"mouseover":case"mouseout":Gl=null;break;case"pointerover":case"pointerout":Fn.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Wn.delete(t.pointerId)}}function Pn(e,t,l,n,i,c){return e===null||e.nativeEvent!==c?(e={blockedOn:t,domEventName:l,eventSystemFlags:n,nativeEvent:c,targetContainers:[i]},t!==null&&(t=va(t),t!==null&&Oh(t)),e):(e.eventSystemFlags|=n,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function fx(e,t,l,n,i){switch(t){case"focusin":return Bl=Pn(Bl,e,t,l,n,i),!0;case"dragenter":return Yl=Pn(Yl,e,t,l,n,i),!0;case"mouseover":return Gl=Pn(Gl,e,t,l,n,i),!0;case"pointerover":var c=i.pointerId;return Fn.set(c,Pn(Fn.get(c)||null,e,t,l,n,i)),!0;case"gotpointercapture":return c=i.pointerId,Wn.set(c,Pn(Wn.get(c)||null,e,t,l,n,i)),!0}return!1}function Hh(e){var t=pa(e.target);if(t!==null){var l=h(t);if(l!==null){if(t=l.tag,t===13){if(t=p(l),t!==null){e.blockedOn=t,Fu(e.priority,function(){Uh(l)});return}}else if(t===31){if(t=x(l),t!==null){e.blockedOn=t,Fu(e.priority,function(){Uh(l)});return}}else if(t===3&&l.stateNode.current.memoizedState.isDehydrated){e.blockedOn=l.tag===3?l.stateNode.containerInfo:null;return}}}e.blockedOn=null}function bs(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var l=nu(e.nativeEvent);if(l===null){l=e.nativeEvent;var n=new l.constructor(l.type,l);ic=n,l.target.dispatchEvent(n),ic=null}else return t=va(l),t!==null&&Oh(t),e.blockedOn=l,!1;t.shift()}return!0}function Lh(e,t,l){bs(e)&&l.delete(t)}function hx(){su=!1,Bl!==null&&bs(Bl)&&(Bl=null),Yl!==null&&bs(Yl)&&(Yl=null),Gl!==null&&bs(Gl)&&(Gl=null),Fn.forEach(Lh),Wn.forEach(Lh)}function Ns(e,t){e.blockedOn===t&&(e.blockedOn=null,su||(su=!0,s.unstable_scheduleCallback(s.unstable_NormalPriority,hx)))}var Es=null;function Bh(e){Es!==e&&(Es=e,s.unstable_scheduleCallback(s.unstable_NormalPriority,function(){Es===e&&(Es=null);for(var t=0;t<e.length;t+=3){var l=e[t],n=e[t+1],i=e[t+2];if(typeof n!="function"){if(iu(n||l)===null)continue;break}var c=va(l);c!==null&&(e.splice(t,3),t-=3,nr(c,{pending:!0,data:i,method:l.method,action:n},n,i))}}))}function Wa(e){function t(_){return Ns(_,e)}Bl!==null&&Ns(Bl,e),Yl!==null&&Ns(Yl,e),Gl!==null&&Ns(Gl,e),Fn.forEach(t),Wn.forEach(t);for(var l=0;l<Ql.length;l++){var n=Ql[l];n.blockedOn===e&&(n.blockedOn=null)}for(;0<Ql.length&&(l=Ql[0],l.blockedOn===null);)Hh(l),l.blockedOn===null&&Ql.shift();if(l=(e.ownerDocument||e).$$reactFormReplay,l!=null)for(n=0;n<l.length;n+=3){var i=l[n],c=l[n+1],d=i[st]||null;if(typeof c=="function")d||Bh(l);else if(d){var m=null;if(c&&c.hasAttribute("formAction")){if(i=c,d=c[st]||null)m=d.formAction;else if(iu(i)!==null)continue}else m=d.action;typeof m=="function"?l[n+1]=m:(l.splice(n,3),n-=3),Bh(l)}}}function Yh(){function e(c){c.canIntercept&&c.info==="react-transition"&&c.intercept({handler:function(){return new Promise(function(d){return i=d})},focusReset:"manual",scroll:"manual"})}function t(){i!==null&&(i(),i=null),n||setTimeout(l,20)}function l(){if(!n&&!navigation.transition){var c=navigation.currentEntry;c&&c.url!=null&&navigation.navigate(c.url,{state:c.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var n=!1,i=null;return navigation.addEventListener("navigate",e),navigation.addEventListener("navigatesuccess",t),navigation.addEventListener("navigateerror",t),setTimeout(l,100),function(){n=!0,navigation.removeEventListener("navigate",e),navigation.removeEventListener("navigatesuccess",t),navigation.removeEventListener("navigateerror",t),i!==null&&(i(),i=null)}}}function cu(e){this._internalRoot=e}As.prototype.render=cu.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(r(409));var l=t.current,n=Et();wh(l,n,e,t,null,null)},As.prototype.unmount=cu.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;wh(e.current,2,null,e,null,null),ss(),t[ma]=null}};function As(e){this._internalRoot=e}As.prototype.unstable_scheduleHydration=function(e){if(e){var t=$u();e={blockedOn:null,target:e,priority:t};for(var l=0;l<Ql.length&&t!==0&&t<Ql[l].priority;l++);Ql.splice(l,0,e),l===0&&Hh(e)}};var Gh=u.version;if(Gh!=="19.2.8")throw Error(r(527,Gh,"19.2.8"));Q.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(r(188)):(e=Object.keys(e).join(","),Error(r(268,e)));return e=v(t),e=e!==null?S(e):null,e=e===null?null:e.stateNode,e};var mx={bundleType:0,version:"19.2.8",rendererPackageName:"react-dom",currentDispatcherRef:R,reconcilerVersion:"19.2.8"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Cs=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Cs.isDisabled&&Cs.supportsFiber)try{cn=Cs.inject(mx),xt=Cs}catch{}}return ei.createRoot=function(e,t){if(!f(e))throw Error(r(299));var l=!1,n="",i=Jd,c=$d,d=Fd;return t!=null&&(t.unstable_strictMode===!0&&(l=!0),t.identifierPrefix!==void 0&&(n=t.identifierPrefix),t.onUncaughtError!==void 0&&(i=t.onUncaughtError),t.onCaughtError!==void 0&&(c=t.onCaughtError),t.onRecoverableError!==void 0&&(d=t.onRecoverableError)),t=zh(e,1,!1,null,null,l,n,null,i,c,d,Yh),e[ma]=t.current,Gr(e),new cu(t)},ei.hydrateRoot=function(e,t,l){if(!f(e))throw Error(r(299));var n=!1,i="",c=Jd,d=$d,m=Fd,_=null;return l!=null&&(l.unstable_strictMode===!0&&(n=!0),l.identifierPrefix!==void 0&&(i=l.identifierPrefix),l.onUncaughtError!==void 0&&(c=l.onUncaughtError),l.onCaughtError!==void 0&&(d=l.onCaughtError),l.onRecoverableError!==void 0&&(m=l.onRecoverableError),l.formState!==void 0&&(_=l.formState)),t=zh(e,1,!0,t,l??null,n,i,_,c,d,m,Yh),t.context=Mh(null),l=t.current,n=Et(),n=Ws(n),i=Rl(n),i.callback=null,Tl(l,i,n),l=n,t.current.lanes=l,un(t,l),Wt(t),e[ma]=t.current,Gr(e),new As(t)},ei.version="19.2.8",ei}var Ph;function Nx(){if(Ph)return ou.exports;Ph=1;function s(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(s)}catch(u){console.error(u)}}return s(),ou.exports=bx(),ou.exports}var Ex=Nx();var Au=/^(?:[a-z][a-z0-9+.-]*:|[\\/]{2})/i,om=/^[\\/]{2}/;function Ax(s,u){return u+s.replace(/\\/g,"/")}var Ih="popstate";function em(s){return typeof s=="object"&&s!=null&&"pathname"in s&&"search"in s&&"hash"in s&&"state"in s&&"key"in s}function Cx(s={}){function u(r,f){let h=f.state?.masked,{pathname:p,search:x,hash:y}=h||r.location;return gu("",{pathname:p,search:x,hash:y},f.state&&f.state.usr||null,f.state&&f.state.key||"default",h?{pathname:r.location.pathname,search:r.location.search,hash:r.location.hash}:void 0)}function o(r,f){return typeof f=="string"?f:ai(f)}return Tx(u,o,null,s)}function qe(s,u){if(s===!1||s===null||typeof s>"u")throw new Error(u)}function Yt(s,u){if(!s){typeof console<"u"&&console.warn(u);try{throw new Error(u)}catch{}}}function Rx(){return Math.random().toString(36).substring(2,10)}function tm(s,u){return{usr:s.state,key:s.key,idx:u,masked:s.mask?{pathname:s.pathname,search:s.search,hash:s.hash}:void 0}}function gu(s,u,o=null,r,f){return{pathname:typeof s=="string"?s:s.pathname,search:"",hash:"",...typeof u=="string"?Ia(u):u,state:o,key:u&&u.key||r||Rx(),mask:f}}function ai({pathname:s="/",search:u="",hash:o=""}){return u&&u!=="?"&&(s+=u.charAt(0)==="?"?u:"?"+u),o&&o!=="#"&&(s+=o.charAt(0)==="#"?o:"#"+o),s}function Ia(s){let u={};if(s){let o=s.indexOf("#");o>=0&&(u.hash=s.substring(o),s=s.substring(0,o));let r=s.indexOf("?");r>=0&&(u.search=s.substring(r),s=s.substring(0,r)),s&&(u.pathname=s)}return u}function Tx(s,u,o,r={}){let{window:f=document.defaultView,v5Compat:h=!1}=r,p=f.history,x="POP",y=null,v=S();v==null&&(v=0,p.replaceState({...p.state,idx:v},""));function S(){return(p.state||{idx:null}).idx}function g(){x="POP";let Y=S(),D=Y==null?null:Y-v;v=Y,y&&y({action:x,location:B.location,delta:D})}function w(Y,D){x="PUSH";let G=em(Y)?Y:gu(B.location,Y,D);v=S()+1;let K=tm(G,v),ce=B.createHref(G.mask||G);try{p.pushState(K,"",ce)}catch(ie){if(ie instanceof DOMException&&ie.name==="DataCloneError")throw ie;f.location.assign(ce)}h&&y&&y({action:x,location:B.location,delta:1})}function O(Y,D){x="REPLACE";let G=em(Y)?Y:gu(B.location,Y,D);v=S();let K=tm(G,v),ce=B.createHref(G.mask||G);p.replaceState(K,"",ce),h&&y&&y({action:x,location:B.location,delta:0})}function k(Y){return zx(f,Y)}let B={get action(){return x},get location(){return s(f,p)},listen(Y){if(y)throw new Error("A history only accepts one active listener");return f.addEventListener(Ih,g),y=Y,()=>{f.removeEventListener(Ih,g),y=null}},createHref(Y){return u(f,Y)},createURL:k,encodeLocation(Y){let D=k(Y);return{pathname:D.pathname,search:D.search,hash:D.hash}},push:w,replace:O,go(Y){return p.go(Y)}};return B}function zx(s,u,o=!1){let r="http://localhost";s&&(r=s.location.origin!=="null"?s.location.origin:s.location.href),qe(r,"No window.location.(origin|href) available to create URL");let f=typeof u=="string"?u:ai(u);return f=f.replace(/ $/,"%20"),!o&&om.test(f)&&(f=r+f),new URL(f,r)}function dm(s,u,o="/"){return Mx(s,u,o,!1)}function Mx(s,u,o,r,f){let h=typeof u=="string"?Ia(u):u,p=gl(h.pathname||"/",o);if(p==null)return null;let x=wx(s),y=null,v=Qx(p);for(let S=0;y==null&&S<x.length;++S)y=Gx(x[S],v,r);return y}function wx(s){let u=fm(s);return kx(u),u}function fm(s,u=[],o=[],r="",f=!1){let h=(p,x,y=f,v)=>{let S={relativePath:v===void 0?p.path||"":v,caseSensitive:p.caseSensitive===!0,childrenIndex:x,route:p};if(S.relativePath.startsWith("/")){if(!S.relativePath.startsWith(r)&&y)return;qe(S.relativePath.startsWith(r),`Absolute route path "${S.relativePath}" nested under path "${r}" is not valid. An absolute child route path must start with the combined path of all its parent routes.`),S.relativePath=S.relativePath.slice(r.length)}let g=Zt([r,S.relativePath]),w=o.concat(S);p.children&&p.children.length>0&&(qe(p.index!==!0,`Index routes must not have child routes. Please remove all child routes from route path "${g}".`),fm(p.children,u,w,g,y)),!(p.path==null&&!p.index)&&u.push({path:g,score:Bx(g,p.index),routesMeta:w.map((O,k)=>{let[B,Y]=pm(O.relativePath,O.caseSensitive,k===w.length-1);return{...O,matcher:B,compiledParams:Y}})})};return s.forEach((p,x)=>{if(p.path===""||!p.path?.includes("?"))h(p,x);else for(let y of hm(p.path))h(p,x,!0,y)}),u}function hm(s){let u=s.split("/");if(u.length===0)return[];let[o,...r]=u,f=o.endsWith("?"),h=o.replace(/\?$/,"");if(r.length===0)return f?[h,""]:[h];let p=hm(r.join("/")),x=[];return x.push(...p.map(y=>y===""?h:[h,y].join("/"))),f&&x.push(...p),x.map(y=>s.startsWith("/")&&y===""?"/":y)}function kx(s){s.sort((u,o)=>u.score!==o.score?o.score-u.score:Yx(u.routesMeta.map(r=>r.childrenIndex),o.routesMeta.map(r=>r.childrenIndex)))}var Ox=/^:[\w-]+$/,Ux=3,Dx=2,qx=1,Hx=10,Lx=-2,lm=s=>s==="*";function Bx(s,u){let o=s.split("/"),r=o.length;return o.some(lm)&&(r+=Lx),u&&(r+=Dx),o.filter(f=>!lm(f)).reduce((f,h)=>f+(Ox.test(h)?Ux:h===""?qx:Hx),r)}function Yx(s,u){return s.length===u.length&&s.slice(0,-1).every((r,f)=>r===u[f])?s[s.length-1]-u[u.length-1]:0}function Gx(s,u,o=!1){let{routesMeta:r}=s,f={},h="/",p=[];for(let x=0;x<r.length;++x){let y=r[x],v=x===r.length-1,S=h==="/"?u:u.slice(h.length)||"/",g={path:y.relativePath,caseSensitive:y.caseSensitive,end:v},w=y.matcher&&y.compiledParams?mm(g,S,y.matcher,y.compiledParams):ws(g,S),O=y.route;if(!w&&v&&o&&!r[r.length-1].route.index&&(w=ws({path:y.relativePath,caseSensitive:y.caseSensitive,end:!1},S)),!w)return null;Object.assign(f,w.params),p.push({params:f,pathname:Zt([h,w.pathname]),pathnameBase:Zx(Zt([h,w.pathnameBase])),route:O}),w.pathnameBase!=="/"&&(h=Zt([h,w.pathnameBase]))}return p}function ws(s,u){typeof s=="string"&&(s={path:s,caseSensitive:!1,end:!0});let[o,r]=pm(s.path,s.caseSensitive,s.end);return mm(s,u,o,r)}function mm(s,u,o,r){let f=u.match(o);if(!f)return null;let h=f[0],p=h.replace(/(.)\/+$/,"$1"),x=f.slice(1);return{params:r.reduce((v,{paramName:S,isOptional:g},w)=>{if(S==="*"){let k=x[w]||"";p=h.slice(0,h.length-k.length).replace(/(.)\/+$/,"$1")}const O=x[w];return g&&!O?v[S]=void 0:v[S]=(O||"").replace(/%2F/g,"/"),v},{}),pathname:h,pathnameBase:p,pattern:s}}function pm(s,u=!1,o=!0){Yt(s==="*"||!s.endsWith("*")||s.endsWith("/*"),`Route path "${s}" will be treated as if it were "${s.replace(/\*$/,"/*")}" because the \`*\` character must always follow a \`/\` in the pattern. To get rid of this warning, please change the route path to "${s.replace(/\*$/,"/*")}".`);let r=[],f="^"+s.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(p,x,y,v,S)=>{if(r.push({paramName:x,isOptional:y!=null}),y){let g=S.charAt(v+p.length);return g&&g!=="/"?"/([^\\/]*)":"(?:/([^\\/]*))?"}return"/([^\\/]+)"}).replace(/\/([\w-]+)\?(\/|$)/g,"(/$1)?$2");return s.endsWith("*")?(r.push({paramName:"*"}),f+=s==="*"||s==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):o?f+="\\/*$":s!==""&&s!=="/"&&(f+="(?:(?=\\/|$))"),[new RegExp(f,u?void 0:"i"),r]}function Qx(s){try{return s.split("/").map(u=>decodeURIComponent(u).replace(/\//g,"%2F")).join("/")}catch(u){return Yt(!1,`The URL path "${s}" could not be decoded because it is a malformed URL segment. This is probably due to a bad percent encoding (${u}).`),s}}function gl(s,u){if(u==="/")return s;if(!s.toLowerCase().startsWith(u.toLowerCase()))return null;let o=u.endsWith("/")?u.length-1:u.length,r=s.charAt(o);return r&&r!=="/"?null:s.slice(o)||"/"}function Vx(s,u="/"){let{pathname:o,search:r="",hash:f=""}=typeof s=="string"?Ia(s):s,h;return o?(o=vm(o),o.startsWith("/")?h=am(o.substring(1),"/"):h=am(o,u)):h=u,{pathname:h,search:Kx(r),hash:Jx(f)}}function am(s,u){let o=ks(u).split("/");return s.split("/").forEach(f=>{f===".."?o.length>1&&o.pop():f!=="."&&o.push(f)}),o.length>1?o.join("/"):"/"}function mu(s,u,o,r){return`Cannot include a '${s}' character in a manually specified \`to.${u}\` field [${JSON.stringify(r)}]. Please separate it out to the \`to.${o}\` field. Alternatively you may provide the full path as a string in <Link to="..."> and the router will parse it for you.`}function Xx(s){return s.filter((u,o)=>o===0||u.route.path&&u.route.path.length>0)}function Cu(s){let u=Xx(s);return u.map((o,r)=>r===u.length-1?o.pathname:o.pathnameBase)}function Os(s,u,o,r=!1){let f;typeof s=="string"?f=Ia(s):(f={...s},qe(!f.pathname||!f.pathname.includes("?"),mu("?","pathname","search",f)),qe(!f.pathname||!f.pathname.includes("#"),mu("#","pathname","hash",f)),qe(!f.search||!f.search.includes("#"),mu("#","search","hash",f)));let h=s===""||f.pathname==="",p=h?"/":f.pathname,x;if(p==null)x=o;else{let g=u.length-1;if(!r&&p.startsWith("..")){let w=p.split("/");for(;w[0]==="..";)w.shift(),g-=1;f.pathname=w.join("/")}x=g>=0?u[g]:"/"}let y=Vx(f,x),v=p&&p!=="/"&&p.endsWith("/"),S=(h||p===".")&&o.endsWith("/");return!y.pathname.endsWith("/")&&(v||S)&&(y.pathname+="/"),y}var vm=s=>s.replace(/[\\/]{2,}/g,"/"),Zt=s=>vm(s.join("/")),ks=s=>s.replace(/\/+$/,""),Zx=s=>ks(s).replace(/^\/*/,"/"),Kx=s=>!s||s==="?"?"":s.startsWith("?")?s:"?"+s,Jx=s=>!s||s==="#"?"":s.startsWith("#")?s:"#"+s,$x=class{constructor(s,u,o,r=!1){this.status=s,this.statusText=u||"",this.internal=r,o instanceof Error?(this.data=o.toString(),this.error=o):this.data=o}};function Fx(s){return s!=null&&typeof s.status=="number"&&typeof s.statusText=="string"&&typeof s.internal=="boolean"&&"data"in s}function Wx(s){let u=s.map(o=>o.route.path).filter(Boolean);return Zt(u)||"/"}var xm=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";function gm(s,u){let o=s;if(typeof o!="string"||!Au.test(o))return{absoluteURL:void 0,isExternal:!1,to:o};let r=o,f=!1;if(xm)try{let h=new URL(window.location.href),p=om.test(o)?new URL(Ax(o,h.protocol)):new URL(o),x=gl(p.pathname,u);p.origin===h.origin&&x!=null?o=x+p.search+p.hash:f=!0}catch{Yt(!1,`<Link to="${o}"> contains an invalid URL which will probably break when clicked - please update to a valid URL path.`)}return{absoluteURL:r,isExternal:f,to:o}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");var ym=["POST","PUT","PATCH","DELETE"];new Set(ym);var Px=["GET",...ym];new Set(Px);var Ix=["about:","blob:","chrome:","chrome-untrusted:","content:","data:","devtools:","file:","filesystem:","javascript:"];function eg(s){try{return Ix.includes(new URL(s).protocol)}catch{return!1}}var en=j.createContext(null);en.displayName="DataRouter";var Us=j.createContext(null);Us.displayName="DataRouterState";var jm=j.createContext(!1);function tg(){return j.useContext(jm)}var _m=j.createContext({isTransitioning:!1});_m.displayName="ViewTransition";var lg=j.createContext(new Map);lg.displayName="Fetchers";var ag=j.createContext(null);ag.displayName="Await";var Rt=j.createContext(null);Rt.displayName="Navigation";var si=j.createContext(null);si.displayName="Location";var Pt=j.createContext({outlet:null,matches:[],isDataRoute:!1});Pt.displayName="Route";var Ru=j.createContext(null);Ru.displayName="RouteError";var Sm="REACT_ROUTER_ERROR",ng="REDIRECT",ig="ROUTE_ERROR_RESPONSE";function sg(s){if(s.startsWith(`${Sm}:${ng}:{`))try{let u=JSON.parse(s.slice(28));if(typeof u=="object"&&u&&typeof u.status=="number"&&typeof u.statusText=="string"&&typeof u.location=="string"&&typeof u.reloadDocument=="boolean"&&typeof u.replace=="boolean")return u}catch{}}function cg(s){if(s.startsWith(`${Sm}:${ig}:{`))try{let u=JSON.parse(s.slice(40));if(typeof u=="object"&&u&&typeof u.status=="number"&&typeof u.statusText=="string")return new $x(u.status,u.statusText,u.data)}catch{}}function rg(s,{relative:u}={}){qe(tn(),"useHref() may be used only in the context of a <Router> component.");let{basename:o,navigator:r}=j.useContext(Rt),{hash:f,pathname:h,search:p}=ci(s,{relative:u}),x=h;return o!=="/"&&(x=h==="/"?o:Zt([o,h])),r.createHref({pathname:x,search:p,hash:f})}function tn(){return j.useContext(si)!=null}function Gt(){return qe(tn(),"useLocation() may be used only in the context of a <Router> component."),j.useContext(si).location}var bm="You should call navigate() in a React.useEffect(), not when your component is first rendered.";function Nm(s){j.useContext(Rt).static||j.useLayoutEffect(s)}function Ds(){let{isDataRoute:s}=j.useContext(Pt);return s?_g():ug()}function ug(){qe(tn(),"useNavigate() may be used only in the context of a <Router> component.");let s=j.useContext(en),{basename:u,navigator:o}=j.useContext(Rt),{matches:r}=j.useContext(Pt),{pathname:f}=Gt(),h=JSON.stringify(Cu(r)),p=j.useRef(!1);return Nm(()=>{p.current=!0}),j.useCallback((y,v={})=>{if(Yt(p.current,bm),!p.current)return;if(typeof y=="number"){o.go(y);return}let S=Os(y,JSON.parse(h),f,v.relative==="path");s==null&&u!=="/"&&(S.pathname=S.pathname==="/"?u:Zt([u,S.pathname])),(v.replace?o.replace:o.push)(S,v.state,v)},[u,o,h,f,s])}j.createContext(null);function ci(s,{relative:u}={}){let{matches:o}=j.useContext(Pt),{pathname:r}=Gt(),f=JSON.stringify(Cu(o));return j.useMemo(()=>Os(s,JSON.parse(f),r,u==="path"),[s,f,r,u])}function og(s,u){return Em(s,u)}function Em(s,u,o){qe(tn(),"useRoutes() may be used only in the context of a <Router> component.");let{navigator:r}=j.useContext(Rt),{matches:f}=j.useContext(Pt),h=f[f.length-1],p=h?h.params:{},x=h?h.pathname:"/",y=h?h.pathnameBase:"/",v=h&&h.route;{let Y=v&&v.path||"";Cm(x,!v||Y.endsWith("*")||Y.endsWith("*?"),`You rendered descendant <Routes> (or called \`useRoutes()\`) at "${x}" (under <Route path="${Y}">) 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.
|
|
10
|
+
|
|
11
|
+
Please change the parent <Route path="${Y}"> to <Route path="${Y==="/"?"*":`${Y}/*`}">.`)}let S=Gt(),g;if(u){let Y=typeof u=="string"?Ia(u):u;qe(y==="/"||Y.pathname?.startsWith(y),`When overriding the location using \`<Routes location>\` or \`useRoutes(routes, location)\`, the location pathname must begin with the portion of the URL pathname that was matched by all parent routes. The current pathname base is "${y}" but pathname "${Y.pathname}" was given in the \`location\` prop.`),g=Y}else g=S;let w=g.pathname||"/",O=w;if(y!=="/"){let Y=y.replace(/^\//,"").split("/");O="/"+w.replace(/^\//,"").split("/").slice(Y.length).join("/")}let k=o&&o.state.matches.length?o.state.matches.map(Y=>Object.assign(Y,{route:o.manifest[Y.route.id]||Y.route})):dm(s,{pathname:O});Yt(v||k!=null,`No routes matched location "${g.pathname}${g.search}${g.hash}" `),Yt(k==null||k[k.length-1].route.element!==void 0||k[k.length-1].route.Component!==void 0||k[k.length-1].route.lazy!==void 0,`Matched leaf route at location "${g.pathname}${g.search}${g.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.`);let B=pg(k&&k.map(Y=>Object.assign({},Y,{params:Object.assign({},p,Y.params),pathname:Zt([y,r.encodeLocation?r.encodeLocation(Y.pathname.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathname]),pathnameBase:Y.pathnameBase==="/"?y:Zt([y,r.encodeLocation?r.encodeLocation(Y.pathnameBase.replace(/%/g,"%25").replace(/\?/g,"%3F").replace(/#/g,"%23")).pathname:Y.pathnameBase])})),f,o);return u&&B?j.createElement(si.Provider,{value:{location:{pathname:"/",search:"",hash:"",state:null,key:"default",mask:void 0,...g},navigationType:"POP"}},B):B}function dg(){let s=jg(),u=Fx(s)?`${s.status} ${s.statusText}`:s instanceof Error?s.message:JSON.stringify(s),o=s instanceof Error?s.stack:null,r="rgba(200,200,200, 0.5)",f={padding:"0.5rem",backgroundColor:r},h={padding:"2px 4px",backgroundColor:r},p=null;return console.error("Error handled by React Router default ErrorBoundary:",s),p=j.createElement(j.Fragment,null,j.createElement("p",null,"💿 Hey developer 👋"),j.createElement("p",null,"You can provide a way better UX than this when your app throws errors by providing your own ",j.createElement("code",{style:h},"ErrorBoundary")," or"," ",j.createElement("code",{style:h},"errorElement")," prop on your route.")),j.createElement(j.Fragment,null,j.createElement("h2",null,"Unexpected Application Error!"),j.createElement("h3",{style:{fontStyle:"italic"}},u),o?j.createElement("pre",{style:f},o):null,p)}var fg=j.createElement(dg,null),Am=class extends j.Component{constructor(s){super(s),this.state={location:s.location,revalidation:s.revalidation,error:s.error}}static getDerivedStateFromError(s){return{error:s}}static getDerivedStateFromProps(s,u){return u.location!==s.location||u.revalidation!=="idle"&&s.revalidation==="idle"?{error:s.error,location:s.location,revalidation:s.revalidation}:{error:s.error!==void 0?s.error:u.error,location:u.location,revalidation:s.revalidation||u.revalidation}}componentDidCatch(s,u){this.props.onError?this.props.onError(s,u):console.error("React Router caught the following error during render",s)}render(){let s=this.state.error;if(this.context&&typeof s=="object"&&s&&"digest"in s&&typeof s.digest=="string"){const o=cg(s.digest);o&&(s=o)}let u=s!==void 0?j.createElement(Pt.Provider,{value:this.props.routeContext},j.createElement(Ru.Provider,{value:s,children:this.props.component})):this.props.children;return this.context?j.createElement(hg,{error:s},u):u}};Am.contextType=jm;var pu=new WeakMap;function hg({children:s,error:u}){let{basename:o}=j.useContext(Rt);if(typeof u=="object"&&u&&"digest"in u&&typeof u.digest=="string"){let r=sg(u.digest);if(r){let f=pu.get(u);if(f)throw f;let h=gm(r.location,o),p=h.absoluteURL||h.to;if(eg(p))throw new Error("Invalid redirect location");if(xm&&!pu.get(u))if(h.isExternal||r.reloadDocument)window.location.href=p;else{const x=Promise.resolve().then(()=>window.__reactRouterDataRouter.navigate(h.to,{replace:r.replace}));throw pu.set(u,x),x}return j.createElement("meta",{httpEquiv:"refresh",content:`0;url=${p}`})}}return s}function mg({routeContext:s,match:u,children:o}){let r=j.useContext(en);return r&&r.static&&r.staticContext&&(u.route.errorElement||u.route.ErrorBoundary)&&(r.staticContext._deepestRenderedBoundaryId=u.route.id),j.createElement(Pt.Provider,{value:s},o)}function pg(s,u=[],o){let r=o?.state;if(s==null){if(!r)return null;if(r.errors)s=r.matches;else if(u.length===0&&!r.initialized&&r.matches.length>0)s=r.matches;else return null}let f=s,h=r?.errors;if(h!=null){let S=f.findIndex(g=>g.route.id&&h?.[g.route.id]!==void 0);qe(S>=0,`Could not find a matching route for errors on route IDs: ${Object.keys(h).join(",")}`),f=f.slice(0,Math.min(f.length,S+1))}let p=!1,x=-1;if(o&&r){p=r.renderFallback;for(let S=0;S<f.length;S++){let g=f[S];if((g.route.HydrateFallback||g.route.hydrateFallbackElement)&&(x=S),g.route.id){let{loaderData:w,errors:O}=r,k=g.route.loader&&!w.hasOwnProperty(g.route.id)&&(!O||O[g.route.id]===void 0);if(g.route.lazy||k){o.isStatic&&(p=!0),x>=0?f=f.slice(0,x+1):f=[f[0]];break}}}}let y=o?.onError,v=r&&y?(S,g)=>{y(S,{location:r.location,params:r.matches?.[0]?.params??{},pattern:Wx(r.matches),errorInfo:g})}:void 0;return f.reduceRight((S,g,w)=>{let O,k=!1,B=null,Y=null;r&&(O=h&&g.route.id?h[g.route.id]:void 0,B=g.route.errorElement||fg,p&&(x<0&&w===0?(Cm("route-fallback",!1,"No `HydrateFallback` element provided to render during initial hydration"),k=!0,Y=null):x===w&&(k=!0,Y=g.route.hydrateFallbackElement||null)));let D=u.concat(f.slice(0,w+1)),G=()=>{let K;return O?K=B:k?K=Y:g.route.Component?K=j.createElement(g.route.Component,null):g.route.element?K=g.route.element:K=S,j.createElement(mg,{match:g,routeContext:{outlet:S,matches:D,isDataRoute:r!=null},children:K})};return r&&(g.route.ErrorBoundary||g.route.errorElement||w===0)?j.createElement(Am,{location:r.location,revalidation:r.revalidation,component:B,error:O,children:G(),routeContext:{outlet:null,matches:D,isDataRoute:!0},onError:v}):G()},null)}function Tu(s){return`${s} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function vg(s){let u=j.useContext(en);return qe(u,Tu(s)),u}function xg(s){let u=j.useContext(Us);return qe(u,Tu(s)),u}function gg(s){let u=j.useContext(Pt);return qe(u,Tu(s)),u}function zu(s){let u=gg(s),o=u.matches[u.matches.length-1];return qe(o.route.id,`${s} can only be used on routes that contain a unique "id"`),o.route.id}function yg(){return zu("useRouteId")}function jg(){let s=j.useContext(Ru),u=xg("useRouteError"),o=zu("useRouteError");return s!==void 0?s:u.errors?.[o]}function _g(){let{router:s}=vg("useNavigate"),u=zu("useNavigate"),o=j.useRef(!1);return Nm(()=>{o.current=!0}),j.useCallback(async(f,h={})=>{Yt(o.current,bm),o.current&&(typeof f=="number"?await s.navigate(f):await s.navigate(f,{fromRouteId:u,...h}))},[s,u])}var nm={};function Cm(s,u,o){!u&&!nm[s]&&(nm[s]=!0,Yt(!1,o))}j.memo(Sg);function Sg({routes:s,manifest:u,future:o,state:r,isStatic:f,onError:h}){return Em(s,void 0,{manifest:u,state:r,isStatic:f,onError:h})}function bg({to:s,replace:u,state:o,relative:r}){qe(tn(),"<Navigate> may be used only in the context of a <Router> component.");let{static:f}=j.useContext(Rt);Yt(!f,"<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:h}=j.useContext(Pt),{pathname:p}=Gt(),x=Ds(),y=Os(s,Cu(h),p,r==="path"),v=JSON.stringify(y);return j.useEffect(()=>{x(JSON.parse(v),{replace:u,state:o,relative:r})},[x,v,r,u,o]),null}function ht(s){qe(!1,"A <Route> is only ever to be used as the child of <Routes> element, never rendered directly. Please wrap your <Route> in a <Routes>.")}function Ng({basename:s="/",children:u=null,location:o,navigationType:r="POP",navigator:f,static:h=!1,useTransitions:p}){qe(!tn(),"You cannot render a <Router> inside another <Router>. You should never have more than one in your app.");let x=s.replace(/^\/*/,"/"),y=j.useMemo(()=>({basename:x,navigator:f,static:h,useTransitions:p,future:{}}),[x,f,h,p]);typeof o=="string"&&(o=Ia(o));let{pathname:v="/",search:S="",hash:g="",state:w=null,key:O="default",mask:k}=o,B=j.useMemo(()=>{let Y=gl(v,x);return Y==null?null:{location:{pathname:Y,search:S,hash:g,state:w,key:O,mask:k},navigationType:r}},[x,v,S,g,w,O,r,k]);return Yt(B!=null,`<Router basename="${x}"> is not able to match the URL "${v}${S}${g}" because it does not start with the basename, so the <Router> won't render anything.`),B==null?null:j.createElement(Rt.Provider,{value:y},j.createElement(si.Provider,{children:u,value:B}))}function Eg({children:s,location:u}){return og(yu(s),u)}function yu(s,u=[]){let o=[];return j.Children.forEach(s,(r,f)=>{if(!j.isValidElement(r))return;let h=[...u,f];if(r.type===j.Fragment){o.push.apply(o,yu(r.props.children,h));return}qe(r.type===ht,`[${typeof r.type=="string"?r.type:r.type.name}] is not a <Route> component. All component children of <Routes> must be a <Route> or <React.Fragment>`),qe(!r.props.index||!r.props.children,"An index route cannot have child routes.");let p={id:r.props.id||h.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,middleware:r.props.middleware,loader:r.props.loader,action:r.props.action,hydrateFallbackElement:r.props.hydrateFallbackElement,HydrateFallback:r.props.HydrateFallback,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.hasErrorBoundary===!0||r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(p.children=yu(r.props.children,h)),o.push(p)}),o}var zs="get",Ms="application/x-www-form-urlencoded";function qs(s){return typeof HTMLElement<"u"&&s instanceof HTMLElement}function Ag(s){return qs(s)&&s.tagName.toLowerCase()==="button"}function Cg(s){return qs(s)&&s.tagName.toLowerCase()==="form"}function Rg(s){return qs(s)&&s.tagName.toLowerCase()==="input"}function Tg(s){return!!(s.metaKey||s.altKey||s.ctrlKey||s.shiftKey)}function zg(s,u){return s.button===0&&(!u||u==="_self")&&!Tg(s)}function ju(s=""){return new URLSearchParams(typeof s=="string"||Array.isArray(s)||s instanceof URLSearchParams?s:Object.keys(s).reduce((u,o)=>{let r=s[o];return u.concat(Array.isArray(r)?r.map(f=>[o,f]):[[o,r]])},[]))}function Mg(s,u){let o=ju(s);return u&&u.forEach((r,f)=>{o.has(f)||u.getAll(f).forEach(h=>{o.append(f,h)})}),o}var Rs=null;function wg(){if(Rs===null)try{new FormData(document.createElement("form"),0),Rs=!1}catch{Rs=!0}return Rs}var kg=new Set(["application/x-www-form-urlencoded","multipart/form-data","text/plain"]);function vu(s){return s!=null&&!kg.has(s)?(Yt(!1,`"${s}" is not a valid \`encType\` for \`<Form>\`/\`<fetcher.Form>\` and will default to "${Ms}"`),null):s}function Og(s,u){let o,r,f,h,p;if(Cg(s)){let x=s.getAttribute("action");r=x?gl(x,u):null,o=s.getAttribute("method")||zs,f=vu(s.getAttribute("enctype"))||Ms,h=new FormData(s)}else if(Ag(s)||Rg(s)&&(s.type==="submit"||s.type==="image")){let x=s.form;if(x==null)throw new Error('Cannot submit a <button> or <input type="submit"> without a <form>');let y=s.getAttribute("formaction")||x.getAttribute("action");if(r=y?gl(y,u):null,o=s.getAttribute("formmethod")||x.getAttribute("method")||zs,f=vu(s.getAttribute("formenctype"))||vu(x.getAttribute("enctype"))||Ms,h=new FormData(x,s),!wg()){let{name:v,type:S,value:g}=s;if(S==="image"){let w=v?`${v}.`:"";h.append(`${w}x`,"0"),h.append(`${w}y`,"0")}else v&&h.append(v,g)}}else{if(qs(s))throw new Error('Cannot submit element that is not <form>, <button>, or <input type="submit|image">');o=zs,r=null,f=Ms,p=s}return h&&f==="text/plain"&&(p=h,h=void 0),{action:r,method:o.toLowerCase(),encType:f,formData:h,body:p}}Object.getOwnPropertyNames(Object.prototype).sort().join("\0");function Mu(s,u){if(s===!1||s===null||typeof s>"u")throw new Error(u)}function Rm(s,u,o,r){let f=typeof s=="string"?new URL(s,typeof window>"u"?"server://singlefetch/":window.location.origin):s;return o?f.pathname.endsWith("/")?f.pathname=`${f.pathname}_.${r}`:f.pathname=`${f.pathname}.${r}`:f.pathname==="/"?f.pathname=`_root.${r}`:u&&gl(f.pathname,u)==="/"?f.pathname=`${ks(u)}/_root.${r}`:f.pathname=`${ks(f.pathname)}.${r}`,f}async function Ug(s,u){if(s.id in u)return u[s.id];try{let o=await import(s.module);return u[s.id]=o,o}catch(o){return console.error(`Error loading route module \`${s.module}\`, reloading page...`),console.error(o),window.__reactRouterContext&&window.__reactRouterContext.isSpaMode,window.location.reload(),new Promise(()=>{})}}function Dg(s){return s==null?!1:s.href==null?s.rel==="preload"&&typeof s.imageSrcSet=="string"&&typeof s.imageSizes=="string":typeof s.rel=="string"&&typeof s.href=="string"}async function qg(s,u,o){let r=await Promise.all(s.map(async f=>{let h=u.routes[f.route.id];if(h){let p=await Ug(h,o);return p.links?p.links():[]}return[]}));return Yg(r.flat(1).filter(Dg).filter(f=>f.rel==="stylesheet"||f.rel==="preload").map(f=>f.rel==="stylesheet"?{...f,rel:"prefetch",as:"style"}:{...f,rel:"prefetch"}))}function im(s,u,o,r,f,h){let p=(y,v)=>o[v]?y.route.id!==o[v].route.id:!0,x=(y,v)=>o[v].pathname!==y.pathname||o[v].route.path?.endsWith("*")&&o[v].params["*"]!==y.params["*"];return h==="assets"?u.filter((y,v)=>p(y,v)||x(y,v)):h==="data"?u.filter((y,v)=>{let S=r.routes[y.route.id];if(!S||!S.hasLoader)return!1;if(p(y,v)||x(y,v))return!0;if(y.route.shouldRevalidate){let g=y.route.shouldRevalidate({currentUrl:new URL(f.pathname+f.search+f.hash,window.origin),currentParams:o[0]?.params||{},nextUrl:new URL(s,window.origin),nextParams:y.params,defaultShouldRevalidate:!0});if(typeof g=="boolean")return g}return!0}):[]}function Hg(s,u,{includeHydrateFallback:o}={}){return Lg(s.map(r=>{let f=u.routes[r.route.id];if(!f)return[];let h=[f.module];return f.clientActionModule&&(h=h.concat(f.clientActionModule)),f.clientLoaderModule&&(h=h.concat(f.clientLoaderModule)),o&&f.hydrateFallbackModule&&(h=h.concat(f.hydrateFallbackModule)),f.imports&&(h=h.concat(f.imports)),h}).flat(1))}function Lg(s){return[...new Set(s)]}function Bg(s){let u={},o=Object.keys(s).sort();for(let r of o)u[r]=s[r];return u}function Yg(s,u){let o=new Set;return new Set(u),s.reduce((r,f)=>{let h=JSON.stringify(Bg(f));return o.has(h)||(o.add(h),r.push({key:h,link:f})),r},[])}function wu(){let s=j.useContext(en);return Mu(s,"You must render this element inside a <DataRouterContext.Provider> element"),s}function Gg(){let s=j.useContext(Us);return Mu(s,"You must render this element inside a <DataRouterStateContext.Provider> element"),s}var ku=j.createContext(void 0);ku.displayName="FrameworkContext";function Hs(){let s=j.useContext(ku);return Mu(s,"You must render this element inside a <HydratedRouter> element"),s}function Qg(s,u){let o=j.useContext(ku),[r,f]=j.useState(!1),[h,p]=j.useState(!1),{onFocus:x,onBlur:y,onMouseEnter:v,onMouseLeave:S,onTouchStart:g}=u,w=j.useRef(null);j.useEffect(()=>{if(s==="render"&&p(!0),s==="viewport"){let B=D=>{D.forEach(G=>{p(G.isIntersecting)})},Y=new IntersectionObserver(B,{threshold:.5});return w.current&&Y.observe(w.current),()=>{Y.disconnect()}}},[s]),j.useEffect(()=>{if(r){let B=setTimeout(()=>{p(!0)},100);return()=>{clearTimeout(B)}}},[r]);let O=()=>{f(!0)},k=()=>{f(!1),p(!1)};return o?s!=="intent"?[h,w,{}]:[h,w,{onFocus:ti(x,O),onBlur:ti(y,k),onMouseEnter:ti(v,O),onMouseLeave:ti(S,k),onTouchStart:ti(g,O)}]:[!1,w,{}]}function ti(s,u){return o=>{s&&s(o),o.defaultPrevented||u(o)}}function Vg({page:s,...u}){let o=tg(),{nonce:r}=Hs(),{router:f}=wu(),h=j.useMemo(()=>dm(f.routes,s,f.basename),[f.routes,s,f.basename]);return h?(u.nonce==null&&r&&(u={...u,nonce:r}),o?j.createElement(Zg,{page:s,matches:h,...u}):j.createElement(Kg,{page:s,matches:h,...u})):null}function Xg(s){let{manifest:u,routeModules:o}=Hs(),[r,f]=j.useState([]);return j.useEffect(()=>{let h=!1;return qg(s,u,o).then(p=>{h||f(p)}),()=>{h=!0}},[s,u,o]),r}function Zg({page:s,matches:u,...o}){let r=Gt(),{future:f}=Hs(),{basename:h}=wu(),p=j.useMemo(()=>{if(s===r.pathname+r.search+r.hash)return[];let x=Rm(s,h,f.v8_trailingSlashAwareDataRequests,"rsc"),y=!1,v=[];for(let S of u)typeof S.route.shouldRevalidate=="function"?y=!0:v.push(S.route.id);return y&&v.length>0&&x.searchParams.set("_routes",v.join(",")),[x.pathname+x.search]},[h,f.v8_trailingSlashAwareDataRequests,s,r,u]);return j.createElement(j.Fragment,null,p.map(x=>j.createElement("link",{key:x,rel:"prefetch",as:"fetch",href:x,...o})))}function Kg({page:s,matches:u,...o}){let r=Gt(),{future:f,manifest:h,routeModules:p}=Hs(),{basename:x}=wu(),{loaderData:y,matches:v}=Gg(),S=j.useMemo(()=>im(s,u,v,h,r,"data"),[s,u,v,h,r]),g=j.useMemo(()=>im(s,u,v,h,r,"assets"),[s,u,v,h,r]),w=j.useMemo(()=>{if(s===r.pathname+r.search+r.hash)return[];let B=new Set,Y=!1;if(u.forEach(G=>{let K=h.routes[G.route.id];!K||!K.hasLoader||(!S.some(ce=>ce.route.id===G.route.id)&&G.route.id in y&&p[G.route.id]?.shouldRevalidate||K.hasClientLoader?Y=!0:B.add(G.route.id))}),B.size===0)return[];let D=Rm(s,x,f.v8_trailingSlashAwareDataRequests,"data");return Y&&B.size>0&&D.searchParams.set("_routes",u.filter(G=>B.has(G.route.id)).map(G=>G.route.id).join(",")),[D.pathname+D.search]},[x,f.v8_trailingSlashAwareDataRequests,y,r,h,S,u,s,p]),O=j.useMemo(()=>Hg(g,h),[g,h]),k=Xg(g);return j.createElement(j.Fragment,null,w.map(B=>j.createElement("link",{key:B,rel:"prefetch",as:"fetch",href:B,...o})),O.map(B=>j.createElement("link",{key:B,rel:"modulepreload",href:B,...o})),k.map(({key:B,link:Y})=>j.createElement("link",{key:B,nonce:o.nonce,...Y,crossOrigin:Y.crossOrigin??o.crossOrigin})))}function Jg(...s){return u=>{s.forEach(o=>{typeof o=="function"?o(u):o!=null&&(o.current=u)})}}var $g=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u";try{$g&&(window.__reactRouterVersion="7.18.2")}catch{}function Fg({basename:s,children:u,useTransitions:o,window:r}){let f=j.useRef();f.current==null&&(f.current=Cx({window:r,v5Compat:!0}));let h=f.current,[p,x]=j.useState({action:h.action,location:h.location}),y=j.useCallback(v=>{o===!1?x(v):j.startTransition(()=>x(v))},[o]);return j.useLayoutEffect(()=>h.listen(y),[h,y]),j.createElement(Ng,{basename:s,children:u,location:p.location,navigationType:p.action,navigator:h,useTransitions:o})}var mt=j.forwardRef(function({onClick:u,discover:o="render",prefetch:r="none",relative:f,reloadDocument:h,replace:p,mask:x,state:y,target:v,to:S,preventScrollReset:g,viewTransition:w,defaultShouldRevalidate:O,...k},B){let{basename:Y,navigator:D,useTransitions:G}=j.useContext(Rt),K=typeof S=="string"&&Au.test(S),ce=gm(S,Y);S=ce.to;let ie=rg(S,{relative:f}),he=Gt(),$=null;if(x){let V=Os(x,[],he.mask?he.mask.pathname:"/",!0);Y!=="/"&&(V.pathname=V.pathname==="/"?Y:Zt([Y,V.pathname])),$=D.createHref(V)}let[I,je,we]=Qg(r,k),ke=Ig(S,{replace:p,mask:x,state:y,target:v,preventScrollReset:g,relative:f,viewTransition:w,defaultShouldRevalidate:O,useTransitions:G});function z(V){u&&u(V),V.defaultPrevented||ke(V)}let ae=!(ce.isExternal||h),_e=j.createElement("a",{...k,...we,href:(ae?$:void 0)||ce.absoluteURL||ie,onClick:ae?z:u,ref:Jg(B,je),target:v,"data-discover":!K&&o==="render"?"true":void 0});return I&&!K?j.createElement(j.Fragment,null,_e,j.createElement(Vg,{page:ie})):_e});mt.displayName="Link";var _u=j.forwardRef(function({"aria-current":u="page",caseSensitive:o=!1,className:r="",end:f=!1,style:h,to:p,viewTransition:x,children:y,...v},S){let g=ci(p,{relative:v.relative}),w=Gt(),O=j.useContext(Us),{navigator:k,basename:B}=j.useContext(Rt),Y=O!=null&&ny(g)&&x===!0,D=k.encodeLocation?k.encodeLocation(g).pathname:g.pathname,G=w.pathname,K=O&&O.navigation&&O.navigation.location?O.navigation.location.pathname:null;o||(G=G.toLowerCase(),K=K?K.toLowerCase():null,D=D.toLowerCase()),K&&B&&(K=gl(K,B)||K);const ce=D!=="/"&&D.endsWith("/")?D.length-1:D.length;let ie=G===D||!f&&G.startsWith(D)&&G.charAt(ce)==="/",he=K!=null&&(K===D||!f&&K.startsWith(D)&&K.charAt(D.length)==="/"),$={isActive:ie,isPending:he,isTransitioning:Y},I=ie?u:void 0,je;typeof r=="function"?je=r($):je=[r,ie?"active":null,he?"pending":null,Y?"transitioning":null].filter(Boolean).join(" ");let we=typeof h=="function"?h($):h;return j.createElement(mt,{...v,"aria-current":I,className:je,ref:S,style:we,to:p,viewTransition:x},typeof y=="function"?y($):y)});_u.displayName="NavLink";var Wg=j.forwardRef(({discover:s="render",fetcherKey:u,navigate:o,reloadDocument:r,replace:f,state:h,method:p=zs,action:x,onSubmit:y,relative:v,preventScrollReset:S,viewTransition:g,defaultShouldRevalidate:w,...O},k)=>{let{useTransitions:B}=j.useContext(Rt),Y=ly(),D=ay(x,{relative:v}),G=p.toLowerCase()==="get"?"get":"post",K=typeof x=="string"&&Au.test(x),ce=ie=>{if(y&&y(ie),ie.defaultPrevented)return;ie.preventDefault();let he=ie.nativeEvent.submitter,$=he?.getAttribute("formmethod")||p,I=()=>Y(he||ie.currentTarget,{fetcherKey:u,method:$,navigate:o,replace:f,state:h,relative:v,preventScrollReset:S,viewTransition:g,defaultShouldRevalidate:w});B&&o!==!1?j.startTransition(()=>I()):I()};return j.createElement("form",{ref:k,method:G,action:D,onSubmit:r?y:ce,...O,"data-discover":!K&&s==="render"?"true":void 0})});Wg.displayName="Form";function Pg(s){return`${s} must be used within a data router. See https://reactrouter.com/en/main/routers/picking-a-router.`}function Tm(s){let u=j.useContext(en);return qe(u,Pg(s)),u}function Ig(s,{target:u,replace:o,mask:r,state:f,preventScrollReset:h,relative:p,viewTransition:x,defaultShouldRevalidate:y,useTransitions:v}={}){let S=Ds(),g=Gt(),w=ci(s,{relative:p});return j.useCallback(O=>{if(zg(O,u)){O.preventDefault();let k=o!==void 0?o:ai(g)===ai(w),B=()=>S(s,{replace:k,mask:r,state:f,preventScrollReset:h,relative:p,viewTransition:x,defaultShouldRevalidate:y});v?j.startTransition(()=>B()):B()}},[g,S,w,o,r,f,u,s,h,p,x,y,v])}function It(s){Yt(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 u=j.useRef(ju(s)),o=j.useRef(!1),r=Gt(),f=j.useMemo(()=>Mg(r.search,o.current?null:u.current),[r.search]),h=Ds(),p=j.useCallback((x,y)=>{const v=ju(typeof x=="function"?x(new URLSearchParams(f)):x);o.current=!0,h("?"+v,y)},[h,f]);return[f,p]}var ey=0,ty=()=>`__${String(++ey)}__`;function ly(){let{router:s}=Tm("useSubmit"),{basename:u}=j.useContext(Rt),o=yg(),r=s.fetch,f=s.navigate;return j.useCallback(async(h,p={})=>{let{action:x,method:y,encType:v,formData:S,body:g}=Og(h,u);if(p.navigate===!1){let w=p.fetcherKey||ty();await r(w,o,p.action||x,{defaultShouldRevalidate:p.defaultShouldRevalidate,preventScrollReset:p.preventScrollReset,formData:S,body:g,formMethod:p.method||y,formEncType:p.encType||v,flushSync:p.flushSync})}else await f(p.action||x,{defaultShouldRevalidate:p.defaultShouldRevalidate,preventScrollReset:p.preventScrollReset,formData:S,body:g,formMethod:p.method||y,formEncType:p.encType||v,replace:p.replace,state:p.state,fromRouteId:o,flushSync:p.flushSync,viewTransition:p.viewTransition})},[r,f,u,o])}function ay(s,{relative:u}={}){let{basename:o}=j.useContext(Rt),r=j.useContext(Pt);qe(r,"useFormAction must be used inside a RouteContext");let[f]=r.matches.slice(-1),h={...ci(s||".",{relative:u})},p=Gt();if(s==null){h.search=p.search;let x=new URLSearchParams(h.search),y=x.getAll("index");if(y.some(S=>S==="")){x.delete("index"),y.filter(g=>g).forEach(g=>x.append("index",g));let S=x.toString();h.search=S?`?${S}`:""}}return(!s||s===".")&&f.route.index&&(h.search=h.search?h.search.replace(/^\?/,"?index&"):"?index"),o!=="/"&&(h.pathname=h.pathname==="/"?o:Zt([o,h.pathname])),ai(h)}function ny(s,{relative:u}={}){let o=j.useContext(_m);qe(o!=null,"`useViewTransitionState` must be used within `react-router-dom`'s `RouterProvider`. Did you accidentally import `RouterProvider` from `react-router`?");let{basename:r}=Tm("useViewTransitionState"),f=ci(s,{relative:u});if(!o.isTransitioning)return!1;let h=gl(o.currentLocation.pathname,r)||o.currentLocation.pathname,p=gl(o.nextLocation.pathname,r)||o.nextLocation.pathname;return ws(f.pathname,p)!=null||ws(f.pathname,h)!=null}const zm=(...s)=>s.filter((u,o,r)=>!!u&&u.trim()!==""&&r.indexOf(u)===o).join(" ").trim();const iy=s=>s.replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase();const sy=s=>s.replace(/^([A-Z])|[\s-_]+(\w)/g,(u,o,r)=>r?r.toUpperCase():o.toLowerCase());const sm=s=>{const u=sy(s);return u.charAt(0).toUpperCase()+u.slice(1)};var xu={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};const cy=s=>{for(const u in s)if(u.startsWith("aria-")||u==="role"||u==="title")return!0;return!1},ry=j.createContext({}),uy=()=>j.useContext(ry),oy=j.forwardRef(({color:s,size:u,strokeWidth:o,absoluteStrokeWidth:r,className:f="",children:h,iconNode:p,...x},y)=>{const{size:v=24,strokeWidth:S=2,absoluteStrokeWidth:g=!1,color:w="currentColor",className:O=""}=uy()??{},k=r??g?Number(o??S)*24/Number(u??v):o??S;return j.createElement("svg",{ref:y,...xu,width:u??v??xu.width,height:u??v??xu.height,stroke:s??w,strokeWidth:k,className:zm("lucide",O,f),...!h&&!cy(x)&&{"aria-hidden":"true"},...x},[...p.map(([B,Y])=>j.createElement(B,Y)),...Array.isArray(h)?h:[h]])});const te=(s,u)=>{const o=j.forwardRef(({className:r,...f},h)=>j.createElement(oy,{ref:h,iconNode:u,className:zm(`lucide-${iy(sm(s))}`,`lucide-${s}`,r),...f}));return o.displayName=sm(s),o};const dy=[["path",{d:"M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2",key:"169zse"}]],Su=te("activity",dy);const fy=[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]],cm=te("arrow-down",fy);const hy=[["path",{d:"M5 12h14",key:"1ays0h"}],["path",{d:"m12 5 7 7-7 7",key:"xquz4c"}]],Lt=te("arrow-right",hy);const my=[["path",{d:"M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z",key:"lc1i9w"}],["path",{d:"m7 16.5-4.74-2.85",key:"1o9zyk"}],["path",{d:"m7 16.5 5-3",key:"va8pkn"}],["path",{d:"M7 16.5v5.17",key:"jnp8gn"}],["path",{d:"M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z",key:"8zsnat"}],["path",{d:"m17 16.5-5-3",key:"8arw3v"}],["path",{d:"m17 16.5 4.74-2.85",key:"8rfmw"}],["path",{d:"M17 16.5v5.17",key:"k6z78m"}],["path",{d:"M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z",key:"1xygjf"}],["path",{d:"M12 8 7.26 5.15",key:"1vbdud"}],["path",{d:"m12 8 4.74-2.85",key:"3rx089"}],["path",{d:"M12 13.5V8",key:"1io7kd"}]],Pa=te("boxes",my);const py=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],Kt=te("check",py);const vy=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["line",{x1:"12",x2:"12",y1:"8",y2:"12",key:"1pkeuh"}],["line",{x1:"12",x2:"12.01",y1:"16",y2:"16",key:"4dfq90"}]],xy=te("circle-alert",vy);const gy=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],Mm=te("circle-check",gy);const yy=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["circle",{cx:"12",cy:"12",r:"1",key:"41hilf"}]],wm=te("circle-dot",yy);const jy=[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]],_y=te("circle-question-mark",jy);const Sy=[["rect",{width:"8",height:"4",x:"8",y:"2",rx:"1",ry:"1",key:"tgr4d6"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v14a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h2",key:"116196"}],["path",{d:"m9 14 2 2 4-4",key:"df797q"}]],ni=te("clipboard-check",Sy);const by=[["ellipse",{cx:"12",cy:"5",rx:"9",ry:"3",key:"msslwz"}],["path",{d:"M3 5V19A9 3 0 0 0 21 19V5",key:"1wlel7"}],["path",{d:"M3 12A9 3 0 0 0 21 12",key:"mv7ke4"}]],km=te("database",by);const Ny=[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],Ey=te("eye",Ny);const Ay=[["path",{d:"M10.5 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v6",key:"g5mvt7"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m14 20 2 2 4-4",key:"15kota"}]],Om=te("file-check-corner",Ay);const Cy=[["path",{d:"M16 22h2a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v2.85",key:"ryk6xj"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M8 14v2.2l1.6 1",key:"6m4bie"}],["circle",{cx:"8",cy:"16",r:"6",key:"10v15b"}]],Um=te("file-clock",Cy);const Ry=[["path",{d:"M4 12.15V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2h-3.35",key:"1wthlu"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m5 16-3 3 3 3",key:"331omg"}],["path",{d:"m9 22 3-3-3-3",key:"lsp7cz"}]],Ls=te("file-code-corner",Ry);const Ty=[["path",{d:"M4.226 20.925A2 2 0 0 0 6 22h12a2 2 0 0 0 2-2V8a2.4 2.4 0 0 0-.706-1.706l-3.588-3.588A2.4 2.4 0 0 0 14 2H6a2 2 0 0 0-2 2v3.127",key:"wfxp4w"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"m5 11-3 3",key:"1dgrs4"}],["path",{d:"m5 17-3-3h10",key:"1mvvaf"}]],zy=te("file-output",Ty);const My=[["path",{d:"M11.35 22H6a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.706.706l3.588 3.588A2.4 2.4 0 0 1 20 8v5.35",key:"17jvcc"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M14 19h6",key:"bvotb8"}],["path",{d:"M17 16v6",key:"18yu1i"}]],Bs=te("file-plus-corner",My);const wy=[["path",{d:"M4 22V4a1 1 0 0 1 .4-.8A6 6 0 0 1 8 2c3 0 5 2 7.333 2q2 0 3.067-.8A1 1 0 0 1 20 4v10a1 1 0 0 1-.4.8A6 6 0 0 1 16 16c-3 0-5-2-8-2a6 6 0 0 0-4 1.528",key:"1jaruq"}]],ky=te("flag",wy);const Oy=[["path",{d:"M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2",key:"18mbvz"}],["path",{d:"M6.453 15h11.094",key:"3shlmq"}],["path",{d:"M8.5 2h7",key:"csnxdl"}]],Dm=te("flask-conical",Oy);const Uy=[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}],["path",{d:"m9 13 2 2 4-4",key:"6343dt"}]],Dy=te("folder-check",Uy);const qy=[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]],qm=te("git-branch",qy);const Hy=[["circle",{cx:"12",cy:"18",r:"3",key:"1mpf1b"}],["circle",{cx:"6",cy:"6",r:"3",key:"1lh9wr"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["path",{d:"M18 9v2c0 .6-.4 1-1 1H7c-.6 0-1-.4-1-1V9",key:"1uq4wg"}],["path",{d:"M12 12v3",key:"158kv8"}]],Ou=te("git-fork",Hy);const Ly=[["path",{d:"M16 5h6",key:"1vod17"}],["path",{d:"M19 2v6",key:"4bpg5p"}],["path",{d:"M21 11.5V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h7.5",key:"1ue2ih"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}]],By=te("image-plus",Ly);const Yy=[["polyline",{points:"22 12 16 12 14 15 10 15 8 12 2 12",key:"o97t9d"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}]],bu=te("inbox",Yy);const Gy=[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]],Qy=te("layout-dashboard",Gy);const Vy=[["path",{d:"M9 17H7A5 5 0 0 1 7 7h2",key:"8i5ue5"}],["path",{d:"M15 7h2a5 5 0 1 1 0 10h-2",key:"1b9ql8"}],["line",{x1:"8",x2:"16",y1:"12",y2:"12",key:"1jonct"}]],Hm=te("link-2",Vy);const Xy=[["path",{d:"M13 5h8",key:"a7qcls"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 19h8",key:"c3s6r1"}],["path",{d:"m3 17 2 2 4-4",key:"1jhpwq"}],["path",{d:"m3 7 2 2 4-4",key:"1obspn"}]],Zy=te("list-checks",Xy);const Ky=[["path",{d:"M2 5h20",key:"1fs1ex"}],["path",{d:"M6 12h12",key:"8npq4p"}],["path",{d:"M9 19h6",key:"456am0"}]],Jy=te("list-filter",Ky);const $y=[["path",{d:"M8 5h13",key:"1pao27"}],["path",{d:"M13 12h8",key:"h98zly"}],["path",{d:"M13 19h8",key:"c3s6r1"}],["path",{d:"M3 10a2 2 0 0 0 2 2h3",key:"1npucw"}],["path",{d:"M3 5v12a2 2 0 0 0 2 2h3",key:"x1gjn2"}]],Fy=te("list-tree",$y);const Wy=[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]],Py=te("loader-circle",Wy);const Iy=[["circle",{cx:"12",cy:"16",r:"1",key:"1au0dj"}],["rect",{x:"3",y:"10",width:"18",height:"12",rx:"2",key:"6s8ecr"}],["path",{d:"M7 10V7a5 5 0 0 1 10 0v3",key:"1pqi11"}]],ej=te("lock-keyhole",Iy);const tj=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}],["path",{d:"M7 11h10",key:"1twpyw"}],["path",{d:"M7 15h6",key:"d9of3u"}],["path",{d:"M7 7h8",key:"af5zfr"}]],lj=te("message-square-text",tj);const aj=[["path",{d:"M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z",key:"18887p"}],["path",{d:"M12 15h.01",key:"q59x07"}],["path",{d:"M12 7v4",key:"xawao1"}]],ri=te("message-square-warning",aj);const nj=[["rect",{x:"16",y:"16",width:"6",height:"6",rx:"1",key:"4q2zg0"}],["rect",{x:"2",y:"16",width:"6",height:"6",rx:"1",key:"8cvhb9"}],["rect",{x:"9",y:"2",width:"6",height:"6",rx:"1",key:"1egb70"}],["path",{d:"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3",key:"1jsf9p"}],["path",{d:"M12 12V8",key:"2874zd"}]],Uu=te("network",nj);const ij=[["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["rect",{width:"16",height:"20",x:"4",y:"2",rx:"2",key:"1nb95v"}],["path",{d:"M15 2v20",key:"dcj49h"}],["path",{d:"M15 7h5",key:"1xj5lc"}],["path",{d:"M15 12h5",key:"w5shd9"}],["path",{d:"M15 17h5",key:"1qaofu"}]],sj=te("notebook-tabs",ij);const cj=[["path",{d:"M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z",key:"e79jfc"}],["circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor",key:"1okk4w"}],["circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor",key:"f64h9f"}],["circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor",key:"qy21gx"}],["circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor",key:"fotxhn"}]],Du=te("palette",cj);const rj=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M9 3v18",key:"fh3hqa"}]],uj=te("panel-left",rj);const oj=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}],["path",{d:"M3 9h18",key:"1pudct"}],["path",{d:"M9 21V9",key:"1oto5p"}]],dj=te("panels-top-left",oj);const fj=[["path",{d:"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497z",key:"1a8usu"}],["path",{d:"m15 5 4 4",key:"1mk7zo"}]],Lm=te("pencil",fj);const hj=[["path",{d:"M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z",key:"10ikf1"}]],qu=te("play",hj);const mj=[["path",{d:"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8",key:"v9h5vc"}],["path",{d:"M21 3v5h-5",key:"1q7to0"}],["path",{d:"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16",key:"3uifl3"}],["path",{d:"M8 16H3v5",key:"1cv678"}]],Ys=te("refresh-cw",mj);const pj=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}],["path",{d:"M12 7v5l4 2",key:"1fdv2h"}]],vj=te("rotate-ccw-clock",pj);const xj=[["path",{d:"M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8",key:"1357e3"}],["path",{d:"M3 3v5h5",key:"1xhq8a"}]],Bm=te("rotate-ccw",xj);const gj=[["circle",{cx:"6",cy:"19",r:"3",key:"1kj8tv"}],["path",{d:"M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15",key:"1d8sl"}],["circle",{cx:"18",cy:"5",r:"3",key:"gq8acd"}]],Ym=te("route",gj);const yj=[["path",{d:"M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z",key:"1c8476"}],["path",{d:"M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7",key:"1ydtos"}],["path",{d:"M7 3v4a1 1 0 0 0 1 1h7",key:"t51u73"}]],Gs=te("save",yj);const jj=[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]],Hu=te("search",jj);const _j=[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]],Sj=te("send",_j);const bj=[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]],Gm=te("settings",bj);const Nj=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"M12 8v4",key:"1got3b"}],["path",{d:"M12 16h.01",key:"1drbdi"}]],Ej=te("shield-alert",Nj);const Aj=[["path",{d:"M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z",key:"oel41y"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]],Qm=te("shield-check",Aj);const Cj=[["path",{d:"M10 5H3",key:"1qgfaw"}],["path",{d:"M12 19H3",key:"yhmn1j"}],["path",{d:"M14 3v4",key:"1sua03"}],["path",{d:"M16 17v4",key:"1q0r14"}],["path",{d:"M21 12h-9",key:"1o4lsq"}],["path",{d:"M21 19h-5",key:"1rlt1p"}],["path",{d:"M21 5h-7",key:"1oszz2"}],["path",{d:"M8 10v4",key:"tgpxqk"}],["path",{d:"M8 12H3",key:"a7s4jb"}]],Rj=te("sliders-horizontal",Cj);const Tj=[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]],zj=te("square-terminal",Tj);const Mj=[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",key:"afitv7"}]],wj=te("square",Mj);const kj=[["path",{d:"M10 11v6",key:"nco0om"}],["path",{d:"M14 11v6",key:"outv1u"}],["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]],Vm=te("trash-2",kj);const Oj=[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3",key:"wmoenq"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]],Xm=te("triangle-alert",Oj);const Uj=[["path",{d:"M12 3v12",key:"1x0j5s"}],["path",{d:"m17 8-5-5-5 5",key:"7q97r8"}],["path",{d:"M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4",key:"ih7n3h"}]],Dj=te("upload",Uj);const qj=[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]],ln=te("x",qj),Zm=j.createContext("");function ne({className:s="",variant:u="default",size:o="default",...r}){return a.jsx("button",{"data-slot":"button","data-variant":u,"data-size":o,className:s,...r})}function ze({className:s="",children:u,...o}){return a.jsx("span",{"data-slot":"badge",className:s,...o,children:u})}function an({value:s,onValueChange:u,children:o,label:r}){const f=j.useId();return a.jsx(Zm.Provider,{value:f,children:a.jsx("div",{"data-slot":"tabs","data-tabs-id":f,"data-value":s,"data-label":r,onClick:h=>{const p=h.target.closest("[data-tab-value]");p?.dataset.tabsId===f&&p.dataset.tabValue&&u(p.dataset.tabValue)},children:o})})}function nn({children:s,label:u}){return a.jsx("div",{"data-slot":"tabs-list",role:"tablist","aria-label":u,children:s})}function pt({value:s,active:u,children:o}){const r=j.useContext(Zm);return a.jsx(ne,{"data-tabs-id":r,"data-tab-value":s,role:"tab","aria-selected":u,variant:"ghost",children:o})}function Bt({value:s,active:u,children:o}){return u?a.jsx("div",{"data-slot":"tabs-content",role:"tabpanel","data-tab-panel":s,children:o}):null}function Kl({pageId:s,title:u,description:o,onRefresh:r}){return a.jsxs("header",{className:"page-header",children:[a.jsxs("div",{className:"page-heading",children:[a.jsxs("div",{className:"page-kicker",children:[a.jsx("code",{children:s}),a.jsx("span",{children:"正式管理器"})]}),a.jsx("h1",{children:u}),a.jsx("p",{children:o})]}),a.jsx("div",{className:"page-actions",children:a.jsxs(ne,{variant:"outline",onClick:r||(()=>window.location.reload()),children:[a.jsx(Ys,{"data-icon":"inline-start"}),"刷新状态"]})})]})}const Hj={active:"进行中",blocked:"被阻断",completed:"已完成",pending:"待开始",waiting:"等待中","ready-to-complete":"可完成"};function ii(s){return Hj[s]||s}function Lj({projection:s}){const u=Ds(),o=s.workflow.nodes.find(f=>f.node_id===s.workbench.focus_node_id)||s.workflow.nodes[0],r=[{id:"MISSING",title:`${o.missing_conditions.length} 项完成条件尚未满足`,description:o.missing_conditions.length?o.missing_conditions.join(" · "):"当前节点没有缺失完成条件",type:"完成条件",status:o.missing_conditions.length?"待处理":"正常",icon:xy},{id:"BLOCKING",title:`${o.blocking_conditions.length} 项阻断条件`,description:o.blocking_conditions.length?o.blocking_conditions.join(" · "):"当前节点没有登记阻断项",type:"阻断条件",status:o.blocking_conditions.length?"被阻断":"正常",icon:Ej},{id:"GATES",title:`${s.workbench.attention.pending_gates} 个人工审核点待处理`,description:o.contract.internal_gates.length?o.contract.internal_gates.join(" · "):"当前节点不要求人工审核点",type:"人工审核",status:s.workbench.attention.pending_gates?"等待决策":"正常",icon:Mm}];return a.jsxs("div",{className:"page-layout",children:[a.jsx(Kl,{pageId:"P01",title:"工作台",description:"当前项目最需要关注的事项与下一步入口。"}),a.jsxs("div",{className:"page-scroll",children:[a.jsxs("div",{className:"summary-band",children:[a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"当前范围"}),a.jsx("strong",{children:s.project.iteration_id||"尚未建立"})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"当前节点"}),a.jsxs("strong",{children:[o.node_id.slice(0,2)," ",a.jsxs("small",{children:["· ",o.name]})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"待处理条件"}),a.jsxs("strong",{children:[o.missing_conditions.length+o.blocking_conditions.length," ",a.jsx("small",{children:"· 正式状态依据"})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"节点状态"}),a.jsx("strong",{children:ii(o.state)})]})]}),a.jsxs("div",{className:"content-grid",children:[a.jsxs("div",{className:"content-main",children:[a.jsxs("section",{className:"flat-section workbench-current",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"当前执行上下文"}),a.jsx("span",{children:"这里只显示当前态势,完整流程在 P02"})]}),a.jsxs("div",{className:"current-node-panel",children:[a.jsxs("div",{className:"current-node-identity",children:[a.jsx("code",{children:o.node_id}),a.jsx("strong",{children:o.name}),a.jsx(ze,{className:`status-badge ${o.state}`,children:ii(o.state)})]}),a.jsxs("div",{className:"current-node-facts",children:[a.jsxs("span",{children:[a.jsx("small",{children:"执行次数"}),a.jsx("strong",{children:o.node_attempt})]}),a.jsxs("span",{children:[a.jsx("small",{children:"尚缺条件"}),a.jsxs("strong",{children:[o.missing_conditions.length," 项"]})]}),a.jsxs("span",{children:[a.jsx("small",{children:"阻断条件"}),a.jsxs("strong",{children:[o.blocking_conditions.length," 项"]})]})]}),a.jsxs(ne,{variant:"outline",onClick:()=>u(`/workflow?node=${o.node_id}`),children:["查看流程依据",a.jsx(Lt,{"data-icon":"inline-end"})]})]})]}),a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"需要关注"}),a.jsx("span",{children:"直接来自当前节点的派生状态"})]}),a.jsxs("table",{className:"data-table attention-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{style:{width:104},children:"编号"}),a.jsx("th",{children:"事项"}),a.jsx("th",{style:{width:120},children:"类型"}),a.jsx("th",{style:{width:110},children:"状态"}),a.jsx("th",{style:{width:64},"aria-label":"操作"})]})}),a.jsx("tbody",{children:r.map(f=>{const h=f.icon;return a.jsxs("tr",{onClick:()=>u(`/workflow?node=${o.node_id}`),children:[a.jsx("td",{children:a.jsx("code",{children:f.id})}),a.jsxs("td",{children:[a.jsxs("span",{className:"cell-title",children:[a.jsx(h,{"aria-hidden":"true"}),f.title]}),a.jsx("span",{className:"cell-meta",children:f.description})]}),a.jsx("td",{children:f.type}),a.jsx("td",{children:a.jsx(ze,{className:`status-badge ${f.status==="正常"?"completed":"waiting"}`,children:f.status})}),a.jsx("td",{children:a.jsx(ne,{size:"icon",variant:"ghost","aria-label":`查看 ${f.title}`,children:a.jsx(Lt,{})})})]},f.id)})})]})]})]}),a.jsxs("aside",{className:"detail-rail",children:[a.jsxs("div",{className:"rail-header",children:[a.jsx("span",{children:"下一行动"}),a.jsx("code",{children:o.node_id.slice(0,2)})]}),a.jsxs("div",{className:"rail-body",children:[a.jsx(qm,{className:"rail-icon","aria-hidden":"true"}),a.jsx("h2",{children:s.workbench.next_action}),a.jsx("p",{children:"状态来自正式检查命令的派生结果,管理器不提供手工改写节点状态的入口。"}),a.jsxs("dl",{className:"meta-list",children:[a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"状态来源"}),a.jsx("dd",{children:a.jsx("code",{children:"derived_node_states"})})]}),a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"完成就绪"}),a.jsx("dd",{children:o.completion_ready?"是":"否"})]}),a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"运行凭证"}),a.jsx("dd",{children:o.completion_receipt||"尚未生成"})]}),a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"状态修订"}),a.jsx("dd",{children:s.project.state_revision})]})]}),a.jsx("div",{className:"rail-actions",children:a.jsxs(ne,{onClick:()=>u(`/workflow?node=${o.node_id}`),children:["进入开发流程",a.jsx(Lt,{"data-icon":"inline-end"})]})})]})]})]})]})]})}function ui(s,u=""){const[o,r]=j.useState(0),[f,h]=j.useState({status:"loading",data:null,error:null}),p=j.useCallback(()=>r(x=>x+1),[]);return j.useEffect(()=>{const x=new AbortController;h(v=>v.status==="ready"?v:{status:"loading",data:null,error:null});const y=u?`?${u}`:"";return fetch(`/api/v1/resources/${encodeURIComponent(s)}${y}`,{signal:x.signal,headers:{Accept:"application/json"}}).then(async v=>{const S=await v.json();if(!v.ok)throw new Error(S?.error?.message||`资源请求失败(${v.status})`);return S}).then(v=>h({status:"ready",data:v,error:null})).catch(v=>{v.name!=="AbortError"&&h({status:"error",data:null,error:v.message})}),()=>x.abort()},[u,s,o]),{...f,refresh:p}}async function He(s,u){const o=await fetch(`/api/v1/actions/${encodeURIComponent(s)}`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json"},body:JSON.stringify(u)}),r=await o.json();if(!o.ok)throw new Error(r?.error?.message||`操作失败(${o.status})`);return r}function it(s,u,o="-"){const r=s[u];return r==null||r===""?o:String(r)}function Bj({projection:s,refresh:u}){const[o,r]=It(),f=o.get("tab")==="history"?"history":"pending",h=f==="pending"?s.facts.decisions.pending:s.facts.decisions.history,p=o.get("decision"),x=h.find(D=>it(D,"decision_id",it(D,"gate_id"))===p)||h[0]||null,[y,v]=j.useState(""),[S,g]=j.useState(""),[w,O]=j.useState(!1),k=D=>{const G=new URLSearchParams(o);D==="pending"?G.delete("tab"):G.set("tab",D),G.delete("decision"),r(G,{replace:!0})},B=D=>{const G=new URLSearchParams(o);G.set("decision",D),r(G,{replace:!0})},Y=async D=>{if(x){O(!0),g("");try{await He("gate-decision-apply",{gate_id:it(x,"gate_id"),decision:D,actor:"human:manager-user",comment:y,evidence:Array.isArray(x.evidence)?x.evidence:[],expected_scope_revision:s.project.state_revision,idempotency_key:crypto.randomUUID()}),g(D==="approved"?"决定已批准":"决定已退回"),u()}catch(G){g(G.message)}finally{O(!1)}}};return a.jsxs("div",{className:"page-layout",children:[a.jsx(Kl,{pageId:"P06",title:"决策收件箱",description:"处理非原型类人工决定;批准和退回都可以附加供 AI 读取的评论。",onRefresh:u}),a.jsxs("div",{className:"page-scroll decisions-page",children:[a.jsxs("div",{className:"summary-band",children:[a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"待决定"}),a.jsxs("strong",{children:[s.facts.decisions.pending.length," ",a.jsx("small",{children:"项"})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"决定历史"}),a.jsxs("strong",{children:[s.facts.decisions.history.length," ",a.jsx("small",{children:"项"})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"超时规则"}),a.jsxs("strong",{children:["无 ",a.jsx("small",{children:"· 始终等待人工决定"})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"状态修订"}),a.jsx("strong",{children:s.project.state_revision})]})]}),a.jsxs(an,{label:"决定视图",onValueChange:k,value:f,children:[a.jsx("div",{className:"workflow-tabbar",children:a.jsxs(nn,{label:"决定视图",children:[a.jsxs(pt,{active:f==="pending",value:"pending",children:[a.jsx(bu,{"aria-hidden":"true"}),"待决定"]}),a.jsxs(pt,{active:f==="history",value:"history",children:[a.jsx(lj,{"aria-hidden":"true"}),"决定历史"]})]})}),a.jsx(Bt,{active:!0,value:f,children:h.length?a.jsxs("div",{className:"fact-split",children:[a.jsxs("section",{className:"flat-section fact-list-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:f==="pending"?"待决定事项":"决定历史"}),a.jsx("span",{children:"决定没有自动超时"})]}),a.jsxs("table",{className:"data-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{style:{width:150},children:"编号"}),a.jsx("th",{children:"决定目标"}),a.jsx("th",{style:{width:130},children:"节点 / 结果"}),a.jsx("th",{style:{width:54},"aria-label":"打开"})]})}),a.jsx("tbody",{children:h.map(D=>{const G=it(D,"decision_id",it(D,"gate_id"));return a.jsxs("tr",{className:x===D?"selected":"",onClick:()=>B(G),children:[a.jsx("td",{children:a.jsx("code",{children:G})}),a.jsxs("td",{children:[a.jsx("strong",{children:it(D,"title",it(D,"gate_id"))}),a.jsx("span",{className:"cell-meta",children:it(D,"rationale",it(D,"requested_at","等待人工处理"))})]}),a.jsx("td",{children:a.jsx(ze,{className:"status-badge waiting",children:it(D,f==="pending"?"node":"decision","待决定")})}),a.jsx("td",{children:a.jsx(ne,{"aria-label":`查看 ${G}`,size:"icon",variant:"ghost",children:a.jsx(Lt,{})})})]},G)})})]})]}),x?a.jsxs("aside",{className:"detail-rail fact-detail",children:[a.jsxs("div",{className:"rail-header",children:[a.jsx("span",{children:"决定详情"}),a.jsx("code",{children:it(x,"gate_id")})]}),a.jsxs("div",{className:"rail-body",children:[a.jsx("h2",{children:it(x,"title",it(x,"gate_id"))}),a.jsx("dl",{className:"meta-list",children:Object.entries(x).map(([D,G])=>a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:D}),a.jsx("dd",{children:Array.isArray(G)?G.join(" · ")||"无":String(G??"-")})]},D))}),a.jsxs("section",{className:"comment-region",children:[a.jsx("strong",{children:"决定评论"}),f==="pending"?a.jsxs(a.Fragment,{children:[a.jsx("textarea",{"aria-label":"决定评论",value:y,onChange:D=>v(D.target.value),placeholder:"可选;批准和退回均可填写,供 AI 读取"}),a.jsxs("div",{className:"decision-actions",children:[a.jsxs(ne,{disabled:w,variant:"outline",onClick:()=>Y("rejected"),children:[a.jsx(ln,{"data-icon":"inline-start"}),"退回"]}),a.jsxs(ne,{disabled:w,onClick:()=>Y("approved"),children:[a.jsx(Kt,{"data-icon":"inline-start"}),"批准"]})]})]}):a.jsx("p",{children:it(x,"comment",it(x,"rationale","未添加评论"))}),a.jsx("small",{children:"决定没有超时;只有明确的人工批准或退回才会改变正式状态。"})]})]})]}):null]}):a.jsxs("div",{className:"empty-state",children:[a.jsx(bu,{"aria-hidden":"true"}),a.jsx("strong",{children:f==="pending"?"当前没有待决定事项":"当前没有决定历史"}),a.jsx("p",{children:"原型与视觉规范审核请前往项目原型模块。"})]})})]}),S?a.jsx("p",{className:"action-message",role:"status",children:S}):null]})]})}function Yj(s){return s.split(/\r?\n/).map(u=>u.trim()).filter(Boolean)}function Gj({collection:s,projection:u,selected:o,refresh:r}){const[f,h]=j.useState(!1),[p,x]=j.useState(null),[y,v]=j.useState(""),[S,g]=j.useState(""),[w,O]=j.useState(""),[k,B]=j.useState("accepted"),[Y,D]=j.useState(""),[G,K]=j.useState(""),[ce,ie]=j.useState(!1),he=I=>{x(I),v(String(I?.requirement_id||"")),g(String(I?.title||"")),O(String(I?.summary||"")),B(String(I?.status||"accepted")),D(Array.isArray(I?.acceptance)?I.acceptance.join(`
|
|
12
|
+
`):""),K(""),h(!0)};j.useEffect(()=>{p&&o?.requirement_id!==p.requirement_id&&h(!1)},[p,o]);const $=async()=>{const I=Yj(Y);if(!y.trim()||!S.trim()||!w.trim()||!I.length){K("请填写需求编号、标题、摘要和至少一条验收标准");return}ie(!0),K("");try{await He("requirement-apply",{operation:p?"update":"create",requirement_id:y.trim(),...p?{expected_entity_revision:Number(p.revision)}:{iteration_id:u.project.iteration_id},title:S.trim(),summary:w.trim(),status:k,acceptance:I,expected_revision:s.source?.revision??0,expected_checksum:s.source?.checksum??null,actor:"human:manager-user",idempotency_key:crypto.randomUUID()}),K(p?"需求已更新":"需求已创建"),h(!1),r()}catch(je){K(je.message)}finally{ie(!1)}};return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"fact-command-bar",children:[a.jsxs(ne,{onClick:()=>he(null),children:[a.jsx(Bs,{"data-icon":"inline-start"}),"新增需求"]}),o?a.jsxs(ne,{variant:"outline",onClick:()=>he(o),children:[a.jsx(Lm,{"data-icon":"inline-start"}),"编辑需求"]}):null,G&&!f?a.jsx("span",{className:"command-message",children:G}):null]}),f?a.jsxs("aside",{className:"fact-action-panel","aria-label":p?"编辑需求":"新增需求",children:[a.jsxs("div",{className:"rail-header",children:[a.jsx("span",{children:p?"编辑需求":"新增需求"}),a.jsx(ne,{"aria-label":"关闭需求表单",size:"icon",variant:"ghost",onClick:()=>h(!1),children:a.jsx(ln,{})})]}),a.jsxs("div",{className:"fact-action-form",children:[a.jsx("label",{htmlFor:"requirement-id",children:"需求编号"}),a.jsx("input",{id:"requirement-id",disabled:!!p,value:y,onChange:I=>v(I.target.value),placeholder:"REQ-027"}),a.jsx("label",{htmlFor:"requirement-title",children:"需求标题"}),a.jsx("input",{id:"requirement-title",value:S,onChange:I=>g(I.target.value)}),a.jsx("label",{htmlFor:"requirement-summary",children:"需求摘要"}),a.jsx("textarea",{id:"requirement-summary",value:w,onChange:I=>O(I.target.value)}),a.jsx("label",{htmlFor:"requirement-status",children:"需求状态"}),a.jsxs("select",{id:"requirement-status",value:k,onChange:I=>B(I.target.value),children:[a.jsx("option",{value:"draft",children:"草稿"}),a.jsx("option",{value:"accepted",children:"已接受"}),a.jsx("option",{value:"implemented",children:"已实现"}),a.jsx("option",{value:"verified",children:"已验证"})]}),a.jsx("label",{htmlFor:"requirement-acceptance",children:"验收标准"}),a.jsx("textarea",{id:"requirement-acceptance",value:Y,onChange:I=>D(I.target.value),placeholder:"每行一条验收标准"}),a.jsx("small",{children:"稳定编号创建后不可修改;保存时校验集合与实体修订,防止覆盖并发变更。"}),G?a.jsx("p",{className:"action-message",role:"status",children:G}):null,a.jsxs(ne,{disabled:ce,onClick:$,children:[a.jsx(Kt,{"data-icon":"inline-start"}),"保存需求"]})]})]}):null]})}const Qj=["planning","implementation","review","triage","repair","test","verification","handoff"],rm=new Set(["preparing","running","checkpointed","pending-review","blocked","interrupted"]);function Xl(s){return s.split(/\r?\n/).map(u=>u.trim()).filter(Boolean)}function Vj({selected:s,projection:u,refresh:o}){const[r,f]=j.useState(null),[h,p]=j.useState(""),[x,y]=j.useState("04-implementation"),[v,S]=j.useState("ai-delivery-develop-iteration"),[g,w]=j.useState(""),[O,k]=j.useState("delivery-agent"),[B,Y]=j.useState(""),[D,G]=j.useState(""),[K,ce]=j.useState(""),[ie,he]=j.useState("implementation"),[$,I]=j.useState("checkpointed"),[je,we]=j.useState(""),[ke,z]=j.useState("agent"),[ae,_e]=j.useState(""),[V,R]=j.useState(""),[Q,F]=j.useState(""),[de,J]=j.useState(""),[N,L]=j.useState(!1),X=String(s?.status||""),P=()=>{f("create"),p(""),w(""),Y(""),G(""),ce(""),we(""),J("")},re=Z=>{f(Z),p(String(s?.task_id||"")),we(""),_e(""),R(""),F(""),I(Z==="finish"?"completed":"checkpointed"),J("")},me=async()=>{if(!r||!h.trim()||!je.trim())return J("请填写任务编号和下一行动");const Z={operation:r,task_id:h.trim(),next_action:je.trim(),next_action_owner:ke,expected_shared_revision:r==="create"?0:Number(s?.shared_revision||0),actor:"human:manager-user",idempotency_key:crypto.randomUUID()};if(r==="create"&&Object.assign(Z,{iteration_id:u.project.iteration_id,node:x,skill:v,goal:g.trim(),responsibility:O.trim(),scope:Xl(B),acceptance:Xl(D),depends_on:Xl(K)}),r==="activate"&&Object.assign(Z,{status:"running",phase:ie,new_attempt:X==="failed"}),(r==="checkpoint"||r==="finish")&&Object.assign(Z,{status:$,phase:ie,completed_steps:Xl(ae),blockers:[],evidence:Xl(V),actual_outputs:Xl(Q)}),r==="create"&&(!g.trim()||!Xl(B).length||!Xl(D).length))return J("请填写任务目标、至少一个范围和至少一条验收");L(!0),J("");try{await He("task-apply",Z),J(r==="create"?"任务已创建":r==="activate"?"任务已激活":r==="checkpoint"?"检查点已记录":"任务已结束"),f(null),o()}catch(We){J(We.message)}finally{L(!1)}};return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"fact-command-bar",children:[a.jsxs(ne,{onClick:P,children:[a.jsx(Bs,{"data-icon":"inline-start"}),"新增任务"]}),X==="queued"||X==="failed"?a.jsxs(ne,{variant:"outline",onClick:()=>re("activate"),children:[a.jsx(qu,{"data-icon":"inline-start"}),"激活任务"]}):null,rm.has(X)?a.jsxs(ne,{variant:"outline",onClick:()=>re("checkpoint"),children:[a.jsx(Gs,{"data-icon":"inline-start"}),"记录检查点"]}):null,rm.has(X)?a.jsxs(ne,{variant:"outline",onClick:()=>re("finish"),children:[a.jsx(ky,{"data-icon":"inline-start"}),"结束任务"]}):null,de&&!r?a.jsx("span",{className:"command-message",children:de}):null]}),r?a.jsxs("aside",{className:"fact-action-panel","aria-label":`${r} 任务`,children:[a.jsxs("div",{className:"rail-header",children:[a.jsx("span",{children:r==="create"?"新增任务":r==="activate"?"激活任务":r==="checkpoint"?"记录检查点":"结束任务"}),a.jsx(ne,{"aria-label":"关闭任务表单",size:"icon",variant:"ghost",onClick:()=>f(null),children:a.jsx(ln,{})})]}),a.jsxs("div",{className:"fact-action-form",children:[a.jsx("label",{htmlFor:"task-id",children:"任务编号"}),a.jsx("input",{id:"task-id",disabled:r!=="create",value:h,onChange:Z=>p(Z.target.value),placeholder:"TASK-027"}),r==="create"?a.jsxs(a.Fragment,{children:[a.jsx("label",{htmlFor:"task-node",children:"所属节点"}),a.jsx("select",{id:"task-node",value:x,onChange:Z=>y(Z.target.value),children:u.workflow.nodes.map(Z=>a.jsxs("option",{value:Z.node_id,children:[Z.node_id," · ",Z.name]},Z.node_id))}),a.jsx("label",{htmlFor:"task-skill",children:"执行 Skill"}),a.jsx("input",{id:"task-skill",value:v,onChange:Z=>S(Z.target.value)}),a.jsx("label",{htmlFor:"task-goal",children:"任务目标"}),a.jsx("textarea",{id:"task-goal",value:g,onChange:Z=>w(Z.target.value)}),a.jsx("label",{htmlFor:"task-responsibility",children:"任务职责"}),a.jsx("input",{id:"task-responsibility",value:O,onChange:Z=>k(Z.target.value)}),a.jsx("label",{htmlFor:"task-scope",children:"任务范围"}),a.jsx("textarea",{id:"task-scope",value:B,onChange:Z=>Y(Z.target.value),placeholder:"每行一个范围编号"}),a.jsx("label",{htmlFor:"task-acceptance",children:"任务验收"}),a.jsx("textarea",{id:"task-acceptance",value:D,onChange:Z=>G(Z.target.value),placeholder:"每行一个验收编号或标准"}),a.jsx("label",{htmlFor:"task-dependencies",children:"依赖任务"}),a.jsx("textarea",{id:"task-dependencies",value:K,onChange:Z=>ce(Z.target.value),placeholder:"可选;每行一个任务编号"})]}):null,r!=="create"?a.jsxs(a.Fragment,{children:[a.jsx("label",{htmlFor:"task-phase",children:"执行阶段"}),a.jsx("select",{id:"task-phase",value:ie,onChange:Z=>he(Z.target.value),children:Qj.map(Z=>a.jsx("option",{value:Z,children:Z},Z))})]}):null,r==="checkpoint"?a.jsxs(a.Fragment,{children:[a.jsx("label",{htmlFor:"task-status",children:"任务状态"}),a.jsxs("select",{id:"task-status",value:$,onChange:Z=>I(Z.target.value),children:[a.jsx("option",{value:"checkpointed",children:"已记录检查点"}),a.jsx("option",{value:"pending-review",children:"等待评审"}),a.jsx("option",{value:"running",children:"执行中"})]})]}):null,r==="finish"?a.jsxs(a.Fragment,{children:[a.jsx("label",{htmlFor:"task-status",children:"结束状态"}),a.jsxs("select",{id:"task-status",value:$,onChange:Z=>I(Z.target.value),children:[a.jsx("option",{value:"completed",children:"已完成"}),a.jsx("option",{value:"blocked",children:"被阻断"}),a.jsx("option",{value:"interrupted",children:"已中断"}),a.jsx("option",{value:"failed",children:"失败"}),a.jsx("option",{value:"abandoned",children:"已放弃"})]})]}):null,r==="checkpoint"||r==="finish"?a.jsxs(a.Fragment,{children:[a.jsx("label",{htmlFor:"task-completed",children:"已完成步骤"}),a.jsx("textarea",{id:"task-completed",value:ae,onChange:Z=>_e(Z.target.value),placeholder:"每行一项"}),a.jsx("label",{htmlFor:"task-evidence",children:"任务证据"}),a.jsx("textarea",{id:"task-evidence",value:V,onChange:Z=>R(Z.target.value),placeholder:"每行一个证据编号"}),a.jsx("label",{htmlFor:"task-outputs",children:"实际输出"}),a.jsx("textarea",{id:"task-outputs",value:Q,onChange:Z=>F(Z.target.value),placeholder:"每行一个路径或成果编号"})]}):null,a.jsx("label",{htmlFor:"task-next-action",children:"下一行动"}),a.jsx("textarea",{id:"task-next-action",value:je,onChange:Z=>we(Z.target.value)}),a.jsx("label",{htmlFor:"task-next-owner",children:"下一行动责任方"}),a.jsxs("select",{id:"task-next-owner",value:ke,onChange:Z=>z(Z.target.value),children:[a.jsx("option",{value:"agent",children:"AI"}),a.jsx("option",{value:"user",children:"用户"}),a.jsx("option",{value:"external",children:"外部系统"})]}),a.jsx("small",{children:"所有操作调用唯一任务 Writer,并校验当前共享 Revision;界面不会直接修改任务 YAML。"}),de?a.jsx("p",{className:"action-message",role:"status",children:de}):null,a.jsxs(ne,{disabled:N,onClick:me,children:[a.jsx(Kt,{"data-icon":"inline-start"}),r==="create"?"保存任务":"执行任务操作"]})]})]}):null]})}function Ts(s){return s.split(/\r?\n/).map(u=>u.trim()).filter(Boolean)}function Xj({collection:s,selected:u,projection:o,refresh:r}){const[f,h]=j.useState(null),[p,x]=j.useState(!1),[y,v]=j.useState(""),[S,g]=j.useState(""),[w,O]=j.useState("ui"),[k,B]=j.useState("ready"),[Y,D]=j.useState(""),[G,K]=j.useState(""),[ce,ie]=j.useState(""),[he,$]=j.useState(""),[I,je]=j.useState("passed"),[we,ke]=j.useState(""),[z,ae]=j.useState(""),[_e,V]=j.useState(!1),R=J=>{h("case"),x(!!J),v(String(J?.test_case_id||"")),g(String(J?.title||"")),O(String(J?.kind||"ui")),B(String(J?.status||"ready")),D(Array.isArray(J?.steps)?J.steps.join(`
|
|
13
|
+
`):""),K(String(J?.expected_result||"")),ae("")},Q=()=>{h("run"),ie(""),$(""),je("passed"),ke(""),ae("")},F=async()=>{if(!y.trim()||!S.trim()||!Ts(Y).length||!G.trim())return ae("请完整填写用例编号、标题、步骤和预期结果");V(!0),ae("");try{await He("test-case-apply",{operation:p?"update":"create",test_case_id:y.trim(),...p?{expected_entity_revision:Number(u?.version||u?.revision)}:{iteration_id:o.project.iteration_id},title:S.trim(),kind:w,status:k,steps:Ts(Y),expected_result:G.trim(),expected_revision:s.source?.revision??0,expected_checksum:s.source?.checksum??null,actor:"human:manager-user",idempotency_key:crypto.randomUUID()}),ae(p?"测试用例已更新":"测试用例已创建"),h(null),r()}catch(J){ae(J.message)}finally{V(!1)}},de=async()=>{if(!u||!ce.trim()||!he.trim()||!Ts(we).length)return ae("请填写执行编号、候选版本编号和至少一个测试证据");const J=o.facts.test_runs;V(!0),ae("");try{await He("test-run-record",{test_run_id:ce.trim(),test_case_id:u.test_case_id,test_case_version:Number(u.version||u.revision),iteration_id:o.project.iteration_id,candidate_id:he.trim(),outcome:I,evidence:Ts(we),expected_revision:J.source?.revision??0,expected_checksum:J.source?.checksum??null,actor:"human:manager-user",idempotency_key:crypto.randomUUID()}),ae("测试执行已记录"),h(null),r()}catch(N){ae(N.message)}finally{V(!1)}};return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"fact-command-bar",children:[a.jsxs(ne,{onClick:()=>R(null),children:[a.jsx(Bs,{"data-icon":"inline-start"}),"新增测试用例"]}),u?a.jsxs(ne,{variant:"outline",onClick:()=>R(u),children:[a.jsx(Lm,{"data-icon":"inline-start"}),"编辑测试用例"]}):null,u?a.jsxs(ne,{variant:"outline",onClick:Q,children:[a.jsx(Dm,{"data-icon":"inline-start"}),"记录测试执行"]}):null,z&&!f?a.jsx("span",{className:"command-message",children:z}):null]}),f?a.jsxs("aside",{className:"fact-action-panel","aria-label":f==="case"?"测试用例表单":"测试执行表单",children:[a.jsxs("div",{className:"rail-header",children:[a.jsx("span",{children:f==="case"?p?"编辑测试用例":"新增测试用例":"记录测试执行"}),a.jsx(ne,{"aria-label":"关闭测试表单",size:"icon",variant:"ghost",onClick:()=>h(null),children:a.jsx(ln,{})})]}),f==="case"?a.jsxs("div",{className:"fact-action-form",children:[a.jsx("label",{htmlFor:"test-case-id",children:"用例编号"}),a.jsx("input",{id:"test-case-id",disabled:p,value:y,onChange:J=>v(J.target.value),placeholder:"TC-027"}),a.jsx("label",{htmlFor:"test-case-title",children:"用例标题"}),a.jsx("input",{id:"test-case-title",value:S,onChange:J=>g(J.target.value)}),a.jsx("label",{htmlFor:"test-case-kind",children:"用例类型"}),a.jsxs("select",{id:"test-case-kind",value:w,onChange:J=>O(J.target.value),children:[a.jsx("option",{value:"ui",children:"界面"}),a.jsx("option",{value:"api",children:"接口"}),a.jsx("option",{value:"integration",children:"集成"}),a.jsx("option",{value:"unit",children:"单元"}),a.jsx("option",{value:"security",children:"安全"}),a.jsx("option",{value:"performance",children:"性能"})]}),a.jsx("label",{htmlFor:"test-case-status",children:"用例状态"}),a.jsxs("select",{id:"test-case-status",value:k,onChange:J=>B(J.target.value),children:[a.jsx("option",{value:"draft",children:"草稿"}),a.jsx("option",{value:"ready",children:"可执行"}),a.jsx("option",{value:"retired",children:"已停用"})]}),a.jsx("label",{htmlFor:"test-case-steps",children:"测试步骤"}),a.jsx("textarea",{id:"test-case-steps",value:Y,onChange:J=>D(J.target.value),placeholder:"每行一个步骤"}),a.jsx("label",{htmlFor:"test-case-expected",children:"预期结果"}),a.jsx("textarea",{id:"test-case-expected",value:G,onChange:J=>K(J.target.value)}),a.jsx("small",{children:"更新用例会生成新版本;历史 Test Run 继续绑定原始版本。"}),z?a.jsx("p",{className:"action-message",role:"status",children:z}):null,a.jsxs(ne,{disabled:_e,onClick:F,children:[a.jsx(Kt,{"data-icon":"inline-start"}),"保存测试用例"]})]}):a.jsxs("div",{className:"fact-action-form",children:[a.jsx("label",{htmlFor:"test-run-id",children:"执行编号"}),a.jsx("input",{id:"test-run-id",value:ce,onChange:J=>ie(J.target.value),placeholder:"TR-027"}),a.jsx("label",{children:"测试用例"}),a.jsx("input",{disabled:!0,value:`${String(u?.test_case_id)} @ v${String(u?.version||u?.revision)}`}),a.jsx("label",{htmlFor:"test-run-candidate",children:"候选版本编号"}),a.jsx("input",{id:"test-run-candidate",value:he,onChange:J=>$(J.target.value),placeholder:"输入项目中已存在的 Candidate ID"}),a.jsx("label",{htmlFor:"test-run-outcome",children:"执行结果"}),a.jsxs("select",{id:"test-run-outcome",value:I,onChange:J=>je(J.target.value),children:[a.jsx("option",{value:"passed",children:"通过"}),a.jsx("option",{value:"failed",children:"失败"}),a.jsx("option",{value:"blocked",children:"被阻断"}),a.jsx("option",{value:"skipped",children:"跳过"})]}),a.jsx("label",{htmlFor:"test-run-evidence",children:"测试证据"}),a.jsx("textarea",{id:"test-run-evidence",value:we,onChange:J=>ke(J.target.value),placeholder:"每行一个证据或成果编号"}),a.jsx("small",{children:"执行记录不可修改,精确绑定当前用例版本与用户提供的真实候选版本。"}),z?a.jsx("p",{className:"action-message",role:"status",children:z}):null,a.jsxs(ne,{disabled:_e,onClick:de,children:[a.jsx(Kt,{"data-icon":"inline-start"}),"保存执行记录"]})]})]}):null]})}function Zj({collection:s,projection:u,refresh:o}){const[r,f]=j.useState(!1),[h,p]=j.useState(""),[x,y]=j.useState(""),[v,S]=j.useState(""),[g,w]=j.useState("01-product-shaping"),[O,k]=j.useState("submitted"),[B,Y]=j.useState(""),[D,G]=j.useState(""),[K,ce]=j.useState(""),[ie,he]=j.useState(""),[$,I]=j.useState(""),[je,we]=j.useState(!1),ke=async()=>{if(!h.trim()||!x.trim()||!v.trim())return I("请填写成果编号、类型和项目内路径");if(!v.trim().startsWith(".workflow/"))return I("交付成果路径必须位于项目的 .workflow/ 目录");we(!0),I("");try{await He("artifact-register",{artifact_id:h.trim(),artifact_type:x.trim(),path:v.trim(),node:g,status:O,...B.trim()?{version:B.trim()}:{},...D.trim()?{producer_skill:D.trim()}:{},...K.trim()?{candidate_id:K.trim()}:{},...ie.trim()?{supersedes:ie.trim()}:{},expected_revision:s.source?.revision??0,actor:"human:manager-user",idempotency_key:crypto.randomUUID()}),I("交付成果已登记"),f(!1),o()}catch(z){I(z.message)}finally{we(!1)}};return a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"fact-command-bar",children:[a.jsxs(ne,{onClick:()=>{f(!0),I("")},children:[a.jsx(Bs,{"data-icon":"inline-start"}),"登记交付成果"]}),$&&!r?a.jsx("span",{className:"command-message",children:$}):null]}),r?a.jsxs("aside",{className:"fact-action-panel","aria-label":"登记交付成果",children:[a.jsxs("div",{className:"rail-header",children:[a.jsx("span",{children:"登记交付成果"}),a.jsx(ne,{"aria-label":"关闭成果表单",size:"icon",variant:"ghost",onClick:()=>f(!1),children:a.jsx(ln,{})})]}),a.jsxs("div",{className:"fact-action-form",children:[a.jsx("label",{htmlFor:"artifact-id",children:"成果编号"}),a.jsx("input",{id:"artifact-id",value:h,onChange:z=>p(z.target.value),placeholder:"ART-027"}),a.jsx("label",{htmlFor:"artifact-type",children:"成果类型"}),a.jsx("input",{id:"artifact-type",value:x,onChange:z=>y(z.target.value),placeholder:"product-requirements"}),a.jsx("label",{htmlFor:"artifact-path",children:"项目内路径"}),a.jsx("input",{id:"artifact-path",value:v,onChange:z=>S(z.target.value),placeholder:".workflow/iterations/.../result.yaml"}),a.jsx("label",{htmlFor:"artifact-node",children:"所属节点"}),a.jsx("select",{id:"artifact-node",value:g,onChange:z=>w(z.target.value),children:u.workflow.nodes.map(z=>a.jsxs("option",{value:z.node_id,children:[z.node_id," · ",z.name]},z.node_id))}),a.jsx("label",{htmlFor:"artifact-status",children:"成果状态"}),a.jsxs("select",{id:"artifact-status",value:O,onChange:z=>k(z.target.value),children:[a.jsx("option",{value:"submitted",children:"已提交"}),a.jsx("option",{value:"approved",children:"已批准"}),a.jsx("option",{value:"rejected",children:"已拒绝"}),a.jsx("option",{value:"frozen",children:"已冻结"}),a.jsx("option",{value:"immutable",children:"不可变候选"}),a.jsx("option",{value:"passed",children:"已通过"}),a.jsx("option",{value:"failed",children:"失败"}),a.jsx("option",{value:"release-ready",children:"可发布"})]}),a.jsx("label",{htmlFor:"artifact-version",children:"语义版本"}),a.jsx("input",{id:"artifact-version",value:B,onChange:z=>Y(z.target.value),placeholder:"可选"}),a.jsx("label",{htmlFor:"artifact-producer",children:"生成 Skill"}),a.jsx("input",{id:"artifact-producer",value:D,onChange:z=>G(z.target.value),placeholder:"可选"}),a.jsx("label",{htmlFor:"artifact-candidate",children:"候选版本编号"}),a.jsx("input",{id:"artifact-candidate",value:K,onChange:z=>ce(z.target.value),placeholder:"仅候选版本相关成果填写"}),a.jsx("label",{htmlFor:"artifact-supersedes",children:"取代的成果"}),a.jsx("input",{id:"artifact-supersedes",value:ie,onChange:z=>he(z.target.value),placeholder:"可选;填写旧成果编号"}),a.jsx("small",{children:"只登记已经存在的项目内文件。正文编辑、上传和任意文件浏览不属于工作流管理器能力。"}),$?a.jsx("p",{className:"action-message",role:"status",children:$}):null,a.jsxs(ne,{disabled:je,onClick:ke,children:[a.jsx(Kt,{"data-icon":"inline-start"}),"确认登记"]})]})]}):null]})}const Kj={requirement:s=>`/product/requirements?requirement=${encodeURIComponent(s)}`,task:s=>`/tasks?task=${encodeURIComponent(s)}`,"test-case":s=>`/test-cases?test=${encodeURIComponent(s)}`,"test-run":s=>`/test-cases?run=${encodeURIComponent(s)}`,artifact:s=>`/artifacts?artifact=${encodeURIComponent(s)}`,event:s=>`/events?event=${encodeURIComponent(s)}`,decision:s=>`/decisions?decision=${encodeURIComponent(s)}`,"prototype-page":s=>`/prototypes/reviews/page?page=${encodeURIComponent(s)}`,"prototype-scene":s=>`/prototypes/reviews/page?projectScene=${encodeURIComponent(s)}`,system:s=>`/systems?tab=list&system=${encodeURIComponent(s)}`,"project-system":s=>`/systems?tab=list&system=${encodeURIComponent(s)}`,"mock-protocol":s=>`/mock?tab=protocols&protocol=${encodeURIComponent(s)}`,"mock-scenario":s=>`/mock?scenario=${encodeURIComponent(s)}`},Jj={requirements:{pageId:"P19",title:"产品需求",description:"查看需求及其相关任务、原型、测试、成果、决定和事件。",id:"requirement_id",titleFields:["title","summary"],statusFields:["status"],empty:"当前迭代尚未登记产品需求目录"},tasks:{pageId:"P03",title:"执行任务",description:"查看稳定任务、执行轮次、依赖、验收和下一行动。",id:"task_id",titleFields:["goal","title"],statusFields:["status"],empty:"当前迭代尚未登记执行任务"},test_cases:{pageId:"P18",title:"测试用例",description:"管理和查看测试用例版本、覆盖关系与执行记录。",id:"test_case_id",titleFields:["title","summary"],statusFields:["status"],empty:"当前迭代尚未登记测试用例目录"},artifacts:{pageId:"P04",title:"交付成果",description:"查看文件、报告和运行凭证的版本、校验值与引用。",id:"artifact_id",titleFields:["name","artifact_type","path"],statusFields:["status"],empty:"当前项目尚未登记交付成果"},events:{pageId:"P05",title:"操作与变更记录",description:"查看不可变操作事件和工作流变更历史。",id:"event_id",titleFields:["summary","type","event_type"],statusFields:["outcome","status"],empty:"当前项目尚未产生操作事件"}};function Nu(s,u,o="尚未填写"){for(const r of u){const f=s[r];if(typeof f=="string"&&f.trim())return f;if(typeof f=="number")return String(f)}return o}function $j({item:s}){const u=Array.isArray(s.related_items)?s.related_items:[];return u.length?a.jsx("div",{className:"relation-list",children:u.map(o=>a.jsxs(ze,{className:`relation-badge ${o.relation_state==="confirmed"?"confirmed":"suggested"}`,children:[a.jsx(Hm,{"aria-hidden":"true"}),String(o.entity_id)," · ",o.relation_state==="confirmed"?"已确认":"AI 建议"]},String(o.relation_id)))}):a.jsx("span",{className:"cell-meta",children:"尚无已登记关系"})}function Fj({collection:s}){const u=s.source?.path||(Array.isArray(s.source?.paths)?s.source.paths.map(o=>String(o.path)).join(" + "):null);return a.jsxs("div",{className:"summary-band",children:[a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"登记状态"}),a.jsx("strong",{children:s.registration_status==="registered"?"已登记":"尚未登记"})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"当前记录"}),a.jsxs("strong",{children:[s.items.length," ",a.jsx("small",{children:"项"})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"数据修订"}),a.jsx("strong",{children:s.source?.revision??"-"})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"数据来源"}),a.jsx("strong",{className:"summary-path",children:u||"等待项目登记"})]})]})}function Wj({projection:s}){const u=s.facts.test_runs.items;return a.jsxs("section",{className:"flat-section test-run-ledger",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"测试执行记录"}),a.jsxs("span",{children:[u.length," 条不可变记录,精确绑定用例版本与候选版本"]})]}),u.length?a.jsxs("table",{className:"data-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"执行编号"}),a.jsx("th",{children:"测试用例 / 版本"}),a.jsx("th",{children:"候选版本"}),a.jsx("th",{children:"结果"}),a.jsx("th",{children:"证据"})]})}),a.jsx("tbody",{children:u.map(o=>a.jsxs("tr",{children:[a.jsx("td",{children:a.jsx("code",{children:String(o.test_run_id)})}),a.jsxs("td",{children:[a.jsx(mt,{to:`/test-cases?run=${encodeURIComponent(String(o.test_run_id))}`,children:String(o.test_case_id)}),a.jsxs("span",{className:"cell-meta",children:["版本 ",String(o.test_case_version)]})]}),a.jsx("td",{children:a.jsx("code",{children:String(o.candidate_id||"未绑定")})}),a.jsx("td",{children:a.jsx(ze,{className:`status-badge ${o.outcome==="passed"?"completed":o.outcome==="failed"?"blocked":"waiting"}`,children:String(o.outcome)})}),a.jsx("td",{children:Array.isArray(o.evidence)?o.evidence.join(" · "):"未登记"})]},String(o.test_run_id)))})]}):a.jsx("p",{className:"cell-meta",children:"当前迭代尚未登记测试执行记录。"})]})}function li({projection:s,refresh:u,kind:o}){const r=Jj[o],f=s.facts[o],[h,p]=It(),x=h.get("q")||"",v=(o==="test_cases"&&h.get("run")?s.facts.test_runs.items.find(k=>String(k.test_run_id)===h.get("run")):null)?.test_case_id||h.get(o==="requirements"?"requirement":o==="tasks"?"task":o==="test_cases"?"test":o==="artifacts"?"artifact":"event"),S=f.items,g=S.filter(k=>!x||JSON.stringify(k).toLocaleLowerCase().includes(x.toLocaleLowerCase())),w=g.find(k=>String(k[r.id]||k.entity_id)===v)||g[0]||null,O=k=>{const B=new URLSearchParams(h);B.set(o==="requirements"?"requirement":o==="tasks"?"task":o==="test_cases"?"test":o==="artifacts"?"artifact":"event",k),p(B,{replace:!0})};return a.jsxs("div",{className:"page-layout",children:[a.jsx(Kl,{pageId:r.pageId,title:r.title,description:r.description}),a.jsxs("div",{className:"page-scroll facts-page",children:[a.jsx(Fj,{collection:f}),o==="requirements"?a.jsx(Gj,{collection:f,projection:s,selected:w,refresh:u}):null,o==="tasks"?a.jsx(Vj,{projection:s,selected:w,refresh:u}):null,o==="test_cases"?a.jsx(Xj,{collection:f,projection:s,selected:w,refresh:u}):null,o==="artifacts"?a.jsx(Zj,{collection:f,projection:s,refresh:u}):null,o==="test_cases"?a.jsx(Wj,{projection:s}):null,a.jsxs("div",{className:"filter-bar",children:[a.jsx(Hu,{"aria-hidden":"true"}),a.jsx("input",{"aria-label":`筛选${r.title}`,onChange:k=>{const B=new URLSearchParams(h);k.target.value?B.set("q",k.target.value):B.delete("q"),p(B,{replace:!0})},placeholder:`按编号、标题或状态筛选${r.title}`,type:"search",value:x}),a.jsxs("span",{children:[g.length," / ",S.length]})]}),S.length?a.jsxs("div",{className:"fact-split",children:[a.jsxs("section",{className:"flat-section fact-list-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsxs("strong",{children:[r.title,"列表"]}),a.jsx("span",{children:"选择一项查看完整事实和关联工作项"})]}),a.jsxs("table",{className:"data-table fact-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{style:{width:150},children:"编号"}),a.jsx("th",{children:"名称 / 内容"}),a.jsx("th",{style:{width:110},children:"状态"}),a.jsx("th",{style:{width:54},"aria-label":"打开"})]})}),a.jsx("tbody",{children:g.map(k=>{const B=String(k[r.id]||k.entity_id);return a.jsxs("tr",{className:w&&B===String(w[r.id]||w.entity_id)?"selected":"",onClick:()=>O(B),children:[a.jsx("td",{children:a.jsx("code",{children:B})}),a.jsxs("td",{children:[a.jsx("strong",{children:Nu(k,r.titleFields)}),a.jsx($j,{item:k})]}),a.jsx("td",{children:a.jsx(ze,{className:"status-badge active",children:Nu(k,r.statusFields,"已登记")})}),a.jsx("td",{children:a.jsx(ne,{"aria-label":`查看 ${B}`,size:"icon",variant:"ghost",children:a.jsx(Lt,{})})})]},B)})})]})]}),w?a.jsx(Pj,{config:r,item:w,projection:s,refresh:u}):null]}):a.jsxs("div",{className:"empty-state",children:[a.jsx(km,{"aria-hidden":"true"}),a.jsx("strong",{children:r.empty}),a.jsx("p",{children:"管理器不会生成演示数据;请通过对应工作流能力登记正式物料。"})]})]})]})}function Pj({config:s,item:u,projection:o,refresh:r}){const f=String(u[s.id]||u.entity_id),h=Array.isArray(u.related_items)?u.related_items:[],[p,x]=j.useState(""),y=async(v,S)=>{try{await He("relationship-decide",{relation_id:v.relation_id,decision:S,actor:"human:manager-user",comment:S==="confirmed"?"在工作流管理器中确认":"在工作流管理器中拒绝",expected_revision:o.facts.relations.source?.revision??0,expected_checksum:o.facts.relations.source?.checksum??null,idempotency_key:crypto.randomUUID()}),x(S==="confirmed"?"关联已确认":"关联已拒绝"),r()}catch(g){x(g.message)}};return a.jsxs("aside",{className:"detail-rail fact-detail",children:[a.jsxs("div",{className:"rail-header",children:[a.jsx("span",{children:"事实详情"}),a.jsx("code",{children:f})]}),a.jsxs("div",{className:"rail-body",children:[a.jsx("h2",{children:Nu(u,s.titleFields)}),a.jsx("dl",{className:"meta-list",children:Object.entries(u).filter(([v])=>!["related_items","related_requirements"].includes(v)).slice(0,12).map(([v,S])=>a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:v}),a.jsx("dd",{children:Array.isArray(S)?S.join(" · ")||"无":typeof S=="object"&&S?JSON.stringify(S):String(S??"-")})]},v))}),a.jsxs("section",{className:"related-detail",children:[a.jsx("strong",{children:"关联工作项"}),h.length?h.map(v=>{const S=String(v.entity_id),g=Kj[String(v.entity_type)]?.(S);return a.jsxs("div",{className:"related-work-item",children:[g?a.jsxs(mt,{to:g,children:[a.jsx("span",{children:S}),a.jsxs("small",{children:[String(v.relation_type)," · ",String(v.relation_state)]}),a.jsx(Lt,{})]}):a.jsxs("div",{className:"related-static",children:[a.jsx("span",{children:S}),a.jsxs("small",{children:[String(v.entity_type)," · ",String(v.relation_state)]})]}),v.relation_state==="suggested"?a.jsxs("div",{className:"relation-actions",children:[a.jsx(ne,{size:"icon",variant:"ghost","aria-label":`拒绝关联 ${S}`,onClick:()=>y(v,"rejected"),children:a.jsx(ln,{})}),a.jsx(ne,{size:"icon",variant:"ghost","aria-label":`确认关联 ${S}`,onClick:()=>y(v,"confirmed"),children:a.jsx(Kt,{})})]}):null]},String(v.relation_id))}):a.jsx("p",{children:"尚无已登记关联。"})]}),p?a.jsx("p",{className:"action-message",children:p}):null,a.jsxs("p",{className:"fact-context",children:["迭代 ",o.project.iteration_id||"尚未建立"," · 状态修订 ",o.project.state_revision]})]})]})}const Ij={requires_scope_manifest:"需要冻结范围",requires_candidate:"需要候选版本",binds_candidate_on_start:"启动时绑定候选版本",requires_candidate_assurance:"需要候选版本保障"};function e1({node:s,selected:u,onSelect:o}){return a.jsxs(ne,{className:`workflow-node ${s.state}${u?" selected":""}`,"aria-pressed":u,onClick:o,variant:"ghost",children:[a.jsxs("span",{className:"workflow-node-head",children:[a.jsx("code",{children:s.node_id.slice(0,2)}),a.jsxs("span",{children:["第 ",s.node_attempt," 次"]})]}),a.jsx("strong",{children:s.name}),a.jsx("small",{children:ii(s.state)})]})}function um({nodes:s,selectedId:u,onSelect:o,label:r}){return a.jsx("div",{className:"workflow-track","aria-label":r,children:s.map((f,h)=>a.jsxs("div",{className:"workflow-node-step",children:[a.jsx(e1,{node:f,selected:f.node_id===u,onSelect:()=>o(f.node_id)}),h<s.length-1?a.jsx(Lt,{className:"workflow-node-arrow","aria-hidden":"true"}):null]},f.node_id))})}function t1({node:s}){return a.jsxs("section",{className:"flat-section workflow-work-content",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsxs("strong",{children:[s.node_id.slice(0,2)," · 工作内容与状态"]}),a.jsx("span",{children:"当前切片只开放正式状态事实入口"})]}),a.jsxs("div",{className:"workflow-work-header workflow-work-columns",children:[a.jsx("span",{}),a.jsx("span",{children:"编号"}),a.jsx("span",{children:"工作内容"}),a.jsx("span",{children:"当前值"}),a.jsx("span",{children:"来源"})]}),a.jsx("div",{className:"workflow-work-list",children:s.state_facts.map(u=>a.jsxs("div",{className:"workflow-work-row workflow-work-columns",children:[a.jsx("span",{className:"workflow-work-icon-cell",children:a.jsx(Om,{"aria-hidden":"true"})}),a.jsx("code",{children:u.fact_id.toUpperCase()}),a.jsxs("span",{className:"workflow-work-summary",children:[a.jsx("strong",{children:u.label}),a.jsx("small",{children:u.records.length?"已从正式状态读取记录":"当前没有登记记录"})]}),a.jsx(ze,{className:`status-badge ${u.records.length?"active":"pending"}`,children:u.value}),a.jsx(mt,{className:"workflow-source",to:`${u.source_route}?node=${s.node_id}`,children:u.source_page_id})]},u.fact_id))})]})}function l1({node:s}){const u=s.state_facts;return a.jsxs("section",{className:"flat-section workflow-state-evidence",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsxs("strong",{children:[s.node_id.slice(0,2)," · 状态依据"]}),a.jsxs("span",{children:[a.jsx("code",{children:s.node_id})," · 状态由正式事实派生"]})]}),a.jsxs("table",{className:"data-table workflow-evidence-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{style:{width:150},children:"正式事实"}),a.jsx("th",{style:{width:190},children:"当前值"}),a.jsx("th",{children:"对节点状态的影响"}),a.jsx("th",{style:{width:90},children:"来源"})]})}),a.jsx("tbody",{children:u.map(o=>a.jsxs("tr",{children:[a.jsx("td",{children:a.jsx("strong",{children:o.label})}),a.jsx("td",{children:o.value}),a.jsx("td",{children:a.jsx("span",{className:"cell-meta",children:o.records.length?"该事实参与当前节点状态计算":"未登记记录时不构成完成依据"})}),a.jsx("td",{children:a.jsx(mt,{className:"workflow-source",to:`${o.source_route}?node=${s.node_id}`,children:o.source_page_id})})]},o.fact_id))})]})]})}function a1({node:s,projection:u,refresh:o}){const[r,f]=j.useState(""),[h,p]=j.useState(""),[x,y]=j.useState(!1),v=s.state==="pending",S=s.completion_ready,g=async w=>{y(!0),p("");try{await He("workflow-transition-apply",{actor:"human:manager-user",event:w,evidence:w==="node-completed"?r.split(/[\s,,]+/).map(O=>O.trim()).filter(Boolean):[],expected_scope_revision:u.project.state_revision,iteration_id:u.project.iteration_id,node_id:s.node_id,idempotency_key:crypto.randomUUID()}),p(w==="node-started"?"节点已启动":"节点已完成"),o()}catch(O){p(O.message)}finally{y(!1)}};return a.jsxs("aside",{className:"detail-rail workflow-node-detail",children:[a.jsxs("div",{className:"rail-header",children:[a.jsx("span",{children:"节点详情"}),a.jsx("code",{children:s.node_id.slice(0,2)})]}),a.jsxs("div",{className:"rail-body",children:[a.jsxs("div",{className:"workflow-detail-title",children:[a.jsxs("div",{children:[a.jsx("code",{children:s.node_id}),a.jsx("h2",{children:s.name})]}),a.jsx(ze,{className:`status-badge ${s.state}`,children:ii(s.state)})]}),a.jsx("p",{children:"正式七节点开发模型"}),a.jsxs("dl",{className:"meta-list",children:[a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"执行次数"}),a.jsx("dd",{children:s.node_attempt})]}),a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"前置节点"}),a.jsx("dd",{children:s.contract.prerequisites.join(" · ")||"无"})]}),a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"人工审核点"}),a.jsx("dd",{children:s.contract.internal_gates.join(" · ")||"无"})]}),a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"尚缺条件"}),a.jsx("dd",{children:s.missing_conditions.join(" · ")||"无"})]}),a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"阻断条件"}),a.jsx("dd",{children:s.blocking_conditions.join(" · ")||"无"})]}),a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"运行凭证"}),a.jsx("dd",{children:s.completion_receipt||"尚未生成"})]})]}),a.jsxs("div",{className:"workflow-derivation-note",children:[a.jsx(wm,{"aria-hidden":"true"}),a.jsxs("span",{children:[a.jsx("strong",{children:"状态为派生结果"}),"管理器只读取 ",a.jsx("code",{children:"derived_node_states"}),",不能手工把节点改成“已完成”。"]})]}),v||S?a.jsxs("section",{className:"workflow-transition-actions",children:[a.jsx("strong",{children:"合法节点操作"}),S?a.jsxs(a.Fragment,{children:[a.jsx("label",{htmlFor:`workflow-evidence-${s.node_id}`,children:"完成证据"}),a.jsx("input",{id:`workflow-evidence-${s.node_id}`,value:r,onChange:w=>f(w.target.value),placeholder:"输入已登记的交付成果编号,多个编号用逗号分隔"}),a.jsx("small",{children:"完成操作至少需要一个属于该节点且状态有效的交付成果编号。"})]}):null,v?a.jsxs(ne,{disabled:x||!u.project.iteration_id,onClick:()=>g("node-started"),children:[a.jsx(qu,{"data-icon":"inline-start"}),"启动 ",s.node_id]}):null,S?a.jsxs(ne,{disabled:x||!r.trim(),onClick:()=>g("node-completed"),children:[a.jsx(Mm,{"data-icon":"inline-start"}),"完成 ",s.node_id]}):null]}):null,h?a.jsx("p",{className:"action-message workflow-transition-message",children:h}):null]})]})}function n1({nodes:s,selected:u}){return a.jsx("div",{className:"workflow-rules-layout",children:a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"合法转换与完成条件"}),a.jsxs("span",{children:["当前选择 ",a.jsx("code",{children:u.node_id})]})]}),a.jsxs("table",{className:"data-table workflow-transition-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{style:{width:190},children:"转换"}),a.jsx("th",{children:"完成条件"}),a.jsx("th",{style:{width:150},children:"不可变依据"}),a.jsx("th",{style:{width:100},children:"状态"})]})}),a.jsx("tbody",{children:s.map((o,r)=>{const f=s[r+1],h=Object.entries(o.contract.completion).filter(([,p])=>p===!0).map(([p])=>Ij[p]||p);return a.jsxs("tr",{className:o.node_id===u.node_id?"selected":"",children:[a.jsx("td",{children:a.jsxs("code",{children:[o.node_id.slice(0,2)," → ",f?f.node_id.slice(0,2):"就绪"]})}),a.jsx("td",{children:h.length?h.join(" · "):"满足节点任务、人工审核点与必需成果条件"}),a.jsx("td",{children:o.completion_receipt||"节点运行凭证"}),a.jsx("td",{children:a.jsx(ze,{className:`status-badge ${o.state==="completed"||o.completion_ready?"completed":"waiting"}`,children:o.state==="completed"||o.completion_ready?"已满足":"待满足"})})]},o.node_id)})})]})]})})}function i1({projection:s,refresh:u}){const[o,r]=It(),f=o.get("node"),h=s.workflow.nodes.find(g=>g.node_id===f)||s.workflow.nodes.find(g=>g.node_id===s.workflow.focus_node_id)||s.workflow.nodes[0],p=o.get("tab")==="transitions"?"transitions":"flow",x=s.workflow.nodes[0],y=s.workflow.nodes.filter(g=>g.phase==="design"),v=s.workflow.nodes.filter(g=>g.phase==="development"),S=(g,w)=>{const O=new URLSearchParams(o);g==="tab"&&w==="flow"?O.delete("tab"):O.set(g,w),r(O,{replace:!0})};return a.jsxs("div",{className:"page-layout",children:[a.jsx(Kl,{pageId:"P02",title:"开发流程",description:"查看七节点工作内容、派生状态依据与合法流转条件。"}),a.jsxs("div",{className:"page-scroll workflow-page",children:[a.jsxs("div",{className:"summary-band",children:[a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"状态来源"}),a.jsxs("strong",{children:["正式状态 ",a.jsx("small",{children:"· 实时读取"})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"当前节点"}),a.jsxs("strong",{children:[h.node_id.slice(0,2)," ",a.jsxs("small",{children:["· ",h.name]})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"尚缺条件"}),a.jsxs("strong",{children:[h.missing_conditions.length," ",a.jsx("small",{children:"项"})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"阻断条件"}),a.jsxs("strong",{children:[h.blocking_conditions.length," ",a.jsx("small",{children:"项"})]})]})]}),a.jsxs("div",{className:"workflow-state-source",role:"note",children:[a.jsx(wm,{"aria-hidden":"true"}),a.jsxs("span",{children:[a.jsxs("strong",{children:["正式状态权威:",a.jsx("code",{children:"state inspect → derived_node_states"})]}),"任务、审核点、成果、范围、候选版本与运行凭证共同派生节点状态。"]}),a.jsx(ze,{className:"status-badge completed",children:"实时事实"})]}),a.jsxs(an,{value:p,onValueChange:g=>S("tab",g),label:"开发流程视图",children:[a.jsxs("div",{className:"workflow-tabbar",children:[a.jsxs(nn,{label:"开发流程视图",children:[a.jsxs(pt,{value:"flow",active:p==="flow",children:[a.jsx(Zy,{"aria-hidden":"true"}),"开发流程"]}),a.jsxs(pt,{value:"transitions",active:p==="transitions",children:[a.jsx(Om,{"aria-hidden":"true"}),"流转规则"]})]}),a.jsxs("div",{className:"workflow-model-id",children:[a.jsx("span",{children:"模型"}),a.jsx("code",{children:"development-seven-node"})]})]}),a.jsxs(Bt,{value:"flow",active:p==="flow",children:[a.jsxs("section",{className:"flat-section workflow-graph-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"项目入口与迭代开发路径"}),a.jsx("span",{children:"固定状态机 7 节点 · 按入口、设计和开发分组"})]}),a.jsxs("div",{className:"workflow-lanes",children:[a.jsxs("div",{className:"workflow-lane bootstrap-lane",children:[a.jsxs("div",{className:"workflow-lane-label",children:[a.jsx("span",{children:"项目上下文"}),a.jsx("strong",{children:"入口基线"}),a.jsx("small",{children:"首次写入,后续只读检查"})]}),a.jsxs(ne,{className:`bootstrap-entry ${h.node_id===x.node_id?"selected":""}`,variant:"ghost",onClick:()=>S("node",x.node_id),children:[a.jsx(Dy,{"aria-hidden":"true"}),a.jsxs("span",{children:[a.jsx("code",{children:x.node_id}),a.jsx("strong",{children:x.name}),a.jsx("small",{children:ii(x.state)})]}),a.jsxs("span",{className:"bootstrap-facts",children:[a.jsxs("small",{children:["执行次数",a.jsx("strong",{children:x.node_attempt})]}),a.jsxs("small",{children:["尚缺条件",a.jsx("strong",{children:x.missing_conditions.length})]}),a.jsxs("small",{children:["运行凭证",a.jsx("strong",{children:x.completion_receipt?"有效":"未生成"})]})]})]})]}),a.jsxs("div",{className:"workflow-connector",children:[a.jsx(cm,{"aria-hidden":"true"}),a.jsx("strong",{children:"入口基线有效后进入 01"}),a.jsx("small",{children:"后续会话只检查,不自动重放 00"})]}),a.jsxs("div",{className:"workflow-lane",children:[a.jsxs("div",{className:"workflow-lane-label",children:[a.jsx("span",{children:"设计阶段"}),a.jsx("strong",{children:"设计流程"}),a.jsx("small",{children:"01–03 明确产品、方案与交付范围"})]}),a.jsx(um,{nodes:y,selectedId:h.node_id,onSelect:g=>S("node",g),label:"三节点设计流程"})]}),a.jsxs("div",{className:"workflow-connector",children:[a.jsx(cm,{"aria-hidden":"true"}),a.jsx("strong",{children:"03 交付准备后进入 04"}),a.jsx("small",{children:"冻结范围、任务计划与测试设计完成汇合"})]}),a.jsxs("div",{className:"workflow-lane",children:[a.jsxs("div",{className:"workflow-lane-label",children:[a.jsx("span",{children:"开发阶段"}),a.jsx("strong",{children:"开发流程"}),a.jsx("small",{children:"04–06 实现、验证候选版本并完成收尾"})]}),a.jsx(um,{nodes:v,selectedId:h.node_id,onSelect:g=>S("node",g),label:"三节点开发流程"})]})]})]}),a.jsxs("div",{className:"workflow-content-grid",children:[a.jsxs("div",{className:"workflow-content-main",children:[a.jsx(t1,{node:h}),a.jsx(l1,{node:h})]}),a.jsx(a1,{node:h,projection:s,refresh:u})]})]}),a.jsx(Bt,{value:"transitions",active:p==="transitions",children:a.jsx(n1,{nodes:s.workflow.nodes,selected:h})})]})]})]})}function Qs({state:s,children:u}){return s.status==="loading"?a.jsxs("div",{className:"resource-status",children:[a.jsx(Py,{"aria-hidden":"true"}),a.jsx("strong",{children:"正在读取项目事实"})]}):s.status==="error"?a.jsxs("div",{className:"resource-status error",children:[a.jsx(Xm,{"aria-hidden":"true"}),a.jsx("strong",{children:"读取失败"}),a.jsx("p",{children:s.error}),a.jsxs(ne,{variant:"outline",onClick:s.refresh,children:[a.jsx(Ys,{"data-icon":"inline-start"}),"重试"]})]}):u(s.data,s.refresh)}function Ct({title:s,description:u}){return a.jsxs("div",{className:"empty-state",children:[a.jsx(Xm,{"aria-hidden":"true"}),a.jsx("strong",{children:s}),a.jsx("p",{children:u})]})}const s1={approved:"已通过","changes-requested":"要求修改","pending-review":"待审核",stale:"需要重新审核",candidate:"候选","under-review":"审核中",registered:"已登记",modified:"已修改",deprecated:"已弃用",replaced:"已替换",active:"活动",draft:"草稿",finalized:"已完成审核","in-execution":"AI 执行中",discarded:"已废弃",started:"执行中","not-started":"尚未执行"};function At(s){return s1[s]||s||"待审核"}function c1(s,u,o){const r=s.source_inspection_snapshots.filter(f=>f.page_id===u.page_id&&(!o||!f.review_scene_id||f.review_scene_id===o.review_scene_id));return o?r.find(f=>f.asset_kind==="acceptance"&&f.review_scene_id===o.review_scene_id):r.find(f=>f.asset_kind==="implementation"&&!f.review_scene_id)||r.find(f=>f.asset_kind==="implementation")}function Zl(s,u,o,r=!1,f,h){const p=new URLSearchParams({page:u.page_id});return o&&p.set("projectScene",o.review_scene_id),r&&p.set("terminal_id",u.terminal_id),s.revision_ref&&p.set("revision",s.revision_ref),s.prototype_revision_checksum&&p.set("expected_checksum",s.prototype_revision_checksum),f&&p.set("tab",f),h&&p.set("source_snapshot_id",h.source_snapshot_id),`/prototypes/reviews/page?${p}`}function yl({data:s,clearReviewTarget:u=!1}){const[o,r]=It(),f=o.get("terminal_id")||"all";return a.jsxs("div",{className:"terminal-scope-bar",children:[a.jsxs("label",{children:["逻辑终端",a.jsxs("select",{"aria-label":"逻辑终端",value:f,onChange:h=>{const p=new URLSearchParams(o);p.set("terminal_id",h.target.value),u&&(p.delete("page"),p.delete("projectScene")),r(p,{replace:!0})},children:[a.jsx("option",{value:"all",children:"全部逻辑终端"}),s.terminals.map(h=>a.jsx("option",{value:h.terminal_id,children:h.terminal_name},h.terminal_id))]})]}),a.jsx("span",{children:s.terminal_scope.mode==="all"?"全部范围":s.terminal_scope.terminal_name||s.terminal_scope.terminal_id})]})}function ha({data:s}){const u=s.pages.filter(f=>f.review_status==="approved").length,o=s.pages.length-u,r=s.terminal_scope.mode==="all"?s.terminals.length:1;return a.jsxs("div",{className:"summary-band",children:[a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"当前修订"}),a.jsx("strong",{className:"summary-path",children:s.prototype_revision_id||"尚未登记"})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"审核范围"}),a.jsxs("strong",{children:[s.terminal_scope.mode==="all"?"全部":s.terminal_scope.terminal_name||s.terminal_scope.terminal_id," ",a.jsxs("small",{children:["· ",r," 个终端"]})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"页面"}),a.jsxs("strong",{children:[s.pages.length," ",a.jsx("small",{children:"页"})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"待审核"}),a.jsxs("strong",{children:[o," ",a.jsx("small",{children:"页"})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"已通过"}),a.jsxs("strong",{children:[u," ",a.jsx("small",{children:"页"})]})]})]})}function r1({data:s}){const u=[["components","组件登记"],["data_contracts","数据契约"],["component_candidates","候选组件"],["component_bindings","组件绑定"],["implementation_bindings","实现映射"],["source_inspection_snapshots","源码审查快照"]];return a.jsxs("section",{className:"flat-section prototype-registration-summary","aria-labelledby":"prototype-registration-summary",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{id:"prototype-registration-summary",children:"原型注册摘要"}),a.jsx("code",{children:s.catalog_schema_version||"尚未登记"})]}),a.jsxs("div",{className:"prototype-registration-grid",children:[a.jsxs("div",{children:[a.jsx("span",{className:"registration-group-label",children:"逻辑终端"}),a.jsx("div",{className:"terminal-registration-list",children:s.terminals.map(o=>a.jsxs("div",{className:"terminal-registration-row",children:[a.jsx("code",{children:o.terminal_id}),a.jsx("strong",{children:o.terminal_name}),a.jsx(ze,{className:"status-badge completed",children:"有效"})]},o.terminal_id))})]}),a.jsx("dl",{className:"catalog-summary-list",children:u.map(([o,r])=>a.jsxs("div",{children:[a.jsx("dt",{children:r}),a.jsx("dd",{children:s.catalog_summary[o]??0})]},o))})]})]})}function u1({data:s}){return a.jsxs(a.Fragment,{children:[a.jsx(ha,{data:s}),a.jsx(yl,{data:s}),s.pages.length?a.jsxs(a.Fragment,{children:[a.jsxs("div",{className:"prototype-overview-grid",children:[a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"当前迭代审核情况"}),a.jsx("span",{children:"完整覆盖所有业务 Page 和条件场景"})]}),a.jsxs("table",{className:"data-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"页面编号"}),a.jsx("th",{children:"业务页面"}),a.jsx("th",{children:"场景"}),a.jsx("th",{children:"状态"}),a.jsx("th",{"aria-label":"打开"})]})}),a.jsx("tbody",{children:s.pages.map(u=>{const o=s.review_scenes.filter(r=>r.page_id===u.page_id);return a.jsxs("tr",{children:[a.jsx("td",{children:a.jsx("code",{children:u.page_id})}),a.jsxs("td",{children:[a.jsx("strong",{children:u.display_label||u.page_name}),a.jsx("span",{className:"cell-meta",children:u.production_route})]}),a.jsx("td",{children:o.length}),a.jsx("td",{children:a.jsx(ze,{className:`status-badge ${u.review_status==="approved"?"completed":"waiting"}`,children:At(u.review_status)})}),a.jsx("td",{children:a.jsx(mt,{className:"icon-link","aria-label":`查看 ${u.page_id}`,to:Zl(s,u,void 0,!0),children:a.jsx(Lt,{})})})]},u.page_id)})})]})]}),a.jsxs("aside",{className:"flat-section overview-checks",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"完整性检查"}),a.jsx("span",{children:"由当前 Revision 派生"})]}),[["视觉规范",s.registration_status==="registered"],["页面路由",s.pages.every(u=>u.prototype_route&&u.production_route)],["审核场景",s.review_scenes.every(u=>u.scene_checksum)],["修订校验",!!s.prototype_revision_checksum]].map(([u,o])=>a.jsxs("div",{className:"check-row",children:[a.jsx(Kt,{"aria-hidden":"true"}),a.jsx("span",{children:String(u)}),a.jsx(ze,{className:`status-badge ${o?"completed":"blocked"}`,children:o?"完整":"缺失"})]},String(u))),a.jsxs("div",{className:"check-row",children:[a.jsx(ri,{"aria-hidden":"true"}),a.jsx("span",{children:"未解决修改要求"}),a.jsxs(ze,{className:`status-badge ${s.change_requests.length?"waiting":"completed"}`,children:[s.change_requests.length," 项"]})]})]})]}),a.jsx(r1,{data:s})]}):a.jsx(Ct,{title:"当前终端范围没有可审核 Page",description:"请选择其他已登记的逻辑终端,或返回全部范围。"})]})}function o1({data:s}){const[u,o]=It(),r=u.get("q")||"",f=u.get("status")||"all",h=s.pages.filter(p=>(f==="all"||p.review_status===f)&&(!r||JSON.stringify(p).toLowerCase().includes(r.toLowerCase())));return a.jsxs(a.Fragment,{children:[a.jsx(ha,{data:s}),a.jsx(yl,{data:s}),a.jsxs("div",{className:"filter-bar prototype-filter",children:[a.jsx(Hu,{"aria-hidden":"true"}),a.jsx("input",{"aria-label":"筛选原型页面",value:r,placeholder:"按页面编号、名称或路由筛选",onChange:p=>{const x=new URLSearchParams(u);p.target.value?x.set("q",p.target.value):x.delete("q"),o(x,{replace:!0})}}),a.jsxs("select",{"aria-label":"审核状态",value:f,onChange:p=>{const x=new URLSearchParams(u);p.target.value==="all"?x.delete("status"):x.set("status",p.target.value),o(x,{replace:!0})},children:[a.jsx("option",{value:"all",children:"全部状态"}),a.jsx("option",{value:"pending-review",children:"待审核"}),a.jsx("option",{value:"changes-requested",children:"要求修改"}),a.jsx("option",{value:"approved",children:"已通过"}),a.jsx("option",{value:"stale",children:"需要重新审核"})]}),a.jsxs("span",{children:[h.length," / ",s.pages.length]})]}),a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"页面审核队列"}),a.jsx("span",{children:"当前迭代全部业务 Page"})]}),a.jsxs("table",{className:"data-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"页面编号"}),a.jsx("th",{children:"页面与正式路由"}),a.jsx("th",{children:"审核场景"}),a.jsx("th",{children:"审核状态"}),a.jsx("th",{"aria-label":"打开"})]})}),a.jsx("tbody",{children:h.length?h.map(p=>a.jsxs("tr",{children:[a.jsx("td",{children:a.jsx("code",{children:p.page_id})}),a.jsxs("td",{children:[a.jsx("strong",{children:p.display_label||p.page_name}),a.jsx("span",{className:"cell-meta",children:p.production_route})]}),a.jsx("td",{children:s.review_scenes.filter(x=>x.page_id===p.page_id).length}),a.jsx("td",{children:a.jsx(ze,{className:`status-badge ${p.review_status==="approved"?"completed":"waiting"}`,children:At(p.review_status)})}),a.jsx("td",{children:a.jsx(mt,{className:"icon-link","aria-label":`审核 ${p.page_id}`,to:Zl(s,p,void 0,!0),children:a.jsx(Lt,{})})})]},p.page_id)):a.jsx("tr",{children:a.jsx("td",{colSpan:5,className:"table-empty",children:"当前筛选范围没有匹配的业务 Page"})})})]})]})]})}function d1({data:s,page:u,scene:o,resource:r,params:f,setParams:h}){const x=(r.status==="ready"&&r.data.source_inspection_snapshots?r.data.source_inspection_snapshots:s.source_inspection_snapshots).filter(g=>g.page_id===u.page_id&&(!o||!g.review_scene_id||g.review_scene_id===o.review_scene_id)),y=r.status==="ready"&&r.data.source_snapshot?r.data.source_snapshot:x.find(g=>g.source_snapshot_id===f.get("source_snapshot_id")),v=s.review_scenes.filter(g=>g.page_id===u.page_id),S=g=>{const w=new URLSearchParams(f);w.set("tab","source"),w.set("source_snapshot_id",g.source_snapshot_id),h(w,{replace:!0})};return a.jsxs("section",{className:"source-inspection-panel","aria-label":"源码审查快照",children:[a.jsxs("div",{className:"source-inspection-header",children:[a.jsxs("div",{children:[a.jsx("strong",{children:"Source Inspection Snapshot"}),a.jsx("span",{children:"仅显示当前 Page、Scene 与 Logical Terminal 登记的只读资产"})]}),a.jsxs(mt,{className:"source-return-link",to:Zl(s,u,o,!0),children:[a.jsx(Bm,{"data-icon":"inline-start"}),"返回原型预览"]})]}),a.jsxs("div",{className:"source-inspection-grid",children:[a.jsxs("div",{className:"source-snapshot-list",children:[a.jsxs("div",{className:"source-subheading",children:[a.jsx("strong",{children:"登记资产"}),a.jsxs("span",{children:[x.length," 项"]})]}),x.length?x.map(g=>a.jsxs("button",{className:y?.source_snapshot_id===g.source_snapshot_id?"selected":"",onClick:()=>S(g),children:[a.jsxs("span",{children:[a.jsx("code",{children:g.source_snapshot_id}),a.jsx(ze,{className:"status-badge completed",children:g.asset_kind==="implementation"?"主实现":"验收资产"})]}),a.jsx("strong",{children:g.review_scene_id?`${g.review_scene_id} · ${g.scene_name||"状态分支"}`:"页面主实现"}),a.jsxs("small",{children:[g.scene_branch," · ",g.language]})]},g.source_snapshot_id)):a.jsx("p",{className:"trace-empty",children:"当前 Page 或 Scene 没有登记源码审查快照。"})]}),a.jsxs("div",{className:"source-inspection-content",children:[a.jsxs("div",{className:"source-meta-grid",children:[a.jsxs("div",{children:[a.jsx("span",{children:"Page / Scene"}),a.jsxs("strong",{children:[u.page_id," · ",o?.review_scene_id||"页面整体"]})]}),a.jsxs("div",{children:[a.jsx("span",{children:"状态分支"}),a.jsx("strong",{children:y?.scene_branch||o?.scene_type||"未选择"})]}),a.jsxs("div",{children:[a.jsx("span",{children:"相对来源"}),a.jsx("code",{children:y?.source_ref||"未选择登记快照"})]}),a.jsxs("div",{children:[a.jsx("span",{children:"checksum"}),a.jsx("code",{children:y?.checksum||s.prototype_revision_checksum||"未选择登记快照"})]})]}),r.status==="loading"?a.jsx("p",{className:"trace-empty",children:"正在读取登记快照内容…"}):null,r.status==="error"?a.jsx("p",{className:"source-inspection-error",children:r.error}):null,r.status==="ready"&&y&&r.data.source_snapshot?a.jsx("pre",{className:"source-inspection-code","aria-label":"只读源码内容",children:r.data.source_snapshot.content||"(登记快照为空)"}):y&&r.status==="ready"?a.jsx("p",{className:"trace-empty",children:"请选择一个登记快照以读取只读内容。"}):null]})]}),a.jsxs("div",{className:"source-scene-mapping",children:[a.jsxs("div",{className:"source-subheading",children:[a.jsx("strong",{children:"Scene 状态分支与验收映射"}),a.jsx("span",{children:"由 Review Scene 与快照登记关系派生"})]}),a.jsxs("table",{className:"data-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"Review Scene"}),a.jsx("th",{children:"触发状态"}),a.jsx("th",{children:"验收快照"}),a.jsx("th",{children:"审核状态"})]})}),a.jsx("tbody",{children:v.map(g=>{const w=x.find(O=>O.asset_kind==="acceptance"&&O.review_scene_id===g.review_scene_id);return a.jsxs("tr",{children:[a.jsxs("td",{children:[a.jsx("code",{children:g.review_scene_id}),a.jsx("span",{children:g.scene_name})]}),a.jsx("td",{children:g.scene_type}),a.jsx("td",{children:w?a.jsx("code",{children:w.source_snapshot_id}):a.jsx("span",{className:"cell-meta",children:"未登记"})}),a.jsx("td",{children:At(g.review_status)})]},g.review_scene_id)})})]})]})]})}function f1({data:s,projection:u,refresh:o}){const[r,f]=It(),h=r.get("page"),p=r.get("projectScene"),x=h?s.pages.find(V=>V.page_id===h):void 0,y=p?s.review_scenes.find(V=>V.review_scene_id===p):void 0,v=x||(h?void 0:s.pages.find(V=>V.page_id===y?.page_id)),S=v?s.review_scenes.filter(V=>V.page_id===v.page_id):[],g=p?S.find(V=>V.review_scene_id===p):S[0],w=p?g:void 0,O=r.get("tab")==="source",k=r.get("source_snapshot_id"),B=new URLSearchParams({revision:s.revision_ref||"",expected_checksum:s.prototype_revision_checksum||"",terminal_id:s.terminal_scope.terminal_id});v&&B.set("page_id",v.page_id),w&&B.set("review_scene_id",w.review_scene_id),k&&B.set("source_snapshot_id",k);const Y=ui("prototype-source-snapshots",B.toString()),D=s.pages.length?!h&&!p?"请选择一个业务 Page 或 Review Scene 后开始审核。":h&&!x?"请求的业务 Page 不属于当前逻辑终端。":p&&!y?"请求的 Review Scene 不属于当前逻辑终端。":x&&y&&(y.page_id!==x.page_id||y.terminal_id!==x.terminal_id)?"请求的 Page 与 Review Scene 不属于同一逻辑终端。":null:"当前终端范围没有可审核的业务 Page。",[G,K]=j.useState(""),[ce,ie]=j.useState([]),[he,$]=j.useState(""),[I,je]=j.useState(!1),we=s.change_requests.filter(V=>V.page_id===v?.page_id&&V.terminal_id===v?.terminal_id),ke=j.useCallback(V=>{const R=[...V.clipboardData.items].filter(Q=>Q.kind==="file"&&Q.type.startsWith("image/"));for(const Q of R){const F=Q.getAsFile();if(!F)continue;const de=new FileReader;de.onload=()=>ie(J=>[...J,{name:F.name||`clipboard-${Date.now()}.png`,mediaType:F.type,content:String(de.result).split(",")[1]||""}]),de.readAsDataURL(F)}},[]);if(D||!v)return a.jsxs("div",{className:"review-terminal-workspace",children:[a.jsx(yl,{data:s,clearReviewTarget:!0}),a.jsx(Ct,{title:"审核目标不可用",description:D||"当前原型 Revision 没有可审核 Page。"})]});const z=async()=>{if(!G.trim())return $("请填写明确的修改要求");je(!0),$("");try{const V=await He("prototype-change-request-create",{prototype_revision_id:s.prototype_revision_id,prototype_revision_checksum:s.prototype_revision_checksum,terminal_id:v.terminal_id,page_id:v.page_id,page_checksum:v.page_checksum,review_scene_id:g?.review_scene_id||null,actor:"human:manager-user",body:G,idempotency_key:crypto.randomUUID()});let R=Number(V.change_request.revision);for(const Q of ce){const F=await He("prototype-change-request-attachment-add",{change_request_id:V.change_request.change_request_id,expected_revision:R,content_base64:Q.content,media_type:Q.mediaType,actor:"human:manager-user",idempotency_key:crypto.randomUUID()});R=Number(F.change_request.revision)}K(""),ie([]),$("修改要求已保存,AI 可通过受控接口读取"),o()}catch(V){$(V.message)}finally{je(!1)}},ae=async V=>{je(!0),$("");try{await He("prototype-page-review-apply",{experience:".workflow/experience",revision:s.revision_ref,terminal_id:v.terminal_id,page_id:v.page_id,review_scene_id:g?.review_scene_id,target_checksum:s.prototype_revision_checksum,page_checksum:v.page_checksum,decision:V,actor:"human:manager-user",rationale:V==="changes-requested"?G.trim()||"修改要求已登记":"",comment:G.trim()||"",expected_scope_revision:u.project.state_revision,idempotency_key:crypto.randomUUID()}),$(V==="approved"?"页面审核已通过":"页面已退回修改"),o()}catch(R){$(R.message)}finally{je(!1)}},_e=new URLSearchParams({revision:s.revision_ref||"",expected_checksum:s.prototype_revision_checksum||""});return g&&_e.set("review_path",g.prototype_route),a.jsxs("div",{className:"review-terminal-workspace",children:[a.jsx(yl,{data:s,clearReviewTarget:!0}),a.jsxs("div",{className:"review-layout",children:[a.jsxs("aside",{className:"review-scene-rail",children:[a.jsxs("div",{className:"rail-header",children:[a.jsxs("span",{children:[v.page_id," 审核场景"]}),a.jsx("code",{children:S.length})]}),S.map(V=>a.jsxs("button",{className:g?.review_scene_id===V.review_scene_id?"selected":"",onClick:()=>{const R=new URLSearchParams(r);R.set("terminal_id",v.terminal_id),R.set("page",v.page_id),R.set("projectScene",V.review_scene_id),f(R,{replace:!0})},children:[a.jsx("code",{children:V.review_scene_id}),a.jsx("strong",{children:V.scene_name}),a.jsx("span",{children:V.scene_type})]},V.review_scene_id))]}),a.jsxs("section",{className:`prototype-preview ${O?"source-mode":""}`,children:[a.jsxs("div",{className:"preview-toolbar",children:[a.jsxs("div",{children:[a.jsx("strong",{children:v.display_label||v.page_name}),a.jsx("span",{children:O?"源码审查":g?.prototype_route||v.prototype_route})]}),a.jsx(ze,{className:`status-badge ${v.review_status==="approved"?"completed":"waiting"}`,children:O?"只读":At(v.review_status)})]}),O?a.jsx(d1,{data:s,page:v,scene:w,resource:Y,params:r,setParams:f}):a.jsx("iframe",{title:`${v.page_id} 原型`,sandbox:"allow-scripts allow-forms",src:`/api/v1/prototype-content/${s.review_entrypoint}?${_e}`})]}),a.jsxs("aside",{className:"review-comment-panel",children:[a.jsxs("div",{className:"rail-header",children:[a.jsx("span",{children:"审核与修改要求"}),a.jsx("code",{children:v.page_checksum.slice(0,8)})]}),a.jsxs("div",{className:"review-comment-body",children:[a.jsxs("div",{className:"review-page-meta",children:[a.jsx("strong",{children:v.page_id}),a.jsx("span",{children:v.production_route}),a.jsx("small",{children:g?.review_scene_id||"页面整体"})]}),a.jsx("label",{htmlFor:"review-comment",children:"评论或修改要求"}),a.jsx("textarea",{id:"review-comment",value:G,onPaste:ke,onChange:V=>K(V.target.value),placeholder:"填写明确修改要求;可直接 Ctrl+V 粘贴截图"}),a.jsxs("div",{className:"attachment-list",children:[a.jsxs("span",{children:[a.jsx(By,{"aria-hidden":"true"}),"截图附件 ",ce.length]}),ce.map((V,R)=>a.jsxs("button",{"aria-label":`移除 ${V.name}`,onClick:()=>ie(Q=>Q.filter((F,de)=>de!==R)),children:[a.jsx("span",{children:V.name}),a.jsx(Vm,{})]},`${V.name}-${R}`))]}),a.jsxs(ne,{disabled:I||!G.trim(),variant:"outline",onClick:z,children:[a.jsx(Sj,{"data-icon":"inline-start"}),"保存修改要求"]}),a.jsxs("div",{className:"review-actions",children:[a.jsxs(ne,{disabled:I,variant:"outline",onClick:()=>ae("changes-requested"),children:[a.jsx(ri,{"data-icon":"inline-start"}),"退回修改"]}),a.jsxs(ne,{disabled:I,onClick:()=>ae("approved"),children:[a.jsx(Kt,{"data-icon":"inline-start"}),"审核通过"]})]}),he?a.jsx("p",{className:"action-message",role:"status",children:he}):null,a.jsxs("div",{className:"existing-requests",children:[a.jsx("strong",{children:"本页修改记录"}),we.length?we.map(V=>a.jsxs("div",{children:[a.jsx("code",{children:String(V.change_request_id)}),a.jsx("span",{children:String(V.body)}),a.jsxs("small",{children:[At(String(V.status))," · 修订 ",String(V.revision)]})]},String(V.change_request_id))):a.jsx("span",{children:"尚无修改要求"})]})]})]})]})]})}function h1({data:s}){const u=(o,r)=>{const f=c1(s,o,r);return f?a.jsx(mt,{className:"icon-link","aria-label":`审查 ${f.source_snapshot_id}`,to:Zl(s,o,r,!0,"source",f),children:a.jsx(Ls,{})}):a.jsx("span",{className:"source-unregistered",title:"当前 Page 或 Scene 没有登记源码快照",children:"未登记"})};return a.jsxs(a.Fragment,{children:[a.jsx(ha,{data:s}),a.jsx(yl,{data:s}),s.pages.length?a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"页面路由目录"}),a.jsx("span",{children:"原型路由与正式系统路由一一对应"})]}),a.jsxs("table",{className:"data-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"页面 / 场景"}),a.jsx("th",{children:"原型路由"}),a.jsx("th",{children:"正式路由"}),a.jsx("th",{"aria-label":"打开"}),a.jsx("th",{"aria-label":"源码审查"})]})}),a.jsx("tbody",{children:s.pages.flatMap(o=>[a.jsxs("tr",{children:[a.jsxs("td",{children:[a.jsx("code",{children:o.page_id}),a.jsx("strong",{children:o.display_label})]}),a.jsx("td",{children:o.prototype_route}),a.jsx("td",{children:o.production_route}),a.jsx("td",{children:a.jsx(mt,{className:"icon-link","aria-label":`审核 ${o.page_id}`,to:Zl(s,o,void 0,!0),children:a.jsx(Lt,{})})}),a.jsx("td",{children:u(o)})]},o.page_id),...s.review_scenes.filter(r=>r.page_id===o.page_id).map(r=>a.jsxs("tr",{className:"sub-row",children:[a.jsxs("td",{children:[a.jsx("code",{children:r.review_scene_id}),a.jsx("span",{children:r.scene_name})]}),a.jsx("td",{children:r.prototype_route}),a.jsx("td",{children:r.production_route}),a.jsx("td",{children:a.jsx(mt,{className:"icon-link","aria-label":`审核 ${r.review_scene_id}`,to:Zl(s,o,r,!0),children:a.jsx(Lt,{})})}),a.jsx("td",{children:u(o,r)})]},r.review_scene_id))])})]})]}):a.jsx(Ct,{title:"当前终端范围没有路由记录",description:"请选择其他已登记的逻辑终端,或返回全部范围。"})]})}function m1({data:s}){const u=j.useMemo(()=>new Map(s.pages.map(o=>[o.page_id,o])),[s.pages]);return a.jsxs(a.Fragment,{children:[a.jsx(ha,{data:s}),a.jsx(yl,{data:s}),s.pages.length?a.jsxs("section",{className:"flat-section route-graph-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"页面路由关系"}),a.jsx("span",{children:"由当前终端范围的路由目录派生"})]}),a.jsx("div",{className:"route-graph","aria-label":"页面路由关系图",children:s.pages.map(o=>a.jsxs("div",{className:"route-node-group",children:[a.jsxs(mt,{className:"route-page-node","aria-label":`审核 ${o.page_id}`,to:Zl(s,o,void 0,!0),children:[a.jsx("code",{children:o.page_id}),a.jsx("strong",{children:o.display_label}),a.jsx("span",{children:o.production_route})]}),a.jsx("div",{className:"route-scenes",children:s.routes.filter(r=>r.page_id===o.page_id).map(r=>{const f=s.review_scenes.find(h=>h.review_scene_id===r.review_scene_id);return f?a.jsxs(mt,{"aria-label":`审核 ${f.review_scene_id}`,to:Zl(s,u.get(f.page_id),f,!0),children:[a.jsx(Ou,{"aria-hidden":"true"}),a.jsx("code",{children:f.review_scene_id}),a.jsx("span",{children:f.scene_name})]},f.review_scene_id):null})})]},o.page_id))})]}):a.jsx(Ct,{title:"当前终端范围没有路由关系",description:"请选择其他已登记的逻辑终端,或返回全部范围。"})]})}function p1({data:s,refresh:u}){const[o,r]=j.useState(""),f=async p=>{try{await He("prototype-change-request-discard",{change_request_id:p.change_request_id,expected_revision:p.revision,actor:"human:manager-user",rationale:"用户在 AI 执行前废弃该修改要求",idempotency_key:crypto.randomUUID()}),r("修改要求已废弃"),u()}catch(x){r(x.message)}},h=s.change_requests.length||s.review_batches.length||s.discarded_tombstones.length;return a.jsxs(a.Fragment,{children:[a.jsx(ha,{data:s}),a.jsx(yl,{data:s}),h?a.jsxs("div",{className:"prototype-trace-stack",children:[a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"修改要求与 AI 执行"}),a.jsxs("span",{children:[s.change_requests.length," 项当前要求"]})]}),s.change_requests.length?a.jsxs("table",{className:"data-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"编号"}),a.jsx("th",{children:"终端 / 页面与内容"}),a.jsx("th",{children:"修订 / 状态"}),a.jsx("th",{children:"AI 执行"}),a.jsx("th",{children:"操作"})]})}),a.jsx("tbody",{children:s.change_requests.map(p=>{const x=p.execution;return a.jsxs("tr",{children:[a.jsx("td",{children:a.jsx("code",{children:String(p.change_request_id)})}),a.jsxs("td",{children:[a.jsxs("strong",{children:[String(p.terminal_id)," · ",String(p.page_id)]}),a.jsx("span",{className:"cell-meta",children:String(p.body)})]}),a.jsxs("td",{children:["R",String(p.revision)," · ",At(String(p.status))]}),a.jsxs("td",{children:[a.jsx("span",{children:At(String(x?.status||"not-started"))}),x?.actor?a.jsxs("small",{className:"cell-meta",children:[String(x.actor)," · ",String(x.started_at||"")]}):null]}),a.jsx("td",{children:x?.status!=="started"?a.jsxs(ne,{size:"sm",variant:"ghost",onClick:()=>f(p),children:[a.jsx(Vm,{"data-icon":"inline-start"}),"废弃"]}):a.jsx(ze,{className:"status-badge active",children:"已锁定"})})]},String(p.change_request_id))})})]}):a.jsx("p",{className:"trace-empty",children:"当前终端范围没有未废弃的修改要求。"})]}),a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"审核批次"}),a.jsxs("span",{children:[s.review_batches.length," 个已完成批次"]})]}),s.review_batches.length?a.jsxs("table",{className:"data-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"批次"}),a.jsx("th",{children:"终端 / 页面"}),a.jsx("th",{children:"要求快照"}),a.jsx("th",{children:"完成时间"})]})}),a.jsx("tbody",{children:s.review_batches.map(p=>a.jsxs("tr",{children:[a.jsxs("td",{children:[a.jsx("code",{children:String(p.review_batch_id)}),a.jsx("span",{className:"cell-meta",children:At(String(p.status))})]}),a.jsx("td",{children:a.jsxs("strong",{children:[String(p.terminal_id)," · ",String(p.page_id)]})}),a.jsxs("td",{children:[Array.isArray(p.change_requests)?p.change_requests.length:0," 项"]}),a.jsx("td",{children:String(p.finalized_at||"")})]},String(p.review_batch_id)))})]}):a.jsx("p",{className:"trace-empty",children:"当前终端范围没有已完成审核批次。"})]}),a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"已废弃要求"}),a.jsxs("span",{children:[s.discarded_tombstones.length," 条审计墓碑"]})]}),s.discarded_tombstones.length?a.jsxs("table",{className:"data-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"要求"}),a.jsx("th",{children:"终端 / 页面"}),a.jsx("th",{children:"审核批次"}),a.jsx("th",{children:"废弃原因"})]})}),a.jsx("tbody",{children:s.discarded_tombstones.map(p=>a.jsxs("tr",{children:[a.jsxs("td",{children:[a.jsx("code",{children:String(p.change_request_id)}),a.jsx("span",{className:"cell-meta",children:String(p.discarded_at||"")})]}),a.jsx("td",{children:a.jsxs("strong",{children:[String(p.terminal_id)," · ",String(p.page_id)]})}),a.jsx("td",{children:a.jsx("code",{children:String(p.review_batch_id||"未归档")})}),a.jsx("td",{children:String(p.rationale||"")})]},String(p.change_request_id)))})]}):a.jsx("p",{className:"trace-empty",children:"当前终端范围没有已废弃的修改要求。"})]})]}):a.jsx(Ct,{title:"当前终端范围没有修改与执行记录",description:"在 P13 页面审核详情中添加文字或截图修改要求。"}),o?a.jsx("p",{className:"action-message",children:o}):null]})}function v1({data:s}){return a.jsxs(a.Fragment,{children:[a.jsx(ha,{data:s}),a.jsx(yl,{data:s}),s.revision_history.length?a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"原型修订记录"}),a.jsx("span",{children:"只显示当前终端范围内的 Revision 证据与差异"})]}),a.jsx("div",{className:"revision-timeline",children:s.revision_history.map((u,o)=>{const r=Object.entries(u.revision_diff.collections).filter(([,h])=>h.added||h.removed||h.changed),f=u.revision_diff.status==="baseline"?"基线修订":u.revision_diff.status==="history-gap"?"历史证据不可用,未跨断点比较差异":u.revision_diff.status==="unavailable"?"此 Revision 无法读取":`相对 ${u.revision_diff.compared_to_revision_id} 的差异`;return a.jsxs("div",{children:[a.jsx("span",{children:o+1}),a.jsxs("div",{children:[a.jsx("strong",{children:u.prototype_revision_id||u.declared_prototype_revision_id||u.path}),a.jsx("code",{children:u.checksum||"无可用校验值"}),a.jsxs("small",{children:["版本 ",u.version??"未登记"," · ",At(u.revision_status)," · ",u.frozen_at||u.modified_at||"时间不可用"]}),u.inspection_error?a.jsxs("small",{className:"cell-meta",children:[u.inspection_error.code,": ",u.inspection_error.message]}):null,a.jsxs("div",{className:"revision-diff",children:[a.jsx("span",{children:f}),r.length?a.jsx("ul",{children:r.map(([h,p])=>a.jsxs("li",{children:[h,": +",p.added," / -",p.removed," / ~",p.changed]},h))}):u.revision_diff.status==="compared"?a.jsx("small",{children:"当前终端范围没有结构差异"}):null]})]})]},u.path)})})]}):a.jsx(Ct,{title:"当前终端范围没有匹配的修订记录",description:"选择其他已登记的逻辑终端,或返回全部范围查看历史。"})]})}const x1={P07:{title:"项目原型概览",description:"汇总当前迭代的视觉规范、页面与场景审核、路由完整性和修订有效性。",icon:ni},P11:{title:"项目视觉规范",description:"查看当前业务项目原型绑定的唯一视觉规范与技术约束。",icon:Du},P12:{title:"原型审批管理",description:"筛选并查看当前迭代全部业务原型页面的审核状态。",icon:Jy},P13:{title:"页面审核详情",description:"查看一个业务 Page 的全部场景,添加评论和截图并作出审核决定。",icon:ni},P14:{title:"页面路由管理",description:"查看业务 Page、Review Scene、原型路由和正式系统路由。",icon:Ym},P15:{title:"页面路由关系",description:"通过可点击的关系图定位到具体业务 Page 或 Review Scene。",icon:Ou},P16:{title:"修改要求",description:"追踪多轮修改要求、审核批次和 AI 执行锁定状态。",icon:ri},P17:{title:"修订记录",description:"查看不可变 Prototype Revision 时间线和校验值。",icon:Um}};function g1({pageId:s,projection:u}){const[o]=It(),r=new Set(["P07","P11","P12","P13","P14","P15","P16","P17"]).has(s),f=o.get("terminal_id")||"all",h=s==="P13"&&o.get("revision")||void 0,p=s==="P13"&&o.get("expected_checksum")||void 0,x=new URLSearchParams;r&&x.set("terminal_id",f),h&&x.set("revision",h),p&&x.set("expected_checksum",p);const y=ui("prototypes",x.toString()),v=x1[s];return a.jsxs("div",{className:`page-layout ${s==="P13"?"review-page":""}`,children:[a.jsx(Kl,{pageId:s,title:v.title,description:v.description,onRefresh:y.refresh}),a.jsx(Qs,{state:y,children:(S,g)=>S.registration_status!=="registered"?a.jsx("div",{className:"page-scroll",children:a.jsx(Ct,{title:"项目原型尚未登记",description:"请先完成视觉规范确认并冻结一个可校验的 Prototype Revision。"})}):a.jsxs("div",{className:s==="P13"?"review-page-body":"page-scroll prototype-page-body",children:[s==="P07"?a.jsx(u1,{data:S}):null,s==="P11"?a.jsx(S1,{data:S,refresh:g}):null,s==="P12"?a.jsx(o1,{data:S}):null,s==="P13"?a.jsx(f1,{data:S,projection:u,refresh:g}):null,s==="P14"?a.jsx(h1,{data:S}):null,s==="P15"?a.jsx(m1,{data:S}):null,s==="P16"?a.jsx(p1,{data:S,refresh:g}):null,s==="P17"?a.jsx(v1,{data:S}):null]})})]})}const y1={artifact_id:"视觉规范标识",status:"状态",decision:"审核决定",visual_direction:"视觉方向",visual_direction_ref:"视觉方向材料",design_reference_selection_ref:"设计参考选择",design_tokens_ref:"设计令牌",ui_framework_selection_ref:"框架选择",component_state_matrix_ref:"组件状态矩阵",component_system:"组件体系",icon_library:"图标库",approval_expires_at:"审批有效期",blocking_issues:"阻塞事项",design_input_checksums:"设计输入"},j1=["artifact_id","status","decision","visual_direction","visual_direction_ref","design_reference_selection_ref","design_tokens_ref","ui_framework_selection_ref","component_state_matrix_ref","component_system","icon_library","approval_expires_at","blocking_issues","design_input_checksums"];function _1(s){return Array.isArray(s)?s.length?`${s.length} 项`:"无":s&&typeof s=="object"?"已登记":s==null||s===""?"未声明":String(s)}function S1({data:s,refresh:u}){const[o,r]=It(),f=o.get("tab")||"foundation",h=new Set(["foundation","registry","reviews"]).has(f)?f:"foundation",[p,x]=j.useState(""),[y,v]=j.useState(""),[S,g]=j.useState(""),[w,O]=j.useState({}),[k,B]=j.useState({}),[Y,D]=j.useState(!1),G=s.component_governance,K=G?.component_candidates||[],ce=s.visual_standard_reviews.at(-1),ie=s.visual_standard,he=ie?[["修订内证据",ie.ref],...j1.filter(z=>Object.hasOwn(ie.content,z)).map(z=>[y1[z],_1(ie.content[z])])]:[],$=z=>{const ae=new URLSearchParams(o);z==="foundation"?ae.delete("tab"):ae.set("tab",z),r(ae,{replace:!0})},I=(z,ae)=>({experience:".workflow/experience",revision:s.revision_ref,prototype_revision_id:s.prototype_revision_id,prototype_revision_checksum:s.prototype_revision_checksum,terminal_id:String(z.source_terminal_id),component_id:String(z.component_id),expected_lifecycle:String(z.lifecycle),target_lifecycle:ae,actor:"human:manager-user"}),je=async(z,ae)=>{if(!s.revision_ref||!s.prototype_revision_id||!s.prototype_revision_checksum||!ae){g("当前候选缺少可转换的 Revision 身份");return}const _e=String(z.component_id);D(!0),g("");try{const V=await He("prototype-component-candidate-transition-plan",{...I(z,ae),idempotency_key:crypto.randomUUID()});B(R=>({...R,[_e]:{target:ae,plan:V}})),g(`已生成 ${_e} 的转换计划`)}catch(V){g(V.message)}finally{D(!1)}},we=async(z,ae)=>{const _e=String(z.component_id),V=k[_e];if(!V||V.target!==ae){g("请先生成与当前目标一致的转换计划");return}D(!0),g("");try{const R=await He("prototype-component-candidate-transition-apply",{...I(z,ae),expected_plan_checksum:V.plan.plan_checksum,idempotency_key:crypto.randomUUID()});B(Q=>{const F={...Q};return delete F[_e],F}),g(`已创建后继草稿 ${R.successor_revision.revision_ref}`),u()}catch(R){g(R.message)}finally{D(!1)}},ke=async z=>{const ae=p.trim();if(z==="changes-requested"&&!ae){v("退回视觉规范前必须填写修改意见");return}if(!ie||!s.prototype_revision_id||!s.prototype_revision_checksum||!s.revision_ref){v("当前视觉规范缺少可审核的 Revision 身份");return}D(!0),v("");try{await He("prototype-visual-standard-review-apply",{experience:".workflow/experience",revision:s.revision_ref,prototype_revision_id:s.prototype_revision_id,prototype_revision_checksum:s.prototype_revision_checksum,visual_standard_checksum:ie.checksum,terminal_id:s.terminal_scope.terminal_id,decision:z,comment:ae,actor:"human:manager-user",idempotency_key:crypto.randomUUID()}),x(""),v(z==="approved"?"视觉规范审核已记录":"视觉规范已退回并记录修改意见"),u()}catch(_e){v(_e.message)}finally{D(!1)}};return a.jsxs(a.Fragment,{children:[a.jsx(ha,{data:s}),a.jsx(yl,{data:s}),a.jsxs("section",{className:"flat-section p11-review-target","aria-label":"视觉规范审核目标",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"视觉规范审核目标"}),a.jsx("span",{children:"受当前 Prototype Revision 与校验值约束"})]}),a.jsxs("dl",{className:"p11-target-facts",children:[a.jsxs("div",{children:[a.jsx("dt",{children:"业务修订"}),a.jsx("dd",{children:a.jsx("code",{children:s.prototype_revision_id})})]}),a.jsxs("div",{children:[a.jsx("dt",{children:"视觉规范校验值"}),a.jsx("dd",{children:a.jsx("code",{children:ie?.checksum||"未登记"})})]}),a.jsxs("div",{children:[a.jsx("dt",{children:"当前审核"}),a.jsx("dd",{children:a.jsx(ze,{className:`status-badge ${ce?.decision==="changes-requested"?"blocked":ce?.decision==="approved"?"completed":"waiting"}`,children:ce?At(ce.decision):"待审核"})})]}),a.jsxs("div",{children:[a.jsx("dt",{children:"范围"}),a.jsx("dd",{children:a.jsx("code",{children:s.terminal_scope.terminal_id})})]})]})]}),a.jsxs(an,{label:"视觉规范",value:h,onValueChange:$,children:[a.jsxs(nn,{label:"视觉规范",children:[a.jsxs(pt,{active:h==="foundation",value:"foundation",children:[a.jsx(Du,{"aria-hidden":"true"}),"视觉基础"]}),a.jsxs(pt,{active:h==="registry",value:"registry",children:[a.jsx(Pa,{"aria-hidden":"true"}),"组件与数据"]}),a.jsxs(pt,{active:h==="reviews",value:"reviews",children:[a.jsx(ri,{"aria-hidden":"true"}),"审核意见"]})]}),a.jsx(Bt,{active:h==="foundation",value:"foundation",children:he.length?a.jsx("div",{className:"standard-grid",children:he.map(([z,ae])=>a.jsxs("div",{children:[a.jsx("span",{children:z}),a.jsx("strong",{children:ae})]},z))}):a.jsx(Ct,{title:"当前 Revision 未提供视觉规范内容",description:"请冻结包含视觉规范证据的 Prototype Revision 后再审核。"})}),a.jsx(Bt,{active:h==="registry",value:"registry",children:G?a.jsxs("div",{className:"p11-governance-layout",children:[a.jsxs("section",{className:"flat-section p11-validation",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsxs("strong",{children:[a.jsx(Qm,{"aria-hidden":"true"}),"登记校验"]}),a.jsx(ze,{className:`status-badge ${G.validation.status==="passed"?"completed":"blocked"}`,children:G.validation.status==="passed"?"通过":G.validation.status})]}),a.jsx("div",{className:"p11-validation-checks",children:G.validation.checks.map(z=>a.jsxs("div",{children:[a.jsx("strong",{children:z.count}),a.jsx("span",{children:z.message})]},z.check_id))})]}),a.jsxs("div",{className:"p11-catalog-grid",children:[a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsxs("strong",{children:[a.jsx(Pa,{"aria-hidden":"true"}),"组件登记"]}),a.jsxs("span",{children:[G.components.length," 项"]})]}),a.jsxs("table",{className:"data-table p11-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"组件"}),a.jsx("th",{children:"变体与状态"}),a.jsx("th",{children:"终端"})]})}),a.jsx("tbody",{children:G.components.length?G.components.map(z=>a.jsxs("tr",{children:[a.jsxs("td",{children:[a.jsx("strong",{children:String(z.name)}),a.jsx("code",{children:String(z.component_id)})]}),a.jsxs("td",{children:[a.jsx("span",{children:String(z.variants)}),a.jsx("small",{children:String(z.states)})]}),a.jsx("td",{children:Array.isArray(z.terminal_ids)&&z.terminal_ids.length?z.terminal_ids.join(" · "):"未绑定"})]},String(z.component_id))):a.jsx("tr",{children:a.jsx("td",{colSpan:3,className:"table-empty",children:"当前终端范围没有组件登记"})})})]})]}),a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsxs("strong",{children:[a.jsx(km,{"aria-hidden":"true"}),"数据契约"]}),a.jsxs("span",{children:[G.data_contracts.length," 项"]})]}),a.jsxs("table",{className:"data-table p11-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"数据契约"}),a.jsx("th",{children:"来源与权限"}),a.jsx("th",{children:"默认值 / URL"})]})}),a.jsx("tbody",{children:G.data_contracts.length?G.data_contracts.map(z=>a.jsxs("tr",{children:[a.jsxs("td",{children:[a.jsx("strong",{children:String(z.entity)}),a.jsx("code",{children:String(z.data_contract_id)})]}),a.jsxs("td",{children:[a.jsx("span",{children:String(z.source)}),a.jsx("small",{children:String(z.permission)})]}),a.jsxs("td",{children:[a.jsx("span",{children:String(z.default_value)}),a.jsx("small",{children:String(z.url_param)})]})]},String(z.data_contract_id))):a.jsx("tr",{children:a.jsx("td",{colSpan:3,className:"table-empty",children:"当前终端范围没有数据契约"})})})]})]})]}),a.jsxs("section",{className:"flat-section p11-candidates",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsxs("strong",{children:[a.jsx(Ou,{"aria-hidden":"true"}),"组件候选"]}),a.jsxs("span",{children:[K.length," 项"]})]}),a.jsxs("table",{className:"data-table p11-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"候选"}),a.jsx("th",{children:"来源"}),a.jsx("th",{children:"数据契约"}),a.jsx("th",{children:"生命周期"}),a.jsx("th",{children:"受控转换"})]})}),a.jsx("tbody",{children:K.length?K.map(z=>{const ae=String(z.component_id),_e=Array.isArray(z.allowed_lifecycle_transitions)?z.allowed_lifecycle_transitions.map(String):[],V=w[ae]||_e[0]||"",R=k[ae];return a.jsxs("tr",{children:[a.jsxs("td",{children:[a.jsx("strong",{children:String(z.name)}),a.jsx("code",{children:ae}),a.jsxs("small",{children:["变体:",String(z.variants)]}),a.jsxs("small",{children:["兼容性:",String(z.compatibility)]}),a.jsxs("small",{children:["迁移:",String(z.migration_note)]}),a.jsx("small",{children:String(z.review_comment||"")})]}),a.jsxs("td",{children:[a.jsx("code",{children:String(z.source_terminal_id)}),a.jsxs("span",{children:[String(z.source_page_id)," · ",String(z.source_scene_ids)]})]}),a.jsx("td",{children:a.jsx("code",{children:String(z.data_contract_id)})}),a.jsxs("td",{children:[a.jsx(ze,{className:`status-badge ${z.lifecycle==="deprecated"||z.lifecycle==="replaced"?"blocked":z.lifecycle==="registered"?"completed":"waiting"}`,children:At(String(z.lifecycle))}),a.jsxs("small",{children:[Number(z.binding_count||0)," 项绑定 · ",Array.isArray(z.binding_statuses)&&z.binding_statuses.length?z.binding_statuses.map(String).join(" · "):"未绑定"]})]}),a.jsx("td",{children:_e.length?a.jsxs("div",{className:"p11-candidate-actions",children:[a.jsx("select",{"aria-label":`${ae} 目标生命周期`,value:V,onChange:Q=>O(F=>({...F,[ae]:Q.target.value})),children:_e.map(Q=>a.jsx("option",{value:Q,children:At(Q)},Q))}),a.jsxs(ne,{size:"sm",disabled:Y,variant:"outline",onClick:()=>je(z,V),children:[a.jsx(ni,{"data-icon":"inline-start"}),"计划"]}),a.jsxs(ne,{size:"sm",disabled:Y||!R||R.target!==V,onClick:()=>we(z,V),children:[a.jsx(Kt,{"data-icon":"inline-start"}),"提交"]})]}):a.jsx("small",{children:"无后续状态"})})]},ae)}):a.jsx("tr",{children:a.jsx("td",{colSpan:5,className:"table-empty",children:"当前终端范围没有组件候选"})})})]}),S?a.jsx("p",{className:"action-message",role:"status",children:S}):null]}),a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsxs("strong",{children:[a.jsx(Hm,{"aria-hidden":"true"}),"Page / Scene 使用绑定"]}),a.jsxs("span",{children:[G.component_bindings.length," 项"]})]}),a.jsxs("table",{className:"data-table p11-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"页面与场景"}),a.jsx("th",{children:"组件 / 变体"}),a.jsx("th",{children:"数据契约"}),a.jsx("th",{children:"状态"})]})}),a.jsx("tbody",{children:G.component_bindings.length?G.component_bindings.map((z,ae)=>a.jsxs("tr",{children:[a.jsxs("td",{children:[a.jsx("code",{children:String(z.page_id)}),a.jsx("small",{children:String(z.scene_ids)})]}),a.jsxs("td",{children:[a.jsx("strong",{children:String(z.component_id)}),a.jsx("span",{children:String(z.variant)})]}),a.jsx("td",{children:a.jsx("code",{children:String(z.data_contract_id)})}),a.jsx("td",{children:a.jsx(ze,{className:"status-badge completed",children:String(z.status)})})]},`${String(z.page_id)}-${String(z.component_id)}-${ae}`)):a.jsx("tr",{children:a.jsx("td",{colSpan:4,className:"table-empty",children:"当前终端范围没有组件使用绑定"})})})]})]}),a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsxs("strong",{children:[a.jsx(Ls,{"aria-hidden":"true"}),"实现映射"]}),a.jsxs("span",{children:[G.implementation_bindings.length," 项"]})]}),a.jsxs("table",{className:"data-table p11-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"组件"}),a.jsx("th",{children:"实现入口"}),a.jsx("th",{children:"数据契约"})]})}),a.jsx("tbody",{children:G.implementation_bindings.length?G.implementation_bindings.map(z=>a.jsxs("tr",{children:[a.jsx("td",{children:a.jsx("code",{children:String(z.component_id)})}),a.jsx("td",{children:a.jsx("code",{children:String(z.implementation_entry)})}),a.jsx("td",{children:a.jsx("code",{children:String(z.data_contract_id)})})]},String(z.component_id))):a.jsx("tr",{children:a.jsx("td",{colSpan:3,className:"table-empty",children:"当前终端范围没有实现映射"})})})]})]})]}):a.jsx(Ct,{title:"当前 Revision 未提供组件与数据登记",description:"冻结 Prototype Revision 后可在此查看受控组件和数据契约。"})}),a.jsxs(Bt,{active:h==="reviews",value:"reviews",children:[a.jsxs("section",{className:"flat-section p11-feedback-form",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"视觉规范审核"}),a.jsx("span",{children:"退回决定必须绑定当前 Revision、校验值和修改意见"})]}),a.jsx("label",{htmlFor:"p11-review-comment",children:"修改意见(退回必填)"}),a.jsx("textarea",{id:"p11-review-comment",value:p,onChange:z=>x(z.target.value),placeholder:"说明需要调整的组件、数据契约或视觉规范内容"}),a.jsxs("div",{className:"p11-feedback-actions",children:[a.jsxs(ne,{disabled:Y||!p.trim(),variant:"outline",onClick:()=>ke("changes-requested"),children:[a.jsx(Bm,{"data-icon":"inline-start"}),"退回视觉规范"]}),a.jsxs(ne,{disabled:Y,onClick:()=>ke("approved"),children:[a.jsx(Kt,{"data-icon":"inline-start"}),"确认视觉规范"]})]}),y?a.jsx("p",{className:"action-message",role:"status",children:y}):null]}),a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"审核时间线"}),a.jsxs("span",{children:[s.visual_standard_reviews.length," 条"]})]}),s.visual_standard_reviews.length?a.jsxs("table",{className:"data-table p11-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"时间"}),a.jsx("th",{children:"范围"}),a.jsx("th",{children:"决定"}),a.jsx("th",{children:"修改意见"})]})}),a.jsx("tbody",{children:s.visual_standard_reviews.map(z=>a.jsxs("tr",{children:[a.jsxs("td",{children:[a.jsx("small",{children:z.created_at}),a.jsx("code",{children:z.review_id})]}),a.jsx("td",{children:a.jsx("code",{children:z.terminal_id})}),a.jsx("td",{children:a.jsx(ze,{className:`status-badge ${z.decision==="changes-requested"?"blocked":"completed"}`,children:At(z.decision)})}),a.jsx("td",{children:z.comment||"无"})]},z.review_id))})]}):a.jsx(Ct,{title:"尚无视觉规范审核记录",description:"确认或退回视觉规范后,绑定 Revision 的审核事实会显示在这里。"})]})]})]})]})}function Lu({system:s}){return s.implementation_status!=="implemented"?a.jsx(ze,{className:"status-badge waiting",children:"尚未实现"}):s.control.available?a.jsx(ze,{className:"status-badge active",children:"可管理"}):a.jsx(ze,{className:"status-badge blocked",children:"只读"})}function b1({data:s,choose:u}){const o=j.useMemo(()=>{const r=new Map;for(const f of s.systems)r.set(f.kind,[...r.get(f.kind)||[],f]);return[...r.entries()]},[s.systems]);return a.jsx("div",{className:"architecture-view",children:o.map(([r,f])=>a.jsxs("section",{children:[a.jsxs("header",{children:[a.jsx(Uu,{"aria-hidden":"true"}),a.jsx("strong",{children:r}),a.jsxs("span",{children:[f.length," 个节点"]})]}),a.jsx("div",{children:f.map(h=>a.jsxs("button",{className:h.implementation_status==="implemented"?"architecture-node":"architecture-node planned",onClick:()=>u(h.system_id),children:[a.jsx(Pa,{"aria-hidden":"true"}),a.jsx("code",{children:h.system_id}),a.jsx("strong",{children:h.name}),a.jsx(Lu,{system:h}),a.jsxs("small",{children:[h.start.method," · ",h.registered_branch||"未绑定分支"]})]},h.system_id))})]},r))})}function N1({data:s,selected:u,choose:o,refresh:r}){return a.jsxs("div",{className:"fact-split systems-list",children:[a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"项目系统与组件"}),a.jsx("span",{children:"包含项目声明的所有应用、服务和中间件"})]}),a.jsxs("table",{className:"data-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"系统编号"}),a.jsx("th",{children:"名称 / 类型"}),a.jsx("th",{children:"启动方式"}),a.jsx("th",{children:"状态"})]})}),a.jsx("tbody",{children:s.systems.map(f=>a.jsxs("tr",{className:u?.system_id===f.system_id?"selected":"",onClick:()=>o(f.system_id),children:[a.jsx("td",{children:a.jsx("code",{children:f.system_id})}),a.jsxs("td",{children:[a.jsx("strong",{children:f.name}),a.jsx("span",{className:"cell-meta",children:f.kind})]}),a.jsxs("td",{children:[f.start.method,a.jsx("span",{className:"cell-meta",children:f.start.source})]}),a.jsx("td",{children:a.jsx(Lu,{system:f})})]},f.system_id))})]})]}),u?a.jsx(E1,{data:s,system:u,refresh:r}):null]})}function E1({data:s,system:u,refresh:o}){const[r,f]=j.useState("control"),[h,p]=j.useState(""),x=async y=>{if(s.registry){p("正在生成操作计划…");try{const v={system_id:u.system_id,operation:y,branch:s.current_branch,expected_registry_revision:s.registry.revision,expected_registry_checksum:s.registry.checksum,idempotency_key:crypto.randomUUID(),actor:"human:manager-user"},S=await He("system-lifecycle-plan",v),g=await He("system-lifecycle-apply",{...v,expected_plan_checksum:S.plan_checksum});p(y==="status"?`状态检查完成:${JSON.stringify(g.result)}`:`${y} 操作已完成`)}catch(v){p(v.message)}}};return a.jsxs("aside",{className:"detail-rail system-detail",children:[a.jsxs("div",{className:"rail-header",children:[a.jsx("span",{children:"系统详情"}),a.jsx("code",{children:u.system_id})]}),a.jsxs("div",{className:"rail-body",children:[a.jsx("h2",{children:u.name}),a.jsx(Lu,{system:u}),a.jsxs(an,{label:"系统详情",value:r,onValueChange:f,children:[a.jsxs(nn,{label:"系统详情",children:[a.jsxs(pt,{active:r==="control",value:"control",children:[a.jsx(Su,{"aria-hidden":"true"}),"运行"]}),a.jsxs(pt,{active:r==="docker",value:"docker",children:[a.jsx(Ls,{"aria-hidden":"true"}),"Docker"]}),a.jsxs(pt,{active:r==="scripts",value:"scripts",children:[a.jsx(Gs,{"aria-hidden":"true"}),"初始化脚本"]})]}),a.jsxs(Bt,{active:r==="control",value:"control",children:[a.jsxs("dl",{className:"meta-list",children:[a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"当前分支"}),a.jsx("dd",{children:s.current_branch||"未识别"})]}),a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"登记分支"}),a.jsx("dd",{children:u.registered_branch||"未限制"})]}),a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:"健康检查"}),a.jsx("dd",{children:u.health?.url||"未登记"})]})]}),a.jsxs("div",{className:"system-actions",children:[a.jsxs(ne,{disabled:!u.control.available,onClick:()=>x("start"),children:[a.jsx(qu,{"data-icon":"inline-start"}),"启动"]}),a.jsxs(ne,{disabled:!u.control.available,variant:"outline",onClick:()=>x("stop"),children:[a.jsx(wj,{"data-icon":"inline-start"}),"停止"]}),a.jsxs(ne,{disabled:!u.control.available,variant:"outline",onClick:()=>x("restart"),children:[a.jsx(Ys,{"data-icon":"inline-start"}),"重启"]}),a.jsxs(ne,{disabled:!u.control.available,variant:"ghost",onClick:()=>x("status"),children:[a.jsx(Su,{"data-icon":"inline-start"}),"检查状态"]})]}),h?a.jsx("p",{className:"action-message",children:h}):null]}),a.jsx(Bt,{active:r==="docker",value:"docker",children:a.jsx(A1,{sources:u.docker_sources})}),a.jsx(Bt,{active:r==="scripts",value:"scripts",children:a.jsx(C1,{data:s,system:u,refresh:o})})]})]})]})}function A1({sources:s}){const[u,o]=j.useState(s[0]?.path||""),r=s.find(f=>f.path===u);return s.length?a.jsxs("div",{className:"source-viewer",children:[a.jsx("select",{"aria-label":"Docker 启动文件",value:u,onChange:f=>o(f.target.value),children:s.map(f=>a.jsx("option",{value:f.path,children:f.path},f.path))}),a.jsx("small",{children:r?.checksum||"文件尚不存在"}),a.jsx("pre",{children:r?.content||(r?.too_large?"文件过大,无法在线预览":"登记文件尚不存在")})]}):a.jsx(Ct,{title:"尚未登记 Docker 启动文件",description:"未实现节点不会生成虚假的 Dockerfile 或 Compose 文件。"})}function C1({data:s,system:u,refresh:o}){const r=u.initialization.scripts,[f,h]=j.useState(String(r[0]?.script_id||"new")),p=r.find(D=>String(D.script_id)===f),[x,y]=j.useState(String(p?.name||"")),[v,S]=j.useState(String(p?.content||"")),[g,w]=j.useState(""),[O,k]=j.useState(""),B=D=>{h(D);const G=r.find(K=>String(K.script_id)===D);y(String(G?.name||"")),S(String(G?.content||"")),w("")},Y=async()=>{if(!s.registry)return;const D=f==="new"?x.trim().toUpperCase().replace(/[^A-Z0-9_-]+/g,"-"):f;if(!D||!v&&!g)return k("请填写脚本名称和文本,或选择登记导入目录内的本地文件");try{const G={system_id:u.system_id,script_id:D,name:x||D,expected_registry_revision:s.registry.revision,expected_registry_checksum:s.registry.checksum,expected_script_checksum:p?.checksum||void 0,actor:"human:manager-user",branch:s.current_branch,idempotency_key:crypto.randomUUID()};G.content=v,g&&(G.source_path=g);const K=await He("system-initialization-script-plan",G);await He("system-initialization-script-apply",{...G,...typeof K.expected_script_checksum=="string"?{expected_script_checksum:K.expected_script_checksum}:{}}),k("初始化脚本已保存并重新计算校验值"),o()}catch(G){k(G.message)}};return a.jsxs("div",{className:"script-editor",children:[a.jsx("label",{htmlFor:"script-select",children:"初始化脚本"}),a.jsxs("select",{id:"script-select",value:f,onChange:D=>B(D.target.value),children:[a.jsx("option",{value:"new",children:"新建脚本文本"}),r.map(D=>a.jsx("option",{value:String(D.script_id),children:String(D.name||D.script_id)},String(D.script_id)))]}),a.jsx("label",{htmlFor:"script-name",children:"脚本名称"}),a.jsx("input",{id:"script-name",value:x,onChange:D=>y(D.target.value)}),a.jsx("label",{htmlFor:"script-import",children:"本地文件路径"}),a.jsxs("div",{className:"input-with-icon",children:[a.jsx(Dj,{"aria-hidden":"true"}),a.jsx("input",{id:"script-import",value:g,onChange:D=>w(D.target.value),placeholder:"Registry 允许的项目内导入路径"})]}),a.jsx("label",{htmlFor:"script-content",children:"脚本文本"}),a.jsx("textarea",{id:"script-content",value:v,onChange:D=>S(D.target.value),placeholder:"可直接编辑新建或现有脚本文本"}),a.jsxs(ne,{disabled:!u.control.available,onClick:Y,children:[a.jsx(Gs,{"data-icon":"inline-start"}),"保存脚本"]}),O?a.jsx("p",{className:"action-message",children:O}):null]})}function R1(){const s=ui("systems"),[u,o]=It(),r=u.get("tab")==="list"?"list":"architecture";return a.jsxs("div",{className:"page-layout",children:[a.jsx(Kl,{pageId:"P08",title:"项目系统",description:"按当前项目分支查看、启动和检查应用、服务及所有声明的中间件。",onRefresh:s.refresh}),a.jsx(Qs,{state:s,children:(f,h)=>f.registration_status!=="registered"?a.jsx("div",{className:"page-scroll",children:a.jsx(Ct,{title:"项目系统尚未登记",description:"架构节点应由 Project System Registry 声明;管理器不会猜测项目组件。"})}):a.jsxs("div",{className:"page-scroll systems-page",children:[a.jsxs("div",{className:"summary-band",children:[a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"当前分支"}),a.jsx("strong",{children:f.current_branch||"未识别"})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"项目节点"}),a.jsxs("strong",{children:[f.systems.length," ",a.jsx("small",{children:"个"})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"已实现"}),a.jsx("strong",{children:f.systems.filter(p=>p.implementation_status==="implemented").length})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"登记修订"}),a.jsx("strong",{children:f.registry?.revision??"-"})]})]}),a.jsxs(an,{label:"系统视图",value:r,onValueChange:p=>{const x=new URLSearchParams(u);p==="architecture"?x.delete("tab"):x.set("tab",p),o(x,{replace:!0})},children:[a.jsxs(nn,{label:"系统视图",children:[a.jsxs(pt,{active:r==="architecture",value:"architecture",children:[a.jsx(Uu,{"aria-hidden":"true"}),"架构视图"]}),a.jsxs(pt,{active:r==="list",value:"list",children:[a.jsx(Pa,{"aria-hidden":"true"}),"列表视图"]})]}),a.jsx(Bt,{active:r==="architecture",value:"architecture",children:a.jsx(b1,{data:f,choose:p=>{const x=new URLSearchParams(u);x.set("system",p),o(x,{replace:!0})}})}),a.jsx(Bt,{active:r==="list",value:"list",children:a.jsx(N1,{data:f,refresh:h,selected:f.systems.find(p=>p.system_id===u.get("system"))||f.systems[0]||null,choose:p=>{const x=new URLSearchParams(u);x.set("system",p),o(x,{replace:!0})}})})]})]})})]})}const T1={normal:"正常场景","business-exception":"业务异常","system-exception":"系统异常"};function z1(){const s=ui("mock");return a.jsxs("div",{className:"page-layout",children:[a.jsx(Kl,{pageId:"P09",title:"模拟服务",description:"以易读方式查看第三方系统和未完成项目后端的协议、报文及模拟场景。",onRefresh:s.refresh}),a.jsx(Qs,{state:s,children:(u,o)=>u.registration_status!=="registered"?a.jsx("div",{className:"page-scroll",children:a.jsx(Ct,{title:"模拟服务尚未登记",description:"请先通过项目 Mock 能力登记协议文件和场景;管理器不会生成虚假协议。"})}):a.jsx(M1,{data:u,refresh:o})})]})}function M1({data:s,refresh:u}){const[o,r]=It(),f=o.get("tab")==="protocols"?"protocols":"scenarios",h=o.get("q")||"",p=o.get(f==="scenarios"?"scenario":"protocol"),x=(f==="scenarios"?s.scenarios:s.protocols).filter(O=>!h||JSON.stringify(O).toLowerCase().includes(h.toLowerCase())),y=O=>String(O[f==="scenarios"?"scenario_key":"protocol_id"]),v=x.find(O=>y(O)===p)||x[0]||null,[S,g]=j.useState(""),w=async()=>{g("正在生成同步计划…");try{const O=crypto.randomUUID(),k=await He("mock-sync-plan",{idempotency_key:O});if(k.outcome==="not-registered")return g("模拟服务尚未登记");await He("mock-sync-apply",{idempotency_key:O,expected_plan_checksum:k.plan_checksum,actor:"human:manager-user"}),g("协议定义已同步到模拟服务"),u()}catch(O){g(O.message)}};return a.jsxs("div",{className:"page-scroll mock-page",children:[a.jsxs("div",{className:"summary-band",children:[a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"服务提供方"}),a.jsx("strong",{children:s.provider})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"协议定义"}),a.jsxs("strong",{children:[s.protocols.length," ",a.jsx("small",{children:"份"})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"模拟场景"}),a.jsxs("strong",{children:[s.scenarios.length," ",a.jsx("small",{children:"个"})]})]}),a.jsxs("div",{className:"summary-cell",children:[a.jsx("span",{children:"管理地址"}),a.jsx("strong",{className:"summary-path",children:s.management_url||"未启动"})]})]}),a.jsxs("div",{className:"page-command-bar",children:[a.jsxs("div",{className:"filter-bar",children:[a.jsx(Hu,{"aria-hidden":"true"}),a.jsx("input",{"aria-label":"筛选模拟服务",placeholder:"按协议、操作或场景编号筛选",value:h,onChange:O=>{const k=new URLSearchParams(o);O.target.value?k.set("q",O.target.value):k.delete("q"),r(k,{replace:!0})}}),a.jsx("span",{children:x.length})]}),a.jsxs(ne,{onClick:w,children:[a.jsx(Ys,{"data-icon":"inline-start"}),"同步定义"]})]}),S?a.jsx("p",{className:"action-message",children:S}):null,a.jsxs(an,{label:"模拟服务视图",value:f,onValueChange:O=>{const k=new URLSearchParams(o);O==="scenarios"?k.delete("tab"):k.set("tab",O),r(k,{replace:!0})},children:[a.jsxs(nn,{label:"模拟服务视图",children:[a.jsxs(pt,{active:f==="scenarios",value:"scenarios",children:[a.jsx(Pa,{"aria-hidden":"true"}),"场景"]}),a.jsxs(pt,{active:f==="protocols",value:"protocols",children:[a.jsx(Ls,{"aria-hidden":"true"}),"协议"]})]}),a.jsx(Bt,{active:!0,value:f,children:a.jsxs("div",{className:"fact-split",children:[a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:f==="scenarios"?"当前场景":"协议定义"}),a.jsx("span",{children:"来自已登记的具体协议文件"})]}),a.jsxs("table",{className:"data-table",children:[a.jsx("thead",{children:a.jsxs("tr",{children:[a.jsx("th",{children:"编号"}),a.jsx("th",{children:f==="scenarios"?"场景与触发条件":"系统与操作"}),a.jsx("th",{children:"类型 / 协议"}),a.jsx("th",{"aria-label":"打开"})]})}),a.jsx("tbody",{children:x.map(O=>a.jsxs("tr",{className:v===O?"selected":"",onClick:()=>{const k=new URLSearchParams(o);k.set(f==="scenarios"?"scenario":"protocol",y(O)),r(k,{replace:!0})},children:[a.jsx("td",{children:a.jsx("code",{children:y(O)})}),a.jsxs("td",{children:[a.jsx("strong",{children:String(O.scenario_id||O.mock_id)}),a.jsx("span",{className:"cell-meta",children:String(O.operation_or_channel||"-")})]}),a.jsx("td",{children:a.jsx(ze,{className:"status-badge active",children:f==="scenarios"?T1[String(O.scenario_type)]||String(O.scenario_type):String(O.protocol)})}),a.jsx("td",{children:a.jsx(ne,{"aria-label":`查看 ${y(O)}`,size:"icon",variant:"ghost",children:a.jsx(Lt,{})})})]},y(O)))})]})]}),v?a.jsxs("aside",{className:"detail-rail fact-detail",children:[a.jsxs("div",{className:"rail-header",children:[a.jsx("span",{children:f==="scenarios"?"场景详情":"协议详情"}),a.jsx("code",{children:y(v)})]}),a.jsxs("div",{className:"rail-body",children:[a.jsx("h2",{children:String(v.scenario_id||v.mock_id)}),a.jsx("dl",{className:"meta-list",children:Object.entries(v).map(([O,k])=>a.jsxs("div",{className:"meta-row",children:[a.jsx("dt",{children:w1(O)}),a.jsx("dd",{children:typeof k=="object"&&k?a.jsx("pre",{children:JSON.stringify(k,null,2)}):String(k??"-")})]},O))})]})]}):null]})})]})]})}function w1(s){return{scenario_id:"场景编号",scenario_type:"场景分类",protocol:"协议",operation_or_channel:"操作或通道",trigger:"触发条件 / 请求报文",result:"模拟结果 / 响应报文",source_ref:"协议文件",source_checksum:"协议校验值",mock_kind:"系统类别",mock_id:"系统编号",owner:"负责人"}[s]||s}function k1(){const s=ui("settings");return a.jsxs("div",{className:"page-layout",children:[a.jsx(Kl,{pageId:"P10",title:"设置",description:"查看固定安全边界,并修改工作流管理器允许的项目级首选项。",onRefresh:s.refresh}),a.jsx(Qs,{state:s,children:(u,o)=>a.jsx(O1,{data:u,refresh:o})})]})}function O1({data:s,refresh:u}){const[o,r]=j.useState(s.preferences.default_port??4180),[f,h]=j.useState(s.preferences.system_health_timeout_ms??5e3),[p,x]=j.useState(""),[y,v]=j.useState(null);j.useEffect(()=>{r(s.preferences.default_port??4180),h(s.preferences.system_health_timeout_ms??5e3)},[s]);const S=()=>({expected_revision:s.revision,expected_checksum:s.checksum,actor:"human:manager-user",idempotency_key:crypto.randomUUID(),changes:{default_port:o,system_health_timeout_ms:f}}),g=async()=>{try{const k=await He("settings-update-plan",S());v(k.plan_checksum),x("变更计划已生成,请核对后应用")}catch(k){x(k.message)}},w=async()=>{if(y)try{await He("settings-update-apply",{...S(),expected_plan_checksum:y}),v(null),x("设置已保存"),u()}catch(k){x(k.message)}},O=(k,B)=>{k(B),v(null),x("")};return a.jsxs("div",{className:"page-scroll settings-page",children:[a.jsxs("div",{className:"settings-columns",children:[a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"管理器首选项"}),a.jsx("span",{children:"修改将产生运行凭证和不可变事件"})]}),a.jsxs("div",{className:"settings-form",children:[a.jsx("label",{htmlFor:"manager-port",children:"默认启动端口"}),a.jsx("input",{id:"manager-port",type:"number",min:1,max:65535,value:o,onChange:k=>O(r,Number(k.target.value))}),a.jsx("small",{children:"仅用于下一次启动;端口 80 不允许使用。"}),a.jsx("label",{htmlFor:"health-timeout",children:"系统健康检查超时(毫秒)"}),a.jsx("input",{id:"health-timeout",type:"number",min:100,max:6e4,value:f,onChange:k=>O(h,Number(k.target.value))}),a.jsx("small",{children:"适用于 P08 受控状态检查。"}),y?a.jsxs(a.Fragment,{children:[a.jsxs("code",{className:"settings-plan-checksum",children:["计划 ",y.slice(0,12)]}),a.jsxs(ne,{onClick:w,children:[a.jsx(Gs,{"data-icon":"inline-start"}),"应用计划"]})]}):a.jsxs(ne,{onClick:g,children:[a.jsx(Ey,{"data-icon":"inline-start"}),"预览变更"]}),p?a.jsx("p",{className:"action-message",children:p}):null]})]}),a.jsxs("section",{className:"flat-section",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"固定安全边界"}),a.jsx("span",{children:"以下规则不可在管理界面关闭"})]}),a.jsx("div",{className:"safety-list",children:Object.entries(s.security).map(([k,B])=>a.jsxs("div",{children:[a.jsx(Qm,{"aria-hidden":"true"}),a.jsx("span",{children:U1(k)}),a.jsx(ze,{className:"status-badge completed",children:B===!1?"禁止":String(B)})]},k))})]})]}),a.jsxs("section",{className:"flat-section interface-contract",children:[a.jsxs("div",{className:"flat-section-header",children:[a.jsx("strong",{children:"界面契约"}),a.jsx("span",{children:"来自已确认的正式视觉规范"})]}),a.jsx("div",{className:"standard-grid",children:Object.entries(s.interface).map(([k,B])=>a.jsxs("div",{children:[k==="language"?a.jsx(Gm,{"aria-hidden":"true"}):a.jsx(ej,{"aria-hidden":"true"}),a.jsx("span",{children:D1(k)}),a.jsx("strong",{children:String(B)})]},k))})]})]})}function U1(s){return{bind_host:"网络绑定",arbitrary_shell:"任意命令执行",arbitrary_paths:"任意路径访问",raw_yaml_editing:"原始 YAML 编辑",gate_bypass:"绕过人工审核"}[s]||s}function D1(s){return{language:"界面语言",visual_standard:"视觉规范",icon_library:"图标库",minimum_width:"最小桌面宽度",mobile_supported:"移动端"}[s]||s}function q1(){const[s,u]=j.useState(0),o=j.useCallback(()=>u(h=>h+1),[]),[r,f]=j.useState({status:"loading",data:null,error:null});return j.useEffect(()=>{const h=new AbortController;return fetch("/api/v1/manager",{signal:h.signal,headers:{Accept:"application/json"}}).then(async p=>{if(!p.ok)throw new Error(`管理器数据请求失败(${p.status})`);return p.json()}).then(p=>f({status:"ready",data:p,error:null})).catch(p=>{p.name!=="AbortError"&&f({status:"error",data:null,error:p.message})}),()=>h.abort()},[s]),{...r,refresh:o}}const H1={P01:Qy,P02:qm,P03:Fy,P04:zy,P05:Um,P06:bu,P07:dj,P08:Su,P09:Pa,P10:Gm,P11:Du,P12:ni,P13:ni,P14:Ym,P15:Uu,P16:ri,P17:vj,P18:Dm,P19:sj},L1=[{name:"工作台",ids:["P01"]},{name:"交付管理",ids:["P02","P19","P03","P18","P04"]},{name:"人工决策",ids:["P06"]},{name:"项目原型",ids:["P07","P11","P12","P14","P15","P16","P17"]},{name:"运行环境",ids:["P08","P09"]},{name:"记录与追踪",ids:["P05"]},{name:"系统",ids:["P10"]}];function B1({projection:s,refresh:u}){const o=Gt(),r=new Map(s.pages.map(p=>[p.page_id,p])),f=s.pages.find(p=>p.route===o.pathname),h=r.get("P01")?.route||"/overview";return a.jsxs("div",{className:"manager-shell",children:[a.jsxs("header",{className:"topbar",children:[a.jsxs(_u,{className:"brand",to:h,children:[a.jsx("span",{className:"brand-mark",children:a.jsx(zj,{"aria-hidden":"true"})}),a.jsx("span",{children:"工作流管理器"})]}),a.jsxs("div",{className:"workspace-context",children:[a.jsx(uj,{"aria-hidden":"true"}),a.jsx("span",{children:s.project.name}),a.jsx("code",{children:f?`${f.page_id} · ${f.route}`:o.pathname})]}),a.jsxs("div",{className:"top-actions",children:[a.jsxs("span",{className:"project-revision",children:["状态修订 ",s.project.state_revision]}),a.jsx(ne,{variant:"ghost",size:"icon",title:"显示设置","aria-label":"显示设置",children:a.jsx(Rj,{})}),a.jsx(ne,{variant:"ghost",size:"icon",title:"帮助","aria-label":"帮助",children:a.jsx(_y,{})})]})]}),a.jsxs("div",{className:"shell-body",children:[a.jsxs("aside",{className:"sidebar",children:[a.jsx("div",{className:"sidebar-scroll",children:a.jsx("nav",{"aria-label":"工作流管理器页面导航",children:L1.map(p=>a.jsxs("div",{className:"nav-group",children:[a.jsx("p",{className:"nav-label",children:p.name}),p.ids.map(x=>{const y=r.get(x);if(!y)return null;const v=H1[x];return a.jsxs(_u,{className:({isActive:S})=>`nav-item${S?" active":""}${y.availability==="planned"?" planned":""}`,to:y.route,children:[a.jsx("span",{className:"nav-id",children:x}),a.jsx(v,{"aria-hidden":"true"}),a.jsx("span",{className:"nav-text",children:y.name}),y.availability==="planned"?a.jsx("span",{className:"nav-planned",title:"待后续实现",children:"待"}):null]},x)})]},p.name))})}),a.jsxs("div",{className:"sidebar-footer",children:[a.jsx("strong",{children:"Operational Carbon"}),a.jsxs("span",{children:[s.prototype.revision," · ",s.prototype.checksum]})]})]}),a.jsx("main",{className:"page-host",children:a.jsxs(Eg,{children:[a.jsx(ht,{path:r.get("P01")?.route,element:a.jsx(Lj,{projection:s})}),a.jsx(ht,{path:r.get("P02")?.route,element:a.jsx(i1,{projection:s,refresh:u})}),a.jsx(ht,{path:r.get("P19")?.route,element:a.jsx(li,{projection:s,refresh:u,kind:"requirements"})}),a.jsx(ht,{path:r.get("P03")?.route,element:a.jsx(li,{projection:s,refresh:u,kind:"tasks"})}),a.jsx(ht,{path:r.get("P18")?.route,element:a.jsx(li,{projection:s,refresh:u,kind:"test_cases"})}),a.jsx(ht,{path:r.get("P04")?.route,element:a.jsx(li,{projection:s,refresh:u,kind:"artifacts"})}),a.jsx(ht,{path:r.get("P06")?.route,element:a.jsx(Bj,{projection:s,refresh:u})}),a.jsx(ht,{path:r.get("P05")?.route,element:a.jsx(li,{projection:s,refresh:u,kind:"events"})}),["P07","P11","P12","P13","P14","P15","P16","P17"].map(p=>a.jsx(ht,{path:r.get(p)?.route,element:a.jsx(g1,{pageId:p,projection:s})},p)),a.jsx(ht,{path:r.get("P08")?.route,element:a.jsx(R1,{})}),a.jsx(ht,{path:r.get("P09")?.route,element:a.jsx(z1,{})}),a.jsx(ht,{path:r.get("P10")?.route,element:a.jsx(k1,{})}),a.jsx(ht,{path:"*",element:a.jsx(bg,{replace:!0,to:h})})]})})]})]})}function Y1(){const s=q1();return s.status==="loading"?a.jsxs("div",{className:"app-status",children:[a.jsx("span",{className:"loading-bar"}),"正在读取工作流状态"]}):s.status==="error"?a.jsxs("div",{className:"app-status error",children:[a.jsx("strong",{children:"工作流管理器无法载入"}),a.jsx("span",{children:s.error})]}):a.jsx(B1,{projection:s.data,refresh:s.refresh})}const G1={"/pages/P01-overview":"/overview","/pages/P02-workflow-graph":"/workflow"};if(window.location.hash.startsWith("#/")){const s=window.location.hash.slice(1),[u,o=""]=s.split("?"),r=G1[u]||u;window.history.replaceState(null,"",`${r}${o?`?${o}`:""}`)}Ex.createRoot(document.getElementById("root")).render(a.jsx(j.StrictMode,{children:a.jsx(Fg,{children:a.jsx(Y1,{})})}));
|