agent-nuvira 3.3.12 → 3.3.14
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 +67 -1
- package/dist/agents/agents/planner.d.ts.map +1 -1
- package/dist/agents/agents/planner.js +9 -0
- package/dist/agents/agents/planner.js.map +1 -1
- package/dist/agents/agents/reasoner.d.ts.map +1 -1
- package/dist/agents/agents/reasoner.js +13 -0
- package/dist/agents/agents/reasoner.js.map +1 -1
- package/dist/agents/orchestrator.d.ts +31 -0
- package/dist/agents/orchestrator.d.ts.map +1 -1
- package/dist/agents/orchestrator.js +103 -135
- package/dist/agents/orchestrator.js.map +1 -1
- package/dist/cli/chat.d.ts +89 -0
- package/dist/cli/chat.d.ts.map +1 -1
- package/dist/cli/chat.js +798 -39
- package/dist/cli/chat.js.map +1 -1
- package/dist/cli/cli-program.d.ts.map +1 -1
- package/dist/cli/cli-program.js +20 -0
- package/dist/cli/cli-program.js.map +1 -1
- package/dist/cli/config.d.ts +12 -0
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +107 -3
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/decisions.d.ts +28 -0
- package/dist/cli/decisions.d.ts.map +1 -0
- package/dist/cli/decisions.js +140 -0
- package/dist/cli/decisions.js.map +1 -0
- package/dist/cli/doctor.d.ts +6 -0
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +46 -0
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/execute.d.ts.map +1 -1
- package/dist/cli/execute.js +6 -0
- package/dist/cli/execute.js.map +1 -1
- package/dist/cli/failover-runner.d.ts.map +1 -1
- package/dist/cli/failover-runner.js +19 -1
- package/dist/cli/failover-runner.js.map +1 -1
- package/dist/cli/feedback.d.ts.map +1 -1
- package/dist/cli/feedback.js +5 -1
- package/dist/cli/feedback.js.map +1 -1
- package/dist/cli/hooks.d.ts +30 -0
- package/dist/cli/hooks.d.ts.map +1 -0
- package/dist/cli/hooks.js +224 -0
- package/dist/cli/hooks.js.map +1 -0
- package/dist/cli/knowledge.d.ts +31 -0
- package/dist/cli/knowledge.d.ts.map +1 -0
- package/dist/cli/knowledge.js +223 -0
- package/dist/cli/knowledge.js.map +1 -0
- package/dist/cli/loop-executor.d.ts.map +1 -1
- package/dist/cli/loop-executor.js +92 -18
- package/dist/cli/loop-executor.js.map +1 -1
- package/dist/cli/model.d.ts +20 -0
- package/dist/cli/model.d.ts.map +1 -1
- package/dist/cli/model.js +294 -14
- package/dist/cli/model.js.map +1 -1
- package/dist/cli/omniroute-control.d.ts +88 -0
- package/dist/cli/omniroute-control.d.ts.map +1 -0
- package/dist/cli/omniroute-control.js +179 -0
- package/dist/cli/omniroute-control.js.map +1 -0
- package/dist/cli/omniroute.d.ts +21 -0
- package/dist/cli/omniroute.d.ts.map +1 -0
- package/dist/cli/omniroute.js +67 -0
- package/dist/cli/omniroute.js.map +1 -0
- package/dist/cli/rate.d.ts +78 -0
- package/dist/cli/rate.d.ts.map +1 -0
- package/dist/cli/rate.js +294 -0
- package/dist/cli/rate.js.map +1 -0
- package/dist/config/process-env.d.ts.map +1 -1
- package/dist/config/process-env.js +10 -0
- package/dist/config/process-env.js.map +1 -1
- package/dist/config/types.d.ts +8 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/context/history.d.ts +21 -0
- package/dist/context/history.d.ts.map +1 -1
- package/dist/context/history.js +50 -0
- package/dist/context/history.js.map +1 -1
- package/dist/enterprise/vault.d.ts.map +1 -1
- package/dist/enterprise/vault.js +5 -21
- package/dist/enterprise/vault.js.map +1 -1
- package/dist/gateway/hook-contract.d.ts +206 -0
- package/dist/gateway/hook-contract.d.ts.map +1 -0
- package/dist/gateway/hook-contract.js +449 -0
- package/dist/gateway/hook-contract.js.map +1 -0
- package/dist/gateway/hooks.d.ts.map +1 -1
- package/dist/gateway/hooks.js +14 -0
- package/dist/gateway/hooks.js.map +1 -1
- package/dist/inference/gemini-adapter.d.ts.map +1 -1
- package/dist/inference/gemini-adapter.js +4 -0
- package/dist/inference/gemini-adapter.js.map +1 -1
- package/dist/inference/interface.d.ts +54 -0
- package/dist/inference/interface.d.ts.map +1 -1
- package/dist/inference/model-id-validation.d.ts +57 -0
- package/dist/inference/model-id-validation.d.ts.map +1 -0
- package/dist/inference/model-id-validation.js +127 -0
- package/dist/inference/model-id-validation.js.map +1 -0
- package/dist/inference/native-tools.d.ts +16 -1
- package/dist/inference/native-tools.d.ts.map +1 -1
- package/dist/inference/native-tools.js +34 -10
- package/dist/inference/native-tools.js.map +1 -1
- package/dist/inference/openai-compat-adapter.d.ts.map +1 -1
- package/dist/inference/openai-compat-adapter.js +12 -1
- package/dist/inference/openai-compat-adapter.js.map +1 -1
- package/dist/inference/provider-catalog.d.ts +11 -0
- package/dist/inference/provider-catalog.d.ts.map +1 -1
- package/dist/inference/provider-catalog.js +80 -0
- package/dist/inference/provider-catalog.js.map +1 -1
- package/dist/inference/route-resolver.d.ts +32 -8
- package/dist/inference/route-resolver.d.ts.map +1 -1
- package/dist/inference/route-resolver.js +175 -1
- package/dist/inference/route-resolver.js.map +1 -1
- package/dist/inference/tool-call-utils.d.ts.map +1 -1
- package/dist/inference/tool-call-utils.js +10 -8
- package/dist/inference/tool-call-utils.js.map +1 -1
- package/dist/inference/tools.d.ts +17 -1
- package/dist/inference/tools.d.ts.map +1 -1
- package/dist/inference/tools.js +69 -19
- package/dist/inference/tools.js.map +1 -1
- package/dist/learning/acceptance-model.d.ts +247 -0
- package/dist/learning/acceptance-model.d.ts.map +1 -0
- package/dist/learning/acceptance-model.js +708 -0
- package/dist/learning/acceptance-model.js.map +1 -0
- package/dist/learning/auto-router.d.ts +121 -24
- package/dist/learning/auto-router.d.ts.map +1 -1
- package/dist/learning/auto-router.js +374 -96
- package/dist/learning/auto-router.js.map +1 -1
- package/dist/learning/autonomy-policy.d.ts +12 -16
- package/dist/learning/autonomy-policy.d.ts.map +1 -1
- package/dist/learning/autonomy-policy.js +50 -48
- package/dist/learning/autonomy-policy.js.map +1 -1
- package/dist/learning/behavioural-labels.d.ts +86 -0
- package/dist/learning/behavioural-labels.d.ts.map +1 -0
- package/dist/learning/behavioural-labels.js +166 -0
- package/dist/learning/behavioural-labels.js.map +1 -0
- package/dist/learning/capability-evidence.d.ts +167 -0
- package/dist/learning/capability-evidence.d.ts.map +1 -0
- package/dist/learning/capability-evidence.js +210 -0
- package/dist/learning/capability-evidence.js.map +1 -0
- package/dist/learning/capability-readiness.d.ts +64 -0
- package/dist/learning/capability-readiness.d.ts.map +1 -0
- package/dist/learning/capability-readiness.js +74 -0
- package/dist/learning/capability-readiness.js.map +1 -0
- package/dist/learning/capability-types.d.ts +169 -0
- package/dist/learning/capability-types.d.ts.map +1 -0
- package/dist/learning/capability-types.js +20 -0
- package/dist/learning/capability-types.js.map +1 -0
- package/dist/learning/catalog-feed.d.ts +89 -0
- package/dist/learning/catalog-feed.d.ts.map +1 -0
- package/dist/learning/catalog-feed.js +211 -0
- package/dist/learning/catalog-feed.js.map +1 -0
- package/dist/learning/cli-intent-effects.d.ts +60 -0
- package/dist/learning/cli-intent-effects.d.ts.map +1 -0
- package/dist/learning/cli-intent-effects.js +153 -0
- package/dist/learning/cli-intent-effects.js.map +1 -0
- package/dist/learning/command-adaptation.d.ts +41 -0
- package/dist/learning/command-adaptation.d.ts.map +1 -0
- package/dist/learning/command-adaptation.js +122 -0
- package/dist/learning/command-adaptation.js.map +1 -0
- package/dist/learning/consent-picture.d.ts +42 -0
- package/dist/learning/consent-picture.d.ts.map +1 -0
- package/dist/learning/consent-picture.js +53 -0
- package/dist/learning/consent-picture.js.map +1 -0
- package/dist/learning/context-budget.d.ts +37 -6
- package/dist/learning/context-budget.d.ts.map +1 -1
- package/dist/learning/context-budget.js +38 -9
- package/dist/learning/context-budget.js.map +1 -1
- package/dist/learning/decision-log.d.ts +114 -0
- package/dist/learning/decision-log.d.ts.map +1 -0
- package/dist/learning/decision-log.js +296 -0
- package/dist/learning/decision-log.js.map +1 -0
- package/dist/learning/deliverable-class.d.ts.map +1 -1
- package/dist/learning/deliverable-class.js +19 -0
- package/dist/learning/deliverable-class.js.map +1 -1
- package/dist/learning/deliverable-corpus.d.ts +117 -0
- package/dist/learning/deliverable-corpus.d.ts.map +1 -0
- package/dist/learning/deliverable-corpus.js +176 -0
- package/dist/learning/deliverable-corpus.js.map +1 -0
- package/dist/learning/error-repair.d.ts +45 -2
- package/dist/learning/error-repair.d.ts.map +1 -1
- package/dist/learning/error-repair.js +95 -0
- package/dist/learning/error-repair.js.map +1 -1
- package/dist/learning/exhaustion-report.d.ts +136 -0
- package/dist/learning/exhaustion-report.d.ts.map +1 -0
- package/dist/learning/exhaustion-report.js +239 -0
- package/dist/learning/exhaustion-report.js.map +1 -0
- package/dist/learning/failure-bookkeeping.d.ts +16 -0
- package/dist/learning/failure-bookkeeping.d.ts.map +1 -1
- package/dist/learning/failure-bookkeeping.js +51 -5
- package/dist/learning/failure-bookkeeping.js.map +1 -1
- package/dist/learning/gate-friction.d.ts +39 -0
- package/dist/learning/gate-friction.d.ts.map +1 -0
- package/dist/learning/gate-friction.js +91 -0
- package/dist/learning/gate-friction.js.map +1 -0
- package/dist/learning/harness-narration.d.ts +34 -0
- package/dist/learning/harness-narration.d.ts.map +1 -0
- package/dist/learning/harness-narration.js +58 -0
- package/dist/learning/harness-narration.js.map +1 -0
- package/dist/learning/hub-skill-catalog.d.ts.map +1 -1
- package/dist/learning/hub-skill-catalog.js +1 -2
- package/dist/learning/hub-skill-catalog.js.map +1 -1
- package/dist/learning/hybrid-router.d.ts +65 -0
- package/dist/learning/hybrid-router.d.ts.map +1 -1
- package/dist/learning/hybrid-router.js +186 -0
- package/dist/learning/hybrid-router.js.map +1 -1
- package/dist/learning/knowledge-base.d.ts +350 -0
- package/dist/learning/knowledge-base.d.ts.map +1 -0
- package/dist/learning/knowledge-base.js +906 -0
- package/dist/learning/knowledge-base.js.map +1 -0
- package/dist/learning/knowledge-eval.d.ts +171 -0
- package/dist/learning/knowledge-eval.d.ts.map +1 -0
- package/dist/learning/knowledge-eval.js +196 -0
- package/dist/learning/knowledge-eval.js.map +1 -0
- package/dist/learning/knowledge-turn.d.ts +92 -0
- package/dist/learning/knowledge-turn.d.ts.map +1 -0
- package/dist/learning/knowledge-turn.js +190 -0
- package/dist/learning/knowledge-turn.js.map +1 -0
- package/dist/learning/learned-commands.d.ts +64 -0
- package/dist/learning/learned-commands.d.ts.map +1 -0
- package/dist/learning/learned-commands.js +108 -0
- package/dist/learning/learned-commands.js.map +1 -0
- package/dist/learning/lexical-search.d.ts +50 -0
- package/dist/learning/lexical-search.d.ts.map +1 -0
- package/dist/learning/lexical-search.js +111 -0
- package/dist/learning/lexical-search.js.map +1 -0
- package/dist/learning/machine-facts.d.ts +71 -0
- package/dist/learning/machine-facts.d.ts.map +1 -0
- package/dist/learning/machine-facts.js +164 -0
- package/dist/learning/machine-facts.js.map +1 -0
- package/dist/learning/markdown-outline.d.ts +73 -0
- package/dist/learning/markdown-outline.d.ts.map +1 -0
- package/dist/learning/markdown-outline.js +136 -0
- package/dist/learning/markdown-outline.js.map +1 -0
- package/dist/learning/model-first-router.d.ts +33 -1
- package/dist/learning/model-first-router.d.ts.map +1 -1
- package/dist/learning/model-first-router.js +123 -9
- package/dist/learning/model-first-router.js.map +1 -1
- package/dist/learning/model-identity.d.ts +80 -0
- package/dist/learning/model-identity.d.ts.map +1 -0
- package/dist/learning/model-identity.js +115 -0
- package/dist/learning/model-identity.js.map +1 -0
- package/dist/learning/model-registry.d.ts +141 -2
- package/dist/learning/model-registry.d.ts.map +1 -1
- package/dist/learning/model-registry.js +324 -38
- package/dist/learning/model-registry.js.map +1 -1
- package/dist/learning/model-scoring.d.ts.map +1 -1
- package/dist/learning/model-scoring.js +8 -1
- package/dist/learning/model-scoring.js.map +1 -1
- package/dist/learning/model-selection.d.ts +2 -1
- package/dist/learning/model-selection.d.ts.map +1 -1
- package/dist/learning/model-selection.js +76 -2
- package/dist/learning/model-selection.js.map +1 -1
- package/dist/learning/outcome-observation.d.ts +49 -0
- package/dist/learning/outcome-observation.d.ts.map +1 -0
- package/dist/learning/outcome-observation.js +95 -0
- package/dist/learning/outcome-observation.js.map +1 -0
- package/dist/learning/pair-entitlement.d.ts +184 -0
- package/dist/learning/pair-entitlement.d.ts.map +1 -0
- package/dist/learning/pair-entitlement.js +214 -0
- package/dist/learning/pair-entitlement.js.map +1 -0
- package/dist/learning/project-docs.d.ts +83 -0
- package/dist/learning/project-docs.d.ts.map +1 -0
- package/dist/learning/project-docs.js +132 -0
- package/dist/learning/project-docs.js.map +1 -0
- package/dist/learning/provider-fallback.d.ts +23 -1
- package/dist/learning/provider-fallback.d.ts.map +1 -1
- package/dist/learning/provider-fallback.js +24 -0
- package/dist/learning/provider-fallback.js.map +1 -1
- package/dist/learning/quota-ledger.d.ts +13 -0
- package/dist/learning/quota-ledger.d.ts.map +1 -1
- package/dist/learning/quota-ledger.js +28 -0
- package/dist/learning/quota-ledger.js.map +1 -1
- package/dist/learning/reasoning-trace.d.ts +65 -1
- package/dist/learning/reasoning-trace.d.ts.map +1 -1
- package/dist/learning/reasoning-trace.js +123 -1
- package/dist/learning/reasoning-trace.js.map +1 -1
- package/dist/learning/requirement-probe.d.ts +55 -0
- package/dist/learning/requirement-probe.d.ts.map +1 -0
- package/dist/learning/requirement-probe.js +77 -0
- package/dist/learning/requirement-probe.js.map +1 -0
- package/dist/learning/resilient-call.d.ts +20 -1
- package/dist/learning/resilient-call.d.ts.map +1 -1
- package/dist/learning/resilient-call.js +42 -4
- package/dist/learning/resilient-call.js.map +1 -1
- package/dist/learning/response-usability.d.ts +85 -0
- package/dist/learning/response-usability.d.ts.map +1 -0
- package/dist/learning/response-usability.js +135 -0
- package/dist/learning/response-usability.js.map +1 -0
- package/dist/learning/router-bandit.d.ts +132 -0
- package/dist/learning/router-bandit.d.ts.map +1 -1
- package/dist/learning/router-bandit.js +253 -0
- package/dist/learning/router-bandit.js.map +1 -1
- package/dist/learning/routing-history.d.ts +41 -2
- package/dist/learning/routing-history.d.ts.map +1 -1
- package/dist/learning/routing-history.js.map +1 -1
- package/dist/learning/run-trace.d.ts +21 -0
- package/dist/learning/run-trace.d.ts.map +1 -1
- package/dist/learning/run-trace.js +38 -0
- package/dist/learning/run-trace.js.map +1 -1
- package/dist/learning/seeded-benchmark.d.ts +14 -0
- package/dist/learning/seeded-benchmark.d.ts.map +1 -1
- package/dist/learning/seeded-benchmark.js +43 -4
- package/dist/learning/seeded-benchmark.js.map +1 -1
- package/dist/learning/session-grant.d.ts +75 -0
- package/dist/learning/session-grant.d.ts.map +1 -0
- package/dist/learning/session-grant.js +112 -0
- package/dist/learning/session-grant.js.map +1 -0
- package/dist/learning/task-model-continuity.d.ts +73 -0
- package/dist/learning/task-model-continuity.d.ts.map +1 -0
- package/dist/learning/task-model-continuity.js +87 -0
- package/dist/learning/task-model-continuity.js.map +1 -0
- package/dist/learning/turn-feedback.d.ts +93 -0
- package/dist/learning/turn-feedback.d.ts.map +1 -0
- package/dist/learning/turn-feedback.js +127 -0
- package/dist/learning/turn-feedback.js.map +1 -0
- package/dist/learning/turn-report.d.ts +104 -2
- package/dist/learning/turn-report.d.ts.map +1 -1
- package/dist/learning/turn-report.js +161 -6
- package/dist/learning/turn-report.js.map +1 -1
- package/dist/learning/verdict-routing.d.ts +51 -0
- package/dist/learning/verdict-routing.d.ts.map +1 -0
- package/dist/learning/verdict-routing.js +122 -0
- package/dist/learning/verdict-routing.js.map +1 -0
- package/dist/mcp/client.d.ts.map +1 -1
- package/dist/mcp/client.js +5 -0
- package/dist/mcp/client.js.map +1 -1
- package/dist/mcp/manager.d.ts +10 -0
- package/dist/mcp/manager.d.ts.map +1 -1
- package/dist/mcp/manager.js +20 -0
- package/dist/mcp/manager.js.map +1 -1
- package/dist/mcp/mcp-discovery.d.ts +34 -0
- package/dist/mcp/mcp-discovery.d.ts.map +1 -0
- package/dist/mcp/mcp-discovery.js +71 -0
- package/dist/mcp/mcp-discovery.js.map +1 -0
- package/dist/mcp/mcp-schema-cache.d.ts +17 -0
- package/dist/mcp/mcp-schema-cache.d.ts.map +1 -1
- package/dist/mcp/mcp-schema-cache.js +47 -3
- package/dist/mcp/mcp-schema-cache.js.map +1 -1
- package/dist/mcp/types.d.ts +28 -0
- package/dist/mcp/types.d.ts.map +1 -1
- package/dist/mcp/types.js.map +1 -1
- package/dist/security/secret-scan.d.ts +156 -0
- package/dist/security/secret-scan.d.ts.map +1 -0
- package/dist/security/secret-scan.js +525 -0
- package/dist/security/secret-scan.js.map +1 -0
- package/dist/tools/ask-user.d.ts.map +1 -1
- package/dist/tools/ask-user.js +4 -0
- package/dist/tools/ask-user.js.map +1 -1
- package/dist/tools/capability-registry.d.ts +150 -0
- package/dist/tools/capability-registry.d.ts.map +1 -0
- package/dist/tools/capability-registry.js +400 -0
- package/dist/tools/capability-registry.js.map +1 -0
- package/dist/tools/child-agent-runtime.d.ts.map +1 -1
- package/dist/tools/child-agent-runtime.js +19 -5
- package/dist/tools/child-agent-runtime.js.map +1 -1
- package/dist/tools/coding-tools.d.ts +17 -5
- package/dist/tools/coding-tools.d.ts.map +1 -1
- package/dist/tools/coding-tools.js +80 -11
- package/dist/tools/coding-tools.js.map +1 -1
- package/dist/tools/command-memo.d.ts +116 -0
- package/dist/tools/command-memo.d.ts.map +1 -0
- package/dist/tools/command-memo.js +202 -0
- package/dist/tools/command-memo.js.map +1 -0
- package/dist/tools/git-tool.d.ts.map +1 -1
- package/dist/tools/git-tool.js +13 -3
- package/dist/tools/git-tool.js.map +1 -1
- package/dist/tools/harness-directive.d.ts +42 -0
- package/dist/tools/harness-directive.d.ts.map +1 -0
- package/dist/tools/harness-directive.js +45 -0
- package/dist/tools/harness-directive.js.map +1 -0
- package/dist/tools/loop-skill-hint.d.ts +74 -174
- package/dist/tools/loop-skill-hint.d.ts.map +1 -1
- package/dist/tools/loop-skill-hint.js +110 -536
- package/dist/tools/loop-skill-hint.js.map +1 -1
- package/dist/tools/mcp-client-tool.d.ts +2 -0
- package/dist/tools/mcp-client-tool.d.ts.map +1 -1
- package/dist/tools/mcp-client-tool.js +3 -0
- package/dist/tools/mcp-client-tool.js.map +1 -1
- package/dist/tools/modality/shared.d.ts +1 -4
- package/dist/tools/modality/shared.d.ts.map +1 -1
- package/dist/tools/modality/shared.js +7 -22
- package/dist/tools/modality/shared.js.map +1 -1
- package/dist/tools/plan-store.d.ts +44 -4
- package/dist/tools/plan-store.d.ts.map +1 -1
- package/dist/tools/plan-store.js +93 -9
- package/dist/tools/plan-store.js.map +1 -1
- package/dist/tools/registry.d.ts +76 -3
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +623 -15
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/remediation-ladder.d.ts +91 -0
- package/dist/tools/remediation-ladder.d.ts.map +1 -0
- package/dist/tools/remediation-ladder.js +316 -0
- package/dist/tools/remediation-ladder.js.map +1 -0
- package/dist/tools/run-cli.d.ts.map +1 -1
- package/dist/tools/run-cli.js +29 -4
- package/dist/tools/run-cli.js.map +1 -1
- package/dist/tools/run-terminal.d.ts +11 -0
- package/dist/tools/run-terminal.d.ts.map +1 -1
- package/dist/tools/run-terminal.js +289 -10
- package/dist/tools/run-terminal.js.map +1 -1
- package/dist/tools/skills-hub.d.ts +7 -0
- package/dist/tools/skills-hub.d.ts.map +1 -1
- package/dist/tools/skills-hub.js +11 -2
- package/dist/tools/skills-hub.js.map +1 -1
- package/dist/tools/step-artifact.d.ts +35 -0
- package/dist/tools/step-artifact.d.ts.map +1 -0
- package/dist/tools/step-artifact.js +154 -0
- package/dist/tools/step-artifact.js.map +1 -0
- package/dist/tools/tool-loop.d.ts +327 -13
- package/dist/tools/tool-loop.d.ts.map +1 -1
- package/dist/tools/tool-loop.js +891 -66
- package/dist/tools/tool-loop.js.map +1 -1
- package/dist/tools/toolsets.js +4 -4
- package/dist/tools/toolsets.js.map +1 -1
- package/dist/tools/worktree.d.ts +11 -2
- package/dist/tools/worktree.d.ts.map +1 -1
- package/dist/tools/worktree.js +11 -2
- package/dist/tools/worktree.js.map +1 -1
- package/dist/utils/atomic-store.d.ts +53 -0
- package/dist/utils/atomic-store.d.ts.map +1 -0
- package/dist/utils/atomic-store.js +178 -0
- package/dist/utils/atomic-store.js.map +1 -0
- package/dist/utils/binary-probe.d.ts +25 -0
- package/dist/utils/binary-probe.d.ts.map +1 -0
- package/dist/utils/binary-probe.js +48 -0
- package/dist/utils/binary-probe.js.map +1 -0
- package/dist/utils/workspace-path.d.ts +50 -0
- package/dist/utils/workspace-path.d.ts.map +1 -0
- package/dist/utils/workspace-path.js +86 -0
- package/dist/utils/workspace-path.js.map +1 -0
- package/dist/web-dashboard/chat-console.d.ts +24 -0
- package/dist/web-dashboard/chat-console.d.ts.map +1 -1
- package/dist/web-dashboard/chat-console.js +38 -0
- package/dist/web-dashboard/chat-console.js.map +1 -1
- package/dist/web-dashboard/project-context.d.ts +27 -2
- package/dist/web-dashboard/project-context.d.ts.map +1 -1
- package/dist/web-dashboard/project-context.js +32 -2
- package/dist/web-dashboard/project-context.js.map +1 -1
- package/dist/web-dashboard/server.d.ts +40 -0
- package/dist/web-dashboard/server.d.ts.map +1 -1
- package/dist/web-dashboard/server.js +733 -15
- package/dist/web-dashboard/server.js.map +1 -1
- package/dist/web-dashboard/src/types.d.ts +236 -1
- package/dist/web-dashboard/src/types.d.ts.map +1 -1
- package/dist/web-dashboard/workspace-guard.d.ts +18 -2
- package/dist/web-dashboard/workspace-guard.d.ts.map +1 -1
- package/dist/web-dashboard/workspace-guard.js +94 -12
- package/dist/web-dashboard/workspace-guard.js.map +1 -1
- package/dist/web-dashboard/workspace-resolution.d.ts +87 -0
- package/dist/web-dashboard/workspace-resolution.d.ts.map +1 -0
- package/dist/web-dashboard/workspace-resolution.js +105 -0
- package/dist/web-dashboard/workspace-resolution.js.map +1 -0
- package/package.json +1 -1
- package/src/web-dashboard/public/assets/index-tK8Y2qHB.css +1 -0
- package/src/web-dashboard/public/assets/index-zjbdJnO-.js +210 -0
- package/src/web-dashboard/public/assets/index-zjbdJnO-.js.map +1 -0
- package/src/web-dashboard/public/index.html +2 -2
- package/src/web-dashboard/public/assets/index-BrZcYhy6.js +0 -207
- package/src/web-dashboard/public/assets/index-BrZcYhy6.js.map +0 -1
- package/src/web-dashboard/public/assets/index-DsWczTa6.css +0 -1
|
@@ -0,0 +1,210 @@
|
|
|
1
|
+
var v$=Object.defineProperty;var y$=(e,t,n)=>t in e?v$(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Jr=(e,t,n)=>y$(e,typeof t!="symbol"?t+"":t,n);function b$(e,t){for(var n=0;n<t.length;n++){const r=t[n];if(typeof r!="string"&&!Array.isArray(r)){for(const a in r)if(a!=="default"&&!(a in e)){const s=Object.getOwnPropertyDescriptor(r,a);s&&Object.defineProperty(e,a,s.get?s:{enumerable:!0,get:()=>r[a]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const a of document.querySelectorAll('link[rel="modulepreload"]'))r(a);new MutationObserver(a=>{for(const s of a)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&r(o)}).observe(document,{childList:!0,subtree:!0});function n(a){const s={};return a.integrity&&(s.integrity=a.integrity),a.referrerPolicy&&(s.referrerPolicy=a.referrerPolicy),a.crossOrigin==="use-credentials"?s.credentials="include":a.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function r(a){if(a.ep)return;a.ep=!0;const s=n(a);fetch(a.href,s)}})();var li=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function tt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var rA={exports:{}},pp={},aA={exports:{}},Fe={};/**
|
|
2
|
+
* @license React
|
|
3
|
+
* react.production.min.js
|
|
4
|
+
*
|
|
5
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
6
|
+
*
|
|
7
|
+
* This source code is licensed under the MIT license found in the
|
|
8
|
+
* LICENSE file in the root directory of this source tree.
|
|
9
|
+
*/var Gu=Symbol.for("react.element"),x$=Symbol.for("react.portal"),w$=Symbol.for("react.fragment"),k$=Symbol.for("react.strict_mode"),S$=Symbol.for("react.profiler"),j$=Symbol.for("react.provider"),N$=Symbol.for("react.context"),E$=Symbol.for("react.forward_ref"),_$=Symbol.for("react.suspense"),A$=Symbol.for("react.memo"),C$=Symbol.for("react.lazy"),D0=Symbol.iterator;function T$(e){return e===null||typeof e!="object"?null:(e=D0&&e[D0]||e["@@iterator"],typeof e=="function"?e:null)}var iA={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},sA=Object.assign,oA={};function vl(e,t,n){this.props=e,this.context=t,this.refs=oA,this.updater=n||iA}vl.prototype.isReactComponent={};vl.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")};vl.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function lA(){}lA.prototype=vl.prototype;function ex(e,t,n){this.props=e,this.context=t,this.refs=oA,this.updater=n||iA}var tx=ex.prototype=new lA;tx.constructor=ex;sA(tx,vl.prototype);tx.isPureReactComponent=!0;var B0=Array.isArray,cA=Object.prototype.hasOwnProperty,nx={current:null},uA={key:!0,ref:!0,__self:!0,__source:!0};function dA(e,t,n){var r,a={},s=null,o=null;if(t!=null)for(r in t.ref!==void 0&&(o=t.ref),t.key!==void 0&&(s=""+t.key),t)cA.call(t,r)&&!uA.hasOwnProperty(r)&&(a[r]=t[r]);var l=arguments.length-2;if(l===1)a.children=n;else if(1<l){for(var c=Array(l),u=0;u<l;u++)c[u]=arguments[u+2];a.children=c}if(e&&e.defaultProps)for(r in l=e.defaultProps,l)a[r]===void 0&&(a[r]=l[r]);return{$$typeof:Gu,type:e,key:s,ref:o,props:a,_owner:nx.current}}function O$(e,t){return{$$typeof:Gu,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}function rx(e){return typeof e=="object"&&e!==null&&e.$$typeof===Gu}function P$(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,function(n){return t[n]})}var z0=/\/+/g;function Rm(e,t){return typeof e=="object"&&e!==null&&e.key!=null?P$(""+e.key):t.toString(36)}function gf(e,t,n,r,a){var s=typeof e;(s==="undefined"||s==="boolean")&&(e=null);var o=!1;if(e===null)o=!0;else switch(s){case"string":case"number":o=!0;break;case"object":switch(e.$$typeof){case Gu:case x$:o=!0}}if(o)return o=e,a=a(o),e=r===""?"."+Rm(o,0):r,B0(a)?(n="",e!=null&&(n=e.replace(z0,"$&/")+"/"),gf(a,t,n,"",function(u){return u})):a!=null&&(rx(a)&&(a=O$(a,n+(!a.key||o&&o.key===a.key?"":(""+a.key).replace(z0,"$&/")+"/")+e)),t.push(a)),1;if(o=0,r=r===""?".":r+":",B0(e))for(var l=0;l<e.length;l++){s=e[l];var c=r+Rm(s,l);o+=gf(s,t,n,c,a)}else if(c=T$(e),typeof c=="function")for(e=c.call(e),l=0;!(s=e.next()).done;)s=s.value,c=r+Rm(s,l++),o+=gf(s,t,n,c,a);else if(s==="object")throw t=String(e),Error("Objects are not valid as a React child (found: "+(t==="[object Object]"?"object with keys {"+Object.keys(e).join(", ")+"}":t)+"). If you meant to render a collection of children, use an array instead.");return o}function Sd(e,t,n){if(e==null)return e;var r=[],a=0;return gf(e,r,"","",function(s){return t.call(n,s,a++)}),r}function R$(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(n){(e._status===0||e._status===-1)&&(e._status=1,e._result=n)},function(n){(e._status===0||e._status===-1)&&(e._status=2,e._result=n)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var Rn={current:null},vf={transition:null},M$={ReactCurrentDispatcher:Rn,ReactCurrentBatchConfig:vf,ReactCurrentOwner:nx};function fA(){throw Error("act(...) is not supported in production builds of React.")}Fe.Children={map:Sd,forEach:function(e,t,n){Sd(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return Sd(e,function(){t++}),t},toArray:function(e){return Sd(e,function(t){return t})||[]},only:function(e){if(!rx(e))throw Error("React.Children.only expected to receive a single React element child.");return e}};Fe.Component=vl;Fe.Fragment=w$;Fe.Profiler=S$;Fe.PureComponent=ex;Fe.StrictMode=k$;Fe.Suspense=_$;Fe.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=M$;Fe.act=fA;Fe.cloneElement=function(e,t,n){if(e==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+e+".");var r=sA({},e.props),a=e.key,s=e.ref,o=e._owner;if(t!=null){if(t.ref!==void 0&&(s=t.ref,o=nx.current),t.key!==void 0&&(a=""+t.key),e.type&&e.type.defaultProps)var l=e.type.defaultProps;for(c in t)cA.call(t,c)&&!uA.hasOwnProperty(c)&&(r[c]=t[c]===void 0&&l!==void 0?l[c]:t[c])}var c=arguments.length-2;if(c===1)r.children=n;else if(1<c){l=Array(c);for(var u=0;u<c;u++)l[u]=arguments[u+2];r.children=l}return{$$typeof:Gu,type:e.type,key:a,ref:s,props:r,_owner:o}};Fe.createContext=function(e){return e={$$typeof:N$,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},e.Provider={$$typeof:j$,_context:e},e.Consumer=e};Fe.createElement=dA;Fe.createFactory=function(e){var t=dA.bind(null,e);return t.type=e,t};Fe.createRef=function(){return{current:null}};Fe.forwardRef=function(e){return{$$typeof:E$,render:e}};Fe.isValidElement=rx;Fe.lazy=function(e){return{$$typeof:C$,_payload:{_status:-1,_result:e},_init:R$}};Fe.memo=function(e,t){return{$$typeof:A$,type:e,compare:t===void 0?null:t}};Fe.startTransition=function(e){var t=vf.transition;vf.transition={};try{e()}finally{vf.transition=t}};Fe.unstable_act=fA;Fe.useCallback=function(e,t){return Rn.current.useCallback(e,t)};Fe.useContext=function(e){return Rn.current.useContext(e)};Fe.useDebugValue=function(){};Fe.useDeferredValue=function(e){return Rn.current.useDeferredValue(e)};Fe.useEffect=function(e,t){return Rn.current.useEffect(e,t)};Fe.useId=function(){return Rn.current.useId()};Fe.useImperativeHandle=function(e,t,n){return Rn.current.useImperativeHandle(e,t,n)};Fe.useInsertionEffect=function(e,t){return Rn.current.useInsertionEffect(e,t)};Fe.useLayoutEffect=function(e,t){return Rn.current.useLayoutEffect(e,t)};Fe.useMemo=function(e,t){return Rn.current.useMemo(e,t)};Fe.useReducer=function(e,t,n){return Rn.current.useReducer(e,t,n)};Fe.useRef=function(e){return Rn.current.useRef(e)};Fe.useState=function(e){return Rn.current.useState(e)};Fe.useSyncExternalStore=function(e,t,n){return Rn.current.useSyncExternalStore(e,t,n)};Fe.useTransition=function(){return Rn.current.useTransition()};Fe.version="18.3.1";aA.exports=Fe;var x=aA.exports;const V=tt(x),I$=b$({__proto__:null,default:V},[x]);/**
|
|
10
|
+
* @license React
|
|
11
|
+
* react-jsx-runtime.production.min.js
|
|
12
|
+
*
|
|
13
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
14
|
+
*
|
|
15
|
+
* This source code is licensed under the MIT license found in the
|
|
16
|
+
* LICENSE file in the root directory of this source tree.
|
|
17
|
+
*/var $$=x,L$=Symbol.for("react.element"),D$=Symbol.for("react.fragment"),B$=Object.prototype.hasOwnProperty,z$=$$.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,F$={key:!0,ref:!0,__self:!0,__source:!0};function hA(e,t,n){var r,a={},s=null,o=null;n!==void 0&&(s=""+n),t.key!==void 0&&(s=""+t.key),t.ref!==void 0&&(o=t.ref);for(r in t)B$.call(t,r)&&!F$.hasOwnProperty(r)&&(a[r]=t[r]);if(e&&e.defaultProps)for(r in t=e.defaultProps,t)a[r]===void 0&&(a[r]=t[r]);return{$$typeof:L$,type:e,key:s,ref:o,props:a,_owner:z$.current}}pp.Fragment=D$;pp.jsx=hA;pp.jsxs=hA;rA.exports=pp;var i=rA.exports,pA={exports:{}},sr={},mA={exports:{}},gA={};/**
|
|
18
|
+
* @license React
|
|
19
|
+
* scheduler.production.min.js
|
|
20
|
+
*
|
|
21
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
22
|
+
*
|
|
23
|
+
* This source code is licensed under the MIT license found in the
|
|
24
|
+
* LICENSE file in the root directory of this source tree.
|
|
25
|
+
*/(function(e){function t(R,B){var A=R.length;R.push(B);e:for(;0<A;){var J=A-1>>>1,F=R[J];if(0<a(F,B))R[J]=B,R[A]=F,A=J;else break e}}function n(R){return R.length===0?null:R[0]}function r(R){if(R.length===0)return null;var B=R[0],A=R.pop();if(A!==B){R[0]=A;e:for(var J=0,F=R.length,$=F>>>1;J<$;){var ie=2*(J+1)-1,de=R[ie],me=ie+1,Te=R[me];if(0>a(de,A))me<F&&0>a(Te,de)?(R[J]=Te,R[me]=A,J=me):(R[J]=de,R[ie]=A,J=ie);else if(me<F&&0>a(Te,A))R[J]=Te,R[me]=A,J=me;else break e}}return B}function a(R,B){var A=R.sortIndex-B.sortIndex;return A!==0?A:R.id-B.id}if(typeof performance=="object"&&typeof performance.now=="function"){var s=performance;e.unstable_now=function(){return s.now()}}else{var o=Date,l=o.now();e.unstable_now=function(){return o.now()-l}}var c=[],u=[],d=1,f=null,h=3,p=!1,g=!1,m=!1,y=typeof setTimeout=="function"?setTimeout:null,v=typeof clearTimeout=="function"?clearTimeout:null,S=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function w(R){for(var B=n(u);B!==null;){if(B.callback===null)r(u);else if(B.startTime<=R)r(u),B.sortIndex=B.expirationTime,t(c,B);else break;B=n(u)}}function j(R){if(m=!1,w(R),!g)if(n(c)!==null)g=!0,D(k);else{var B=n(u);B!==null&&W(j,B.startTime-R)}}function k(R,B){g=!1,m&&(m=!1,v(_),_=-1),p=!0;var A=h;try{for(w(B),f=n(c);f!==null&&(!(f.expirationTime>B)||R&&!O());){var J=f.callback;if(typeof J=="function"){f.callback=null,h=f.priorityLevel;var F=J(f.expirationTime<=B);B=e.unstable_now(),typeof F=="function"?f.callback=F:f===n(c)&&r(c),w(B)}else r(c);f=n(c)}if(f!==null)var $=!0;else{var ie=n(u);ie!==null&&W(j,ie.startTime-B),$=!1}return $}finally{f=null,h=A,p=!1}}var b=!1,N=null,_=-1,T=5,C=-1;function O(){return!(e.unstable_now()-C<T)}function P(){if(N!==null){var R=e.unstable_now();C=R;var B=!0;try{B=N(!0,R)}finally{B?z():(b=!1,N=null)}}else b=!1}var z;if(typeof S=="function")z=function(){S(P)};else if(typeof MessageChannel<"u"){var L=new MessageChannel,M=L.port2;L.port1.onmessage=P,z=function(){M.postMessage(null)}}else z=function(){y(P,0)};function D(R){N=R,b||(b=!0,z())}function W(R,B){_=y(function(){R(e.unstable_now())},B)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(R){R.callback=null},e.unstable_continueExecution=function(){g||p||(g=!0,D(k))},e.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"):T=0<R?Math.floor(1e3/R):5},e.unstable_getCurrentPriorityLevel=function(){return h},e.unstable_getFirstCallbackNode=function(){return n(c)},e.unstable_next=function(R){switch(h){case 1:case 2:case 3:var B=3;break;default:B=h}var A=h;h=B;try{return R()}finally{h=A}},e.unstable_pauseExecution=function(){},e.unstable_requestPaint=function(){},e.unstable_runWithPriority=function(R,B){switch(R){case 1:case 2:case 3:case 4:case 5:break;default:R=3}var A=h;h=R;try{return B()}finally{h=A}},e.unstable_scheduleCallback=function(R,B,A){var J=e.unstable_now();switch(typeof A=="object"&&A!==null?(A=A.delay,A=typeof A=="number"&&0<A?J+A:J):A=J,R){case 1:var F=-1;break;case 2:F=250;break;case 5:F=1073741823;break;case 4:F=1e4;break;default:F=5e3}return F=A+F,R={id:d++,callback:B,priorityLevel:R,startTime:A,expirationTime:F,sortIndex:-1},A>J?(R.sortIndex=A,t(u,R),n(c)===null&&R===n(u)&&(m?(v(_),_=-1):m=!0,W(j,A-J))):(R.sortIndex=F,t(c,R),g||p||(g=!0,D(k))),R},e.unstable_shouldYield=O,e.unstable_wrapCallback=function(R){var B=h;return function(){var A=h;h=B;try{return R.apply(this,arguments)}finally{h=A}}}})(gA);mA.exports=gA;var U$=mA.exports;/**
|
|
26
|
+
* @license React
|
|
27
|
+
* react-dom.production.min.js
|
|
28
|
+
*
|
|
29
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
30
|
+
*
|
|
31
|
+
* This source code is licensed under the MIT license found in the
|
|
32
|
+
* LICENSE file in the root directory of this source tree.
|
|
33
|
+
*/var W$=x,ar=U$;function oe(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);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."}var vA=new Set,Bc={};function zs(e,t){zo(e,t),zo(e+"Capture",t)}function zo(e,t){for(Bc[e]=t,e=0;e<t.length;e++)vA.add(t[e])}var Ta=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),gv=Object.prototype.hasOwnProperty,H$=/^[: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]*$/,F0={},U0={};function G$(e){return gv.call(U0,e)?!0:gv.call(F0,e)?!1:H$.test(e)?U0[e]=!0:(F0[e]=!0,!1)}function q$(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function K$(e,t,n,r){if(t===null||typeof t>"u"||q$(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function Mn(e,t,n,r,a,s,o){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=a,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=s,this.removeEmptyString=o}var fn={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){fn[e]=new Mn(e,0,!1,e,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];fn[t]=new Mn(t,1,!1,e[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(e){fn[e]=new Mn(e,2,!1,e.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){fn[e]=new Mn(e,2,!1,e,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){fn[e]=new Mn(e,3,!1,e.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(e){fn[e]=new Mn(e,3,!0,e,null,!1,!1)});["capture","download"].forEach(function(e){fn[e]=new Mn(e,4,!1,e,null,!1,!1)});["cols","rows","size","span"].forEach(function(e){fn[e]=new Mn(e,6,!1,e,null,!1,!1)});["rowSpan","start"].forEach(function(e){fn[e]=new Mn(e,5,!1,e.toLowerCase(),null,!1,!1)});var ax=/[\-:]([a-z])/g;function ix(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(ax,ix);fn[t]=new Mn(t,1,!1,e,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(ax,ix);fn[t]=new Mn(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(ax,ix);fn[t]=new Mn(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(e){fn[e]=new Mn(e,1,!1,e.toLowerCase(),null,!1,!1)});fn.xlinkHref=new Mn("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(e){fn[e]=new Mn(e,1,!1,e.toLowerCase(),null,!0,!0)});function sx(e,t,n,r){var a=fn.hasOwnProperty(t)?fn[t]:null;(a!==null?a.type!==0:r||!(2<t.length)||t[0]!=="o"&&t[0]!=="O"||t[1]!=="n"&&t[1]!=="N")&&(K$(t,n,a,r)&&(n=null),r||a===null?G$(t)&&(n===null?e.removeAttribute(t):e.setAttribute(t,""+n)):a.mustUseProperty?e[a.propertyName]=n===null?a.type===3?!1:"":n:(t=a.attributeName,r=a.attributeNamespace,n===null?e.removeAttribute(t):(a=a.type,n=a===3||a===4&&n===!0?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}var La=W$.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,jd=Symbol.for("react.element"),ho=Symbol.for("react.portal"),po=Symbol.for("react.fragment"),ox=Symbol.for("react.strict_mode"),vv=Symbol.for("react.profiler"),yA=Symbol.for("react.provider"),bA=Symbol.for("react.context"),lx=Symbol.for("react.forward_ref"),yv=Symbol.for("react.suspense"),bv=Symbol.for("react.suspense_list"),cx=Symbol.for("react.memo"),ti=Symbol.for("react.lazy"),xA=Symbol.for("react.offscreen"),W0=Symbol.iterator;function Kl(e){return e===null||typeof e!="object"?null:(e=W0&&e[W0]||e["@@iterator"],typeof e=="function"?e:null)}var Tt=Object.assign,Mm;function mc(e){if(Mm===void 0)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);Mm=t&&t[1]||""}return`
|
|
34
|
+
`+Mm+e}var Im=!1;function $m(e,t){if(!e||Im)return"";Im=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(t,[])}catch(u){var r=u}Reflect.construct(e,[],t)}else{try{t.call()}catch(u){r=u}e.call(t.prototype)}else{try{throw Error()}catch(u){r=u}e()}}catch(u){if(u&&r&&typeof u.stack=="string"){for(var a=u.stack.split(`
|
|
35
|
+
`),s=r.stack.split(`
|
|
36
|
+
`),o=a.length-1,l=s.length-1;1<=o&&0<=l&&a[o]!==s[l];)l--;for(;1<=o&&0<=l;o--,l--)if(a[o]!==s[l]){if(o!==1||l!==1)do if(o--,l--,0>l||a[o]!==s[l]){var c=`
|
|
37
|
+
`+a[o].replace(" at new "," at ");return e.displayName&&c.includes("<anonymous>")&&(c=c.replace("<anonymous>",e.displayName)),c}while(1<=o&&0<=l);break}}}finally{Im=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?mc(e):""}function V$(e){switch(e.tag){case 5:return mc(e.type);case 16:return mc("Lazy");case 13:return mc("Suspense");case 19:return mc("SuspenseList");case 0:case 2:case 15:return e=$m(e.type,!1),e;case 11:return e=$m(e.type.render,!1),e;case 1:return e=$m(e.type,!0),e;default:return""}}function xv(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case po:return"Fragment";case ho:return"Portal";case vv:return"Profiler";case ox:return"StrictMode";case yv:return"Suspense";case bv:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case bA:return(e.displayName||"Context")+".Consumer";case yA:return(e._context.displayName||"Context")+".Provider";case lx:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case cx:return t=e.displayName||null,t!==null?t:xv(e.type)||"Memo";case ti:t=e._payload,e=e._init;try{return xv(e(t))}catch{}}return null}function Y$(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return xv(t);case 8:return t===ox?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function Ei(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function wA(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function X$(e){var t=wA(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var a=n.get,s=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return a.call(this)},set:function(o){r=""+o,s.call(this,o)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(o){r=""+o},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Nd(e){e._valueTracker||(e._valueTracker=X$(e))}function kA(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=wA(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Of(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}}function wv(e,t){var n=t.checked;return Tt({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function H0(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=Ei(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function SA(e,t){t=t.checked,t!=null&&sx(e,"checked",t,!1)}function kv(e,t){SA(e,t);var n=Ei(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?Sv(e,t.type,n):t.hasOwnProperty("defaultValue")&&Sv(e,t.type,Ei(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function G0(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function Sv(e,t,n){(t!=="number"||Of(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var gc=Array.isArray;function Co(e,t,n,r){if(e=e.options,t){t={};for(var a=0;a<n.length;a++)t["$"+n[a]]=!0;for(n=0;n<e.length;n++)a=t.hasOwnProperty("$"+e[n].value),e[n].selected!==a&&(e[n].selected=a),a&&r&&(e[n].defaultSelected=!0)}else{for(n=""+Ei(n),t=null,a=0;a<e.length;a++){if(e[a].value===n){e[a].selected=!0,r&&(e[a].defaultSelected=!0);return}t!==null||e[a].disabled||(t=e[a])}t!==null&&(t.selected=!0)}}function jv(e,t){if(t.dangerouslySetInnerHTML!=null)throw Error(oe(91));return Tt({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function q0(e,t){var n=t.value;if(n==null){if(n=t.children,t=t.defaultValue,n!=null){if(t!=null)throw Error(oe(92));if(gc(n)){if(1<n.length)throw Error(oe(93));n=n[0]}t=n}t==null&&(t=""),n=t}e._wrapperState={initialValue:Ei(n)}}function jA(e,t){var n=Ei(t.value),r=Ei(t.defaultValue);n!=null&&(n=""+n,n!==e.value&&(e.value=n),t.defaultValue==null&&e.defaultValue!==n&&(e.defaultValue=n)),r!=null&&(e.defaultValue=""+r)}function K0(e){var t=e.textContent;t===e._wrapperState.initialValue&&t!==""&&t!==null&&(e.value=t)}function NA(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function Nv(e,t){return e==null||e==="http://www.w3.org/1999/xhtml"?NA(t):e==="http://www.w3.org/2000/svg"&&t==="foreignObject"?"http://www.w3.org/1999/xhtml":e}var Ed,EA=function(e){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(t,n,r,a){MSApp.execUnsafeLocalFunction(function(){return e(t,n,r,a)})}:e}(function(e,t){if(e.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in e)e.innerHTML=t;else{for(Ed=Ed||document.createElement("div"),Ed.innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=Ed.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function zc(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var kc={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},Q$=["Webkit","ms","Moz","O"];Object.keys(kc).forEach(function(e){Q$.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),kc[t]=kc[e]})});function _A(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||kc.hasOwnProperty(e)&&kc[e]?(""+t).trim():t+"px"}function AA(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,a=_A(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,a):e[n]=a}}var Z$=Tt({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Ev(e,t){if(t){if(Z$[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(oe(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(oe(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(oe(61))}if(t.style!=null&&typeof t.style!="object")throw Error(oe(62))}}function _v(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";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 Av=null;function ux(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var Cv=null,To=null,Oo=null;function V0(e){if(e=Vu(e)){if(typeof Cv!="function")throw Error(oe(280));var t=e.stateNode;t&&(t=bp(t),Cv(e.stateNode,e.type,t))}}function CA(e){To?Oo?Oo.push(e):Oo=[e]:To=e}function TA(){if(To){var e=To,t=Oo;if(Oo=To=null,V0(e),t)for(e=0;e<t.length;e++)V0(t[e])}}function OA(e,t){return e(t)}function PA(){}var Lm=!1;function RA(e,t,n){if(Lm)return e(t,n);Lm=!0;try{return OA(e,t,n)}finally{Lm=!1,(To!==null||Oo!==null)&&(PA(),TA())}}function Fc(e,t){var n=e.stateNode;if(n===null)return null;var r=bp(n);if(r===null)return null;n=r[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":(r=!r.disabled)||(e=e.type,r=!(e==="button"||e==="input"||e==="select"||e==="textarea")),e=!r;break e;default:e=!1}if(e)return null;if(n&&typeof n!="function")throw Error(oe(231,t,typeof n));return n}var Tv=!1;if(Ta)try{var Vl={};Object.defineProperty(Vl,"passive",{get:function(){Tv=!0}}),window.addEventListener("test",Vl,Vl),window.removeEventListener("test",Vl,Vl)}catch{Tv=!1}function J$(e,t,n,r,a,s,o,l,c){var u=Array.prototype.slice.call(arguments,3);try{t.apply(n,u)}catch(d){this.onError(d)}}var Sc=!1,Pf=null,Rf=!1,Ov=null,eL={onError:function(e){Sc=!0,Pf=e}};function tL(e,t,n,r,a,s,o,l,c){Sc=!1,Pf=null,J$.apply(eL,arguments)}function nL(e,t,n,r,a,s,o,l,c){if(tL.apply(this,arguments),Sc){if(Sc){var u=Pf;Sc=!1,Pf=null}else throw Error(oe(198));Rf||(Rf=!0,Ov=u)}}function Fs(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function MA(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 Y0(e){if(Fs(e)!==e)throw Error(oe(188))}function rL(e){var t=e.alternate;if(!t){if(t=Fs(e),t===null)throw Error(oe(188));return t!==e?null:e}for(var n=e,r=t;;){var a=n.return;if(a===null)break;var s=a.alternate;if(s===null){if(r=a.return,r!==null){n=r;continue}break}if(a.child===s.child){for(s=a.child;s;){if(s===n)return Y0(a),e;if(s===r)return Y0(a),t;s=s.sibling}throw Error(oe(188))}if(n.return!==r.return)n=a,r=s;else{for(var o=!1,l=a.child;l;){if(l===n){o=!0,n=a,r=s;break}if(l===r){o=!0,r=a,n=s;break}l=l.sibling}if(!o){for(l=s.child;l;){if(l===n){o=!0,n=s,r=a;break}if(l===r){o=!0,r=s,n=a;break}l=l.sibling}if(!o)throw Error(oe(189))}}if(n.alternate!==r)throw Error(oe(190))}if(n.tag!==3)throw Error(oe(188));return n.stateNode.current===n?e:t}function IA(e){return e=rL(e),e!==null?$A(e):null}function $A(e){if(e.tag===5||e.tag===6)return e;for(e=e.child;e!==null;){var t=$A(e);if(t!==null)return t;e=e.sibling}return null}var LA=ar.unstable_scheduleCallback,X0=ar.unstable_cancelCallback,aL=ar.unstable_shouldYield,iL=ar.unstable_requestPaint,$t=ar.unstable_now,sL=ar.unstable_getCurrentPriorityLevel,dx=ar.unstable_ImmediatePriority,DA=ar.unstable_UserBlockingPriority,Mf=ar.unstable_NormalPriority,oL=ar.unstable_LowPriority,BA=ar.unstable_IdlePriority,mp=null,la=null;function lL(e){if(la&&typeof la.onCommitFiberRoot=="function")try{la.onCommitFiberRoot(mp,e,void 0,(e.current.flags&128)===128)}catch{}}var Fr=Math.clz32?Math.clz32:dL,cL=Math.log,uL=Math.LN2;function dL(e){return e>>>=0,e===0?32:31-(cL(e)/uL|0)|0}var _d=64,Ad=4194304;function vc(e){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: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 e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function If(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,a=e.suspendedLanes,s=e.pingedLanes,o=n&268435455;if(o!==0){var l=o&~a;l!==0?r=vc(l):(s&=o,s!==0&&(r=vc(s)))}else o=n&~a,o!==0?r=vc(o):s!==0&&(r=vc(s));if(r===0)return 0;if(t!==0&&t!==r&&!(t&a)&&(a=r&-r,s=t&-t,a>=s||a===16&&(s&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0<t;)n=31-Fr(t),a=1<<n,r|=e[n],t&=~a;return r}function fL(e,t){switch(e){case 1:case 2:case 4:return t+250;case 8:case 16:case 32:case 64: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:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function hL(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,a=e.expirationTimes,s=e.pendingLanes;0<s;){var o=31-Fr(s),l=1<<o,c=a[o];c===-1?(!(l&n)||l&r)&&(a[o]=fL(l,t)):c<=t&&(e.expiredLanes|=l),s&=~l}}function Pv(e){return e=e.pendingLanes&-1073741825,e!==0?e:e&1073741824?1073741824:0}function zA(){var e=_d;return _d<<=1,!(_d&4194240)&&(_d=64),e}function Dm(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function qu(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Fr(t),e[t]=n}function pL(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0<n;){var a=31-Fr(n),s=1<<a;t[a]=0,r[a]=-1,e[a]=-1,n&=~s}}function fx(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Fr(n),a=1<<r;a&t|e[r]&t&&(e[r]|=t),n&=~a}}var it=0;function FA(e){return e&=-e,1<e?4<e?e&268435455?16:536870912:4:1}var UA,hx,WA,HA,GA,Rv=!1,Cd=[],mi=null,gi=null,vi=null,Uc=new Map,Wc=new Map,ai=[],mL="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 submit".split(" ");function Q0(e,t){switch(e){case"focusin":case"focusout":mi=null;break;case"dragenter":case"dragleave":gi=null;break;case"mouseover":case"mouseout":vi=null;break;case"pointerover":case"pointerout":Uc.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Wc.delete(t.pointerId)}}function Yl(e,t,n,r,a,s){return e===null||e.nativeEvent!==s?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:s,targetContainers:[a]},t!==null&&(t=Vu(t),t!==null&&hx(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,a!==null&&t.indexOf(a)===-1&&t.push(a),e)}function gL(e,t,n,r,a){switch(t){case"focusin":return mi=Yl(mi,e,t,n,r,a),!0;case"dragenter":return gi=Yl(gi,e,t,n,r,a),!0;case"mouseover":return vi=Yl(vi,e,t,n,r,a),!0;case"pointerover":var s=a.pointerId;return Uc.set(s,Yl(Uc.get(s)||null,e,t,n,r,a)),!0;case"gotpointercapture":return s=a.pointerId,Wc.set(s,Yl(Wc.get(s)||null,e,t,n,r,a)),!0}return!1}function qA(e){var t=hs(e.target);if(t!==null){var n=Fs(t);if(n!==null){if(t=n.tag,t===13){if(t=MA(n),t!==null){e.blockedOn=t,GA(e.priority,function(){WA(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function yf(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=Mv(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);Av=r,n.target.dispatchEvent(r),Av=null}else return t=Vu(n),t!==null&&hx(t),e.blockedOn=n,!1;t.shift()}return!0}function Z0(e,t,n){yf(e)&&n.delete(t)}function vL(){Rv=!1,mi!==null&&yf(mi)&&(mi=null),gi!==null&&yf(gi)&&(gi=null),vi!==null&&yf(vi)&&(vi=null),Uc.forEach(Z0),Wc.forEach(Z0)}function Xl(e,t){e.blockedOn===t&&(e.blockedOn=null,Rv||(Rv=!0,ar.unstable_scheduleCallback(ar.unstable_NormalPriority,vL)))}function Hc(e){function t(a){return Xl(a,e)}if(0<Cd.length){Xl(Cd[0],e);for(var n=1;n<Cd.length;n++){var r=Cd[n];r.blockedOn===e&&(r.blockedOn=null)}}for(mi!==null&&Xl(mi,e),gi!==null&&Xl(gi,e),vi!==null&&Xl(vi,e),Uc.forEach(t),Wc.forEach(t),n=0;n<ai.length;n++)r=ai[n],r.blockedOn===e&&(r.blockedOn=null);for(;0<ai.length&&(n=ai[0],n.blockedOn===null);)qA(n),n.blockedOn===null&&ai.shift()}var Po=La.ReactCurrentBatchConfig,$f=!0;function yL(e,t,n,r){var a=it,s=Po.transition;Po.transition=null;try{it=1,px(e,t,n,r)}finally{it=a,Po.transition=s}}function bL(e,t,n,r){var a=it,s=Po.transition;Po.transition=null;try{it=4,px(e,t,n,r)}finally{it=a,Po.transition=s}}function px(e,t,n,r){if($f){var a=Mv(e,t,n,r);if(a===null)Vm(e,t,r,Lf,n),Q0(e,r);else if(gL(a,e,t,n,r))r.stopPropagation();else if(Q0(e,r),t&4&&-1<mL.indexOf(e)){for(;a!==null;){var s=Vu(a);if(s!==null&&UA(s),s=Mv(e,t,n,r),s===null&&Vm(e,t,r,Lf,n),s===a)break;a=s}a!==null&&r.stopPropagation()}else Vm(e,t,r,null,n)}}var Lf=null;function Mv(e,t,n,r){if(Lf=null,e=ux(r),e=hs(e),e!==null)if(t=Fs(e),t===null)e=null;else if(n=t.tag,n===13){if(e=MA(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null);return Lf=e,null}function KA(e){switch(e){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"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 1;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"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(sL()){case dx:return 1;case DA:return 4;case Mf:case oL:return 16;case BA:return 536870912;default:return 16}default:return 16}}var ci=null,mx=null,bf=null;function VA(){if(bf)return bf;var e,t=mx,n=t.length,r,a="value"in ci?ci.value:ci.textContent,s=a.length;for(e=0;e<n&&t[e]===a[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===a[s-r];r++);return bf=a.slice(e,1<r?1-r:void 0)}function xf(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 Td(){return!0}function J0(){return!1}function or(e){function t(n,r,a,s,o){this._reactName=n,this._targetInst=a,this.type=r,this.nativeEvent=s,this.target=o,this.currentTarget=null;for(var l in e)e.hasOwnProperty(l)&&(n=e[l],this[l]=n?n(s):s[l]);return this.isDefaultPrevented=(s.defaultPrevented!=null?s.defaultPrevented:s.returnValue===!1)?Td:J0,this.isPropagationStopped=J0,this}return Tt(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var n=this.nativeEvent;n&&(n.preventDefault?n.preventDefault():typeof n.returnValue!="unknown"&&(n.returnValue=!1),this.isDefaultPrevented=Td)},stopPropagation:function(){var n=this.nativeEvent;n&&(n.stopPropagation?n.stopPropagation():typeof n.cancelBubble!="unknown"&&(n.cancelBubble=!0),this.isPropagationStopped=Td)},persist:function(){},isPersistent:Td}),t}var yl={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},gx=or(yl),Ku=Tt({},yl,{view:0,detail:0}),xL=or(Ku),Bm,zm,Ql,gp=Tt({},Ku,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:vx,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!==Ql&&(Ql&&e.type==="mousemove"?(Bm=e.screenX-Ql.screenX,zm=e.screenY-Ql.screenY):zm=Bm=0,Ql=e),Bm)},movementY:function(e){return"movementY"in e?e.movementY:zm}}),ek=or(gp),wL=Tt({},gp,{dataTransfer:0}),kL=or(wL),SL=Tt({},Ku,{relatedTarget:0}),Fm=or(SL),jL=Tt({},yl,{animationName:0,elapsedTime:0,pseudoElement:0}),NL=or(jL),EL=Tt({},yl,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),_L=or(EL),AL=Tt({},yl,{data:0}),tk=or(AL),CL={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},TL={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"},OL={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function PL(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=OL[e])?!!t[e]:!1}function vx(){return PL}var RL=Tt({},Ku,{key:function(e){if(e.key){var t=CL[e.key]||e.key;if(t!=="Unidentified")return t}return e.type==="keypress"?(e=xf(e),e===13?"Enter":String.fromCharCode(e)):e.type==="keydown"||e.type==="keyup"?TL[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:vx,charCode:function(e){return e.type==="keypress"?xf(e):0},keyCode:function(e){return e.type==="keydown"||e.type==="keyup"?e.keyCode:0},which:function(e){return e.type==="keypress"?xf(e):e.type==="keydown"||e.type==="keyup"?e.keyCode:0}}),ML=or(RL),IL=Tt({},gp,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),nk=or(IL),$L=Tt({},Ku,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:vx}),LL=or($L),DL=Tt({},yl,{propertyName:0,elapsedTime:0,pseudoElement:0}),BL=or(DL),zL=Tt({},gp,{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}),FL=or(zL),UL=[9,13,27,32],yx=Ta&&"CompositionEvent"in window,jc=null;Ta&&"documentMode"in document&&(jc=document.documentMode);var WL=Ta&&"TextEvent"in window&&!jc,YA=Ta&&(!yx||jc&&8<jc&&11>=jc),rk=" ",ak=!1;function XA(e,t){switch(e){case"keyup":return UL.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function QA(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var mo=!1;function HL(e,t){switch(e){case"compositionend":return QA(t);case"keypress":return t.which!==32?null:(ak=!0,rk);case"textInput":return e=t.data,e===rk&&ak?null:e;default:return null}}function GL(e,t){if(mo)return e==="compositionend"||!yx&&XA(e,t)?(e=VA(),bf=mx=ci=null,mo=!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 YA&&t.locale!=="ko"?null:t.data;default:return null}}var qL={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 ik(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t==="input"?!!qL[e.type]:t==="textarea"}function ZA(e,t,n,r){CA(r),t=Df(t,"onChange"),0<t.length&&(n=new gx("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Nc=null,Gc=null;function KL(e){cC(e,0)}function vp(e){var t=yo(e);if(kA(t))return e}function VL(e,t){if(e==="change")return t}var JA=!1;if(Ta){var Um;if(Ta){var Wm="oninput"in document;if(!Wm){var sk=document.createElement("div");sk.setAttribute("oninput","return;"),Wm=typeof sk.oninput=="function"}Um=Wm}else Um=!1;JA=Um&&(!document.documentMode||9<document.documentMode)}function ok(){Nc&&(Nc.detachEvent("onpropertychange",eC),Gc=Nc=null)}function eC(e){if(e.propertyName==="value"&&vp(Gc)){var t=[];ZA(t,Gc,e,ux(e)),RA(KL,t)}}function YL(e,t,n){e==="focusin"?(ok(),Nc=t,Gc=n,Nc.attachEvent("onpropertychange",eC)):e==="focusout"&&ok()}function XL(e){if(e==="selectionchange"||e==="keyup"||e==="keydown")return vp(Gc)}function QL(e,t){if(e==="click")return vp(t)}function ZL(e,t){if(e==="input"||e==="change")return vp(t)}function JL(e,t){return e===t&&(e!==0||1/e===1/t)||e!==e&&t!==t}var qr=typeof Object.is=="function"?Object.is:JL;function qc(e,t){if(qr(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var a=n[r];if(!gv.call(t,a)||!qr(e[a],t[a]))return!1}return!0}function lk(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function ck(e,t){var n=lk(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=lk(n)}}function tC(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?tC(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function nC(){for(var e=window,t=Of();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Of(e.document)}return t}function bx(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")}function eD(e){var t=nC(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&tC(n.ownerDocument.documentElement,n)){if(r!==null&&bx(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var a=n.textContent.length,s=Math.min(r.start,a);r=r.end===void 0?s:Math.min(r.end,a),!e.extend&&s>r&&(a=r,r=s,s=a),a=ck(n,s);var o=ck(n,r);a&&o&&(e.rangeCount!==1||e.anchorNode!==a.node||e.anchorOffset!==a.offset||e.focusNode!==o.node||e.focusOffset!==o.offset)&&(t=t.createRange(),t.setStart(a.node,a.offset),e.removeAllRanges(),s>r?(e.addRange(t),e.extend(o.node,o.offset)):(t.setEnd(o.node,o.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n<t.length;n++)e=t[n],e.element.scrollLeft=e.left,e.element.scrollTop=e.top}}var tD=Ta&&"documentMode"in document&&11>=document.documentMode,go=null,Iv=null,Ec=null,$v=!1;function uk(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;$v||go==null||go!==Of(r)||(r=go,"selectionStart"in r&&bx(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Ec&&qc(Ec,r)||(Ec=r,r=Df(Iv,"onSelect"),0<r.length&&(t=new gx("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=go)))}function Od(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var vo={animationend:Od("Animation","AnimationEnd"),animationiteration:Od("Animation","AnimationIteration"),animationstart:Od("Animation","AnimationStart"),transitionend:Od("Transition","TransitionEnd")},Hm={},rC={};Ta&&(rC=document.createElement("div").style,"AnimationEvent"in window||(delete vo.animationend.animation,delete vo.animationiteration.animation,delete vo.animationstart.animation),"TransitionEvent"in window||delete vo.transitionend.transition);function yp(e){if(Hm[e])return Hm[e];if(!vo[e])return e;var t=vo[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in rC)return Hm[e]=t[n];return e}var aC=yp("animationend"),iC=yp("animationiteration"),sC=yp("animationstart"),oC=yp("transitionend"),lC=new Map,dk="abort auxClick 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(" ");function Ci(e,t){lC.set(e,t),zs(t,[e])}for(var Gm=0;Gm<dk.length;Gm++){var qm=dk[Gm],nD=qm.toLowerCase(),rD=qm[0].toUpperCase()+qm.slice(1);Ci(nD,"on"+rD)}Ci(aC,"onAnimationEnd");Ci(iC,"onAnimationIteration");Ci(sC,"onAnimationStart");Ci("dblclick","onDoubleClick");Ci("focusin","onFocus");Ci("focusout","onBlur");Ci(oC,"onTransitionEnd");zo("onMouseEnter",["mouseout","mouseover"]);zo("onMouseLeave",["mouseout","mouseover"]);zo("onPointerEnter",["pointerout","pointerover"]);zo("onPointerLeave",["pointerout","pointerover"]);zs("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));zs("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));zs("onBeforeInput",["compositionend","keypress","textInput","paste"]);zs("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));zs("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));zs("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var yc="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(" "),aD=new Set("cancel close invalid load scroll toggle".split(" ").concat(yc));function fk(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,nL(r,t,void 0,e),e.currentTarget=null}function cC(e,t){t=(t&4)!==0;for(var n=0;n<e.length;n++){var r=e[n],a=r.event;r=r.listeners;e:{var s=void 0;if(t)for(var o=r.length-1;0<=o;o--){var l=r[o],c=l.instance,u=l.currentTarget;if(l=l.listener,c!==s&&a.isPropagationStopped())break e;fk(a,l,u),s=c}else for(o=0;o<r.length;o++){if(l=r[o],c=l.instance,u=l.currentTarget,l=l.listener,c!==s&&a.isPropagationStopped())break e;fk(a,l,u),s=c}}}if(Rf)throw e=Ov,Rf=!1,Ov=null,e}function bt(e,t){var n=t[Fv];n===void 0&&(n=t[Fv]=new Set);var r=e+"__bubble";n.has(r)||(uC(t,e,2,!1),n.add(r))}function Km(e,t,n){var r=0;t&&(r|=4),uC(n,e,r,t)}var Pd="_reactListening"+Math.random().toString(36).slice(2);function Kc(e){if(!e[Pd]){e[Pd]=!0,vA.forEach(function(n){n!=="selectionchange"&&(aD.has(n)||Km(n,!1,e),Km(n,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Pd]||(t[Pd]=!0,Km("selectionchange",!1,t))}}function uC(e,t,n,r){switch(KA(t)){case 1:var a=yL;break;case 4:a=bL;break;default:a=px}n=a.bind(null,t,n,e),a=void 0,!Tv||t!=="touchstart"&&t!=="touchmove"&&t!=="wheel"||(a=!0),r?a!==void 0?e.addEventListener(t,n,{capture:!0,passive:a}):e.addEventListener(t,n,!0):a!==void 0?e.addEventListener(t,n,{passive:a}):e.addEventListener(t,n,!1)}function Vm(e,t,n,r,a){var s=r;if(!(t&1)&&!(t&2)&&r!==null)e:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var l=r.stateNode.containerInfo;if(l===a||l.nodeType===8&&l.parentNode===a)break;if(o===4)for(o=r.return;o!==null;){var c=o.tag;if((c===3||c===4)&&(c=o.stateNode.containerInfo,c===a||c.nodeType===8&&c.parentNode===a))return;o=o.return}for(;l!==null;){if(o=hs(l),o===null)return;if(c=o.tag,c===5||c===6){r=s=o;continue e}l=l.parentNode}}r=r.return}RA(function(){var u=s,d=ux(n),f=[];e:{var h=lC.get(e);if(h!==void 0){var p=gx,g=e;switch(e){case"keypress":if(xf(n)===0)break e;case"keydown":case"keyup":p=ML;break;case"focusin":g="focus",p=Fm;break;case"focusout":g="blur",p=Fm;break;case"beforeblur":case"afterblur":p=Fm;break;case"click":if(n.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":p=ek;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":p=kL;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":p=LL;break;case aC:case iC:case sC:p=NL;break;case oC:p=BL;break;case"scroll":p=xL;break;case"wheel":p=FL;break;case"copy":case"cut":case"paste":p=_L;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":p=nk}var m=(t&4)!==0,y=!m&&e==="scroll",v=m?h!==null?h+"Capture":null:h;m=[];for(var S=u,w;S!==null;){w=S;var j=w.stateNode;if(w.tag===5&&j!==null&&(w=j,v!==null&&(j=Fc(S,v),j!=null&&m.push(Vc(S,j,w)))),y)break;S=S.return}0<m.length&&(h=new p(h,g,null,n,d),f.push({event:h,listeners:m}))}}if(!(t&7)){e:{if(h=e==="mouseover"||e==="pointerover",p=e==="mouseout"||e==="pointerout",h&&n!==Av&&(g=n.relatedTarget||n.fromElement)&&(hs(g)||g[Oa]))break e;if((p||h)&&(h=d.window===d?d:(h=d.ownerDocument)?h.defaultView||h.parentWindow:window,p?(g=n.relatedTarget||n.toElement,p=u,g=g?hs(g):null,g!==null&&(y=Fs(g),g!==y||g.tag!==5&&g.tag!==6)&&(g=null)):(p=null,g=u),p!==g)){if(m=ek,j="onMouseLeave",v="onMouseEnter",S="mouse",(e==="pointerout"||e==="pointerover")&&(m=nk,j="onPointerLeave",v="onPointerEnter",S="pointer"),y=p==null?h:yo(p),w=g==null?h:yo(g),h=new m(j,S+"leave",p,n,d),h.target=y,h.relatedTarget=w,j=null,hs(d)===u&&(m=new m(v,S+"enter",g,n,d),m.target=w,m.relatedTarget=y,j=m),y=j,p&&g)t:{for(m=p,v=g,S=0,w=m;w;w=eo(w))S++;for(w=0,j=v;j;j=eo(j))w++;for(;0<S-w;)m=eo(m),S--;for(;0<w-S;)v=eo(v),w--;for(;S--;){if(m===v||v!==null&&m===v.alternate)break t;m=eo(m),v=eo(v)}m=null}else m=null;p!==null&&hk(f,h,p,m,!1),g!==null&&y!==null&&hk(f,y,g,m,!0)}}e:{if(h=u?yo(u):window,p=h.nodeName&&h.nodeName.toLowerCase(),p==="select"||p==="input"&&h.type==="file")var k=VL;else if(ik(h))if(JA)k=ZL;else{k=XL;var b=YL}else(p=h.nodeName)&&p.toLowerCase()==="input"&&(h.type==="checkbox"||h.type==="radio")&&(k=QL);if(k&&(k=k(e,u))){ZA(f,k,n,d);break e}b&&b(e,h,u),e==="focusout"&&(b=h._wrapperState)&&b.controlled&&h.type==="number"&&Sv(h,"number",h.value)}switch(b=u?yo(u):window,e){case"focusin":(ik(b)||b.contentEditable==="true")&&(go=b,Iv=u,Ec=null);break;case"focusout":Ec=Iv=go=null;break;case"mousedown":$v=!0;break;case"contextmenu":case"mouseup":case"dragend":$v=!1,uk(f,n,d);break;case"selectionchange":if(tD)break;case"keydown":case"keyup":uk(f,n,d)}var N;if(yx)e:{switch(e){case"compositionstart":var _="onCompositionStart";break e;case"compositionend":_="onCompositionEnd";break e;case"compositionupdate":_="onCompositionUpdate";break e}_=void 0}else mo?XA(e,n)&&(_="onCompositionEnd"):e==="keydown"&&n.keyCode===229&&(_="onCompositionStart");_&&(YA&&n.locale!=="ko"&&(mo||_!=="onCompositionStart"?_==="onCompositionEnd"&&mo&&(N=VA()):(ci=d,mx="value"in ci?ci.value:ci.textContent,mo=!0)),b=Df(u,_),0<b.length&&(_=new tk(_,e,null,n,d),f.push({event:_,listeners:b}),N?_.data=N:(N=QA(n),N!==null&&(_.data=N)))),(N=WL?HL(e,n):GL(e,n))&&(u=Df(u,"onBeforeInput"),0<u.length&&(d=new tk("onBeforeInput","beforeinput",null,n,d),f.push({event:d,listeners:u}),d.data=N))}cC(f,t)})}function Vc(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Df(e,t){for(var n=t+"Capture",r=[];e!==null;){var a=e,s=a.stateNode;a.tag===5&&s!==null&&(a=s,s=Fc(e,n),s!=null&&r.unshift(Vc(e,s,a)),s=Fc(e,t),s!=null&&r.push(Vc(e,s,a))),e=e.return}return r}function eo(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5);return e||null}function hk(e,t,n,r,a){for(var s=t._reactName,o=[];n!==null&&n!==r;){var l=n,c=l.alternate,u=l.stateNode;if(c!==null&&c===r)break;l.tag===5&&u!==null&&(l=u,a?(c=Fc(n,s),c!=null&&o.unshift(Vc(n,c,l))):a||(c=Fc(n,s),c!=null&&o.push(Vc(n,c,l)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var iD=/\r\n?/g,sD=/\u0000|\uFFFD/g;function pk(e){return(typeof e=="string"?e:""+e).replace(iD,`
|
|
38
|
+
`).replace(sD,"")}function Rd(e,t,n){if(t=pk(t),pk(e)!==t&&n)throw Error(oe(425))}function Bf(){}var Lv=null,Dv=null;function Bv(e,t){return e==="textarea"||e==="noscript"||typeof t.children=="string"||typeof t.children=="number"||typeof t.dangerouslySetInnerHTML=="object"&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var zv=typeof setTimeout=="function"?setTimeout:void 0,oD=typeof clearTimeout=="function"?clearTimeout:void 0,mk=typeof Promise=="function"?Promise:void 0,lD=typeof queueMicrotask=="function"?queueMicrotask:typeof mk<"u"?function(e){return mk.resolve(null).then(e).catch(cD)}:zv;function cD(e){setTimeout(function(){throw e})}function Ym(e,t){var n=t,r=0;do{var a=n.nextSibling;if(e.removeChild(n),a&&a.nodeType===8)if(n=a.data,n==="/$"){if(r===0){e.removeChild(a),Hc(t);return}r--}else n!=="$"&&n!=="$?"&&n!=="$!"||r++;n=a}while(n);Hc(t)}function yi(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==="$?")break;if(t==="/$")return null}}return e}function gk(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="$"||n==="$!"||n==="$?"){if(t===0)return e;t--}else n==="/$"&&t++}e=e.previousSibling}return null}var bl=Math.random().toString(36).slice(2),aa="__reactFiber$"+bl,Yc="__reactProps$"+bl,Oa="__reactContainer$"+bl,Fv="__reactEvents$"+bl,uD="__reactListeners$"+bl,dD="__reactHandles$"+bl;function hs(e){var t=e[aa];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Oa]||n[aa]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=gk(e);e!==null;){if(n=e[aa])return n;e=gk(e)}return t}e=n,n=e.parentNode}return null}function Vu(e){return e=e[aa]||e[Oa],!e||e.tag!==5&&e.tag!==6&&e.tag!==13&&e.tag!==3?null:e}function yo(e){if(e.tag===5||e.tag===6)return e.stateNode;throw Error(oe(33))}function bp(e){return e[Yc]||null}var Uv=[],bo=-1;function Ti(e){return{current:e}}function St(e){0>bo||(e.current=Uv[bo],Uv[bo]=null,bo--)}function mt(e,t){bo++,Uv[bo]=e.current,e.current=t}var _i={},jn=Ti(_i),Fn=Ti(!1),Cs=_i;function Fo(e,t){var n=e.type.contextTypes;if(!n)return _i;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var a={},s;for(s in n)a[s]=t[s];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=a),a}function Un(e){return e=e.childContextTypes,e!=null}function zf(){St(Fn),St(jn)}function vk(e,t,n){if(jn.current!==_i)throw Error(oe(168));mt(jn,t),mt(Fn,n)}function dC(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var a in r)if(!(a in t))throw Error(oe(108,Y$(e)||"Unknown",a));return Tt({},n,r)}function Ff(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||_i,Cs=jn.current,mt(jn,e),mt(Fn,Fn.current),!0}function yk(e,t,n){var r=e.stateNode;if(!r)throw Error(oe(169));n?(e=dC(e,t,Cs),r.__reactInternalMemoizedMergedChildContext=e,St(Fn),St(jn),mt(jn,e)):St(Fn),mt(Fn,n)}var xa=null,xp=!1,Xm=!1;function fC(e){xa===null?xa=[e]:xa.push(e)}function fD(e){xp=!0,fC(e)}function Oi(){if(!Xm&&xa!==null){Xm=!0;var e=0,t=it;try{var n=xa;for(it=1;e<n.length;e++){var r=n[e];do r=r(!0);while(r!==null)}xa=null,xp=!1}catch(a){throw xa!==null&&(xa=xa.slice(e+1)),LA(dx,Oi),a}finally{it=t,Xm=!1}}return null}var xo=[],wo=0,Uf=null,Wf=0,vr=[],yr=0,Ts=null,wa=1,ka="";function as(e,t){xo[wo++]=Wf,xo[wo++]=Uf,Uf=e,Wf=t}function hC(e,t,n){vr[yr++]=wa,vr[yr++]=ka,vr[yr++]=Ts,Ts=e;var r=wa;e=ka;var a=32-Fr(r)-1;r&=~(1<<a),n+=1;var s=32-Fr(t)+a;if(30<s){var o=a-a%5;s=(r&(1<<o)-1).toString(32),r>>=o,a-=o,wa=1<<32-Fr(t)+a|n<<a|r,ka=s+e}else wa=1<<s|n<<a|r,ka=e}function xx(e){e.return!==null&&(as(e,1),hC(e,1,0))}function wx(e){for(;e===Uf;)Uf=xo[--wo],xo[wo]=null,Wf=xo[--wo],xo[wo]=null;for(;e===Ts;)Ts=vr[--yr],vr[yr]=null,ka=vr[--yr],vr[yr]=null,wa=vr[--yr],vr[yr]=null}var nr=null,tr=null,jt=!1,Dr=null;function pC(e,t){var n=xr(5,null,null,0);n.elementType="DELETED",n.stateNode=t,n.return=e,t=e.deletions,t===null?(e.deletions=[n],e.flags|=16):t.push(n)}function bk(e,t){switch(e.tag){case 5:var n=e.type;return t=t.nodeType!==1||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t,t!==null?(e.stateNode=t,nr=e,tr=yi(t.firstChild),!0):!1;case 6:return t=e.pendingProps===""||t.nodeType!==3?null:t,t!==null?(e.stateNode=t,nr=e,tr=null,!0):!1;case 13:return t=t.nodeType!==8?null:t,t!==null?(n=Ts!==null?{id:wa,overflow:ka}:null,e.memoizedState={dehydrated:t,treeContext:n,retryLane:1073741824},n=xr(18,null,null,0),n.stateNode=t,n.return=e,e.child=n,nr=e,tr=null,!0):!1;default:return!1}}function Wv(e){return(e.mode&1)!==0&&(e.flags&128)===0}function Hv(e){if(jt){var t=tr;if(t){var n=t;if(!bk(e,t)){if(Wv(e))throw Error(oe(418));t=yi(n.nextSibling);var r=nr;t&&bk(e,t)?pC(r,n):(e.flags=e.flags&-4097|2,jt=!1,nr=e)}}else{if(Wv(e))throw Error(oe(418));e.flags=e.flags&-4097|2,jt=!1,nr=e}}}function xk(e){for(e=e.return;e!==null&&e.tag!==5&&e.tag!==3&&e.tag!==13;)e=e.return;nr=e}function Md(e){if(e!==nr)return!1;if(!jt)return xk(e),jt=!0,!1;var t;if((t=e.tag!==3)&&!(t=e.tag!==5)&&(t=e.type,t=t!=="head"&&t!=="body"&&!Bv(e.type,e.memoizedProps)),t&&(t=tr)){if(Wv(e))throw mC(),Error(oe(418));for(;t;)pC(e,t),t=yi(t.nextSibling)}if(xk(e),e.tag===13){if(e=e.memoizedState,e=e!==null?e.dehydrated:null,!e)throw Error(oe(317));e:{for(e=e.nextSibling,t=0;e;){if(e.nodeType===8){var n=e.data;if(n==="/$"){if(t===0){tr=yi(e.nextSibling);break e}t--}else n!=="$"&&n!=="$!"&&n!=="$?"||t++}e=e.nextSibling}tr=null}}else tr=nr?yi(e.stateNode.nextSibling):null;return!0}function mC(){for(var e=tr;e;)e=yi(e.nextSibling)}function Uo(){tr=nr=null,jt=!1}function kx(e){Dr===null?Dr=[e]:Dr.push(e)}var hD=La.ReactCurrentBatchConfig;function Zl(e,t,n){if(e=n.ref,e!==null&&typeof e!="function"&&typeof e!="object"){if(n._owner){if(n=n._owner,n){if(n.tag!==1)throw Error(oe(309));var r=n.stateNode}if(!r)throw Error(oe(147,e));var a=r,s=""+e;return t!==null&&t.ref!==null&&typeof t.ref=="function"&&t.ref._stringRef===s?t.ref:(t=function(o){var l=a.refs;o===null?delete l[s]:l[s]=o},t._stringRef=s,t)}if(typeof e!="string")throw Error(oe(284));if(!n._owner)throw Error(oe(290,e))}return e}function Id(e,t){throw e=Object.prototype.toString.call(t),Error(oe(31,e==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":e))}function wk(e){var t=e._init;return t(e._payload)}function gC(e){function t(v,S){if(e){var w=v.deletions;w===null?(v.deletions=[S],v.flags|=16):w.push(S)}}function n(v,S){if(!e)return null;for(;S!==null;)t(v,S),S=S.sibling;return null}function r(v,S){for(v=new Map;S!==null;)S.key!==null?v.set(S.key,S):v.set(S.index,S),S=S.sibling;return v}function a(v,S){return v=ki(v,S),v.index=0,v.sibling=null,v}function s(v,S,w){return v.index=w,e?(w=v.alternate,w!==null?(w=w.index,w<S?(v.flags|=2,S):w):(v.flags|=2,S)):(v.flags|=1048576,S)}function o(v){return e&&v.alternate===null&&(v.flags|=2),v}function l(v,S,w,j){return S===null||S.tag!==6?(S=rg(w,v.mode,j),S.return=v,S):(S=a(S,w),S.return=v,S)}function c(v,S,w,j){var k=w.type;return k===po?d(v,S,w.props.children,j,w.key):S!==null&&(S.elementType===k||typeof k=="object"&&k!==null&&k.$$typeof===ti&&wk(k)===S.type)?(j=a(S,w.props),j.ref=Zl(v,S,w),j.return=v,j):(j=_f(w.type,w.key,w.props,null,v.mode,j),j.ref=Zl(v,S,w),j.return=v,j)}function u(v,S,w,j){return S===null||S.tag!==4||S.stateNode.containerInfo!==w.containerInfo||S.stateNode.implementation!==w.implementation?(S=ag(w,v.mode,j),S.return=v,S):(S=a(S,w.children||[]),S.return=v,S)}function d(v,S,w,j,k){return S===null||S.tag!==7?(S=ks(w,v.mode,j,k),S.return=v,S):(S=a(S,w),S.return=v,S)}function f(v,S,w){if(typeof S=="string"&&S!==""||typeof S=="number")return S=rg(""+S,v.mode,w),S.return=v,S;if(typeof S=="object"&&S!==null){switch(S.$$typeof){case jd:return w=_f(S.type,S.key,S.props,null,v.mode,w),w.ref=Zl(v,null,S),w.return=v,w;case ho:return S=ag(S,v.mode,w),S.return=v,S;case ti:var j=S._init;return f(v,j(S._payload),w)}if(gc(S)||Kl(S))return S=ks(S,v.mode,w,null),S.return=v,S;Id(v,S)}return null}function h(v,S,w,j){var k=S!==null?S.key:null;if(typeof w=="string"&&w!==""||typeof w=="number")return k!==null?null:l(v,S,""+w,j);if(typeof w=="object"&&w!==null){switch(w.$$typeof){case jd:return w.key===k?c(v,S,w,j):null;case ho:return w.key===k?u(v,S,w,j):null;case ti:return k=w._init,h(v,S,k(w._payload),j)}if(gc(w)||Kl(w))return k!==null?null:d(v,S,w,j,null);Id(v,w)}return null}function p(v,S,w,j,k){if(typeof j=="string"&&j!==""||typeof j=="number")return v=v.get(w)||null,l(S,v,""+j,k);if(typeof j=="object"&&j!==null){switch(j.$$typeof){case jd:return v=v.get(j.key===null?w:j.key)||null,c(S,v,j,k);case ho:return v=v.get(j.key===null?w:j.key)||null,u(S,v,j,k);case ti:var b=j._init;return p(v,S,w,b(j._payload),k)}if(gc(j)||Kl(j))return v=v.get(w)||null,d(S,v,j,k,null);Id(S,j)}return null}function g(v,S,w,j){for(var k=null,b=null,N=S,_=S=0,T=null;N!==null&&_<w.length;_++){N.index>_?(T=N,N=null):T=N.sibling;var C=h(v,N,w[_],j);if(C===null){N===null&&(N=T);break}e&&N&&C.alternate===null&&t(v,N),S=s(C,S,_),b===null?k=C:b.sibling=C,b=C,N=T}if(_===w.length)return n(v,N),jt&&as(v,_),k;if(N===null){for(;_<w.length;_++)N=f(v,w[_],j),N!==null&&(S=s(N,S,_),b===null?k=N:b.sibling=N,b=N);return jt&&as(v,_),k}for(N=r(v,N);_<w.length;_++)T=p(N,v,_,w[_],j),T!==null&&(e&&T.alternate!==null&&N.delete(T.key===null?_:T.key),S=s(T,S,_),b===null?k=T:b.sibling=T,b=T);return e&&N.forEach(function(O){return t(v,O)}),jt&&as(v,_),k}function m(v,S,w,j){var k=Kl(w);if(typeof k!="function")throw Error(oe(150));if(w=k.call(w),w==null)throw Error(oe(151));for(var b=k=null,N=S,_=S=0,T=null,C=w.next();N!==null&&!C.done;_++,C=w.next()){N.index>_?(T=N,N=null):T=N.sibling;var O=h(v,N,C.value,j);if(O===null){N===null&&(N=T);break}e&&N&&O.alternate===null&&t(v,N),S=s(O,S,_),b===null?k=O:b.sibling=O,b=O,N=T}if(C.done)return n(v,N),jt&&as(v,_),k;if(N===null){for(;!C.done;_++,C=w.next())C=f(v,C.value,j),C!==null&&(S=s(C,S,_),b===null?k=C:b.sibling=C,b=C);return jt&&as(v,_),k}for(N=r(v,N);!C.done;_++,C=w.next())C=p(N,v,_,C.value,j),C!==null&&(e&&C.alternate!==null&&N.delete(C.key===null?_:C.key),S=s(C,S,_),b===null?k=C:b.sibling=C,b=C);return e&&N.forEach(function(P){return t(v,P)}),jt&&as(v,_),k}function y(v,S,w,j){if(typeof w=="object"&&w!==null&&w.type===po&&w.key===null&&(w=w.props.children),typeof w=="object"&&w!==null){switch(w.$$typeof){case jd:e:{for(var k=w.key,b=S;b!==null;){if(b.key===k){if(k=w.type,k===po){if(b.tag===7){n(v,b.sibling),S=a(b,w.props.children),S.return=v,v=S;break e}}else if(b.elementType===k||typeof k=="object"&&k!==null&&k.$$typeof===ti&&wk(k)===b.type){n(v,b.sibling),S=a(b,w.props),S.ref=Zl(v,b,w),S.return=v,v=S;break e}n(v,b);break}else t(v,b);b=b.sibling}w.type===po?(S=ks(w.props.children,v.mode,j,w.key),S.return=v,v=S):(j=_f(w.type,w.key,w.props,null,v.mode,j),j.ref=Zl(v,S,w),j.return=v,v=j)}return o(v);case ho:e:{for(b=w.key;S!==null;){if(S.key===b)if(S.tag===4&&S.stateNode.containerInfo===w.containerInfo&&S.stateNode.implementation===w.implementation){n(v,S.sibling),S=a(S,w.children||[]),S.return=v,v=S;break e}else{n(v,S);break}else t(v,S);S=S.sibling}S=ag(w,v.mode,j),S.return=v,v=S}return o(v);case ti:return b=w._init,y(v,S,b(w._payload),j)}if(gc(w))return g(v,S,w,j);if(Kl(w))return m(v,S,w,j);Id(v,w)}return typeof w=="string"&&w!==""||typeof w=="number"?(w=""+w,S!==null&&S.tag===6?(n(v,S.sibling),S=a(S,w),S.return=v,v=S):(n(v,S),S=rg(w,v.mode,j),S.return=v,v=S),o(v)):n(v,S)}return y}var Wo=gC(!0),vC=gC(!1),Hf=Ti(null),Gf=null,ko=null,Sx=null;function jx(){Sx=ko=Gf=null}function Nx(e){var t=Hf.current;St(Hf),e._currentValue=t}function Gv(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function Ro(e,t){Gf=e,Sx=ko=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(Bn=!0),e.firstContext=null)}function jr(e){var t=e._currentValue;if(Sx!==e)if(e={context:e,memoizedValue:t,next:null},ko===null){if(Gf===null)throw Error(oe(308));ko=e,Gf.dependencies={lanes:0,firstContext:e}}else ko=ko.next=e;return t}var ps=null;function Ex(e){ps===null?ps=[e]:ps.push(e)}function yC(e,t,n,r){var a=t.interleaved;return a===null?(n.next=n,Ex(t)):(n.next=a.next,a.next=n),t.interleaved=n,Pa(e,r)}function Pa(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var ni=!1;function _x(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function bC(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Ea(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function bi(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Ge&2){var a=r.pending;return a===null?t.next=t:(t.next=a.next,a.next=t),r.pending=t,Pa(e,n)}return a=r.interleaved,a===null?(t.next=t,Ex(r)):(t.next=a.next,a.next=t),r.interleaved=t,Pa(e,n)}function wf(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,fx(e,n)}}function kk(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var a=null,s=null;if(n=n.firstBaseUpdate,n!==null){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};s===null?a=s=o:s=s.next=o,n=n.next}while(n!==null);s===null?a=s=t:s=s.next=t}else a=s=t;n={baseState:r.baseState,firstBaseUpdate:a,lastBaseUpdate:s,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function qf(e,t,n,r){var a=e.updateQueue;ni=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,l=a.shared.pending;if(l!==null){a.shared.pending=null;var c=l,u=c.next;c.next=null,o===null?s=u:o.next=u,o=c;var d=e.alternate;d!==null&&(d=d.updateQueue,l=d.lastBaseUpdate,l!==o&&(l===null?d.firstBaseUpdate=u:l.next=u,d.lastBaseUpdate=c))}if(s!==null){var f=a.baseState;o=0,d=u=c=null,l=s;do{var h=l.lane,p=l.eventTime;if((r&h)===h){d!==null&&(d=d.next={eventTime:p,lane:0,tag:l.tag,payload:l.payload,callback:l.callback,next:null});e:{var g=e,m=l;switch(h=t,p=n,m.tag){case 1:if(g=m.payload,typeof g=="function"){f=g.call(p,f,h);break e}f=g;break e;case 3:g.flags=g.flags&-65537|128;case 0:if(g=m.payload,h=typeof g=="function"?g.call(p,f,h):g,h==null)break e;f=Tt({},f,h);break e;case 2:ni=!0}}l.callback!==null&&l.lane!==0&&(e.flags|=64,h=a.effects,h===null?a.effects=[l]:h.push(l))}else p={eventTime:p,lane:h,tag:l.tag,payload:l.payload,callback:l.callback,next:null},d===null?(u=d=p,c=f):d=d.next=p,o|=h;if(l=l.next,l===null){if(l=a.shared.pending,l===null)break;h=l,l=h.next,h.next=null,a.lastBaseUpdate=h,a.shared.pending=null}}while(!0);if(d===null&&(c=f),a.baseState=c,a.firstBaseUpdate=u,a.lastBaseUpdate=d,t=a.shared.interleaved,t!==null){a=t;do o|=a.lane,a=a.next;while(a!==t)}else s===null&&(a.shared.lanes=0);Ps|=o,e.lanes=o,e.memoizedState=f}}function Sk(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;t<e.length;t++){var r=e[t],a=r.callback;if(a!==null){if(r.callback=null,r=n,typeof a!="function")throw Error(oe(191,a));a.call(r)}}}var Yu={},ca=Ti(Yu),Xc=Ti(Yu),Qc=Ti(Yu);function ms(e){if(e===Yu)throw Error(oe(174));return e}function Ax(e,t){switch(mt(Qc,t),mt(Xc,e),mt(ca,Yu),e=t.nodeType,e){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:Nv(null,"");break;default:e=e===8?t.parentNode:t,t=e.namespaceURI||null,e=e.tagName,t=Nv(t,e)}St(ca),mt(ca,t)}function Ho(){St(ca),St(Xc),St(Qc)}function xC(e){ms(Qc.current);var t=ms(ca.current),n=Nv(t,e.type);t!==n&&(mt(Xc,e),mt(ca,n))}function Cx(e){Xc.current===e&&(St(ca),St(Xc))}var _t=Ti(0);function Kf(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||n.data==="$?"||n.data==="$!"))return t}else if(t.tag===19&&t.memoizedProps.revealOrder!==void 0){if(t.flags&128)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 Qm=[];function Tx(){for(var e=0;e<Qm.length;e++)Qm[e]._workInProgressVersionPrimary=null;Qm.length=0}var kf=La.ReactCurrentDispatcher,Zm=La.ReactCurrentBatchConfig,Os=0,At=null,Xt=null,nn=null,Vf=!1,_c=!1,Zc=0,pD=0;function mn(){throw Error(oe(321))}function Ox(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!qr(e[n],t[n]))return!1;return!0}function Px(e,t,n,r,a,s){if(Os=s,At=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,kf.current=e===null||e.memoizedState===null?yD:bD,e=n(r,a),_c){s=0;do{if(_c=!1,Zc=0,25<=s)throw Error(oe(301));s+=1,nn=Xt=null,t.updateQueue=null,kf.current=xD,e=n(r,a)}while(_c)}if(kf.current=Yf,t=Xt!==null&&Xt.next!==null,Os=0,nn=Xt=At=null,Vf=!1,t)throw Error(oe(300));return e}function Rx(){var e=Zc!==0;return Zc=0,e}function na(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return nn===null?At.memoizedState=nn=e:nn=nn.next=e,nn}function Nr(){if(Xt===null){var e=At.alternate;e=e!==null?e.memoizedState:null}else e=Xt.next;var t=nn===null?At.memoizedState:nn.next;if(t!==null)nn=t,Xt=e;else{if(e===null)throw Error(oe(310));Xt=e,e={memoizedState:Xt.memoizedState,baseState:Xt.baseState,baseQueue:Xt.baseQueue,queue:Xt.queue,next:null},nn===null?At.memoizedState=nn=e:nn=nn.next=e}return nn}function Jc(e,t){return typeof t=="function"?t(e):t}function Jm(e){var t=Nr(),n=t.queue;if(n===null)throw Error(oe(311));n.lastRenderedReducer=e;var r=Xt,a=r.baseQueue,s=n.pending;if(s!==null){if(a!==null){var o=a.next;a.next=s.next,s.next=o}r.baseQueue=a=s,n.pending=null}if(a!==null){s=a.next,r=r.baseState;var l=o=null,c=null,u=s;do{var d=u.lane;if((Os&d)===d)c!==null&&(c=c.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),r=u.hasEagerState?u.eagerState:e(r,u.action);else{var f={lane:d,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};c===null?(l=c=f,o=r):c=c.next=f,At.lanes|=d,Ps|=d}u=u.next}while(u!==null&&u!==s);c===null?o=r:c.next=l,qr(r,t.memoizedState)||(Bn=!0),t.memoizedState=r,t.baseState=o,t.baseQueue=c,n.lastRenderedState=r}if(e=n.interleaved,e!==null){a=e;do s=a.lane,At.lanes|=s,Ps|=s,a=a.next;while(a!==e)}else a===null&&(n.lanes=0);return[t.memoizedState,n.dispatch]}function eg(e){var t=Nr(),n=t.queue;if(n===null)throw Error(oe(311));n.lastRenderedReducer=e;var r=n.dispatch,a=n.pending,s=t.memoizedState;if(a!==null){n.pending=null;var o=a=a.next;do s=e(s,o.action),o=o.next;while(o!==a);qr(s,t.memoizedState)||(Bn=!0),t.memoizedState=s,t.baseQueue===null&&(t.baseState=s),n.lastRenderedState=s}return[s,r]}function wC(){}function kC(e,t){var n=At,r=Nr(),a=t(),s=!qr(r.memoizedState,a);if(s&&(r.memoizedState=a,Bn=!0),r=r.queue,Mx(NC.bind(null,n,r,e),[e]),r.getSnapshot!==t||s||nn!==null&&nn.memoizedState.tag&1){if(n.flags|=2048,eu(9,jC.bind(null,n,r,a,t),void 0,null),sn===null)throw Error(oe(349));Os&30||SC(n,t,a)}return a}function SC(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=At.updateQueue,t===null?(t={lastEffect:null,stores:null},At.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function jC(e,t,n,r){t.value=n,t.getSnapshot=r,EC(t)&&_C(e)}function NC(e,t,n){return n(function(){EC(t)&&_C(e)})}function EC(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!qr(e,n)}catch{return!0}}function _C(e){var t=Pa(e,1);t!==null&&Ur(t,e,1,-1)}function jk(e){var t=na();return typeof e=="function"&&(e=e()),t.memoizedState=t.baseState=e,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Jc,lastRenderedState:e},t.queue=e,e=e.dispatch=vD.bind(null,At,e),[t.memoizedState,e]}function eu(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},t=At.updateQueue,t===null?(t={lastEffect:null,stores:null},At.updateQueue=t,t.lastEffect=e.next=e):(n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e)),e}function AC(){return Nr().memoizedState}function Sf(e,t,n,r){var a=na();At.flags|=e,a.memoizedState=eu(1|t,n,void 0,r===void 0?null:r)}function wp(e,t,n,r){var a=Nr();r=r===void 0?null:r;var s=void 0;if(Xt!==null){var o=Xt.memoizedState;if(s=o.destroy,r!==null&&Ox(r,o.deps)){a.memoizedState=eu(t,n,s,r);return}}At.flags|=e,a.memoizedState=eu(1|t,n,s,r)}function Nk(e,t){return Sf(8390656,8,e,t)}function Mx(e,t){return wp(2048,8,e,t)}function CC(e,t){return wp(4,2,e,t)}function TC(e,t){return wp(4,4,e,t)}function OC(e,t){if(typeof t=="function")return e=e(),t(e),function(){t(null)};if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function PC(e,t,n){return n=n!=null?n.concat([e]):null,wp(4,4,OC.bind(null,t,e),n)}function Ix(){}function RC(e,t){var n=Nr();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&Ox(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function MC(e,t){var n=Nr();t=t===void 0?null:t;var r=n.memoizedState;return r!==null&&t!==null&&Ox(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function IC(e,t,n){return Os&21?(qr(n,t)||(n=zA(),At.lanes|=n,Ps|=n,e.baseState=!0),t):(e.baseState&&(e.baseState=!1,Bn=!0),e.memoizedState=n)}function mD(e,t){var n=it;it=n!==0&&4>n?n:4,e(!0);var r=Zm.transition;Zm.transition={};try{e(!1),t()}finally{it=n,Zm.transition=r}}function $C(){return Nr().memoizedState}function gD(e,t,n){var r=wi(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},LC(e))DC(t,n);else if(n=yC(e,t,n,r),n!==null){var a=Pn();Ur(n,e,r,a),BC(n,t,r)}}function vD(e,t,n){var r=wi(e),a={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(LC(e))DC(t,a);else{var s=e.alternate;if(e.lanes===0&&(s===null||s.lanes===0)&&(s=t.lastRenderedReducer,s!==null))try{var o=t.lastRenderedState,l=s(o,n);if(a.hasEagerState=!0,a.eagerState=l,qr(l,o)){var c=t.interleaved;c===null?(a.next=a,Ex(t)):(a.next=c.next,c.next=a),t.interleaved=a;return}}catch{}finally{}n=yC(e,t,a,r),n!==null&&(a=Pn(),Ur(n,e,r,a),BC(n,t,r))}}function LC(e){var t=e.alternate;return e===At||t!==null&&t===At}function DC(e,t){_c=Vf=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function BC(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,fx(e,n)}}var Yf={readContext:jr,useCallback:mn,useContext:mn,useEffect:mn,useImperativeHandle:mn,useInsertionEffect:mn,useLayoutEffect:mn,useMemo:mn,useReducer:mn,useRef:mn,useState:mn,useDebugValue:mn,useDeferredValue:mn,useTransition:mn,useMutableSource:mn,useSyncExternalStore:mn,useId:mn,unstable_isNewReconciler:!1},yD={readContext:jr,useCallback:function(e,t){return na().memoizedState=[e,t===void 0?null:t],e},useContext:jr,useEffect:Nk,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Sf(4194308,4,OC.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Sf(4194308,4,e,t)},useInsertionEffect:function(e,t){return Sf(4,2,e,t)},useMemo:function(e,t){var n=na();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=na();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=gD.bind(null,At,e),[r.memoizedState,e]},useRef:function(e){var t=na();return e={current:e},t.memoizedState=e},useState:jk,useDebugValue:Ix,useDeferredValue:function(e){return na().memoizedState=e},useTransition:function(){var e=jk(!1),t=e[0];return e=mD.bind(null,e[1]),na().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=At,a=na();if(jt){if(n===void 0)throw Error(oe(407));n=n()}else{if(n=t(),sn===null)throw Error(oe(349));Os&30||SC(r,t,n)}a.memoizedState=n;var s={value:n,getSnapshot:t};return a.queue=s,Nk(NC.bind(null,r,s,e),[e]),r.flags|=2048,eu(9,jC.bind(null,r,s,n,t),void 0,null),n},useId:function(){var e=na(),t=sn.identifierPrefix;if(jt){var n=ka,r=wa;n=(r&~(1<<32-Fr(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=Zc++,0<n&&(t+="H"+n.toString(32)),t+=":"}else n=pD++,t=":"+t+"r"+n.toString(32)+":";return e.memoizedState=t},unstable_isNewReconciler:!1},bD={readContext:jr,useCallback:RC,useContext:jr,useEffect:Mx,useImperativeHandle:PC,useInsertionEffect:CC,useLayoutEffect:TC,useMemo:MC,useReducer:Jm,useRef:AC,useState:function(){return Jm(Jc)},useDebugValue:Ix,useDeferredValue:function(e){var t=Nr();return IC(t,Xt.memoizedState,e)},useTransition:function(){var e=Jm(Jc)[0],t=Nr().memoizedState;return[e,t]},useMutableSource:wC,useSyncExternalStore:kC,useId:$C,unstable_isNewReconciler:!1},xD={readContext:jr,useCallback:RC,useContext:jr,useEffect:Mx,useImperativeHandle:PC,useInsertionEffect:CC,useLayoutEffect:TC,useMemo:MC,useReducer:eg,useRef:AC,useState:function(){return eg(Jc)},useDebugValue:Ix,useDeferredValue:function(e){var t=Nr();return Xt===null?t.memoizedState=e:IC(t,Xt.memoizedState,e)},useTransition:function(){var e=eg(Jc)[0],t=Nr().memoizedState;return[e,t]},useMutableSource:wC,useSyncExternalStore:kC,useId:$C,unstable_isNewReconciler:!1};function Ir(e,t){if(e&&e.defaultProps){t=Tt({},t),e=e.defaultProps;for(var n in e)t[n]===void 0&&(t[n]=e[n]);return t}return t}function qv(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:Tt({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var kp={isMounted:function(e){return(e=e._reactInternals)?Fs(e)===e:!1},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=Pn(),a=wi(e),s=Ea(r,a);s.payload=t,n!=null&&(s.callback=n),t=bi(e,s,a),t!==null&&(Ur(t,e,a,r),wf(t,e,a))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=Pn(),a=wi(e),s=Ea(r,a);s.tag=1,s.payload=t,n!=null&&(s.callback=n),t=bi(e,s,a),t!==null&&(Ur(t,e,a,r),wf(t,e,a))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=Pn(),r=wi(e),a=Ea(n,r);a.tag=2,t!=null&&(a.callback=t),t=bi(e,a,r),t!==null&&(Ur(t,e,r,n),wf(t,e,r))}};function Ek(e,t,n,r,a,s,o){return e=e.stateNode,typeof e.shouldComponentUpdate=="function"?e.shouldComponentUpdate(r,s,o):t.prototype&&t.prototype.isPureReactComponent?!qc(n,r)||!qc(a,s):!0}function zC(e,t,n){var r=!1,a=_i,s=t.contextType;return typeof s=="object"&&s!==null?s=jr(s):(a=Un(t)?Cs:jn.current,r=t.contextTypes,s=(r=r!=null)?Fo(e,a):_i),t=new t(n,s),e.memoizedState=t.state!==null&&t.state!==void 0?t.state:null,t.updater=kp,e.stateNode=t,t._reactInternals=e,r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=a,e.__reactInternalMemoizedMaskedChildContext=s),t}function _k(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps=="function"&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps=="function"&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&kp.enqueueReplaceState(t,t.state,null)}function Kv(e,t,n,r){var a=e.stateNode;a.props=n,a.state=e.memoizedState,a.refs={},_x(e);var s=t.contextType;typeof s=="object"&&s!==null?a.context=jr(s):(s=Un(t)?Cs:jn.current,a.context=Fo(e,s)),a.state=e.memoizedState,s=t.getDerivedStateFromProps,typeof s=="function"&&(qv(e,t,s,n),a.state=e.memoizedState),typeof t.getDerivedStateFromProps=="function"||typeof a.getSnapshotBeforeUpdate=="function"||typeof a.UNSAFE_componentWillMount!="function"&&typeof a.componentWillMount!="function"||(t=a.state,typeof a.componentWillMount=="function"&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount=="function"&&a.UNSAFE_componentWillMount(),t!==a.state&&kp.enqueueReplaceState(a,a.state,null),qf(e,n,a,r),a.state=e.memoizedState),typeof a.componentDidMount=="function"&&(e.flags|=4194308)}function Go(e,t){try{var n="",r=t;do n+=V$(r),r=r.return;while(r);var a=n}catch(s){a=`
|
|
39
|
+
Error generating stack: `+s.message+`
|
|
40
|
+
`+s.stack}return{value:e,source:t,stack:a,digest:null}}function tg(e,t,n){return{value:e,source:null,stack:n??null,digest:t??null}}function Vv(e,t){try{console.error(t.value)}catch(n){setTimeout(function(){throw n})}}var wD=typeof WeakMap=="function"?WeakMap:Map;function FC(e,t,n){n=Ea(-1,n),n.tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Qf||(Qf=!0,ay=r),Vv(e,t)},n}function UC(e,t,n){n=Ea(-1,n),n.tag=3;var r=e.type.getDerivedStateFromError;if(typeof r=="function"){var a=t.value;n.payload=function(){return r(a)},n.callback=function(){Vv(e,t)}}var s=e.stateNode;return s!==null&&typeof s.componentDidCatch=="function"&&(n.callback=function(){Vv(e,t),typeof r!="function"&&(xi===null?xi=new Set([this]):xi.add(this));var o=t.stack;this.componentDidCatch(t.value,{componentStack:o!==null?o:""})}),n}function Ak(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new wD;var a=new Set;r.set(t,a)}else a=r.get(t),a===void 0&&(a=new Set,r.set(t,a));a.has(n)||(a.add(n),e=ID.bind(null,e,t,n),t.then(e,e))}function Ck(e){do{var t;if((t=e.tag===13)&&(t=e.memoizedState,t=t!==null?t.dehydrated!==null:!0),t)return e;e=e.return}while(e!==null);return null}function Tk(e,t,n,r,a){return e.mode&1?(e.flags|=65536,e.lanes=a,e):(e===t?e.flags|=65536:(e.flags|=128,n.flags|=131072,n.flags&=-52805,n.tag===1&&(n.alternate===null?n.tag=17:(t=Ea(-1,1),t.tag=2,bi(n,t,1))),n.lanes|=1),e)}var kD=La.ReactCurrentOwner,Bn=!1;function Cn(e,t,n,r){t.child=e===null?vC(t,null,n,r):Wo(t,e.child,n,r)}function Ok(e,t,n,r,a){n=n.render;var s=t.ref;return Ro(t,a),r=Px(e,t,n,r,s,a),n=Rx(),e!==null&&!Bn?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~a,Ra(e,t,a)):(jt&&n&&xx(t),t.flags|=1,Cn(e,t,r,a),t.child)}function Pk(e,t,n,r,a){if(e===null){var s=n.type;return typeof s=="function"&&!Wx(s)&&s.defaultProps===void 0&&n.compare===null&&n.defaultProps===void 0?(t.tag=15,t.type=s,WC(e,t,s,r,a)):(e=_f(n.type,null,r,t,t.mode,a),e.ref=t.ref,e.return=t,t.child=e)}if(s=e.child,!(e.lanes&a)){var o=s.memoizedProps;if(n=n.compare,n=n!==null?n:qc,n(o,r)&&e.ref===t.ref)return Ra(e,t,a)}return t.flags|=1,e=ki(s,r),e.ref=t.ref,e.return=t,t.child=e}function WC(e,t,n,r,a){if(e!==null){var s=e.memoizedProps;if(qc(s,r)&&e.ref===t.ref)if(Bn=!1,t.pendingProps=r=s,(e.lanes&a)!==0)e.flags&131072&&(Bn=!0);else return t.lanes=e.lanes,Ra(e,t,a)}return Yv(e,t,n,r,a)}function HC(e,t,n){var r=t.pendingProps,a=r.children,s=e!==null?e.memoizedState:null;if(r.mode==="hidden")if(!(t.mode&1))t.memoizedState={baseLanes:0,cachePool:null,transitions:null},mt(jo,Zn),Zn|=n;else{if(!(n&1073741824))return e=s!==null?s.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e,cachePool:null,transitions:null},t.updateQueue=null,mt(jo,Zn),Zn|=e,null;t.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=s!==null?s.baseLanes:n,mt(jo,Zn),Zn|=r}else s!==null?(r=s.baseLanes|n,t.memoizedState=null):r=n,mt(jo,Zn),Zn|=r;return Cn(e,t,a,n),t.child}function GC(e,t){var n=t.ref;(e===null&&n!==null||e!==null&&e.ref!==n)&&(t.flags|=512,t.flags|=2097152)}function Yv(e,t,n,r,a){var s=Un(n)?Cs:jn.current;return s=Fo(t,s),Ro(t,a),n=Px(e,t,n,r,s,a),r=Rx(),e!==null&&!Bn?(t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~a,Ra(e,t,a)):(jt&&r&&xx(t),t.flags|=1,Cn(e,t,n,a),t.child)}function Rk(e,t,n,r,a){if(Un(n)){var s=!0;Ff(t)}else s=!1;if(Ro(t,a),t.stateNode===null)jf(e,t),zC(t,n,r),Kv(t,n,r,a),r=!0;else if(e===null){var o=t.stateNode,l=t.memoizedProps;o.props=l;var c=o.context,u=n.contextType;typeof u=="object"&&u!==null?u=jr(u):(u=Un(n)?Cs:jn.current,u=Fo(t,u));var d=n.getDerivedStateFromProps,f=typeof d=="function"||typeof o.getSnapshotBeforeUpdate=="function";f||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(l!==r||c!==u)&&_k(t,o,r,u),ni=!1;var h=t.memoizedState;o.state=h,qf(t,r,o,a),c=t.memoizedState,l!==r||h!==c||Fn.current||ni?(typeof d=="function"&&(qv(t,n,d,r),c=t.memoizedState),(l=ni||Ek(t,n,l,r,h,c,u))?(f||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(t.flags|=4194308)):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=c),o.props=r,o.state=c,o.context=u,r=l):(typeof o.componentDidMount=="function"&&(t.flags|=4194308),r=!1)}else{o=t.stateNode,bC(e,t),l=t.memoizedProps,u=t.type===t.elementType?l:Ir(t.type,l),o.props=u,f=t.pendingProps,h=o.context,c=n.contextType,typeof c=="object"&&c!==null?c=jr(c):(c=Un(n)?Cs:jn.current,c=Fo(t,c));var p=n.getDerivedStateFromProps;(d=typeof p=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(l!==f||h!==c)&&_k(t,o,r,c),ni=!1,h=t.memoizedState,o.state=h,qf(t,r,o,a);var g=t.memoizedState;l!==f||h!==g||Fn.current||ni?(typeof p=="function"&&(qv(t,n,p,r),g=t.memoizedState),(u=ni||Ek(t,n,u,r,h,g,c)||!1)?(d||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(r,g,c),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(r,g,c)),typeof o.componentDidUpdate=="function"&&(t.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(t.flags|=1024)):(typeof o.componentDidUpdate!="function"||l===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=g),o.props=r,o.state=g,o.context=c,r=u):(typeof o.componentDidUpdate!="function"||l===e.memoizedProps&&h===e.memoizedState||(t.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||l===e.memoizedProps&&h===e.memoizedState||(t.flags|=1024),r=!1)}return Xv(e,t,n,r,s,a)}function Xv(e,t,n,r,a,s){GC(e,t);var o=(t.flags&128)!==0;if(!r&&!o)return a&&yk(t,n,!1),Ra(e,t,s);r=t.stateNode,kD.current=t;var l=o&&typeof n.getDerivedStateFromError!="function"?null:r.render();return t.flags|=1,e!==null&&o?(t.child=Wo(t,e.child,null,s),t.child=Wo(t,null,l,s)):Cn(e,t,l,s),t.memoizedState=r.state,a&&yk(t,n,!0),t.child}function qC(e){var t=e.stateNode;t.pendingContext?vk(e,t.pendingContext,t.pendingContext!==t.context):t.context&&vk(e,t.context,!1),Ax(e,t.containerInfo)}function Mk(e,t,n,r,a){return Uo(),kx(a),t.flags|=256,Cn(e,t,n,r),t.child}var Qv={dehydrated:null,treeContext:null,retryLane:0};function Zv(e){return{baseLanes:e,cachePool:null,transitions:null}}function KC(e,t,n){var r=t.pendingProps,a=_t.current,s=!1,o=(t.flags&128)!==0,l;if((l=o)||(l=e!==null&&e.memoizedState===null?!1:(a&2)!==0),l?(s=!0,t.flags&=-129):(e===null||e.memoizedState!==null)&&(a|=1),mt(_t,a&1),e===null)return Hv(t),e=t.memoizedState,e!==null&&(e=e.dehydrated,e!==null)?(t.mode&1?e.data==="$!"?t.lanes=8:t.lanes=1073741824:t.lanes=1,null):(o=r.children,e=r.fallback,s?(r=t.mode,s=t.child,o={mode:"hidden",children:o},!(r&1)&&s!==null?(s.childLanes=0,s.pendingProps=o):s=Np(o,r,0,null),e=ks(e,r,n,null),s.return=t,e.return=t,s.sibling=e,t.child=s,t.child.memoizedState=Zv(n),t.memoizedState=Qv,e):$x(t,o));if(a=e.memoizedState,a!==null&&(l=a.dehydrated,l!==null))return SD(e,t,o,r,l,a,n);if(s){s=r.fallback,o=t.mode,a=e.child,l=a.sibling;var c={mode:"hidden",children:r.children};return!(o&1)&&t.child!==a?(r=t.child,r.childLanes=0,r.pendingProps=c,t.deletions=null):(r=ki(a,c),r.subtreeFlags=a.subtreeFlags&14680064),l!==null?s=ki(l,s):(s=ks(s,o,n,null),s.flags|=2),s.return=t,r.return=t,r.sibling=s,t.child=r,r=s,s=t.child,o=e.child.memoizedState,o=o===null?Zv(n):{baseLanes:o.baseLanes|n,cachePool:null,transitions:o.transitions},s.memoizedState=o,s.childLanes=e.childLanes&~n,t.memoizedState=Qv,r}return s=e.child,e=s.sibling,r=ki(s,{mode:"visible",children:r.children}),!(t.mode&1)&&(r.lanes=n),r.return=t,r.sibling=null,e!==null&&(n=t.deletions,n===null?(t.deletions=[e],t.flags|=16):n.push(e)),t.child=r,t.memoizedState=null,r}function $x(e,t){return t=Np({mode:"visible",children:t},e.mode,0,null),t.return=e,e.child=t}function $d(e,t,n,r){return r!==null&&kx(r),Wo(t,e.child,null,n),e=$x(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function SD(e,t,n,r,a,s,o){if(n)return t.flags&256?(t.flags&=-257,r=tg(Error(oe(422))),$d(e,t,o,r)):t.memoizedState!==null?(t.child=e.child,t.flags|=128,null):(s=r.fallback,a=t.mode,r=Np({mode:"visible",children:r.children},a,0,null),s=ks(s,a,o,null),s.flags|=2,r.return=t,s.return=t,r.sibling=s,t.child=r,t.mode&1&&Wo(t,e.child,null,o),t.child.memoizedState=Zv(o),t.memoizedState=Qv,s);if(!(t.mode&1))return $d(e,t,o,null);if(a.data==="$!"){if(r=a.nextSibling&&a.nextSibling.dataset,r)var l=r.dgst;return r=l,s=Error(oe(419)),r=tg(s,r,void 0),$d(e,t,o,r)}if(l=(o&e.childLanes)!==0,Bn||l){if(r=sn,r!==null){switch(o&-o){case 4:a=2;break;case 16:a=8;break;case 64: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:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:a=32;break;case 536870912:a=268435456;break;default:a=0}a=a&(r.suspendedLanes|o)?0:a,a!==0&&a!==s.retryLane&&(s.retryLane=a,Pa(e,a),Ur(r,e,a,-1))}return Ux(),r=tg(Error(oe(421))),$d(e,t,o,r)}return a.data==="$?"?(t.flags|=128,t.child=e.child,t=$D.bind(null,e),a._reactRetry=t,null):(e=s.treeContext,tr=yi(a.nextSibling),nr=t,jt=!0,Dr=null,e!==null&&(vr[yr++]=wa,vr[yr++]=ka,vr[yr++]=Ts,wa=e.id,ka=e.overflow,Ts=t),t=$x(t,r.children),t.flags|=4096,t)}function Ik(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),Gv(e.return,t,n)}function ng(e,t,n,r,a){var s=e.memoizedState;s===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:a}:(s.isBackwards=t,s.rendering=null,s.renderingStartTime=0,s.last=r,s.tail=n,s.tailMode=a)}function VC(e,t,n){var r=t.pendingProps,a=r.revealOrder,s=r.tail;if(Cn(e,t,r.children,n),r=_t.current,r&2)r=r&1|2,t.flags|=128;else{if(e!==null&&e.flags&128)e:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&Ik(e,n,t);else if(e.tag===19)Ik(e,n,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}r&=1}if(mt(_t,r),!(t.mode&1))t.memoizedState=null;else switch(a){case"forwards":for(n=t.child,a=null;n!==null;)e=n.alternate,e!==null&&Kf(e)===null&&(a=n),n=n.sibling;n=a,n===null?(a=t.child,t.child=null):(a=n.sibling,n.sibling=null),ng(t,!1,a,n,s);break;case"backwards":for(n=null,a=t.child,t.child=null;a!==null;){if(e=a.alternate,e!==null&&Kf(e)===null){t.child=a;break}e=a.sibling,a.sibling=n,n=a,a=e}ng(t,!0,n,null,s);break;case"together":ng(t,!1,null,null,void 0);break;default:t.memoizedState=null}return t.child}function jf(e,t){!(t.mode&1)&&e!==null&&(e.alternate=null,t.alternate=null,t.flags|=2)}function Ra(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),Ps|=t.lanes,!(n&t.childLanes))return null;if(e!==null&&t.child!==e.child)throw Error(oe(153));if(t.child!==null){for(e=t.child,n=ki(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=ki(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function jD(e,t,n){switch(t.tag){case 3:qC(t),Uo();break;case 5:xC(t);break;case 1:Un(t.type)&&Ff(t);break;case 4:Ax(t,t.stateNode.containerInfo);break;case 10:var r=t.type._context,a=t.memoizedProps.value;mt(Hf,r._currentValue),r._currentValue=a;break;case 13:if(r=t.memoizedState,r!==null)return r.dehydrated!==null?(mt(_t,_t.current&1),t.flags|=128,null):n&t.child.childLanes?KC(e,t,n):(mt(_t,_t.current&1),e=Ra(e,t,n),e!==null?e.sibling:null);mt(_t,_t.current&1);break;case 19:if(r=(n&t.childLanes)!==0,e.flags&128){if(r)return VC(e,t,n);t.flags|=128}if(a=t.memoizedState,a!==null&&(a.rendering=null,a.tail=null,a.lastEffect=null),mt(_t,_t.current),r)break;return null;case 22:case 23:return t.lanes=0,HC(e,t,n)}return Ra(e,t,n)}var YC,Jv,XC,QC;YC=function(e,t){for(var n=t.child;n!==null;){if(n.tag===5||n.tag===6)e.appendChild(n.stateNode);else if(n.tag!==4&&n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}};Jv=function(){};XC=function(e,t,n,r){var a=e.memoizedProps;if(a!==r){e=t.stateNode,ms(ca.current);var s=null;switch(n){case"input":a=wv(e,a),r=wv(e,r),s=[];break;case"select":a=Tt({},a,{value:void 0}),r=Tt({},r,{value:void 0}),s=[];break;case"textarea":a=jv(e,a),r=jv(e,r),s=[];break;default:typeof a.onClick!="function"&&typeof r.onClick=="function"&&(e.onclick=Bf)}Ev(n,r);var o;n=null;for(u in a)if(!r.hasOwnProperty(u)&&a.hasOwnProperty(u)&&a[u]!=null)if(u==="style"){var l=a[u];for(o in l)l.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else u!=="dangerouslySetInnerHTML"&&u!=="children"&&u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&u!=="autoFocus"&&(Bc.hasOwnProperty(u)?s||(s=[]):(s=s||[]).push(u,null));for(u in r){var c=r[u];if(l=a!=null?a[u]:void 0,r.hasOwnProperty(u)&&c!==l&&(c!=null||l!=null))if(u==="style")if(l){for(o in l)!l.hasOwnProperty(o)||c&&c.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in c)c.hasOwnProperty(o)&&l[o]!==c[o]&&(n||(n={}),n[o]=c[o])}else n||(s||(s=[]),s.push(u,n)),n=c;else u==="dangerouslySetInnerHTML"?(c=c?c.__html:void 0,l=l?l.__html:void 0,c!=null&&l!==c&&(s=s||[]).push(u,c)):u==="children"?typeof c!="string"&&typeof c!="number"||(s=s||[]).push(u,""+c):u!=="suppressContentEditableWarning"&&u!=="suppressHydrationWarning"&&(Bc.hasOwnProperty(u)?(c!=null&&u==="onScroll"&&bt("scroll",e),s||l===c||(s=[])):(s=s||[]).push(u,c))}n&&(s=s||[]).push("style",n);var u=s;(t.updateQueue=u)&&(t.flags|=4)}};QC=function(e,t,n,r){n!==r&&(t.flags|=4)};function Jl(e,t){if(!jt)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function gn(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var a=e.child;a!==null;)n|=a.lanes|a.childLanes,r|=a.subtreeFlags&14680064,r|=a.flags&14680064,a.return=e,a=a.sibling;else for(a=e.child;a!==null;)n|=a.lanes|a.childLanes,r|=a.subtreeFlags,r|=a.flags,a.return=e,a=a.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function ND(e,t,n){var r=t.pendingProps;switch(wx(t),t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return gn(t),null;case 1:return Un(t.type)&&zf(),gn(t),null;case 3:return r=t.stateNode,Ho(),St(Fn),St(jn),Tx(),r.pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),(e===null||e.child===null)&&(Md(t)?t.flags|=4:e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,Dr!==null&&(oy(Dr),Dr=null))),Jv(e,t),gn(t),null;case 5:Cx(t);var a=ms(Qc.current);if(n=t.type,e!==null&&t.stateNode!=null)XC(e,t,n,r,a),e.ref!==t.ref&&(t.flags|=512,t.flags|=2097152);else{if(!r){if(t.stateNode===null)throw Error(oe(166));return gn(t),null}if(e=ms(ca.current),Md(t)){r=t.stateNode,n=t.type;var s=t.memoizedProps;switch(r[aa]=t,r[Yc]=s,e=(t.mode&1)!==0,n){case"dialog":bt("cancel",r),bt("close",r);break;case"iframe":case"object":case"embed":bt("load",r);break;case"video":case"audio":for(a=0;a<yc.length;a++)bt(yc[a],r);break;case"source":bt("error",r);break;case"img":case"image":case"link":bt("error",r),bt("load",r);break;case"details":bt("toggle",r);break;case"input":H0(r,s),bt("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!s.multiple},bt("invalid",r);break;case"textarea":q0(r,s),bt("invalid",r)}Ev(n,s),a=null;for(var o in s)if(s.hasOwnProperty(o)){var l=s[o];o==="children"?typeof l=="string"?r.textContent!==l&&(s.suppressHydrationWarning!==!0&&Rd(r.textContent,l,e),a=["children",l]):typeof l=="number"&&r.textContent!==""+l&&(s.suppressHydrationWarning!==!0&&Rd(r.textContent,l,e),a=["children",""+l]):Bc.hasOwnProperty(o)&&l!=null&&o==="onScroll"&&bt("scroll",r)}switch(n){case"input":Nd(r),G0(r,s,!0);break;case"textarea":Nd(r),K0(r);break;case"select":case"option":break;default:typeof s.onClick=="function"&&(r.onclick=Bf)}r=a,t.updateQueue=r,r!==null&&(t.flags|=4)}else{o=a.nodeType===9?a:a.ownerDocument,e==="http://www.w3.org/1999/xhtml"&&(e=NA(n)),e==="http://www.w3.org/1999/xhtml"?n==="script"?(e=o.createElement("div"),e.innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=o.createElement(n,{is:r.is}):(e=o.createElement(n),n==="select"&&(o=e,r.multiple?o.multiple=!0:r.size&&(o.size=r.size))):e=o.createElementNS(e,n),e[aa]=t,e[Yc]=r,YC(e,t,!1,!1),t.stateNode=e;e:{switch(o=_v(n,r),n){case"dialog":bt("cancel",e),bt("close",e),a=r;break;case"iframe":case"object":case"embed":bt("load",e),a=r;break;case"video":case"audio":for(a=0;a<yc.length;a++)bt(yc[a],e);a=r;break;case"source":bt("error",e),a=r;break;case"img":case"image":case"link":bt("error",e),bt("load",e),a=r;break;case"details":bt("toggle",e),a=r;break;case"input":H0(e,r),a=wv(e,r),bt("invalid",e);break;case"option":a=r;break;case"select":e._wrapperState={wasMultiple:!!r.multiple},a=Tt({},r,{value:void 0}),bt("invalid",e);break;case"textarea":q0(e,r),a=jv(e,r),bt("invalid",e);break;default:a=r}Ev(n,a),l=a;for(s in l)if(l.hasOwnProperty(s)){var c=l[s];s==="style"?AA(e,c):s==="dangerouslySetInnerHTML"?(c=c?c.__html:void 0,c!=null&&EA(e,c)):s==="children"?typeof c=="string"?(n!=="textarea"||c!=="")&&zc(e,c):typeof c=="number"&&zc(e,""+c):s!=="suppressContentEditableWarning"&&s!=="suppressHydrationWarning"&&s!=="autoFocus"&&(Bc.hasOwnProperty(s)?c!=null&&s==="onScroll"&&bt("scroll",e):c!=null&&sx(e,s,c,o))}switch(n){case"input":Nd(e),G0(e,r,!1);break;case"textarea":Nd(e),K0(e);break;case"option":r.value!=null&&e.setAttribute("value",""+Ei(r.value));break;case"select":e.multiple=!!r.multiple,s=r.value,s!=null?Co(e,!!r.multiple,s,!1):r.defaultValue!=null&&Co(e,!!r.multiple,r.defaultValue,!0);break;default:typeof a.onClick=="function"&&(e.onclick=Bf)}switch(n){case"button":case"input":case"select":case"textarea":r=!!r.autoFocus;break e;case"img":r=!0;break e;default:r=!1}}r&&(t.flags|=4)}t.ref!==null&&(t.flags|=512,t.flags|=2097152)}return gn(t),null;case 6:if(e&&t.stateNode!=null)QC(e,t,e.memoizedProps,r);else{if(typeof r!="string"&&t.stateNode===null)throw Error(oe(166));if(n=ms(Qc.current),ms(ca.current),Md(t)){if(r=t.stateNode,n=t.memoizedProps,r[aa]=t,(s=r.nodeValue!==n)&&(e=nr,e!==null))switch(e.tag){case 3:Rd(r.nodeValue,n,(e.mode&1)!==0);break;case 5:e.memoizedProps.suppressHydrationWarning!==!0&&Rd(r.nodeValue,n,(e.mode&1)!==0)}s&&(t.flags|=4)}else r=(n.nodeType===9?n:n.ownerDocument).createTextNode(r),r[aa]=t,t.stateNode=r}return gn(t),null;case 13:if(St(_t),r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(jt&&tr!==null&&t.mode&1&&!(t.flags&128))mC(),Uo(),t.flags|=98560,s=!1;else if(s=Md(t),r!==null&&r.dehydrated!==null){if(e===null){if(!s)throw Error(oe(318));if(s=t.memoizedState,s=s!==null?s.dehydrated:null,!s)throw Error(oe(317));s[aa]=t}else Uo(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;gn(t),s=!1}else Dr!==null&&(oy(Dr),Dr=null),s=!0;if(!s)return t.flags&65536?t:null}return t.flags&128?(t.lanes=n,t):(r=r!==null,r!==(e!==null&&e.memoizedState!==null)&&r&&(t.child.flags|=8192,t.mode&1&&(e===null||_t.current&1?Qt===0&&(Qt=3):Ux())),t.updateQueue!==null&&(t.flags|=4),gn(t),null);case 4:return Ho(),Jv(e,t),e===null&&Kc(t.stateNode.containerInfo),gn(t),null;case 10:return Nx(t.type._context),gn(t),null;case 17:return Un(t.type)&&zf(),gn(t),null;case 19:if(St(_t),s=t.memoizedState,s===null)return gn(t),null;if(r=(t.flags&128)!==0,o=s.rendering,o===null)if(r)Jl(s,!1);else{if(Qt!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(o=Kf(e),o!==null){for(t.flags|=128,Jl(s,!1),r=o.updateQueue,r!==null&&(t.updateQueue=r,t.flags|=4),t.subtreeFlags=0,r=n,n=t.child;n!==null;)s=n,e=r,s.flags&=14680066,o=s.alternate,o===null?(s.childLanes=0,s.lanes=e,s.child=null,s.subtreeFlags=0,s.memoizedProps=null,s.memoizedState=null,s.updateQueue=null,s.dependencies=null,s.stateNode=null):(s.childLanes=o.childLanes,s.lanes=o.lanes,s.child=o.child,s.subtreeFlags=0,s.deletions=null,s.memoizedProps=o.memoizedProps,s.memoizedState=o.memoizedState,s.updateQueue=o.updateQueue,s.type=o.type,e=o.dependencies,s.dependencies=e===null?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return mt(_t,_t.current&1|2),t.child}e=e.sibling}s.tail!==null&&$t()>qo&&(t.flags|=128,r=!0,Jl(s,!1),t.lanes=4194304)}else{if(!r)if(e=Kf(o),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Jl(s,!0),s.tail===null&&s.tailMode==="hidden"&&!o.alternate&&!jt)return gn(t),null}else 2*$t()-s.renderingStartTime>qo&&n!==1073741824&&(t.flags|=128,r=!0,Jl(s,!1),t.lanes=4194304);s.isBackwards?(o.sibling=t.child,t.child=o):(n=s.last,n!==null?n.sibling=o:t.child=o,s.last=o)}return s.tail!==null?(t=s.tail,s.rendering=t,s.tail=t.sibling,s.renderingStartTime=$t(),t.sibling=null,n=_t.current,mt(_t,r?n&1|2:n&1),t):(gn(t),null);case 22:case 23:return Fx(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?Zn&1073741824&&(gn(t),t.subtreeFlags&6&&(t.flags|=8192)):gn(t),null;case 24:return null;case 25:return null}throw Error(oe(156,t.tag))}function ED(e,t){switch(wx(t),t.tag){case 1:return Un(t.type)&&zf(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Ho(),St(Fn),St(jn),Tx(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return Cx(t),null;case 13:if(St(_t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(oe(340));Uo()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return St(_t),null;case 4:return Ho(),null;case 10:return Nx(t.type._context),null;case 22:case 23:return Fx(),null;case 24:return null;default:return null}}var Ld=!1,xn=!1,_D=typeof WeakSet=="function"?WeakSet:Set,ve=null;function So(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){Ot(e,t,r)}else n.current=null}function ey(e,t,n){try{n()}catch(r){Ot(e,t,r)}}var $k=!1;function AD(e,t){if(Lv=$f,e=nC(),bx(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var a=r.anchorOffset,s=r.focusNode;r=r.focusOffset;try{n.nodeType,s.nodeType}catch{n=null;break e}var o=0,l=-1,c=-1,u=0,d=0,f=e,h=null;t:for(;;){for(var p;f!==n||a!==0&&f.nodeType!==3||(l=o+a),f!==s||r!==0&&f.nodeType!==3||(c=o+r),f.nodeType===3&&(o+=f.nodeValue.length),(p=f.firstChild)!==null;)h=f,f=p;for(;;){if(f===e)break t;if(h===n&&++u===a&&(l=o),h===s&&++d===r&&(c=o),(p=f.nextSibling)!==null)break;f=h,h=f.parentNode}f=p}n=l===-1||c===-1?null:{start:l,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(Dv={focusedElem:e,selectionRange:n},$f=!1,ve=t;ve!==null;)if(t=ve,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,ve=e;else for(;ve!==null;){t=ve;try{var g=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(g!==null){var m=g.memoizedProps,y=g.memoizedState,v=t.stateNode,S=v.getSnapshotBeforeUpdate(t.elementType===t.type?m:Ir(t.type,m),y);v.__reactInternalSnapshotBeforeUpdate=S}break;case 3:var w=t.stateNode.containerInfo;w.nodeType===1?w.textContent="":w.nodeType===9&&w.documentElement&&w.removeChild(w.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(oe(163))}}catch(j){Ot(t,t.return,j)}if(e=t.sibling,e!==null){e.return=t.return,ve=e;break}ve=t.return}return g=$k,$k=!1,g}function Ac(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var a=r=r.next;do{if((a.tag&e)===e){var s=a.destroy;a.destroy=void 0,s!==void 0&&ey(t,n,s)}a=a.next}while(a!==r)}}function Sp(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function ty(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function ZC(e){var t=e.alternate;t!==null&&(e.alternate=null,ZC(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[aa],delete t[Yc],delete t[Fv],delete t[uD],delete t[dD])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function JC(e){return e.tag===5||e.tag===3||e.tag===4}function Lk(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||JC(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.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 ny(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=Bf));else if(r!==4&&(e=e.child,e!==null))for(ny(e,t,n),e=e.sibling;e!==null;)ny(e,t,n),e=e.sibling}function ry(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(ry(e,t,n),e=e.sibling;e!==null;)ry(e,t,n),e=e.sibling}var cn=null,$r=!1;function Qa(e,t,n){for(n=n.child;n!==null;)eT(e,t,n),n=n.sibling}function eT(e,t,n){if(la&&typeof la.onCommitFiberUnmount=="function")try{la.onCommitFiberUnmount(mp,n)}catch{}switch(n.tag){case 5:xn||So(n,t);case 6:var r=cn,a=$r;cn=null,Qa(e,t,n),cn=r,$r=a,cn!==null&&($r?(e=cn,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):cn.removeChild(n.stateNode));break;case 18:cn!==null&&($r?(e=cn,n=n.stateNode,e.nodeType===8?Ym(e.parentNode,n):e.nodeType===1&&Ym(e,n),Hc(e)):Ym(cn,n.stateNode));break;case 4:r=cn,a=$r,cn=n.stateNode.containerInfo,$r=!0,Qa(e,t,n),cn=r,$r=a;break;case 0:case 11:case 14:case 15:if(!xn&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){a=r=r.next;do{var s=a,o=s.destroy;s=s.tag,o!==void 0&&(s&2||s&4)&&ey(n,t,o),a=a.next}while(a!==r)}Qa(e,t,n);break;case 1:if(!xn&&(So(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(l){Ot(n,t,l)}Qa(e,t,n);break;case 21:Qa(e,t,n);break;case 22:n.mode&1?(xn=(r=xn)||n.memoizedState!==null,Qa(e,t,n),xn=r):Qa(e,t,n);break;default:Qa(e,t,n)}}function Dk(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new _D),t.forEach(function(r){var a=LD.bind(null,e,r);n.has(r)||(n.add(r),r.then(a,a))})}}function Rr(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var a=n[r];try{var s=e,o=t,l=o;e:for(;l!==null;){switch(l.tag){case 5:cn=l.stateNode,$r=!1;break e;case 3:cn=l.stateNode.containerInfo,$r=!0;break e;case 4:cn=l.stateNode.containerInfo,$r=!0;break e}l=l.return}if(cn===null)throw Error(oe(160));eT(s,o,a),cn=null,$r=!1;var c=a.alternate;c!==null&&(c.return=null),a.return=null}catch(u){Ot(a,t,u)}}if(t.subtreeFlags&12854)for(t=t.child;t!==null;)tT(t,e),t=t.sibling}function tT(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:if(Rr(t,e),ea(e),r&4){try{Ac(3,e,e.return),Sp(3,e)}catch(m){Ot(e,e.return,m)}try{Ac(5,e,e.return)}catch(m){Ot(e,e.return,m)}}break;case 1:Rr(t,e),ea(e),r&512&&n!==null&&So(n,n.return);break;case 5:if(Rr(t,e),ea(e),r&512&&n!==null&&So(n,n.return),e.flags&32){var a=e.stateNode;try{zc(a,"")}catch(m){Ot(e,e.return,m)}}if(r&4&&(a=e.stateNode,a!=null)){var s=e.memoizedProps,o=n!==null?n.memoizedProps:s,l=e.type,c=e.updateQueue;if(e.updateQueue=null,c!==null)try{l==="input"&&s.type==="radio"&&s.name!=null&&SA(a,s),_v(l,o);var u=_v(l,s);for(o=0;o<c.length;o+=2){var d=c[o],f=c[o+1];d==="style"?AA(a,f):d==="dangerouslySetInnerHTML"?EA(a,f):d==="children"?zc(a,f):sx(a,d,f,u)}switch(l){case"input":kv(a,s);break;case"textarea":jA(a,s);break;case"select":var h=a._wrapperState.wasMultiple;a._wrapperState.wasMultiple=!!s.multiple;var p=s.value;p!=null?Co(a,!!s.multiple,p,!1):h!==!!s.multiple&&(s.defaultValue!=null?Co(a,!!s.multiple,s.defaultValue,!0):Co(a,!!s.multiple,s.multiple?[]:"",!1))}a[Yc]=s}catch(m){Ot(e,e.return,m)}}break;case 6:if(Rr(t,e),ea(e),r&4){if(e.stateNode===null)throw Error(oe(162));a=e.stateNode,s=e.memoizedProps;try{a.nodeValue=s}catch(m){Ot(e,e.return,m)}}break;case 3:if(Rr(t,e),ea(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Hc(t.containerInfo)}catch(m){Ot(e,e.return,m)}break;case 4:Rr(t,e),ea(e);break;case 13:Rr(t,e),ea(e),a=e.child,a.flags&8192&&(s=a.memoizedState!==null,a.stateNode.isHidden=s,!s||a.alternate!==null&&a.alternate.memoizedState!==null||(Bx=$t())),r&4&&Dk(e);break;case 22:if(d=n!==null&&n.memoizedState!==null,e.mode&1?(xn=(u=xn)||d,Rr(t,e),xn=u):Rr(t,e),ea(e),r&8192){if(u=e.memoizedState!==null,(e.stateNode.isHidden=u)&&!d&&e.mode&1)for(ve=e,d=e.child;d!==null;){for(f=ve=d;ve!==null;){switch(h=ve,p=h.child,h.tag){case 0:case 11:case 14:case 15:Ac(4,h,h.return);break;case 1:So(h,h.return);var g=h.stateNode;if(typeof g.componentWillUnmount=="function"){r=h,n=h.return;try{t=r,g.props=t.memoizedProps,g.state=t.memoizedState,g.componentWillUnmount()}catch(m){Ot(r,n,m)}}break;case 5:So(h,h.return);break;case 22:if(h.memoizedState!==null){zk(f);continue}}p!==null?(p.return=h,ve=p):zk(f)}d=d.sibling}e:for(d=null,f=e;;){if(f.tag===5){if(d===null){d=f;try{a=f.stateNode,u?(s=a.style,typeof s.setProperty=="function"?s.setProperty("display","none","important"):s.display="none"):(l=f.stateNode,c=f.memoizedProps.style,o=c!=null&&c.hasOwnProperty("display")?c.display:null,l.style.display=_A("display",o))}catch(m){Ot(e,e.return,m)}}}else if(f.tag===6){if(d===null)try{f.stateNode.nodeValue=u?"":f.memoizedProps}catch(m){Ot(e,e.return,m)}}else if((f.tag!==22&&f.tag!==23||f.memoizedState===null||f===e)&&f.child!==null){f.child.return=f,f=f.child;continue}if(f===e)break e;for(;f.sibling===null;){if(f.return===null||f.return===e)break e;d===f&&(d=null),f=f.return}d===f&&(d=null),f.sibling.return=f.return,f=f.sibling}}break;case 19:Rr(t,e),ea(e),r&4&&Dk(e);break;case 21:break;default:Rr(t,e),ea(e)}}function ea(e){var t=e.flags;if(t&2){try{e:{for(var n=e.return;n!==null;){if(JC(n)){var r=n;break e}n=n.return}throw Error(oe(160))}switch(r.tag){case 5:var a=r.stateNode;r.flags&32&&(zc(a,""),r.flags&=-33);var s=Lk(e);ry(e,s,a);break;case 3:case 4:var o=r.stateNode.containerInfo,l=Lk(e);ny(e,l,o);break;default:throw Error(oe(161))}}catch(c){Ot(e,e.return,c)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function CD(e,t,n){ve=e,nT(e)}function nT(e,t,n){for(var r=(e.mode&1)!==0;ve!==null;){var a=ve,s=a.child;if(a.tag===22&&r){var o=a.memoizedState!==null||Ld;if(!o){var l=a.alternate,c=l!==null&&l.memoizedState!==null||xn;l=Ld;var u=xn;if(Ld=o,(xn=c)&&!u)for(ve=a;ve!==null;)o=ve,c=o.child,o.tag===22&&o.memoizedState!==null?Fk(a):c!==null?(c.return=o,ve=c):Fk(a);for(;s!==null;)ve=s,nT(s),s=s.sibling;ve=a,Ld=l,xn=u}Bk(e)}else a.subtreeFlags&8772&&s!==null?(s.return=a,ve=s):Bk(e)}}function Bk(e){for(;ve!==null;){var t=ve;if(t.flags&8772){var n=t.alternate;try{if(t.flags&8772)switch(t.tag){case 0:case 11:case 15:xn||Sp(5,t);break;case 1:var r=t.stateNode;if(t.flags&4&&!xn)if(n===null)r.componentDidMount();else{var a=t.elementType===t.type?n.memoizedProps:Ir(t.type,n.memoizedProps);r.componentDidUpdate(a,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var s=t.updateQueue;s!==null&&Sk(t,s,r);break;case 3:var o=t.updateQueue;if(o!==null){if(n=null,t.child!==null)switch(t.child.tag){case 5:n=t.child.stateNode;break;case 1:n=t.child.stateNode}Sk(t,o,n)}break;case 5:var l=t.stateNode;if(n===null&&t.flags&4){n=l;var c=t.memoizedProps;switch(t.type){case"button":case"input":case"select":case"textarea":c.autoFocus&&n.focus();break;case"img":c.src&&(n.src=c.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(t.memoizedState===null){var u=t.alternate;if(u!==null){var d=u.memoizedState;if(d!==null){var f=d.dehydrated;f!==null&&Hc(f)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(oe(163))}xn||t.flags&512&&ty(t)}catch(h){Ot(t,t.return,h)}}if(t===e){ve=null;break}if(n=t.sibling,n!==null){n.return=t.return,ve=n;break}ve=t.return}}function zk(e){for(;ve!==null;){var t=ve;if(t===e){ve=null;break}var n=t.sibling;if(n!==null){n.return=t.return,ve=n;break}ve=t.return}}function Fk(e){for(;ve!==null;){var t=ve;try{switch(t.tag){case 0:case 11:case 15:var n=t.return;try{Sp(4,t)}catch(c){Ot(t,n,c)}break;case 1:var r=t.stateNode;if(typeof r.componentDidMount=="function"){var a=t.return;try{r.componentDidMount()}catch(c){Ot(t,a,c)}}var s=t.return;try{ty(t)}catch(c){Ot(t,s,c)}break;case 5:var o=t.return;try{ty(t)}catch(c){Ot(t,o,c)}}}catch(c){Ot(t,t.return,c)}if(t===e){ve=null;break}var l=t.sibling;if(l!==null){l.return=t.return,ve=l;break}ve=t.return}}var TD=Math.ceil,Xf=La.ReactCurrentDispatcher,Lx=La.ReactCurrentOwner,kr=La.ReactCurrentBatchConfig,Ge=0,sn=null,Ht=null,dn=0,Zn=0,jo=Ti(0),Qt=0,tu=null,Ps=0,jp=0,Dx=0,Cc=null,Dn=null,Bx=0,qo=1/0,ba=null,Qf=!1,ay=null,xi=null,Dd=!1,ui=null,Zf=0,Tc=0,iy=null,Nf=-1,Ef=0;function Pn(){return Ge&6?$t():Nf!==-1?Nf:Nf=$t()}function wi(e){return e.mode&1?Ge&2&&dn!==0?dn&-dn:hD.transition!==null?(Ef===0&&(Ef=zA()),Ef):(e=it,e!==0||(e=window.event,e=e===void 0?16:KA(e.type)),e):1}function Ur(e,t,n,r){if(50<Tc)throw Tc=0,iy=null,Error(oe(185));qu(e,n,r),(!(Ge&2)||e!==sn)&&(e===sn&&(!(Ge&2)&&(jp|=n),Qt===4&&ii(e,dn)),Wn(e,r),n===1&&Ge===0&&!(t.mode&1)&&(qo=$t()+500,xp&&Oi()))}function Wn(e,t){var n=e.callbackNode;hL(e,t);var r=If(e,e===sn?dn:0);if(r===0)n!==null&&X0(n),e.callbackNode=null,e.callbackPriority=0;else if(t=r&-r,e.callbackPriority!==t){if(n!=null&&X0(n),t===1)e.tag===0?fD(Uk.bind(null,e)):fC(Uk.bind(null,e)),lD(function(){!(Ge&6)&&Oi()}),n=null;else{switch(FA(r)){case 1:n=dx;break;case 4:n=DA;break;case 16:n=Mf;break;case 536870912:n=BA;break;default:n=Mf}n=uT(n,rT.bind(null,e))}e.callbackPriority=t,e.callbackNode=n}}function rT(e,t){if(Nf=-1,Ef=0,Ge&6)throw Error(oe(327));var n=e.callbackNode;if(Mo()&&e.callbackNode!==n)return null;var r=If(e,e===sn?dn:0);if(r===0)return null;if(r&30||r&e.expiredLanes||t)t=Jf(e,r);else{t=r;var a=Ge;Ge|=2;var s=iT();(sn!==e||dn!==t)&&(ba=null,qo=$t()+500,ws(e,t));do try{RD();break}catch(l){aT(e,l)}while(!0);jx(),Xf.current=s,Ge=a,Ht!==null?t=0:(sn=null,dn=0,t=Qt)}if(t!==0){if(t===2&&(a=Pv(e),a!==0&&(r=a,t=sy(e,a))),t===1)throw n=tu,ws(e,0),ii(e,r),Wn(e,$t()),n;if(t===6)ii(e,r);else{if(a=e.current.alternate,!(r&30)&&!OD(a)&&(t=Jf(e,r),t===2&&(s=Pv(e),s!==0&&(r=s,t=sy(e,s))),t===1))throw n=tu,ws(e,0),ii(e,r),Wn(e,$t()),n;switch(e.finishedWork=a,e.finishedLanes=r,t){case 0:case 1:throw Error(oe(345));case 2:is(e,Dn,ba);break;case 3:if(ii(e,r),(r&130023424)===r&&(t=Bx+500-$t(),10<t)){if(If(e,0)!==0)break;if(a=e.suspendedLanes,(a&r)!==r){Pn(),e.pingedLanes|=e.suspendedLanes&a;break}e.timeoutHandle=zv(is.bind(null,e,Dn,ba),t);break}is(e,Dn,ba);break;case 4:if(ii(e,r),(r&4194240)===r)break;for(t=e.eventTimes,a=-1;0<r;){var o=31-Fr(r);s=1<<o,o=t[o],o>a&&(a=o),r&=~s}if(r=a,r=$t()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*TD(r/1960))-r,10<r){e.timeoutHandle=zv(is.bind(null,e,Dn,ba),r);break}is(e,Dn,ba);break;case 5:is(e,Dn,ba);break;default:throw Error(oe(329))}}}return Wn(e,$t()),e.callbackNode===n?rT.bind(null,e):null}function sy(e,t){var n=Cc;return e.current.memoizedState.isDehydrated&&(ws(e,t).flags|=256),e=Jf(e,t),e!==2&&(t=Dn,Dn=n,t!==null&&oy(t)),e}function oy(e){Dn===null?Dn=e:Dn.push.apply(Dn,e)}function OD(e){for(var t=e;;){if(t.flags&16384){var n=t.updateQueue;if(n!==null&&(n=n.stores,n!==null))for(var r=0;r<n.length;r++){var a=n[r],s=a.getSnapshot;a=a.value;try{if(!qr(s(),a))return!1}catch{return!1}}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;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 ii(e,t){for(t&=~Dx,t&=~jp,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Fr(t),r=1<<n;e[n]=-1,t&=~r}}function Uk(e){if(Ge&6)throw Error(oe(327));Mo();var t=If(e,0);if(!(t&1))return Wn(e,$t()),null;var n=Jf(e,t);if(e.tag!==0&&n===2){var r=Pv(e);r!==0&&(t=r,n=sy(e,r))}if(n===1)throw n=tu,ws(e,0),ii(e,t),Wn(e,$t()),n;if(n===6)throw Error(oe(345));return e.finishedWork=e.current.alternate,e.finishedLanes=t,is(e,Dn,ba),Wn(e,$t()),null}function zx(e,t){var n=Ge;Ge|=1;try{return e(t)}finally{Ge=n,Ge===0&&(qo=$t()+500,xp&&Oi())}}function Rs(e){ui!==null&&ui.tag===0&&!(Ge&6)&&Mo();var t=Ge;Ge|=1;var n=kr.transition,r=it;try{if(kr.transition=null,it=1,e)return e()}finally{it=r,kr.transition=n,Ge=t,!(Ge&6)&&Oi()}}function Fx(){Zn=jo.current,St(jo)}function ws(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(n!==-1&&(e.timeoutHandle=-1,oD(n)),Ht!==null)for(n=Ht.return;n!==null;){var r=n;switch(wx(r),r.tag){case 1:r=r.type.childContextTypes,r!=null&&zf();break;case 3:Ho(),St(Fn),St(jn),Tx();break;case 5:Cx(r);break;case 4:Ho();break;case 13:St(_t);break;case 19:St(_t);break;case 10:Nx(r.type._context);break;case 22:case 23:Fx()}n=n.return}if(sn=e,Ht=e=ki(e.current,null),dn=Zn=t,Qt=0,tu=null,Dx=jp=Ps=0,Dn=Cc=null,ps!==null){for(t=0;t<ps.length;t++)if(n=ps[t],r=n.interleaved,r!==null){n.interleaved=null;var a=r.next,s=n.pending;if(s!==null){var o=s.next;s.next=a,r.next=o}n.pending=r}ps=null}return e}function aT(e,t){do{var n=Ht;try{if(jx(),kf.current=Yf,Vf){for(var r=At.memoizedState;r!==null;){var a=r.queue;a!==null&&(a.pending=null),r=r.next}Vf=!1}if(Os=0,nn=Xt=At=null,_c=!1,Zc=0,Lx.current=null,n===null||n.return===null){Qt=1,tu=t,Ht=null;break}e:{var s=e,o=n.return,l=n,c=t;if(t=dn,l.flags|=32768,c!==null&&typeof c=="object"&&typeof c.then=="function"){var u=c,d=l,f=d.tag;if(!(d.mode&1)&&(f===0||f===11||f===15)){var h=d.alternate;h?(d.updateQueue=h.updateQueue,d.memoizedState=h.memoizedState,d.lanes=h.lanes):(d.updateQueue=null,d.memoizedState=null)}var p=Ck(o);if(p!==null){p.flags&=-257,Tk(p,o,l,s,t),p.mode&1&&Ak(s,u,t),t=p,c=u;var g=t.updateQueue;if(g===null){var m=new Set;m.add(c),t.updateQueue=m}else g.add(c);break e}else{if(!(t&1)){Ak(s,u,t),Ux();break e}c=Error(oe(426))}}else if(jt&&l.mode&1){var y=Ck(o);if(y!==null){!(y.flags&65536)&&(y.flags|=256),Tk(y,o,l,s,t),kx(Go(c,l));break e}}s=c=Go(c,l),Qt!==4&&(Qt=2),Cc===null?Cc=[s]:Cc.push(s),s=o;do{switch(s.tag){case 3:s.flags|=65536,t&=-t,s.lanes|=t;var v=FC(s,c,t);kk(s,v);break e;case 1:l=c;var S=s.type,w=s.stateNode;if(!(s.flags&128)&&(typeof S.getDerivedStateFromError=="function"||w!==null&&typeof w.componentDidCatch=="function"&&(xi===null||!xi.has(w)))){s.flags|=65536,t&=-t,s.lanes|=t;var j=UC(s,l,t);kk(s,j);break e}}s=s.return}while(s!==null)}oT(n)}catch(k){t=k,Ht===n&&n!==null&&(Ht=n=n.return);continue}break}while(!0)}function iT(){var e=Xf.current;return Xf.current=Yf,e===null?Yf:e}function Ux(){(Qt===0||Qt===3||Qt===2)&&(Qt=4),sn===null||!(Ps&268435455)&&!(jp&268435455)||ii(sn,dn)}function Jf(e,t){var n=Ge;Ge|=2;var r=iT();(sn!==e||dn!==t)&&(ba=null,ws(e,t));do try{PD();break}catch(a){aT(e,a)}while(!0);if(jx(),Ge=n,Xf.current=r,Ht!==null)throw Error(oe(261));return sn=null,dn=0,Qt}function PD(){for(;Ht!==null;)sT(Ht)}function RD(){for(;Ht!==null&&!aL();)sT(Ht)}function sT(e){var t=cT(e.alternate,e,Zn);e.memoizedProps=e.pendingProps,t===null?oT(e):Ht=t,Lx.current=null}function oT(e){var t=e;do{var n=t.alternate;if(e=t.return,t.flags&32768){if(n=ED(n,t),n!==null){n.flags&=32767,Ht=n;return}if(e!==null)e.flags|=32768,e.subtreeFlags=0,e.deletions=null;else{Qt=6,Ht=null;return}}else if(n=ND(n,t,Zn),n!==null){Ht=n;return}if(t=t.sibling,t!==null){Ht=t;return}Ht=t=e}while(t!==null);Qt===0&&(Qt=5)}function is(e,t,n){var r=it,a=kr.transition;try{kr.transition=null,it=1,MD(e,t,n,r)}finally{kr.transition=a,it=r}return null}function MD(e,t,n,r){do Mo();while(ui!==null);if(Ge&6)throw Error(oe(327));n=e.finishedWork;var a=e.finishedLanes;if(n===null)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(oe(177));e.callbackNode=null,e.callbackPriority=0;var s=n.lanes|n.childLanes;if(pL(e,s),e===sn&&(Ht=sn=null,dn=0),!(n.subtreeFlags&2064)&&!(n.flags&2064)||Dd||(Dd=!0,uT(Mf,function(){return Mo(),null})),s=(n.flags&15990)!==0,n.subtreeFlags&15990||s){s=kr.transition,kr.transition=null;var o=it;it=1;var l=Ge;Ge|=4,Lx.current=null,AD(e,n),tT(n,e),eD(Dv),$f=!!Lv,Dv=Lv=null,e.current=n,CD(n),iL(),Ge=l,it=o,kr.transition=s}else e.current=n;if(Dd&&(Dd=!1,ui=e,Zf=a),s=e.pendingLanes,s===0&&(xi=null),lL(n.stateNode),Wn(e,$t()),t!==null)for(r=e.onRecoverableError,n=0;n<t.length;n++)a=t[n],r(a.value,{componentStack:a.stack,digest:a.digest});if(Qf)throw Qf=!1,e=ay,ay=null,e;return Zf&1&&e.tag!==0&&Mo(),s=e.pendingLanes,s&1?e===iy?Tc++:(Tc=0,iy=e):Tc=0,Oi(),null}function Mo(){if(ui!==null){var e=FA(Zf),t=kr.transition,n=it;try{if(kr.transition=null,it=16>e?16:e,ui===null)var r=!1;else{if(e=ui,ui=null,Zf=0,Ge&6)throw Error(oe(331));var a=Ge;for(Ge|=4,ve=e.current;ve!==null;){var s=ve,o=s.child;if(ve.flags&16){var l=s.deletions;if(l!==null){for(var c=0;c<l.length;c++){var u=l[c];for(ve=u;ve!==null;){var d=ve;switch(d.tag){case 0:case 11:case 15:Ac(8,d,s)}var f=d.child;if(f!==null)f.return=d,ve=f;else for(;ve!==null;){d=ve;var h=d.sibling,p=d.return;if(ZC(d),d===u){ve=null;break}if(h!==null){h.return=p,ve=h;break}ve=p}}}var g=s.alternate;if(g!==null){var m=g.child;if(m!==null){g.child=null;do{var y=m.sibling;m.sibling=null,m=y}while(m!==null)}}ve=s}}if(s.subtreeFlags&2064&&o!==null)o.return=s,ve=o;else e:for(;ve!==null;){if(s=ve,s.flags&2048)switch(s.tag){case 0:case 11:case 15:Ac(9,s,s.return)}var v=s.sibling;if(v!==null){v.return=s.return,ve=v;break e}ve=s.return}}var S=e.current;for(ve=S;ve!==null;){o=ve;var w=o.child;if(o.subtreeFlags&2064&&w!==null)w.return=o,ve=w;else e:for(o=S;ve!==null;){if(l=ve,l.flags&2048)try{switch(l.tag){case 0:case 11:case 15:Sp(9,l)}}catch(k){Ot(l,l.return,k)}if(l===o){ve=null;break e}var j=l.sibling;if(j!==null){j.return=l.return,ve=j;break e}ve=l.return}}if(Ge=a,Oi(),la&&typeof la.onPostCommitFiberRoot=="function")try{la.onPostCommitFiberRoot(mp,e)}catch{}r=!0}return r}finally{it=n,kr.transition=t}}return!1}function Wk(e,t,n){t=Go(n,t),t=FC(e,t,1),e=bi(e,t,1),t=Pn(),e!==null&&(qu(e,1,t),Wn(e,t))}function Ot(e,t,n){if(e.tag===3)Wk(e,e,n);else for(;t!==null;){if(t.tag===3){Wk(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError=="function"||typeof r.componentDidCatch=="function"&&(xi===null||!xi.has(r))){e=Go(n,e),e=UC(t,e,1),t=bi(t,e,1),e=Pn(),t!==null&&(qu(t,1,e),Wn(t,e));break}}t=t.return}}function ID(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),t=Pn(),e.pingedLanes|=e.suspendedLanes&n,sn===e&&(dn&n)===n&&(Qt===4||Qt===3&&(dn&130023424)===dn&&500>$t()-Bx?ws(e,0):Dx|=n),Wn(e,t)}function lT(e,t){t===0&&(e.mode&1?(t=Ad,Ad<<=1,!(Ad&130023424)&&(Ad=4194304)):t=1);var n=Pn();e=Pa(e,t),e!==null&&(qu(e,t,n),Wn(e,n))}function $D(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),lT(e,n)}function LD(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,a=e.memoizedState;a!==null&&(n=a.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(oe(314))}r!==null&&r.delete(t),lT(e,n)}var cT;cT=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||Fn.current)Bn=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return Bn=!1,jD(e,t,n);Bn=!!(e.flags&131072)}else Bn=!1,jt&&t.flags&1048576&&hC(t,Wf,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;jf(e,t),e=t.pendingProps;var a=Fo(t,jn.current);Ro(t,n),a=Px(null,t,r,e,a,n);var s=Rx();return t.flags|=1,typeof a=="object"&&a!==null&&typeof a.render=="function"&&a.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,Un(r)?(s=!0,Ff(t)):s=!1,t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,_x(t),a.updater=kp,t.stateNode=a,a._reactInternals=t,Kv(t,r,e,n),t=Xv(null,t,r,!0,s,n)):(t.tag=0,jt&&s&&xx(t),Cn(null,t,a,n),t=t.child),t;case 16:r=t.elementType;e:{switch(jf(e,t),e=t.pendingProps,a=r._init,r=a(r._payload),t.type=r,a=t.tag=BD(r),e=Ir(r,e),a){case 0:t=Yv(null,t,r,e,n);break e;case 1:t=Rk(null,t,r,e,n);break e;case 11:t=Ok(null,t,r,e,n);break e;case 14:t=Pk(null,t,r,Ir(r.type,e),n);break e}throw Error(oe(306,r,""))}return t;case 0:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Ir(r,a),Yv(e,t,r,a,n);case 1:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Ir(r,a),Rk(e,t,r,a,n);case 3:e:{if(qC(t),e===null)throw Error(oe(387));r=t.pendingProps,s=t.memoizedState,a=s.element,bC(e,t),qf(t,r,null,n);var o=t.memoizedState;if(r=o.element,s.isDehydrated)if(s={element:r,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},t.updateQueue.baseState=s,t.memoizedState=s,t.flags&256){a=Go(Error(oe(423)),t),t=Mk(e,t,r,n,a);break e}else if(r!==a){a=Go(Error(oe(424)),t),t=Mk(e,t,r,n,a);break e}else for(tr=yi(t.stateNode.containerInfo.firstChild),nr=t,jt=!0,Dr=null,n=vC(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Uo(),r===a){t=Ra(e,t,n);break e}Cn(e,t,r,n)}t=t.child}return t;case 5:return xC(t),e===null&&Hv(t),r=t.type,a=t.pendingProps,s=e!==null?e.memoizedProps:null,o=a.children,Bv(r,a)?o=null:s!==null&&Bv(r,s)&&(t.flags|=32),GC(e,t),Cn(e,t,o,n),t.child;case 6:return e===null&&Hv(t),null;case 13:return KC(e,t,n);case 4:return Ax(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Wo(t,null,r,n):Cn(e,t,r,n),t.child;case 11:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Ir(r,a),Ok(e,t,r,a,n);case 7:return Cn(e,t,t.pendingProps,n),t.child;case 8:return Cn(e,t,t.pendingProps.children,n),t.child;case 12:return Cn(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,a=t.pendingProps,s=t.memoizedProps,o=a.value,mt(Hf,r._currentValue),r._currentValue=o,s!==null)if(qr(s.value,o)){if(s.children===a.children&&!Fn.current){t=Ra(e,t,n);break e}}else for(s=t.child,s!==null&&(s.return=t);s!==null;){var l=s.dependencies;if(l!==null){o=s.child;for(var c=l.firstContext;c!==null;){if(c.context===r){if(s.tag===1){c=Ea(-1,n&-n),c.tag=2;var u=s.updateQueue;if(u!==null){u=u.shared;var d=u.pending;d===null?c.next=c:(c.next=d.next,d.next=c),u.pending=c}}s.lanes|=n,c=s.alternate,c!==null&&(c.lanes|=n),Gv(s.return,n,t),l.lanes|=n;break}c=c.next}}else if(s.tag===10)o=s.type===t.type?null:s.child;else if(s.tag===18){if(o=s.return,o===null)throw Error(oe(341));o.lanes|=n,l=o.alternate,l!==null&&(l.lanes|=n),Gv(o,n,t),o=s.sibling}else o=s.child;if(o!==null)o.return=s;else for(o=s;o!==null;){if(o===t){o=null;break}if(s=o.sibling,s!==null){s.return=o.return,o=s;break}o=o.return}s=o}Cn(e,t,a.children,n),t=t.child}return t;case 9:return a=t.type,r=t.pendingProps.children,Ro(t,n),a=jr(a),r=r(a),t.flags|=1,Cn(e,t,r,n),t.child;case 14:return r=t.type,a=Ir(r,t.pendingProps),a=Ir(r.type,a),Pk(e,t,r,a,n);case 15:return WC(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,a=t.pendingProps,a=t.elementType===r?a:Ir(r,a),jf(e,t),t.tag=1,Un(r)?(e=!0,Ff(t)):e=!1,Ro(t,n),zC(t,r,a),Kv(t,r,a,n),Xv(null,t,r,!0,e,n);case 19:return VC(e,t,n);case 22:return HC(e,t,n)}throw Error(oe(156,t.tag))};function uT(e,t){return LA(e,t)}function DD(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function xr(e,t,n,r){return new DD(e,t,n,r)}function Wx(e){return e=e.prototype,!(!e||!e.isReactComponent)}function BD(e){if(typeof e=="function")return Wx(e)?1:0;if(e!=null){if(e=e.$$typeof,e===lx)return 11;if(e===cx)return 14}return 2}function ki(e,t){var n=e.alternate;return n===null?(n=xr(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function _f(e,t,n,r,a,s){var o=2;if(r=e,typeof e=="function")Wx(e)&&(o=1);else if(typeof e=="string")o=5;else e:switch(e){case po:return ks(n.children,a,s,t);case ox:o=8,a|=8;break;case vv:return e=xr(12,n,t,a|2),e.elementType=vv,e.lanes=s,e;case yv:return e=xr(13,n,t,a),e.elementType=yv,e.lanes=s,e;case bv:return e=xr(19,n,t,a),e.elementType=bv,e.lanes=s,e;case xA:return Np(n,a,s,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case yA:o=10;break e;case bA:o=9;break e;case lx:o=11;break e;case cx:o=14;break e;case ti:o=16,r=null;break e}throw Error(oe(130,e==null?e:typeof e,""))}return t=xr(o,n,t,a),t.elementType=e,t.type=r,t.lanes=s,t}function ks(e,t,n,r){return e=xr(7,e,r,t),e.lanes=n,e}function Np(e,t,n,r){return e=xr(22,e,r,t),e.elementType=xA,e.lanes=n,e.stateNode={isHidden:!1},e}function rg(e,t,n){return e=xr(6,e,null,t),e.lanes=n,e}function ag(e,t,n){return t=xr(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function zD(e,t,n,r,a){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Dm(0),this.expirationTimes=Dm(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Dm(0),this.identifierPrefix=r,this.onRecoverableError=a,this.mutableSourceEagerHydrationData=null}function Hx(e,t,n,r,a,s,o,l,c){return e=new zD(e,t,n,l,c),t===1?(t=1,s===!0&&(t|=8)):t=0,s=xr(3,null,null,t),e.current=s,s.stateNode=e,s.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},_x(s),e}function FD(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:ho,key:r==null?null:""+r,children:e,containerInfo:t,implementation:n}}function dT(e){if(!e)return _i;e=e._reactInternals;e:{if(Fs(e)!==e||e.tag!==1)throw Error(oe(170));var t=e;do{switch(t.tag){case 3:t=t.stateNode.context;break e;case 1:if(Un(t.type)){t=t.stateNode.__reactInternalMemoizedMergedChildContext;break e}}t=t.return}while(t!==null);throw Error(oe(171))}if(e.tag===1){var n=e.type;if(Un(n))return dC(e,n,t)}return t}function fT(e,t,n,r,a,s,o,l,c){return e=Hx(n,r,!0,e,a,s,o,l,c),e.context=dT(null),n=e.current,r=Pn(),a=wi(n),s=Ea(r,a),s.callback=t??null,bi(n,s,a),e.current.lanes=a,qu(e,a,r),Wn(e,r),e}function Ep(e,t,n,r){var a=t.current,s=Pn(),o=wi(a);return n=dT(n),t.context===null?t.context=n:t.pendingContext=n,t=Ea(s,o),t.payload={element:e},r=r===void 0?null:r,r!==null&&(t.callback=r),e=bi(a,t,o),e!==null&&(Ur(e,a,o,s),wf(e,a,o)),o}function eh(e){if(e=e.current,!e.child)return null;switch(e.child.tag){case 5:return e.child.stateNode;default:return e.child.stateNode}}function Hk(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function Gx(e,t){Hk(e,t),(e=e.alternate)&&Hk(e,t)}function UD(){return null}var hT=typeof reportError=="function"?reportError:function(e){console.error(e)};function qx(e){this._internalRoot=e}_p.prototype.render=qx.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(oe(409));Ep(e,t,null,null)};_p.prototype.unmount=qx.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;Rs(function(){Ep(null,e,null,null)}),t[Oa]=null}};function _p(e){this._internalRoot=e}_p.prototype.unstable_scheduleHydration=function(e){if(e){var t=HA();e={blockedOn:null,target:e,priority:t};for(var n=0;n<ai.length&&t!==0&&t<ai[n].priority;n++);ai.splice(n,0,e),n===0&&qA(e)}};function Kx(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function Ap(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11&&(e.nodeType!==8||e.nodeValue!==" react-mount-point-unstable "))}function Gk(){}function WD(e,t,n,r,a){if(a){if(typeof r=="function"){var s=r;r=function(){var u=eh(o);s.call(u)}}var o=fT(t,r,e,0,null,!1,!1,"",Gk);return e._reactRootContainer=o,e[Oa]=o.current,Kc(e.nodeType===8?e.parentNode:e),Rs(),o}for(;a=e.lastChild;)e.removeChild(a);if(typeof r=="function"){var l=r;r=function(){var u=eh(c);l.call(u)}}var c=Hx(e,0,!1,null,null,!1,!1,"",Gk);return e._reactRootContainer=c,e[Oa]=c.current,Kc(e.nodeType===8?e.parentNode:e),Rs(function(){Ep(t,c,n,r)}),c}function Cp(e,t,n,r,a){var s=n._reactRootContainer;if(s){var o=s;if(typeof a=="function"){var l=a;a=function(){var c=eh(o);l.call(c)}}Ep(t,o,e,a)}else o=WD(n,t,e,a,r);return eh(o)}UA=function(e){switch(e.tag){case 3:var t=e.stateNode;if(t.current.memoizedState.isDehydrated){var n=vc(t.pendingLanes);n!==0&&(fx(t,n|1),Wn(t,$t()),!(Ge&6)&&(qo=$t()+500,Oi()))}break;case 13:Rs(function(){var r=Pa(e,1);if(r!==null){var a=Pn();Ur(r,e,1,a)}}),Gx(e,1)}};hx=function(e){if(e.tag===13){var t=Pa(e,134217728);if(t!==null){var n=Pn();Ur(t,e,134217728,n)}Gx(e,134217728)}};WA=function(e){if(e.tag===13){var t=wi(e),n=Pa(e,t);if(n!==null){var r=Pn();Ur(n,e,t,r)}Gx(e,t)}};HA=function(){return it};GA=function(e,t){var n=it;try{return it=e,t()}finally{it=n}};Cv=function(e,t,n){switch(t){case"input":if(kv(e,n),t=n.name,n.type==="radio"&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var a=bp(r);if(!a)throw Error(oe(90));kA(r),kv(r,a)}}}break;case"textarea":jA(e,n);break;case"select":t=n.value,t!=null&&Co(e,!!n.multiple,t,!1)}};OA=zx;PA=Rs;var HD={usingClientEntryPoint:!1,Events:[Vu,yo,bp,CA,TA,zx]},ec={findFiberByHostInstance:hs,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},GD={bundleType:ec.bundleType,version:ec.version,rendererPackageName:ec.rendererPackageName,rendererConfig:ec.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:La.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return e=IA(e),e===null?null:e.stateNode},findFiberByHostInstance:ec.findFiberByHostInstance||UD,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Bd=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Bd.isDisabled&&Bd.supportsFiber)try{mp=Bd.inject(GD),la=Bd}catch{}}sr.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=HD;sr.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!Kx(t))throw Error(oe(200));return FD(e,t,null,n)};sr.createRoot=function(e,t){if(!Kx(e))throw Error(oe(299));var n=!1,r="",a=hT;return t!=null&&(t.unstable_strictMode===!0&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onRecoverableError!==void 0&&(a=t.onRecoverableError)),t=Hx(e,1,!1,null,null,n,!1,r,a),e[Oa]=t.current,Kc(e.nodeType===8?e.parentNode:e),new qx(t)};sr.findDOMNode=function(e){if(e==null)return null;if(e.nodeType===1)return e;var t=e._reactInternals;if(t===void 0)throw typeof e.render=="function"?Error(oe(188)):(e=Object.keys(e).join(","),Error(oe(268,e)));return e=IA(t),e=e===null?null:e.stateNode,e};sr.flushSync=function(e){return Rs(e)};sr.hydrate=function(e,t,n){if(!Ap(t))throw Error(oe(200));return Cp(null,e,t,!0,n)};sr.hydrateRoot=function(e,t,n){if(!Kx(e))throw Error(oe(405));var r=n!=null&&n.hydratedSources||null,a=!1,s="",o=hT;if(n!=null&&(n.unstable_strictMode===!0&&(a=!0),n.identifierPrefix!==void 0&&(s=n.identifierPrefix),n.onRecoverableError!==void 0&&(o=n.onRecoverableError)),t=fT(t,null,e,1,n??null,a,!1,s,o),e[Oa]=t.current,Kc(e),r)for(e=0;e<r.length;e++)n=r[e],a=n._getVersion,a=a(n._source),t.mutableSourceEagerHydrationData==null?t.mutableSourceEagerHydrationData=[n,a]:t.mutableSourceEagerHydrationData.push(n,a);return new _p(t)};sr.render=function(e,t,n){if(!Ap(t))throw Error(oe(200));return Cp(null,e,t,!1,n)};sr.unmountComponentAtNode=function(e){if(!Ap(e))throw Error(oe(40));return e._reactRootContainer?(Rs(function(){Cp(null,null,e,!1,function(){e._reactRootContainer=null,e[Oa]=null})}),!0):!1};sr.unstable_batchedUpdates=zx;sr.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!Ap(n))throw Error(oe(200));if(e==null||e._reactInternals===void 0)throw Error(oe(38));return Cp(e,t,n,!1,r)};sr.version="18.3.1-next-f1338f8080-20240426";function pT(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(pT)}catch(e){console.error(e)}}pT(),pA.exports=sr;var qD=pA.exports,mT,qk=qD;mT=qk.createRoot,qk.hydrateRoot;/**
|
|
41
|
+
* @remix-run/router v1.23.3
|
|
42
|
+
*
|
|
43
|
+
* Copyright (c) Remix Software Inc.
|
|
44
|
+
*
|
|
45
|
+
* This source code is licensed under the MIT license found in the
|
|
46
|
+
* LICENSE.md file in the root directory of this source tree.
|
|
47
|
+
*
|
|
48
|
+
* @license MIT
|
|
49
|
+
*/function nu(){return nu=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},nu.apply(null,arguments)}var di;(function(e){e.Pop="POP",e.Push="PUSH",e.Replace="REPLACE"})(di||(di={}));const Kk="popstate";function KD(e){e===void 0&&(e={});function t(r,a){let{pathname:s,search:o,hash:l}=r.location;return ly("",{pathname:s,search:o,hash:l},a.state&&a.state.usr||null,a.state&&a.state.key||"default")}function n(r,a){return typeof a=="string"?a:th(a)}return YD(t,n,null,e)}function Ct(e,t){if(e===!1||e===null||typeof e>"u")throw new Error(t)}function Vx(e,t){if(!e){typeof console<"u"&&console.warn(t);try{throw new Error(t)}catch{}}}function VD(){return Math.random().toString(36).substr(2,8)}function Vk(e,t){return{usr:e.state,key:e.key,idx:t}}function ly(e,t,n,r){return n===void 0&&(n=null),nu({pathname:typeof e=="string"?e:e.pathname,search:"",hash:""},typeof t=="string"?xl(t):t,{state:n,key:t&&t.key||r||VD()})}function th(e){let{pathname:t="/",search:n="",hash:r=""}=e;return n&&n!=="?"&&(t+=n.charAt(0)==="?"?n:"?"+n),r&&r!=="#"&&(t+=r.charAt(0)==="#"?r:"#"+r),t}function xl(e){let t={};if(e){let n=e.indexOf("#");n>=0&&(t.hash=e.substr(n),e=e.substr(0,n));let r=e.indexOf("?");r>=0&&(t.search=e.substr(r),e=e.substr(0,r)),e&&(t.pathname=e)}return t}function YD(e,t,n,r){r===void 0&&(r={});let{window:a=document.defaultView,v5Compat:s=!1}=r,o=a.history,l=di.Pop,c=null,u=d();u==null&&(u=0,o.replaceState(nu({},o.state,{idx:u}),""));function d(){return(o.state||{idx:null}).idx}function f(){l=di.Pop;let y=d(),v=y==null?null:y-u;u=y,c&&c({action:l,location:m.location,delta:v})}function h(y,v){l=di.Push;let S=ly(m.location,y,v);u=d()+1;let w=Vk(S,u),j=m.createHref(S);try{o.pushState(w,"",j)}catch(k){if(k instanceof DOMException&&k.name==="DataCloneError")throw k;a.location.assign(j)}s&&c&&c({action:l,location:m.location,delta:1})}function p(y,v){l=di.Replace;let S=ly(m.location,y,v);u=d();let w=Vk(S,u),j=m.createHref(S);o.replaceState(w,"",j),s&&c&&c({action:l,location:m.location,delta:0})}function g(y){let v=a.location.origin!=="null"?a.location.origin:a.location.href,S=typeof y=="string"?y:th(y);return S=S.replace(/ $/,"%20"),Ct(v,"No window.location.(origin|href) available to create URL for href: "+S),new URL(S,v)}let m={get action(){return l},get location(){return e(a,o)},listen(y){if(c)throw new Error("A history only accepts one active listener");return a.addEventListener(Kk,f),c=y,()=>{a.removeEventListener(Kk,f),c=null}},createHref(y){return t(a,y)},createURL:g,encodeLocation(y){let v=g(y);return{pathname:v.pathname,search:v.search,hash:v.hash}},push:h,replace:p,go(y){return o.go(y)}};return m}var Yk;(function(e){e.data="data",e.deferred="deferred",e.redirect="redirect",e.error="error"})(Yk||(Yk={}));function XD(e,t,n){return n===void 0&&(n="/"),QD(e,t,n)}function QD(e,t,n,r){let a=typeof t=="string"?xl(t):t,s=Ko(a.pathname||"/",n);if(s==null)return null;let o=gT(e);ZD(o);let l=null,c=c2(s);for(let u=0;l==null&&u<o.length;++u)l=o2(o[u],c);return l}function gT(e,t,n,r){t===void 0&&(t=[]),n===void 0&&(n=[]),r===void 0&&(r="");let a=(s,o,l)=>{let c={relativePath:l===void 0?s.path||"":l,caseSensitive:s.caseSensitive===!0,childrenIndex:o,route:s};c.relativePath.startsWith("/")&&(Ct(c.relativePath.startsWith(r),'Absolute route path "'+c.relativePath+'" nested under path '+('"'+r+'" is not valid. An absolute child route path ')+"must start with the combined path of all its parent routes."),c.relativePath=c.relativePath.slice(r.length));let u=Si([r,c.relativePath]),d=n.concat(c);s.children&&s.children.length>0&&(Ct(s.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+u+'".')),gT(s.children,t,d,u)),!(s.path==null&&!s.index)&&t.push({path:u,score:i2(u,s.index),routesMeta:d})};return e.forEach((s,o)=>{var l;if(s.path===""||!((l=s.path)!=null&&l.includes("?")))a(s,o);else for(let c of vT(s.path))a(s,o,c)}),t}function vT(e){let t=e.split("/");if(t.length===0)return[];let[n,...r]=t,a=n.endsWith("?"),s=n.replace(/\?$/,"");if(r.length===0)return a?[s,""]:[s];let o=vT(r.join("/")),l=[];return l.push(...o.map(c=>c===""?s:[s,c].join("/"))),a&&l.push(...o),l.map(c=>e.startsWith("/")&&c===""?"/":c)}function ZD(e){e.sort((t,n)=>t.score!==n.score?n.score-t.score:s2(t.routesMeta.map(r=>r.childrenIndex),n.routesMeta.map(r=>r.childrenIndex)))}const JD=/^:[\w-]+$/,e2=3,t2=2,n2=1,r2=10,a2=-2,Xk=e=>e==="*";function i2(e,t){let n=e.split("/"),r=n.length;return n.some(Xk)&&(r+=a2),t&&(r+=t2),n.filter(a=>!Xk(a)).reduce((a,s)=>a+(JD.test(s)?e2:s===""?n2:r2),r)}function s2(e,t){return e.length===t.length&&e.slice(0,-1).every((r,a)=>r===t[a])?e[e.length-1]-t[t.length-1]:0}function o2(e,t,n){let{routesMeta:r}=e,a={},s="/",o=[];for(let l=0;l<r.length;++l){let c=r[l],u=l===r.length-1,d=s==="/"?t:t.slice(s.length)||"/",f=cy({path:c.relativePath,caseSensitive:c.caseSensitive,end:u},d),h=c.route;if(!f)return null;Object.assign(a,f.params),o.push({params:a,pathname:Si([s,f.pathname]),pathnameBase:p2(Si([s,f.pathnameBase])),route:h}),f.pathnameBase!=="/"&&(s=Si([s,f.pathnameBase]))}return o}function cy(e,t){typeof e=="string"&&(e={path:e,caseSensitive:!1,end:!0});let[n,r]=l2(e.path,e.caseSensitive,e.end),a=t.match(n);if(!a)return null;let s=a[0],o=s.replace(/(.)\/+$/,"$1"),l=a.slice(1);return{params:r.reduce((u,d,f)=>{let{paramName:h,isOptional:p}=d;if(h==="*"){let m=l[f]||"";o=s.slice(0,s.length-m.length).replace(/(.)\/+$/,"$1")}const g=l[f];return p&&!g?u[h]=void 0:u[h]=(g||"").replace(/%2F/g,"/"),u},{}),pathname:s,pathnameBase:o,pattern:e}}function l2(e,t,n){t===void 0&&(t=!1),n===void 0&&(n=!0),Vx(e==="*"||!e.endsWith("*")||e.endsWith("/*"),'Route path "'+e+'" will be treated as if it were '+('"'+e.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+e.replace(/\*$/,"/*")+'".'));let r=[],a="^"+e.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(o,l,c)=>(r.push({paramName:l,isOptional:c!=null}),c?"/?([^\\/]+)?":"/([^\\/]+)"));return e.endsWith("*")?(r.push({paramName:"*"}),a+=e==="*"||e==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):n?a+="\\/*$":e!==""&&e!=="/"&&(a+="(?:(?=\\/|$))"),[new RegExp(a,t?void 0:"i"),r]}function c2(e){try{return e.split("/").map(t=>decodeURIComponent(t).replace(/\//g,"%2F")).join("/")}catch(t){return Vx(!1,'The URL path "'+e+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+t+").")),e}}function Ko(e,t){if(t==="/")return e;if(!e.toLowerCase().startsWith(t.toLowerCase()))return null;let n=t.endsWith("/")?t.length-1:t.length,r=e.charAt(n);return r&&r!=="/"?null:e.slice(n)||"/"}const u2=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,d2=e=>u2.test(e);function f2(e,t){t===void 0&&(t="/");let{pathname:n,search:r="",hash:a=""}=typeof e=="string"?xl(e):e,s;if(n)if(d2(n))s=n;else{if(n.includes("//")){let o=n;n=yT(n),Vx(!1,"Pathnames cannot have embedded double slashes - normalizing "+(o+" -> "+n))}n.startsWith("/")?s=Qk(n.substring(1),"/"):s=Qk(n,t)}else s=t;return{pathname:s,search:m2(r),hash:g2(a)}}function Qk(e,t){let n=t.replace(/\/+$/,"").split("/");return e.split("/").forEach(a=>{a===".."?n.length>1&&n.pop():a!=="."&&n.push(a)}),n.length>1?n.join("/"):"/"}function ig(e,t,n,r){return"Cannot include a '"+e+"' character in a manually specified "+("`to."+t+"` field ["+JSON.stringify(r)+"]. Please separate it out to the ")+("`to."+n+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function h2(e){return e.filter((t,n)=>n===0||t.route.path&&t.route.path.length>0)}function Yx(e,t){let n=h2(e);return t?n.map((r,a)=>a===n.length-1?r.pathname:r.pathnameBase):n.map(r=>r.pathnameBase)}function Xx(e,t,n,r){r===void 0&&(r=!1);let a;typeof e=="string"?a=xl(e):(a=nu({},e),Ct(!a.pathname||!a.pathname.includes("?"),ig("?","pathname","search",a)),Ct(!a.pathname||!a.pathname.includes("#"),ig("#","pathname","hash",a)),Ct(!a.search||!a.search.includes("#"),ig("#","search","hash",a)));let s=e===""||a.pathname==="",o=s?"/":a.pathname,l;if(o==null)l=n;else{let f=t.length-1;if(!r&&o.startsWith("..")){let h=o.split("/");for(;h[0]==="..";)h.shift(),f-=1;a.pathname=h.join("/")}l=f>=0?t[f]:"/"}let c=f2(a,l),u=o&&o!=="/"&&o.endsWith("/"),d=(s||o===".")&&n.endsWith("/");return!c.pathname.endsWith("/")&&(u||d)&&(c.pathname+="/"),c}const yT=e=>e.replace(/\/\/+/g,"/"),Si=e=>yT(e.join("/")),p2=e=>e.replace(/\/+$/,"").replace(/^\/*/,"/"),m2=e=>!e||e==="?"?"":e.startsWith("?")?e:"?"+e,g2=e=>!e||e==="#"?"":e.startsWith("#")?e:"#"+e;function v2(e){return e!=null&&typeof e.status=="number"&&typeof e.statusText=="string"&&typeof e.internal=="boolean"&&"data"in e}const bT=["post","put","patch","delete"];new Set(bT);const y2=["get",...bT];new Set(y2);/**
|
|
50
|
+
* React Router v6.30.4
|
|
51
|
+
*
|
|
52
|
+
* Copyright (c) Remix Software Inc.
|
|
53
|
+
*
|
|
54
|
+
* This source code is licensed under the MIT license found in the
|
|
55
|
+
* LICENSE.md file in the root directory of this source tree.
|
|
56
|
+
*
|
|
57
|
+
* @license MIT
|
|
58
|
+
*/function ru(){return ru=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ru.apply(null,arguments)}const Tp=x.createContext(null),xT=x.createContext(null),Da=x.createContext(null),Op=x.createContext(null),Pi=x.createContext({outlet:null,matches:[],isDataRoute:!1}),wT=x.createContext(null);function b2(e,t){let{relative:n}=t===void 0?{}:t;wl()||Ct(!1);let{basename:r,navigator:a}=x.useContext(Da),{hash:s,pathname:o,search:l}=Pp(e,{relative:n}),c=o;return r!=="/"&&(c=o==="/"?r:Si([r,o])),a.createHref({pathname:c,search:l,hash:s})}function wl(){return x.useContext(Op)!=null}function Ri(){return wl()||Ct(!1),x.useContext(Op).location}function kT(e){x.useContext(Da).static||x.useLayoutEffect(e)}function Qx(){let{isDataRoute:e}=x.useContext(Pi);return e?P2():x2()}function x2(){wl()||Ct(!1);let e=x.useContext(Tp),{basename:t,future:n,navigator:r}=x.useContext(Da),{matches:a}=x.useContext(Pi),{pathname:s}=Ri(),o=JSON.stringify(Yx(a,n.v7_relativeSplatPath)),l=x.useRef(!1);return kT(()=>{l.current=!0}),x.useCallback(function(u,d){if(d===void 0&&(d={}),!l.current)return;if(typeof u=="number"){r.go(u);return}let f=Xx(u,JSON.parse(o),s,d.relative==="path");e==null&&t!=="/"&&(f.pathname=f.pathname==="/"?t:Si([t,f.pathname])),(d.replace?r.replace:r.push)(f,d.state,d)},[t,r,o,s,e])}function Pp(e,t){let{relative:n}=t===void 0?{}:t,{future:r}=x.useContext(Da),{matches:a}=x.useContext(Pi),{pathname:s}=Ri(),o=JSON.stringify(Yx(a,r.v7_relativeSplatPath));return x.useMemo(()=>Xx(e,JSON.parse(o),s,n==="path"),[e,o,s,n])}function w2(e,t){return k2(e,t)}function k2(e,t,n,r){wl()||Ct(!1);let{navigator:a}=x.useContext(Da),{matches:s}=x.useContext(Pi),o=s[s.length-1],l=o?o.params:{};o&&o.pathname;let c=o?o.pathnameBase:"/";o&&o.route;let u=Ri(),d;if(t){var f;let y=typeof t=="string"?xl(t):t;c==="/"||(f=y.pathname)!=null&&f.startsWith(c)||Ct(!1),d=y}else d=u;let h=d.pathname||"/",p=h;if(c!=="/"){let y=c.replace(/^\//,"").split("/");p="/"+h.replace(/^\//,"").split("/").slice(y.length).join("/")}let g=XD(e,{pathname:p}),m=_2(g&&g.map(y=>Object.assign({},y,{params:Object.assign({},l,y.params),pathname:Si([c,a.encodeLocation?a.encodeLocation(y.pathname).pathname:y.pathname]),pathnameBase:y.pathnameBase==="/"?c:Si([c,a.encodeLocation?a.encodeLocation(y.pathnameBase).pathname:y.pathnameBase])})),s,n,r);return t&&m?x.createElement(Op.Provider,{value:{location:ru({pathname:"/",search:"",hash:"",state:null,key:"default"},d),navigationType:di.Pop}},m):m}function S2(){let e=O2(),t=v2(e)?e.status+" "+e.statusText:e instanceof Error?e.message:JSON.stringify(e),n=e instanceof Error?e.stack:null,a={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return x.createElement(x.Fragment,null,x.createElement("h2",null,"Unexpected Application Error!"),x.createElement("h3",{style:{fontStyle:"italic"}},t),n?x.createElement("pre",{style:a},n):null,null)}const j2=x.createElement(S2,null);class N2 extends x.Component{constructor(t){super(t),this.state={location:t.location,revalidation:t.revalidation,error:t.error}}static getDerivedStateFromError(t){return{error:t}}static getDerivedStateFromProps(t,n){return n.location!==t.location||n.revalidation!=="idle"&&t.revalidation==="idle"?{error:t.error,location:t.location,revalidation:t.revalidation}:{error:t.error!==void 0?t.error:n.error,location:n.location,revalidation:t.revalidation||n.revalidation}}componentDidCatch(t,n){console.error("React Router caught the following error during render",t,n)}render(){return this.state.error!==void 0?x.createElement(Pi.Provider,{value:this.props.routeContext},x.createElement(wT.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function E2(e){let{routeContext:t,match:n,children:r}=e,a=x.useContext(Tp);return a&&a.static&&a.staticContext&&(n.route.errorElement||n.route.ErrorBoundary)&&(a.staticContext._deepestRenderedBoundaryId=n.route.id),x.createElement(Pi.Provider,{value:t},r)}function _2(e,t,n,r){var a;if(t===void 0&&(t=[]),n===void 0&&(n=null),r===void 0&&(r=null),e==null){var s;if(!n)return null;if(n.errors)e=n.matches;else if((s=r)!=null&&s.v7_partialHydration&&t.length===0&&!n.initialized&&n.matches.length>0)e=n.matches;else return null}let o=e,l=(a=n)==null?void 0:a.errors;if(l!=null){let d=o.findIndex(f=>f.route.id&&(l==null?void 0:l[f.route.id])!==void 0);d>=0||Ct(!1),o=o.slice(0,Math.min(o.length,d+1))}let c=!1,u=-1;if(n&&r&&r.v7_partialHydration)for(let d=0;d<o.length;d++){let f=o[d];if((f.route.HydrateFallback||f.route.hydrateFallbackElement)&&(u=d),f.route.id){let{loaderData:h,errors:p}=n,g=f.route.loader&&h[f.route.id]===void 0&&(!p||p[f.route.id]===void 0);if(f.route.lazy||g){c=!0,u>=0?o=o.slice(0,u+1):o=[o[0]];break}}}return o.reduceRight((d,f,h)=>{let p,g=!1,m=null,y=null;n&&(p=l&&f.route.id?l[f.route.id]:void 0,m=f.route.errorElement||j2,c&&(u<0&&h===0?(R2("route-fallback"),g=!0,y=null):u===h&&(g=!0,y=f.route.hydrateFallbackElement||null)));let v=t.concat(o.slice(0,h+1)),S=()=>{let w;return p?w=m:g?w=y:f.route.Component?w=x.createElement(f.route.Component,null):f.route.element?w=f.route.element:w=d,x.createElement(E2,{match:f,routeContext:{outlet:d,matches:v,isDataRoute:n!=null},children:w})};return n&&(f.route.ErrorBoundary||f.route.errorElement||h===0)?x.createElement(N2,{location:n.location,revalidation:n.revalidation,component:m,error:p,children:S(),routeContext:{outlet:null,matches:v,isDataRoute:!0}}):S()},null)}var ST=function(e){return e.UseBlocker="useBlocker",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e}(ST||{}),jT=function(e){return e.UseBlocker="useBlocker",e.UseLoaderData="useLoaderData",e.UseActionData="useActionData",e.UseRouteError="useRouteError",e.UseNavigation="useNavigation",e.UseRouteLoaderData="useRouteLoaderData",e.UseMatches="useMatches",e.UseRevalidator="useRevalidator",e.UseNavigateStable="useNavigate",e.UseRouteId="useRouteId",e}(jT||{});function A2(e){let t=x.useContext(Tp);return t||Ct(!1),t}function C2(e){let t=x.useContext(xT);return t||Ct(!1),t}function T2(e){let t=x.useContext(Pi);return t||Ct(!1),t}function NT(e){let t=T2(),n=t.matches[t.matches.length-1];return n.route.id||Ct(!1),n.route.id}function O2(){var e;let t=x.useContext(wT),n=C2(),r=NT();return t!==void 0?t:(e=n.errors)==null?void 0:e[r]}function P2(){let{router:e}=A2(ST.UseNavigateStable),t=NT(jT.UseNavigateStable),n=x.useRef(!1);return kT(()=>{n.current=!0}),x.useCallback(function(a,s){s===void 0&&(s={}),n.current&&(typeof a=="number"?e.navigate(a):e.navigate(a,ru({fromRouteId:t},s)))},[e,t])}const Zk={};function R2(e,t,n){Zk[e]||(Zk[e]=!0)}function M2(e,t){e==null||e.v7_startTransition,e==null||e.v7_relativeSplatPath}function Jk(e){let{to:t,replace:n,state:r,relative:a}=e;wl()||Ct(!1);let{future:s,static:o}=x.useContext(Da),{matches:l}=x.useContext(Pi),{pathname:c}=Ri(),u=Qx(),d=Xx(t,Yx(l,s.v7_relativeSplatPath),c,a==="path"),f=JSON.stringify(d);return x.useEffect(()=>u(JSON.parse(f),{replace:n,state:r,relative:a}),[u,f,a,n,r]),null}function Ke(e){Ct(!1)}function I2(e){let{basename:t="/",children:n=null,location:r,navigationType:a=di.Pop,navigator:s,static:o=!1,future:l}=e;wl()&&Ct(!1);let c=t.replace(/^\/*/,"/"),u=x.useMemo(()=>({basename:c,navigator:s,static:o,future:ru({v7_relativeSplatPath:!1},l)}),[c,l,s,o]);typeof r=="string"&&(r=xl(r));let{pathname:d="/",search:f="",hash:h="",state:p=null,key:g="default"}=r,m=x.useMemo(()=>{let y=Ko(d,c);return y==null?null:{location:{pathname:y,search:f,hash:h,state:p,key:g},navigationType:a}},[c,d,f,h,p,g,a]);return m==null?null:x.createElement(Da.Provider,{value:u},x.createElement(Op.Provider,{children:n,value:m}))}function $2(e){let{children:t,location:n}=e;return w2(uy(t),n)}new Promise(()=>{});function uy(e,t){t===void 0&&(t=[]);let n=[];return x.Children.forEach(e,(r,a)=>{if(!x.isValidElement(r))return;let s=[...t,a];if(r.type===x.Fragment){n.push.apply(n,uy(r.props.children,s));return}r.type!==Ke&&Ct(!1),!r.props.index||!r.props.children||Ct(!1);let o={id:r.props.id||s.join("-"),caseSensitive:r.props.caseSensitive,element:r.props.element,Component:r.props.Component,index:r.props.index,path:r.props.path,loader:r.props.loader,action:r.props.action,errorElement:r.props.errorElement,ErrorBoundary:r.props.ErrorBoundary,hasErrorBoundary:r.props.ErrorBoundary!=null||r.props.errorElement!=null,shouldRevalidate:r.props.shouldRevalidate,handle:r.props.handle,lazy:r.props.lazy};r.props.children&&(o.children=uy(r.props.children,s)),n.push(o)}),n}/**
|
|
59
|
+
* React Router DOM v6.30.4
|
|
60
|
+
*
|
|
61
|
+
* Copyright (c) Remix Software Inc.
|
|
62
|
+
*
|
|
63
|
+
* This source code is licensed under the MIT license found in the
|
|
64
|
+
* LICENSE.md file in the root directory of this source tree.
|
|
65
|
+
*
|
|
66
|
+
* @license MIT
|
|
67
|
+
*/function nh(){return nh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)({}).hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},nh.apply(null,arguments)}function ET(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.indexOf(r)!==-1)continue;n[r]=e[r]}return n}function L2(e){return!!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)}function D2(e,t){return e.button===0&&(!t||t==="_self")&&!L2(e)}const B2=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],z2=["aria-current","caseSensitive","className","end","style","to","viewTransition","children"],F2="6";try{window.__reactRouterVersion=F2}catch{}const U2=x.createContext({isTransitioning:!1}),W2="startTransition",eS=I$[W2];function H2(e){let{basename:t,children:n,future:r,window:a}=e,s=x.useRef();s.current==null&&(s.current=KD({window:a,v5Compat:!0}));let o=s.current,[l,c]=x.useState({action:o.action,location:o.location}),{v7_startTransition:u}=r||{},d=x.useCallback(f=>{u&&eS?eS(()=>c(f)):c(f)},[c,u]);return x.useLayoutEffect(()=>o.listen(d),[o,d]),x.useEffect(()=>M2(r),[r]),x.createElement(I2,{basename:t,children:n,location:l.location,navigationType:l.action,navigator:o,future:r})}const G2=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",q2=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,rn=x.forwardRef(function(t,n){let{onClick:r,relative:a,reloadDocument:s,replace:o,state:l,target:c,to:u,preventScrollReset:d,viewTransition:f}=t,h=ET(t,B2),{basename:p}=x.useContext(Da),g,m=!1;if(typeof u=="string"&&q2.test(u)&&(g=u,G2))try{let w=new URL(window.location.href),j=u.startsWith("//")?new URL(w.protocol+u):new URL(u),k=Ko(j.pathname,p);j.origin===w.origin&&k!=null?u=k+j.search+j.hash:m=!0}catch{}let y=b2(u,{relative:a}),v=V2(u,{replace:o,state:l,target:c,preventScrollReset:d,relative:a,viewTransition:f});function S(w){r&&r(w),w.defaultPrevented||v(w)}return x.createElement("a",nh({},h,{href:g||y,onClick:m||s?r:S,ref:n,target:c}))}),tS=x.forwardRef(function(t,n){let{"aria-current":r="page",caseSensitive:a=!1,className:s="",end:o=!1,style:l,to:c,viewTransition:u,children:d}=t,f=ET(t,z2),h=Pp(c,{relative:f.relative}),p=Ri(),g=x.useContext(xT),{navigator:m,basename:y}=x.useContext(Da),v=g!=null&&Y2(h)&&u===!0,S=m.encodeLocation?m.encodeLocation(h).pathname:h.pathname,w=p.pathname,j=g&&g.navigation&&g.navigation.location?g.navigation.location.pathname:null;a||(w=w.toLowerCase(),j=j?j.toLowerCase():null,S=S.toLowerCase()),j&&y&&(j=Ko(j,y)||j);const k=S!=="/"&&S.endsWith("/")?S.length-1:S.length;let b=w===S||!o&&w.startsWith(S)&&w.charAt(k)==="/",N=j!=null&&(j===S||!o&&j.startsWith(S)&&j.charAt(S.length)==="/"),_={isActive:b,isPending:N,isTransitioning:v},T=b?r:void 0,C;typeof s=="function"?C=s(_):C=[s,b?"active":null,N?"pending":null,v?"transitioning":null].filter(Boolean).join(" ");let O=typeof l=="function"?l(_):l;return x.createElement(rn,nh({},f,{"aria-current":T,className:C,ref:n,style:O,to:c,viewTransition:u}),typeof d=="function"?d(_):d)});var dy;(function(e){e.UseScrollRestoration="useScrollRestoration",e.UseSubmit="useSubmit",e.UseSubmitFetcher="useSubmitFetcher",e.UseFetcher="useFetcher",e.useViewTransitionState="useViewTransitionState"})(dy||(dy={}));var nS;(function(e){e.UseFetcher="useFetcher",e.UseFetchers="useFetchers",e.UseScrollRestoration="useScrollRestoration"})(nS||(nS={}));function K2(e){let t=x.useContext(Tp);return t||Ct(!1),t}function V2(e,t){let{target:n,replace:r,state:a,preventScrollReset:s,relative:o,viewTransition:l}=t===void 0?{}:t,c=Qx(),u=Ri(),d=Pp(e,{relative:o});return x.useCallback(f=>{if(D2(f,n)){f.preventDefault();let h=r!==void 0?r:th(u)===th(d);c(e,{replace:h,state:a,preventScrollReset:s,relative:o,viewTransition:l})}},[u,c,d,r,a,n,e,s,o,l])}function Y2(e,t){t===void 0&&(t={});let n=x.useContext(U2);n==null&&Ct(!1);let{basename:r}=K2(dy.useViewTransitionState),a=Pp(e,{relative:t.relative});if(!n.isTransitioning)return!1;let s=Ko(n.currentLocation.pathname,r)||n.currentLocation.pathname,o=Ko(n.nextLocation.pathname,r)||n.nextLocation.pathname;return cy(a.pathname,o)!=null||cy(a.pathname,s)!=null}async function ot(e){if(!e.ok)return null;const t=e.headers.get("content-type")||"";if(!t.includes("application/json")&&!t.includes("text/json"))return t.includes("text/html")&&console.warn(`[dashboard] GET ${e.url||"/api/*"} returned HTML (${e.status}) instead of JSON — the dashboard server may be an older version. Stop it and start it again (agent-nuvira dashboard stop, or Ctrl+C in its terminal).`),null;try{return await e.json()}catch{return null}}const No="buff-dashboard-admin-token";function _T(){try{if(typeof window<"u"&&window.localStorage)return window.localStorage}catch{}return null}function X2(e){if(!e||typeof e!="object")return!1;const t=e,n=t.diff;return typeof t.dir=="string"&&typeof t.base=="string"&&typeof t.removed=="boolean"&&!!n&&typeof n=="object"&&Array.isArray(n.files)&&n.files.every(r=>typeof r=="string")&&typeof n.summary=="string"&&!!n.payload&&typeof n.payload=="object"&&typeof n.payload.summary=="string"&&Array.isArray(n.payload.files)&&n.payload.files.every(r=>!!r&&typeof r.path=="string"&&typeof r.body=="string")}function Q2(e){if(!e||typeof e!="object")return!1;const t=e;return typeof t.id=="string"&&typeof t.replayed=="number"&&typeof t.modelCalls=="number"&&typeof t.saved=="boolean"&&typeof t.notice=="string"&&(t.callsAvoided===void 0||typeof t.callsAvoided=="number")}function Z2(e){if(!e||typeof e!="object")return!1;const t=e;return typeof t.goal=="string"&&typeof t.planned=="boolean"&&Array.isArray(t.steps)&&!!t.stepCounts&&typeof t.stepCounts=="object"&&typeof t.stepCounts.total=="number"&&typeof t.verification=="string"&&["verified","unverified","blocked","not-applicable","delivered-and-read-back"].includes(t.verification)&&(t.summary===null||typeof t.summary=="string")&&Array.isArray(t.changedPaths)&&!!t.flags&&typeof t.flags=="object"}const fy=new Map;function J2(){const e=_T();if(e)try{const t=e.getItem(No);if(t)return t}catch{}return fy.get(No)??null}function eB(e){const t=_T();if(t)try{e?t.setItem(No,e):t.removeItem(No);return}catch{}e?fy.set(No,e):fy.delete(No)}function en(){return J2()}let hy=0;const py=new Set;function tB(){return hy}function nB(e){return py.add(e),()=>{py.delete(e)}}function rB(){hy+=1;for(const e of py)try{e(hy)}catch{}}function sg(e){eB(e),rB()}function yt(){const e=en();return e?{Authorization:`Bearer ${e}`}:{}}class aB{constructor(t=""){Jr(this,"sse",null);Jr(this,"listeners",new Set);Jr(this,"connectionListeners",new Set);Jr(this,"dagListeners",new Set);Jr(this,"typingListeners",new Set);Jr(this,"chatRetryListeners",new Set);Jr(this,"reconnectTimer",null);Jr(this,"baseUrl");Jr(this,"lastData",null);this.baseUrl=t}subscribe(t){return this.listeners.add(t),()=>this.listeners.delete(t)}onConnectionChange(t){return this.connectionListeners.add(t),()=>this.connectionListeners.delete(t)}onDAGEvent(t){return this.dagListeners.add(t),()=>this.dagListeners.delete(t)}onTypingEvent(t){return this.typingListeners.add(t),()=>this.typingListeners.delete(t)}onChatRetryEvent(t){return this.chatRetryListeners.add(t),()=>this.chatRetryListeners.delete(t)}connect(){this.sse||(this.sse=new EventSource(`${this.baseUrl}/api/sse`),this.sse.addEventListener("init",t=>{try{const n=JSON.parse(t.data);this.lastData=n,this.notify(n),this.notifyConnection(!0)}catch(n){console.error("Failed to parse SSE init data:",n)}}),this.sse.addEventListener("refresh",t=>{try{const n=JSON.parse(t.data);this.lastData=n,this.notify(n),this.notifyConnection(!0)}catch(n){console.error("Failed to parse SSE refresh data:",n)}}),this.sse.addEventListener("dag",t=>{try{const n=JSON.parse(t.data);if(this.notifyDAG(n),this.lastData){const r={...this.lastData,dag:n};this.lastData=r,this.notify(r)}}catch(n){console.error("Failed to parse SSE dag event:",n)}}),this.sse.addEventListener("quota",t=>{try{const n=JSON.parse(t.data);if(this.lastData&&n.quota){const r={...this.lastData,routing:{...this.lastData.routing||{},quota:n.quota},serverTime:n.serverTime||this.lastData.serverTime};this.lastData=r,this.notify(r)}}catch(n){console.error("Failed to parse SSE quota event:",n)}}),this.sse.addEventListener("conversation",t=>{try{const n=JSON.parse(t.data);if(this.lastData&&n.conversations){const r={...this.lastData,conversations:{total:n.total??n.conversations.length,recent:n.conversations},serverTime:n.serverTime||this.lastData.serverTime};this.lastData=r,this.notify(r)}}catch(n){console.error("Failed to parse SSE conversation event:",n)}}),this.sse.addEventListener("typing",t=>{try{const n=JSON.parse(t.data);for(const r of this.typingListeners)try{r(n)}catch{}}catch(n){console.error("Failed to parse SSE typing event:",n)}}),this.sse.addEventListener("chat-retry",t=>{try{const n=JSON.parse(t.data);if(!n||typeof n.sessionId!="string"||typeof n.content!="string")return;for(const r of this.chatRetryListeners)try{r(n)}catch{}}catch(n){console.error("Failed to parse SSE chat-retry event:",n)}}),this.sse.onerror=()=>{this.notifyConnection(!1),this.disconnect(),this.reconnect()},this.sse.onopen=()=>{this.notifyConnection(!0)})}disconnect(){this.sse&&(this.sse.close(),this.sse=null),this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null)}reconnect(){this.reconnectTimer=setTimeout(()=>{this.connect()},3e3)}notify(t){this.listeners.forEach(n=>n(t))}notifyDAG(t){this.dagListeners.forEach(n=>n(t))}notifyConnection(t){this.connectionListeners.forEach(n=>n(t))}async fetchAll(){try{const t=await fetch(`${this.baseUrl}/api/all`),n=await ot(t);return n?(this.lastData=n,n):null}catch{return null}}async fetchExecutionAudit(t){try{const n=new URLSearchParams;t!=null&&t.skillName&&n.set("skillName",t.skillName),t!=null&&t.status&&n.set("status",t.status),t!=null&&t.limit&&n.set("limit",String(t.limit));const r=n.toString(),a=await fetch(`${this.baseUrl}/api/executions${r?`?${r}`:""}`,{signal:AbortSignal.timeout(8e3)}),s=await ot(a);return(s==null?void 0:s.entries)??[]}catch{return[]}}async fetchTraces(){try{const t=await fetch(`${this.baseUrl}/api/traces`,{signal:AbortSignal.timeout(8e3)}),n=await ot(t);return n!=null&&n.traces?n.traces:null}catch{return null}}async fetchAcceptance(){try{const t=await fetch(`${this.baseUrl}/api/acceptance`,{signal:AbortSignal.timeout(8e3)}),n=await ot(t);return!n||typeof n.labelled!="number"?null:n}catch{return null}}acceptanceExportUrl(t="json"){return`${this.baseUrl}/api/acceptance/export?format=${t}`}async importAcceptance(t,n){try{const r=await fetch(`${this.baseUrl}/api/acceptance/import`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({text:t,...n?{format:n}:{}})}),a=await ot(r);return!a||typeof a.ok!="boolean"?null:a}catch{return null}}async fetchDecisions(t,n){try{const r=new URLSearchParams;t&&r.set("dir",t),n&&n.trim()&&r.set("for",n.trim());const a=await fetch(`${this.baseUrl}/api/decisions?${r.toString()}`,{signal:AbortSignal.timeout(8e3)}),s=await ot(a);return!s||!Array.isArray(s.decisions)?null:s}catch{return null}}async reviseDecision(t,n,r,a){try{const s=await fetch(`${this.baseUrl}/api/decisions/revise`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({dir:t,id:n,answer:r,...a?{note:a}:{}})}),o=await ot(s);return!o||o.ok!==!0||!o.decision?null:o.decision}catch{return null}}async fetchGates(){try{const t=await fetch(`${this.baseUrl}/api/gates`,{signal:AbortSignal.timeout(8e3)}),n=await ot(t);return!n||typeof n.events!="number"?null:n}catch{return null}}async fetchConsent(){try{const t=await fetch(`${this.baseUrl}/api/consent`,{signal:AbortSignal.timeout(8e3)}),n=await ot(t);return!n||n.ok!==!0||!n.picture||!n.picture.denied?null:n.picture}catch{return null}}async fetchCapabilities(){try{const t=await fetch(`${this.baseUrl}/api/capabilities`,{signal:AbortSignal.timeout(8e3)}),n=await ot(t);return!n||n.ok!==!0||!Array.isArray(n.verbs)?null:n}catch{return null}}async saveLearnedCommand(t,n,r){try{const a=await fetch(`${this.baseUrl}/api/capabilities/commands`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({verb:t,command:n,...r?{note:r}:{}})}),s=await ot(a);return{ok:(s==null?void 0:s.ok)===!0,commands:s==null?void 0:s.commands,error:s==null?void 0:s.error}}catch{return{ok:!1,error:"Could not reach the server."}}}async forgetLearnedCommand(t){try{const n=await fetch(`${this.baseUrl}/api/capabilities/commands/forget`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({verb:t})}),r=await ot(n);return{ok:(r==null?void 0:r.ok)===!0,commands:r==null?void 0:r.commands,error:r==null?void 0:r.error}}catch{return{ok:!1,error:"Could not reach the server."}}}async fetchSessionGrants(){try{const t=await fetch(`${this.baseUrl}/api/session-grants`,{signal:AbortSignal.timeout(8e3)}),n=await ot(t);return!n||!Array.isArray(n.grants)?null:n.grants}catch{return null}}async revokeSessionGrant(t){try{const n=await fetch(`${this.baseUrl}/api/session-grants/clear`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:t})}),r=await ot(n);return(r==null?void 0:r.ok)===!0}catch{return!1}}async fetchAdminChecks(){try{const t=await fetch(`${this.baseUrl}/api/admin/checks`,{signal:AbortSignal.timeout(15e3)}),n=await ot(t);return!n||!Array.isArray(n.system)||!Array.isArray(n.enterprise)||!Array.isArray(n.providers)?null:n}catch{return null}}async fetchHub(){var t;try{const n=await fetch(`${this.baseUrl}/api/hub`,{signal:AbortSignal.timeout(8e3)}),r=await ot(n);return!r||!Array.isArray((t=r.toolsets)==null?void 0:t.toolsets)?null:r}catch{return null}}async rateTrace(t,n){try{const r=await fetch(`${this.baseUrl}/api/traces/${encodeURIComponent(t)}/verdict`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({verdict:n}),signal:AbortSignal.timeout(8e3)}),a=await ot(r);return a!=null&&a.ok&&a.rated?{traceId:a.rated.traceId,corpusLabeled:!!a.rated.corpusLabeled}:null}catch{return null}}async fetchTraceDetail(t){try{const n=await fetch(`${this.baseUrl}/api/traces/${encodeURIComponent(t)}`,{signal:AbortSignal.timeout(8e3)}),r=await ot(n);return r&&Array.isArray(r.steps)?r:null}catch{return null}}async sendAdminRequest(t,n,r){try{const a=en(),s=await fetch(`${this.baseUrl}${t}`,{method:n,headers:{"Content-Type":"application/json",...a?{Authorization:`Bearer ${a}`}:{}},body:r!==void 0?JSON.stringify(r):void 0,signal:AbortSignal.timeout(15e3)}),o=s.headers.get("content-type")||"";let l=null;if(o.includes("application/json")||o.includes("text/json"))try{l=await s.json()}catch{l=null}return{status:s.status,data:l}}catch{return null}}async fetchAdminAuthStatus(){const t=await this.sendAdminRequest("/api/admin/auth-status","GET");if(!t||typeof t.data!="object"||t.data===null)return null;const n=t.data;return typeof n.configured!="boolean"||typeof n.authenticated!="boolean"?null:{configured:n.configured,authenticated:n.authenticated,user:typeof n.user=="string"?n.user:null,role:typeof n.role=="string"?n.role:null,mustChangePassword:n.mustChangePassword===!0}}async changeAdminPassword(t,n){const r=await this.sendAdminRequest("/api/admin/change-password","POST",{currentPassword:t,newPassword:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?{ok:!0}:{ok:!1,error:a.error||"Could not change the password."}}async fetchAdminUsers(){const t=await this.sendAdminRequest("/api/admin/users","GET");if(!t)return{ok:!1,error:"Could not reach the dashboard server."};const n=t.data??{};return t.status===200&&n.ok&&Array.isArray(n.users)?n:{ok:!1,error:n.error||"Failed to load users.",forbidden:t.status===403,unauthorized:t.status===401}}async addAdminUser(t,n,r){const a=await this.sendAdminRequest("/api/admin/users","POST",{user:t,password:n,role:r});if(!a)return{ok:!1,error:"Could not reach the dashboard server."};const s=a.data??{};return a.status===200&&s.ok?s:{ok:!1,error:s.error||"Failed to add user.",forbidden:a.status===403,unauthorized:a.status===401}}async removeAdminUser(t){const n=await this.sendAdminRequest(`/api/admin/users/${encodeURIComponent(t)}`,"DELETE");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Failed to remove user.",forbidden:n.status===403,unauthorized:n.status===401}}async fetchAdminCatalog(){const t=await this.sendAdminRequest("/api/admin/catalog","GET"),n=t==null?void 0:t.data;return!n||!Array.isArray(n.providers)?null:n.providers}async adminSetup(t,n){const r=await this.sendAdminRequest("/api/admin/setup","POST",{user:t,password:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&typeof a.token=="string"?(sg(a.token),{ok:!0,user:a.user,token:a.token}):{ok:!1,error:a.error||"Setup failed.",unauthorized:r.status===401}}async adminLogin(t,n){const r=await this.sendAdminRequest("/api/admin/login","POST",{user:t,password:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&typeof a.token=="string"?(sg(a.token),{ok:!0,user:a.user,token:a.token}):{ok:!1,error:a.error||"Login failed.",unauthorized:r.status===401}}async adminLogout(){await this.sendAdminRequest("/api/admin/logout","POST"),sg(null)}async shutdown(t){const n=await this.sendAdminRequest("/api/admin/shutdown","POST",{target:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Shutdown failed.",unauthorized:n.status===401,forbidden:n.status===403}}async saveProvider(t,n){const r=await this.sendAdminRequest(`/api/admin/providers/${encodeURIComponent(t)}`,"PUT",n);if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?a:{ok:!1,error:a.error||"Save failed.",unauthorized:r.status===401}}async deleteProvider(t){const n=await this.sendAdminRequest(`/api/admin/providers/${encodeURIComponent(t)}`,"DELETE");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Remove failed.",unauthorized:n.status===401}}async testProvider(t){const n=await this.sendAdminRequest(`/api/admin/providers/${encodeURIComponent(t)}/test`,"POST");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200?r:{ok:!1,error:r.error||"Test failed.",unauthorized:n.status===401}}async fetchOmniRouteStatus(){const t=await this.sendAdminRequest("/api/admin/omniroute","GET");if(!t)return null;const n=t.data??{};return t.status!==200||!n.status?null:n.status}async controlOmniRoute(t){const n=await this.sendAdminRequest("/api/admin/omniroute","POST",{action:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200?r:{ok:!1,error:r.error||"OmniRoute control failed.",unauthorized:n.status===401,forbidden:n.status===403}}async fetchAdminWorkspace(){const t=await this.sendAdminRequest("/api/admin/workspace","GET");if(!t)return null;const n=t.data??{};return t.status!==200||n.ok!==!0?null:{configured:typeof n.configured=="string"?n.configured:null,effective:typeof n.effective=="string"?n.effective:null,processCwd:typeof n.processCwd=="string"?n.processCwd:"",configuredValid:n.configuredValid===!0}}async saveAdminWorkspace(t){const n=await this.sendAdminRequest("/api/admin/workspace","PUT",{cwd:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok===!0?{ok:!0,workspace:{configured:typeof r.configured=="string"?r.configured:null,effective:typeof r.effective=="string"?r.effective:null,processCwd:typeof r.processCwd=="string"?r.processCwd:"",configuredValid:r.configuredValid===!0}}:{ok:!1,error:r.error||"Save failed.",unauthorized:n.status===401,forbidden:n.status===403}}async fetchAdminCache(){const t=await this.sendAdminRequest("/api/admin/cache","GET");if(!t)return null;const n=t.data;return!n||n.ok!==!0||!Array.isArray(n.workspaces)?null:n}async clearAdminCache(t){const n=await this.sendAdminRequest("/api/admin/cache/clear","POST",{scope:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?{ok:!0,removed:r.removed??0}:{ok:!1,error:r.error||"Could not clear the cache.",unauthorized:n.status===401,forbidden:n.status===403}}async fetchAdminServices(){const t=await this.sendAdminRequest("/api/admin/services","GET");if(!t)return null;const n=t.data;return!n||n.ok!==!0||!Array.isArray(n.services)?null:n}async saveService(t,n){const r=await this.sendAdminRequest(`/api/admin/services/${encodeURIComponent(t)}`,"PUT",{values:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?a:{ok:!1,error:a.error||"Save failed.",unauthorized:r.status===401,forbidden:r.status===403}}async testService(t){const n=await this.sendAdminRequest(`/api/admin/services/${encodeURIComponent(t)}/test`,"POST");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200?r:{ok:!1,error:r.error||"Test failed."}}async removeService(t){const n=await this.sendAdminRequest(`/api/admin/services/${encodeURIComponent(t)}`,"DELETE");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Remove failed.",unauthorized:n.status===401,forbidden:n.status===403}}async fetchAdminQuota(){const t=await this.sendAdminRequest("/api/admin/quota","GET");if(!t)return null;const n=t.data;return!n||!n.ok||typeof n.quota!="object"?null:n}async setToolsetEnabled(t,n){const r=await this.sendAdminRequest(`/api/admin/hub/toolsets/${encodeURIComponent(t)}`,"PUT",{enabled:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?a:{ok:!1,error:a.error||"Toggle failed.",unauthorized:r.status===401,forbidden:r.status===403}}async setSkillEnabled(t,n){const r=await this.sendAdminRequest(`/api/admin/hub/skills/${encodeURIComponent(t)}`,"PUT",{enabled:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?a:{ok:!1,error:a.error||"Toggle failed.",unauthorized:r.status===401,forbidden:r.status===403}}async fetchKnowledge(){try{const n=await(await fetch(`${this.baseUrl}/api/knowledge`,{headers:yt(),signal:AbortSignal.timeout(8e3)})).json();return Array.isArray(n.tags)?n.tags:null}catch{return null}}async knowledgeIngest(t,n){try{const r=await fetch(`${this.baseUrl}/api/knowledge/ingest`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({tag:t,paths:n})}),a=await r.json();return r.status===200&&a.ok?{...a,ok:!0}:{ok:!1,error:a.error||"Ingest failed."}}catch(r){return{ok:!1,error:r instanceof Error?r.message:String(r)}}}async knowledgeQuery(t,n,r){try{const a=await fetch(`${this.baseUrl}/api/knowledge/query`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({tag:t,question:n,topK:r})}),s=await a.json();return a.status===200&&s.ok?{...s,ok:!0}:{ok:!1,error:s.error||"Query failed."}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async knowledgeForget(t){try{const n=await fetch(`${this.baseUrl}/api/knowledge/forget`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({tag:t})}),r=await n.json();return n.status===200&&r.ok?{...r,ok:!0}:{ok:!1,error:r.error||"Forget failed."}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async marketplaceSearch(t){try{const r=await(await fetch(`${this.baseUrl}/api/skills/marketplace?q=${encodeURIComponent(t)}`,{headers:yt()})).json();return Array.isArray(r.results)?r.results:[]}catch{return[]}}async marketplaceInstall(t){try{const n=await fetch(`${this.baseUrl}/api/skills/marketplace/install`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({name:t})}),r=await n.json();return n.status===200&&r.ok?{ok:!0}:{ok:!1,error:r.error||"Install failed.",quarantined:r.quarantined===!0}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async marketplaceUninstall(t){try{const n=await fetch(`${this.baseUrl}/api/skills/marketplace/uninstall`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({name:t})}),r=await n.json();return n.status===200&&r.ok?{ok:!0}:{ok:!1,error:r.error||"Uninstall failed."}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async sendChannelMessage(t,n){const r=await this.sendAdminRequest("/api/admin/hub/channels/send","POST",{target:t,text:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?a:{ok:!1,error:a.error||"Send failed.",unauthorized:r.status===401,forbidden:r.status===403}}async gatewayPolicies(){const t=await this.sendAdminRequest("/api/admin/gateway/policies","GET");if(!t)return{ok:!1,error:"Could not reach the dashboard server."};const n=t.data??{};return t.status===200&&n.ok?{ok:!0,policies:n.policies,statusRecipients:n.statusRecipients,contacts:n.contacts,askUserWait:n.askUserWait,askUserTimeoutMs:n.askUserTimeoutMs}:{ok:!1,error:n.error||"Failed to read policies.",unauthorized:t.status===401,forbidden:t.status===403}}async saveGatewayPolicies(t,n,r,a){const s={policies:t};Array.isArray(n)&&(s.statusRecipients=n),Array.isArray(r)&&(s.contacts=r),a&&(s.askUserWait=a.wait,typeof a.timeoutMs=="number"&&(s.askUserTimeoutMs=a.timeoutMs));const o=await this.sendAdminRequest("/api/admin/gateway/policies","PUT",s);if(!o)return{ok:!1,error:"Could not reach the dashboard server."};const l=o.data??{};return o.status===200&&l.ok?l:{ok:!1,error:l.error||"Failed to save policies.",unauthorized:o.status===401,forbidden:o.status===403}}async fetchGatewayConversations(t={}){const n=new URLSearchParams;t.offset&&n.set("offset",String(t.offset)),t.limit&&n.set("limit",String(t.limit)),t.q&&n.set("q",t.q);const r=n.toString(),a=await this.sendAdminRequest(`/api/admin/gateway/conversations${r?`?${r}`:""}`,"GET");if(!a)return{ok:!1,error:"Could not reach the dashboard server."};const s=a.data??{};return a.status===200&&s.ok?{ok:!0,conversations:s.conversations,total:s.total,hasMore:s.hasMore}:{ok:!1,error:s.error||"Failed to load conversations.",unauthorized:a.status===401,forbidden:a.status===403}}async clearGatewayConversation(t){const n=await this.sendAdminRequest("/api/admin/gateway/conversations","DELETE",{key:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?{ok:!0}:{ok:!1,error:r.error||"Failed to clear conversation.",unauthorized:n.status===401,forbidden:n.status===403}}async addConversationTag(t,n){const r=await this.sendAdminRequest("/api/admin/gateway/conversations/tags","PUT",{action:"add",key:t,tag:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?{ok:!0}:{ok:!1,error:a.error||"Failed to add tag.",unauthorized:r.status===401,forbidden:r.status===403}}async removeConversationTag(t,n){const r=await this.sendAdminRequest("/api/admin/gateway/conversations/tags","PUT",{action:"remove",key:t,tag:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?{ok:!0}:{ok:!1,error:a.error||"Failed to remove tag.",unauthorized:r.status===401,forbidden:r.status===403}}async getAllConversationTags(){const t=await this.sendAdminRequest("/api/admin/gateway/conversations/tags","PUT",{action:"getAllTags"});if(!t)return{ok:!1,error:"Could not reach the dashboard server."};const n=t.data??{};return t.status===200&&n.ok?{ok:!0,tags:n.tags}:{ok:!1,error:n.error||"Failed to load tags.",unauthorized:t.status===401,forbidden:t.status===403}}async exportGatewayConversations(t){var n,r,a;try{const s=en(),o=await fetch(`${this.baseUrl}/api/admin/gateway/conversations/export`,{method:"POST",headers:{"Content-Type":"application/json",...s?{Authorization:`Bearer ${s}`}:{}},body:JSON.stringify({keys:t}),signal:AbortSignal.timeout(3e4)});if(o.status===200&&((n=o.headers.get("content-type"))!=null&&n.includes("application/zip"))){const c=await o.blob(),u=URL.createObjectURL(c),d=document.createElement("a");return d.href=u,d.download=((a=(r=o.headers.get("content-disposition"))==null?void 0:r.match(/filename="(.+)"/))==null?void 0:a[1])||"conversations.zip",document.body.appendChild(d),d.click(),document.body.removeChild(d),URL.revokeObjectURL(u),{ok:!0}}return{ok:!1,error:(await o.json().catch(()=>({}))).error||"Export failed."}}catch(s){return{ok:!1,error:s instanceof Error?s.message:String(s)}}}async getContacts(){const t=await this.sendAdminRequest("/api/admin/contacts","GET");if(!t)return{ok:!1,error:"Could not reach the dashboard server."};const n=t.data??{};return t.status===200&&n.ok?{ok:!0,contacts:n.contacts}:{ok:!1,error:n.error||"Failed to read contacts."}}async approveContact(t,n){return this.contactAction("approve",t,n)}async rejectContact(t,n){return this.contactAction("reject",t,n)}async deleteContact(t,n){return this.contactAction("delete",t,n)}async updateContact(t,n,r){const a=await this.sendAdminRequest("/api/admin/contacts","PUT",{action:"update",platform:t,id:n,...r});if(!a)return{ok:!1,error:"Could not reach the dashboard server."};const s=a.data??{};return a.status===200&&s.ok?s:{ok:!1,error:s.error||"Update failed."}}async contactAction(t,n,r){const a=await this.sendAdminRequest("/api/admin/contacts","PUT",{action:t,platform:n,nameOrId:r});if(!a)return{ok:!1,error:"Could not reach the dashboard server."};const s=a.data??{};return a.status===200&&s.ok?s:{ok:!1,error:s.error||`${t} failed.`}}async getPlatformConfigs(){const t=await this.sendAdminRequest("/api/config/platforms","GET");if(!t)return[];const n=t.data??{};return Array.isArray(n.platforms)?n.platforms:[]}async setPlatformConfig(t,n){const r=await this.sendAdminRequest(`/api/config/platforms/${encodeURIComponent(t)}`,"POST",{values:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok?a:{ok:!1,error:a.error||"Save failed.",unauthorized:r.status===401,forbidden:r.status===403}}async removePlatformConfig(t){const n=await this.sendAdminRequest(`/api/config/platforms/${encodeURIComponent(t)}`,"DELETE");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Remove failed.",unauthorized:n.status===401,forbidden:n.status===403}}async verifyPlatformConfig(t,n){const r=await this.sendAdminRequest(`/api/config/platforms/${encodeURIComponent(t)}/verify`,"POST",{values:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return{ok:a.ok??!1,info:a.info,error:a.error}}async saveAdminQuota(t){const n=await this.sendAdminRequest("/api/admin/quota","PUT",t);if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Save failed.",unauthorized:n.status===401}}async getBedrockStatus(){const t=await this.sendAdminRequest("/api/bedrock/status","GET");return!t||t.status!==200?{configured:!1,region:"us-east-1",authMethod:"none",apiKeySet:!1,iamKeySet:!1}:t.data??{}}async setupBedrock(t){const n=await this.sendAdminRequest("/api/bedrock/setup","POST",{envVars:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?{ok:!0,envVarsWritten:r.envVarsWritten}:{ok:!1,error:r.error||"Save failed."}}async probeBedrock(t){const n=await this.sendAdminRequest("/api/bedrock/probe","POST",{region:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?{ok:!0,models:r.models}:{ok:!1,error:r.error||"Probe failed."}}async listTasks(){const t=await this.sendAdminRequest("/api/tasks","GET");if(!t)return null;const n=t.data??{};return{status:t.status,tasks:Array.isArray(n.tasks)?n.tasks:[]}}async startTask(t,n){const r=await this.sendAdminRequest("/api/tasks","POST",{args:t,timeoutMs:n});if(!r)return{ok:!1,error:"Could not reach the dashboard server."};const a=r.data??{};return r.status===200&&a.ok&&a.task?a:{ok:!1,error:a.error||"Start failed.",unauthorized:r.status===401,forbidden:r.status===403}}async getTask(t){const n=await this.sendAdminRequest(`/api/tasks/${encodeURIComponent(t)}`,"GET");if(!n)return null;const r=n.data??{};return{status:n.status,task:r.task??null}}async cancelTask(t){const n=await this.sendAdminRequest(`/api/tasks/${encodeURIComponent(t)}/cancel`,"POST");if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Cancel failed.",unauthorized:n.status===401,forbidden:n.status===403}}subscribeTask(t,n){const r=en(),a=new EventSource(`${this.baseUrl}/api/tasks/${encodeURIComponent(t)}/events?token=${encodeURIComponent(r??"")}`);return a.addEventListener("log",s=>{var o;try{(o=n.onLog)==null||o.call(n,JSON.parse(s.data))}catch{}}),a.addEventListener("status",s=>{var o;try{const l=JSON.parse(s.data);l.status&&((o=n.onStatus)==null||o.call(n,l.status))}catch{}}),()=>a.close()}async getWhatsAppStatus(){const t=await this.sendAdminRequest("/api/whatsapp","GET");if(!t)return null;const n=t.data??{};return t.status===200&&n.ok&&n.status?{status:n.status,contacts:n.contacts??{}}:null}async startWhatsAppPair(t){const n=await this.sendAdminRequest("/api/whatsapp/pair","POST",{phone:t||void 0});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?r:{ok:!1,error:r.error||"Pairing failed to start.",unauthorized:n.status===401,forbidden:n.status===403}}async cancelWhatsAppPair(){const t=await this.sendAdminRequest("/api/whatsapp/cancel","POST");if(!t)return{ok:!1,error:"Could not reach the dashboard server."};const n=t.data??{};return t.status===200&&n.ok?n:{ok:!1,error:n.error||"Cancel failed.",unauthorized:t.status===401,forbidden:t.status===403}}async unpairWhatsApp(){const t=await this.sendAdminRequest("/api/whatsapp/unpair","POST");if(!t)return{ok:!1,error:"Could not reach the dashboard server."};const n=t.data??{};return t.status===200&&n.ok?n:{ok:!1,error:n.error||"Unpair failed.",unauthorized:t.status===401,forbidden:t.status===403}}subscribeWhatsApp(t){const n=en(),r=new EventSource(`${this.baseUrl}/api/whatsapp/events?token=${encodeURIComponent(n??"")}`);return r.addEventListener("qr",a=>{var s;try{const o=JSON.parse(a.data);o.qr&&((s=t.onQr)==null||s.call(t,o.qr))}catch{}}),r.addEventListener("code",a=>{var s;try{const o=JSON.parse(a.data);o.code&&((s=t.onCode)==null||s.call(t,o.code))}catch{}}),r.addEventListener("status",a=>{var s;try{(s=t.onStatus)==null||s.call(t,JSON.parse(a.data))}catch{}}),()=>r.close()}async chatResolve(t){const n=en();try{const r=await fetch(`${this.baseUrl}/api/chat/resolve`,{method:"POST",headers:{"Content-Type":"application/json",...n?{Authorization:`Bearer ${n}`}:{}},body:JSON.stringify({message:t}),signal:AbortSignal.timeout(1e4)}),a=await r.json();return r.status===200&&a.ok&&Array.isArray(a.matches)?{ok:!0,matches:a.matches}:{ok:!1,matches:[],error:typeof a.error=="string"?a.error:"Resolve failed."}}catch{return{ok:!1,matches:[],error:"Could not reach the dashboard server."}}}async listRoutableModels(){const t=en();try{const n=await fetch(`${this.baseUrl}/api/chat/routable-models`,{headers:t?{Authorization:`Bearer ${t}`}:{},signal:AbortSignal.timeout(1e4)}),r=await n.json();return n.status===200&&r.ok&&Array.isArray(r.models)?r.models:[]}catch{return[]}}async listProjects(){const t=en();try{const n=await fetch(`${this.baseUrl}/api/projects`,{headers:t?{Authorization:`Bearer ${t}`}:{},signal:AbortSignal.timeout(1e4)}),r=await n.json();return n.status===200&&r.ok&&Array.isArray(r.projects)?r.projects:[]}catch{return[]}}async attachProject(t){const n=en();try{const r=await fetch(`${this.baseUrl}/api/projects/attach`,{method:"POST",headers:{"Content-Type":"application/json",...n?{Authorization:`Bearer ${n}`}:{}},body:JSON.stringify({path:t}),signal:AbortSignal.timeout(3e4)}),a=await r.json();return r.status===200&&a.ok&&a.project?{ok:!0,project:a.project}:{ok:!1,error:typeof a.error=="string"?a.error:"Attach failed."}}catch{return{ok:!1,error:"Could not reach the dashboard server."}}}async browseDirectories(t,n){const r=en();try{const a=new URLSearchParams;t&&a.set("path",t),n!=null&&n.showDrives&&a.set("showDrives","1");const s=a.toString()?`?${a.toString()}`:"",o=await fetch(`${this.baseUrl}/api/browse${s}`,{headers:r?{Authorization:`Bearer ${r}`}:{},signal:AbortSignal.timeout(1e4)}),l=await o.json();return o.status===200&&l.ok&&Array.isArray(l.entries)?{ok:!0,path:l.path??"",entries:l.entries,parent:l.parent??null,isProject:l.isProject??!1,drives:l.drives,breadcrumbs:l.breadcrumbs}:{ok:!1,path:"",entries:[],parent:null,isProject:!1,error:typeof l.error=="string"?l.error:"Browse failed."}}catch{return{ok:!1,path:"",entries:[],parent:null,isProject:!1,error:"Could not reach the dashboard server."}}}async resolveFolder(t,n){const r=en();try{const a=await fetch(this.baseUrl+"/api/browse/resolve-folder",{method:"POST",headers:{"Content-Type":"application/json",...r?{Authorization:"Bearer "+r}:{}},body:JSON.stringify({name:t,subPath:n||""}),signal:AbortSignal.timeout(1e4)}),s=await a.json();return a.status===200&&s.ok&&s.path?{ok:!0,path:s.path}:{ok:!1,path:"",error:typeof s.error=="string"?s.error:"Could not resolve folder."}}catch{return{ok:!1,path:"",error:"Could not reach the dashboard server."}}}async listChatSessions(){const t=en();try{const n=await fetch(`${this.baseUrl}/api/sessions`,{headers:t?{Authorization:`Bearer ${t}`}:{},signal:AbortSignal.timeout(1e4)}),r=await n.json();return n.status===200&&r.ok&&Array.isArray(r.sessions)?r.sessions:[]}catch{return[]}}async deleteChatSession(t){const n=en();try{const r=await fetch(`${this.baseUrl}/api/sessions/${encodeURIComponent(t)}`,{method:"DELETE",headers:n?{Authorization:`Bearer ${n}`}:{},signal:AbortSignal.timeout(1e4)}),a=await r.json();return r.status===200&&a.ok?{ok:!0}:{ok:!1,error:a.error||"Could not delete the session."}}catch{return{ok:!1,error:"Network error — could not delete the session."}}}async renameChatSession(t,n){const r=en();try{const a=await fetch(`${this.baseUrl}/api/sessions/${encodeURIComponent(t)}/rename`,{method:"POST",headers:{"Content-Type":"application/json",...r?{Authorization:`Bearer ${r}`}:{}},body:JSON.stringify({title:n}),signal:AbortSignal.timeout(1e4)}),s=await a.json();return a.status===200&&s.ok?{ok:!0}:{ok:!1,error:s.error||"Could not rename the session."}}catch{return{ok:!1,error:"Network error — could not rename the session."}}}async getChatSession(t){const n=en();try{const r=await fetch(`${this.baseUrl}/api/sessions/${encodeURIComponent(t)}`,{headers:n?{Authorization:`Bearer ${n}`}:{},signal:AbortSignal.timeout(1e4)}),a=await r.json();return r.status===200&&a.ok&&a.session?a.session:null}catch{return null}}async chatSend(t,n,r,a){const s=en();try{const o=await fetch(`${this.baseUrl}/api/chat`,{method:"POST",headers:{"Content-Type":"application/json",...s?{Authorization:`Bearer ${s}`}:{}},body:JSON.stringify({sessionId:t,message:n,provider:r==null?void 0:r.provider,model:r==null?void 0:r.model,...(r==null?void 0:r.strict)===!0?{strict:!0}:{},projectPath:r==null?void 0:r.projectPath,attachments:r==null?void 0:r.attachments,...(r==null?void 0:r.worktree)===void 0?{}:{worktree:r.worktree},...(r==null?void 0:r.keepWorktree)===void 0?{}:{keepWorktree:r.keepWorktree},...(r==null?void 0:r.resume)===void 0?{}:{resume:r.resume}}),signal:a?AbortSignal.any([AbortSignal.timeout(3e5),a]):AbortSignal.timeout(3e5)}),l=await o.json();return o.status===200&&l.ok?{ok:!0,content:typeof l.content=="string"?l.content:"",followups:Array.isArray(l.followups)?l.followups:[],provider:typeof l.provider=="string"?l.provider:null,model:typeof l.model=="string"?l.model:null,...typeof l.routingNotice=="string"&&l.routingNotice?{routingNotice:l.routingNotice}:{},...typeof l.workspaceNotice=="string"&&l.workspaceNotice?{workspaceNotice:l.workspaceNotice}:{},...typeof l.workspacePath=="string"&&l.workspacePath?{workspacePath:l.workspacePath}:{},...typeof l.workspaceSource=="string"&&l.workspaceSource?{workspaceSource:l.workspaceSource}:{},generationFailed:l.generationFailed===!0,retryQueued:l.retryQueued===!0,...l.needsProject===!0?{needsProject:!0}:{},...l.refused===!0?{refused:!0}:{},...X2(l.worktree)?{worktree:l.worktree}:{},...Q2(l.resume)?{resume:l.resume}:{},...Array.isArray(l.findings)?{findings:l.findings}:{},...Z2(l.turnReport)?{turnReport:l.turnReport}:{}}:{ok:!1,error:typeof l.error=="string"?l.error:"The agent could not answer.",unauthorized:o.status===401,forbidden:o.status===403}}catch{return{ok:!1,error:"Could not reach the dashboard server, or the turn timed out."}}}async chatCancel(t){const n=await this.sendAdminRequest("/api/chat/cancel","POST",{sessionId:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?{ok:!0,cancelled:r.cancelled===!0}:{ok:!1,error:r.error||"Cancel failed."}}async chatReset(t){const n=await this.sendAdminRequest("/api/chat/reset","POST",{sessionId:t});if(!n)return{ok:!1,error:"Could not reach the dashboard server."};const r=n.data??{};return n.status===200&&r.ok?{ok:!0}:{ok:!1,error:r.error||"Reset failed."}}async chatSupportBundle(t){var r,a,s;const n=en();try{const o=await fetch(`${this.baseUrl}/api/chat/${encodeURIComponent(t)}/support-bundle`,{method:"GET",headers:{...n?{Authorization:`Bearer ${n}`}:{}},signal:AbortSignal.timeout(3e4)});if(o.status===200&&((r=o.headers.get("content-type"))!=null&&r.includes("application/zip"))){const c=await o.blob(),u=URL.createObjectURL(c),d=document.createElement("a");return d.href=u,d.download=((s=(a=o.headers.get("content-disposition"))==null?void 0:a.match(/filename="(.+)"/))==null?void 0:s[1])||"nuvira-support.zip",document.body.appendChild(d),d.click(),document.body.removeChild(d),URL.revokeObjectURL(u),{ok:!0}}return{ok:!1,error:(await o.json().catch(()=>({}))).error||"Could not build the support bundle."}}catch(o){return{ok:!1,error:o instanceof Error?o.message:"Could not reach the dashboard server."}}}subscribeChat(t,n){const r=en(),a=new EventSource(`${this.baseUrl}/api/chat/${encodeURIComponent(t)}/events?token=${encodeURIComponent(r??"")}`);return a.addEventListener("progress",s=>{var o;try{const l=JSON.parse(s.data);l.line&&((o=n.onProgress)==null||o.call(n,l.line))}catch{}}),a.addEventListener("status",s=>{var o;try{const l=JSON.parse(s.data);l.status&&((o=n.onStatus)==null||o.call(n,l.status))}catch{}}),a.addEventListener("token",s=>{var o;try{const l=JSON.parse(s.data);typeof l.text=="string"&&l.text.length>0&&((o=n.onToken)==null||o.call(n,l.text))}catch{}}),a.addEventListener("tool",s=>{var o;try{const l=JSON.parse(s.data);l.tool&&(l.phase==="started"||l.phase==="called")&&((o=n.onTool)==null||o.call(n,{id:l.id||`call_${Math.random().toString(36).slice(2,8)}`,tool:l.tool,phase:l.phase,args:l.args,ok:l.ok,result:l.result,error:l.error,durationMs:l.durationMs}))}catch{}}),a.addEventListener("plan",s=>{var o;try{const l=JSON.parse(s.data);l.goal&&Array.isArray(l.steps)&&((o=n.onPlan)==null||o.call(n,{goal:l.goal,steps:l.steps,revision:l.revision??0}))}catch{}}),a.addEventListener("diff",s=>{var o;try{const l=JSON.parse(s.data);Array.isArray(l.files)&&((o=n.onDiff)==null||o.call(n,{files:l.files,summary:l.summary??""}))}catch{}}),a.addEventListener("finding",s=>{var o;try{const c=JSON.parse(s.data).finding;c&&typeof c.claim=="string"&&(c.verdict==="CONFIRMED"||c.verdict==="PLAUSIBLE")&&((o=n.onFinding)==null||o.call(n,{claim:c.claim,verdict:c.verdict,outcome:typeof c.outcome=="string"?c.outcome:"",evidence:Array.isArray(c.evidence)?c.evidence:[],source:typeof c.source=="string"?c.source:""}))}catch{}}),a.addEventListener("skill_draft",s=>{var o;try{const l=JSON.parse(s.data);l.name&&l.markdown&&((o=n.onSkillDraft)==null||o.call(n,{name:l.name,description:l.description??"",markdown:l.markdown,updatedAt:l.updatedAt??0}))}catch{}}),a.addEventListener("secret_request",s=>{var o;try{const l=JSON.parse(s.data);l.skillName&&Array.isArray(l.missing)&&((o=n.onSecretRequest)==null||o.call(n,{skillName:l.skillName,missing:l.missing,persisted:l.persisted??{}}))}catch{}}),a.addEventListener("execution_result",s=>{var o;try{const l=JSON.parse(s.data);l.skillName&&l.runtime!==void 0&&((o=n.onExecutionResult)==null||o.call(n,{skillName:l.skillName,runtime:l.runtime,success:l.success??!1,durationMs:l.durationMs??0,exitCode:l.exitCode??0,stdout:l.stdout??"",stderr:l.stderr??"",timestamp:l.timestamp??Date.now()}))}catch{}}),a.addEventListener("question",s=>{var o;try{const l=JSON.parse(s.data);l.questionId&&l.question&&((o=n.onQuestion)==null||o.call(n,{questionId:l.questionId,question:l.question,choices:l.choices??[],multiSelect:l.multiSelect===!0}))}catch{}}),()=>a.close()}async chatRespond(t,n,r={}){try{const s=await(await fetch(`${this.baseUrl}/api/chat/${encodeURIComponent(t)}/respond`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({questionId:n,...r})})).json();return{ok:s.ok===!0,error:s.error}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async skillDraftAccept(t){try{const r=await(await fetch(`${this.baseUrl}/api/skills/drafts/${encodeURIComponent(t)}/accept`,{method:"POST",headers:{...yt()}})).json();return{ok:r.ok===!0,error:r.error}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async skillDraftReject(t){try{const r=await(await fetch(`${this.baseUrl}/api/skills/drafts/${encodeURIComponent(t)}`,{method:"DELETE",headers:{...yt()}})).json();return{ok:r.ok===!0,error:r.error}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async saveSecrets(t){try{const r=await(await fetch(`${this.baseUrl}/api/skills/secrets`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({vars:t})})).json();return{ok:r.ok===!0,error:r.error,saved:r.saved,refused:r.refused}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async fetchSkillEnv(){try{const t=await fetch(`${this.baseUrl}/api/skills/env`,{headers:{...yt()}}),n=await ot(t);return(n==null?void 0:n.vars)??[]}catch{return[]}}async deleteSkillEnvVar(t){try{const r=await(await fetch(`${this.baseUrl}/api/skills/env/delete`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({name:t})})).json();return{ok:r.ok===!0,removed:r.removed,error:r.error}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async testSkillEnvVar(t){try{const r=await(await fetch(`${this.baseUrl}/api/skills/env/test`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({name:t})})).json();return{ok:r.ok===!0,usable:r.usable,detail:r.detail,error:r.error}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async fetchProcessEnv(){try{const t=await fetch(`${this.baseUrl}/api/process-env`,{headers:{...yt()}}),n=await ot(t);return(n==null?void 0:n.vars)??[]}catch{return[]}}async fetchLimits(){try{const t=await fetch(`${this.baseUrl}/api/limits`),n=await ot(t);return!n||typeof n.attachmentMaxBytes!="number"||n.attachmentMaxBytes<=0?null:{attachmentMaxBytes:n.attachmentMaxBytes,extractMaxChars:typeof n.extractMaxChars=="number"?n.extractMaxChars:0}}catch{return null}}async fetchContinuity(){try{const t=await fetch(`${this.baseUrl}/api/continuity`,{headers:{...yt()}}),n=await ot(t);return!n||n.ok!==!0?null:{sessions:n.sessions??[],recall:n.recall??[],toggles:n.toggles??{sessionStore:!1,sessionRecall:!1}}}catch{return null}}async clearContinuity(t,n,r){try{const s=await(await fetch(`${this.baseUrl}/api/continuity/clear`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({target:t,...n?{id:n}:{},...r?{olderThanMs:r}:{}})})).json();return{ok:s.ok===!0,removed:s.removed,error:s.error}}catch(a){return{ok:!1,error:a instanceof Error?a.message:String(a)}}}async fetchHistory(){try{const t=await fetch(`${this.baseUrl}/api/history`,{headers:{...yt()}});return await ot(t)}catch{return null}}async clearHistory(t,n={}){try{const a=await(await fetch(`${this.baseUrl}/api/history/clear`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({target:t,...n.id?{id:n.id}:{},...n.olderThanMs?{olderThanMs:n.olderThanMs}:{}})})).json();return{ok:a.ok===!0,removed:a.removed,error:a.error}}catch(r){return{ok:!1,error:r instanceof Error?r.message:String(r)}}}async fetchVerifyBacklog(){try{const t=await fetch(`${this.baseUrl}/api/models/verify-next`,{headers:{...yt()}});return await ot(t)}catch{return null}}async startVerifyBacklog(t){try{const n=await fetch(`${this.baseUrl}/api/models/verify-next`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({count:t})}),r=await ot(n);return r?{ok:r.ok===!0,error:r.error,refusal:r.refusal,state:r.state}:{ok:!1,error:"The dashboard server did not respond."}}catch(n){return{ok:!1,error:n instanceof Error?n.message:"Could not start the run."}}}async saveProcessEnvVar(t,n){try{const a=await(await fetch(`${this.baseUrl}/api/process-env`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({name:t,value:n})})).json();return{ok:a.ok===!0,row:a.row,error:a.error,reason:a.reason}}catch(r){return{ok:!1,error:r instanceof Error?r.message:String(r)}}}async deleteProcessEnvVar(t){try{const r=await(await fetch(`${this.baseUrl}/api/process-env/delete`,{method:"POST",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({name:t})})).json();return{ok:r.ok===!0,removed:r.removed,row:r.row,error:r.error}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}async fetchHooks(){try{const t=await fetch(`${this.baseUrl}/api/hooks`,{headers:{...yt()}}),n=await ot(t);return!n||!Array.isArray(n.hooks)?null:n}catch{return null}}async saveHooks(t){try{const n=await fetch(`${this.baseUrl}/api/hooks`,{method:"PUT",headers:{"Content-Type":"application/json",...yt()},body:JSON.stringify({hooks:t})}),r=await n.json();return{ok:r.ok===!0,hooks:r.hooks,error:r.error,forbidden:n.status===403}}catch(n){return{ok:!1,error:n instanceof Error?n.message:String(n)}}}}const K=new aB,au=["enterprise","neutral","pastel","executive","contrast"],Rp=["light","dark"],Zx=[100,112,125,150],rh={enterprise:"Enterprise",neutral:"Neutral",pastel:"Pastel",executive:"Executive",contrast:"High contrast"},AT="nuvira.dashboard.theme",rS={palette:"enterprise",mode:"dark",a11y:!1,fontScale:100};function Io(e,t){return e.includes(t)}function iB(){return typeof window>"u"||typeof window.matchMedia!="function"?null:window.matchMedia("(prefers-color-scheme: dark)").matches}function CT(){const e=iB();return e===null?{...rS}:{...rS,mode:e?"dark":"light"}}function TT(){const e=CT();if(typeof localStorage>"u")return e;let t;try{const a=localStorage.getItem(AT);if(!a)return e;t=JSON.parse(a)}catch{return e}if(typeof t!="object"||t===null)return e;const n=t,r=Io(Zx,n.fontScale)?n.fontScale:e.fontScale;return{palette:Io(au,n.palette)?n.palette:e.palette,mode:Io(Rp,n.mode)?n.mode:e.mode,a11y:typeof n.a11y=="boolean"?n.a11y:e.a11y,fontScale:r}}function OT(e){if(!(typeof localStorage>"u"))try{localStorage.setItem(AT,JSON.stringify(e))}catch{}}function Jx(e,t){const n=typeof document<"u"?document.documentElement:void 0;n&&(n.setAttribute("data-palette",e.palette),n.setAttribute("data-mode",e.mode),n.setAttribute("data-a11y",e.a11y?"on":"off"),n.setAttribute("data-font-scale",String(e.fontScale)),n.style.colorScheme=e.mode)}function sB(e,t){const n={palette:Io(au,t.palette)?t.palette:e.palette,mode:Io(Rp,t.mode)?t.mode:e.mode,a11y:t.a11y??e.a11y,fontScale:Io(Zx,t.fontScale)?t.fontScale:e.fontScale};return n.a11y||(n.fontScale=100),n}let gr=TT();const my=new Set;function PT(){for(const e of my)e()}function oB(e){return my.add(e),()=>{my.delete(e)}}function aS(){return gr}function zd(e){const t=sB(gr,e);t.palette===gr.palette&&t.mode===gr.mode&&t.a11y===gr.a11y&&t.fontScale===gr.fontScale||(gr=t,Jx(gr),OT(gr),PT())}function lB(){gr=CT(),Jx(gr),OT(gr),PT()}function cB(){return x.useSyncExternalStore(oB,aS,aS)}const iS={light:"Light",dark:"Dark"},sS={100:"100%",112:"112%",125:"125%",150:"150%"};function uB(){const e=cB(),[t,n]=x.useState(!1),r=x.useRef(null),a=x.useRef(null),s=x.useRef(null),o=x.useId(),l=`${o}-panel`;x.useEffect(()=>{if(!t)return;function u(f){var h;f.key==="Escape"&&(n(!1),(h=r.current)==null||h.focus())}function d(f){var p;const h=f.target;h&&((p=s.current)!=null&&p.contains(h))||n(!1)}return document.addEventListener("keydown",u),document.addEventListener("pointerdown",d),()=>{document.removeEventListener("keydown",u),document.removeEventListener("pointerdown",d)}},[t]),x.useEffect(()=>{var d,f,h;if(!t)return;(h=((d=a.current)==null?void 0:d.querySelector("input:checked"))??((f=a.current)==null?void 0:f.querySelector("input")))==null||h.focus()},[t]);const c=`${rh[e.palette]} palette, ${iS[e.mode].toLowerCase()} mode, text size ${sS[e.fontScale]}`+(e.a11y?", accessibility mode on":"");return i.jsxs("div",{className:"theme-switcher",ref:s,onBlur:u=>{const d=u.relatedTarget;d&&!u.currentTarget.contains(d)&&n(!1)},children:[i.jsxs("button",{type:"button",ref:r,className:"theme-trigger","aria-expanded":t,"aria-controls":t?l:void 0,onClick:()=>n(u=>!u),children:[i.jsx("span",{"aria-hidden":"true",children:"🎨"}),i.jsx("span",{children:"Appearance"})]}),t&&i.jsxs("div",{className:"theme-panel",id:l,ref:a,children:[i.jsxs("fieldset",{className:"theme-group",children:[i.jsx("legend",{className:"theme-group-label",children:"Palette"}),au.map(u=>i.jsxs("label",{className:"theme-option",children:[i.jsx("input",{type:"radio",name:`${o}-palette`,value:u,checked:e.palette===u,onChange:()=>zd({palette:u})}),i.jsx("span",{className:"theme-swatch","data-swatch":u,"aria-hidden":"true"}),i.jsx("span",{className:"theme-option-label",children:rh[u]})]},u))]}),i.jsxs("fieldset",{className:"theme-group",children:[i.jsx("legend",{className:"theme-group-label",children:"Mode"}),Rp.map(u=>i.jsxs("label",{className:"theme-option",children:[i.jsx("input",{type:"radio",name:`${o}-mode`,value:u,checked:e.mode===u,onChange:()=>zd({mode:u})}),i.jsx("span",{className:"theme-option-label",children:iS[u]})]},u))]}),i.jsxs("fieldset",{className:"theme-group",children:[i.jsx("legend",{className:"theme-group-label",children:"Text size"}),Zx.map(u=>i.jsxs("label",{className:"theme-option",children:[i.jsx("input",{type:"radio",name:`${o}-scale`,value:u,checked:e.fontScale===u,onChange:()=>zd({fontScale:u,a11y:e.a11y||u!==100})}),i.jsx("span",{className:"theme-option-label",children:sS[u]})]},u)),!e.a11y&&i.jsx("p",{className:"theme-hint",children:"A larger size turns on accessibility mode, which is what defines it."})]}),i.jsxs("div",{className:"theme-group",children:[i.jsxs("label",{className:"theme-switch",children:[i.jsx("input",{type:"checkbox",checked:e.a11y,onChange:u=>zd({a11y:u.target.checked})}),i.jsx("span",{className:"theme-switch-track","aria-hidden":"true"}),i.jsx("span",{className:"theme-option-label",children:"Accessibility mode"})]}),i.jsx("p",{className:"theme-hint",children:"Larger targets, stronger borders and no motion. Off by default so it never changes the look for anyone who does not need it."})]}),i.jsx("button",{type:"button",className:"theme-reset",onClick:lB,children:"Reset to system default"}),i.jsx("p",{className:"sr-only",role:"status",children:c})]})]})}function dB(){const[e,t]=x.useState(null),[n,r]=x.useState(!1),[a,s]=x.useState(""),[o,l]=x.useState(""),[c,u]=x.useState(!1),[d,f]=x.useState(null),h=x.useRef(null),p=x.useCallback(()=>{K.fetchAdminAuthStatus().then(w=>t(w))},[]);x.useEffect(()=>{p()},[p]),x.useEffect(()=>{if(!n)return;function w(k){h.current&&!h.current.contains(k.target)&&r(!1)}function j(k){k.key==="Escape"&&r(!1)}return document.addEventListener("mousedown",w),document.addEventListener("keydown",j),()=>{document.removeEventListener("mousedown",w),document.removeEventListener("keydown",j)}},[n]);const g=(e==null?void 0:e.authenticated)===!0,m=(e==null?void 0:e.configured)===!0,y=async w=>{w.preventDefault(),u(!0),f(null);const j=m?await K.adminLogin(a,o):await K.adminSetup(a,o);j.ok?(s(""),l(""),r(!1),p()):f(j.error||(m?"Login failed.":"Setup failed.")),u(!1)},v=async()=>{r(!1),await K.adminLogout(),p()},S=e?g?`👤 ${e.user||"account"}${e.role?` · ${e.role}`:""}`:"👤 Sign in":"👤 Account";return i.jsxs("div",{className:"topbar-account",ref:h,children:[i.jsx("button",{type:"button",className:"topbar-action","aria-haspopup":"menu","aria-expanded":n,onClick:()=>r(w=>!w),children:S}),n?i.jsx("div",{className:"topbar-account-menu",role:"menu",children:g?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"topbar-account-user",children:[i.jsx("span",{children:(e==null?void 0:e.user)||"account"}),e!=null&&e.role?i.jsx("span",{className:`admin-role-badge admin-role-${e.role}`,children:e.role}):null]}),e!=null&&e.mustChangePassword?i.jsx("p",{className:"topbar-account-hint",children:"Still on the first-run password — change it on the Admin page before writes will work."}):null,i.jsx("button",{type:"button",className:"topbar-account-item",onClick:()=>void v(),children:"🚪 Log out"})]}):i.jsxs("form",{className:"topbar-account-form",onSubmit:y,children:[i.jsx("p",{className:"topbar-account-title",children:m?"Sign in":"Create the first admin"}),i.jsxs("label",{children:[i.jsx("span",{children:"Username"}),i.jsx("input",{type:"text",value:a,onChange:w=>s(w.target.value),autoComplete:"username",placeholder:"admin"})]}),i.jsxs("label",{children:[i.jsx("span",{children:"Password"}),i.jsx("input",{type:"password",value:o,onChange:w=>l(w.target.value),autoComplete:m?"current-password":"new-password",placeholder:"••••••••"})]}),d?i.jsx("div",{className:"admin-error",children:d}):null,i.jsx("button",{type:"submit",className:"admin-refresh-btn",disabled:c||!a||!o,children:c?"⏳ …":m?"🔐 Sign in":"🔐 Create admin"}),m?null:i.jsx("p",{className:"topbar-account-hint",children:"The first user is always an admin."})]})}):null]})}const RT=[{group:"General",items:[{keys:["?"],description:"Show the shortcut cheatsheet"},{keys:["F1"],description:"Open the Help page"},{keys:["Esc"],description:"Close a dialog or panel"},{keys:["g","c"],description:"Go to Chat"},{keys:["g","o"],description:"Go to Overview"},{keys:["g","t"],description:"Go to Tasks"},{keys:["g","m"],description:"Go to Models"},{keys:["g","s"],description:"Go to System"},{keys:["g","h"],description:"Go to Agent Hub"}]},{group:"Navigation",items:[{keys:["/"],description:"Focus the navigation filter"},{keys:["["],description:"Collapse / expand the navigation drawer"}]}],fB={c:"/chat",o:"/overview",t:"/tasks",m:"/models",s:"/system",h:"/hub"};function hB(e){var a;const t=e;if(!t||typeof t.tagName!="string")return!1;if(t.isContentEditable)return!0;const n=(a=t.getAttribute)==null?void 0:a.call(t,"contenteditable");if(n!=null&&n!=="false")return!0;const r=t.tagName.toLowerCase();return r==="input"||r==="textarea"||r==="select"}function pB({open:e,onClose:t}){const n=x.useId(),r=x.useRef(null),a=x.useRef(null);return x.useEffect(()=>{var l;if(!e)return;a.current=document.activeElement;const s=()=>{var c;return Array.from(((c=r.current)==null?void 0:c.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])'))??[])};(l=s()[0])==null||l.focus();function o(c){if(c.key==="Escape"){c.stopPropagation(),t();return}if(c.key!=="Tab")return;const u=s();if(u.length===0)return;const d=u[0],f=u[u.length-1];c.shiftKey&&document.activeElement===d?(c.preventDefault(),f.focus()):!c.shiftKey&&document.activeElement===f&&(c.preventDefault(),d.focus())}return document.addEventListener("keydown",o),()=>{var c;document.removeEventListener("keydown",o),(c=a.current)==null||c.focus()}},[e,t]),e?i.jsx("div",{className:"modal-scrim",onClick:t,children:i.jsxs("div",{className:"shortcuts-dialog",role:"dialog","aria-modal":"true","aria-labelledby":n,ref:r,onClick:s=>s.stopPropagation(),children:[i.jsxs("div",{className:"shortcuts-head",children:[i.jsx("h2",{className:"shortcuts-title",id:n,children:"⌨️ Keyboard shortcuts"}),i.jsx("button",{type:"button",className:"btn-secondary",onClick:t,"aria-label":"Close keyboard shortcuts",children:"✕ Close"})]}),RT.map(s=>i.jsxs("section",{className:"shortcuts-group",children:[i.jsx("h3",{className:"shortcuts-group-title",children:s.group}),i.jsx("dl",{className:"shortcuts-list",children:s.items.map(o=>i.jsxs("div",{className:"shortcuts-row",children:[i.jsx("dt",{className:"shortcuts-keys",children:o.keys.map(l=>i.jsx("kbd",{className:"shortcuts-key",children:l},l))}),i.jsx("dd",{className:"shortcuts-description",children:o.description})]},o.description))})]},s.group)),i.jsxs("p",{className:"shortcuts-note",children:["Shortcuts are ignored while you are typing, so ",i.jsx("kbd",{className:"shortcuts-key",children:"?"})," in a question stays a question mark."]})]})}):null}const MT=[{path:"/overview",label:"Overview",icon:"📊"},{path:"/tasks",label:"Tasks",icon:"🚀"},{path:"/models",label:"Models",icon:"🧠"},{path:"/system",label:"System",icon:"⚙️"},{path:"/help",label:"Help",icon:"❓"}],gy=[{label:"Agent Management",items:[{path:"/chat",label:"Chat",icon:"💬"},{path:"/hub",label:"Agent Hub",icon:"🧰"},{path:"/capabilities",label:"Capabilities",icon:"📋"},{path:"/dag",label:"Execution",icon:"🔀"},{path:"/routing",label:"Routing",icon:"🤖"},{path:"/requests",label:"Requests",icon:"📨"},{path:"/hooks",label:"Hooks",icon:"🪝"}]},{label:"Analysis & Monitoring",items:[{path:"/traces",label:"Traces",icon:"🔍"},{path:"/evals",label:"Evals",icon:"🏆"},{path:"/benchmarks",label:"Benchmarks",icon:"📈"},{path:"/costs",label:"Costs",icon:"💰"}]},{label:"Resources",items:[{path:"/memory",label:"Memory",icon:"💾"},{path:"/knowledge",label:"Knowledge",icon:"📚"},{path:"/history",label:"History",icon:"📝"},{path:"/decisions",label:"Decisions",icon:"🧭"},{path:"/env",label:"Env Config",icon:"🔐"},{path:"/process-env",label:"Process Env",icon:"🌱"}]},{label:"Integrations",items:[{path:"/platforms",label:"Platforms",icon:"🌐"},{path:"/gateway",label:"Gateway",icon:"📡"},{path:"/contacts",label:"Contacts",icon:"📇"},{path:"/bedrock",label:"Bedrock",icon:"🪨"}]},{label:"Runtime",items:[{path:"/models/timeline",label:"Timeline",icon:"📅"},{path:"/executions",label:"Executions",icon:"📜"},{path:"/admin",label:"Admin",icon:"🛠️"}]}];function mB(e){const t=e.trim().toLowerCase();return t?gy.map(n=>n.label.toLowerCase().includes(t)?n:{...n,items:n.items.filter(r=>r.label.toLowerCase().includes(t))}).filter(n=>n.items.length>0):gy}function gB({children:e,connected:t,lastUpdated:n,onRefresh:r,refreshing:a=!1}){const[s,o]=x.useState(!1),[l,c]=x.useState(""),[u,d]=x.useState(!1),f=x.useRef(null),h=x.useRef(null),p=x.useRef(0),g=x.useId(),m=Ri(),y=Qx(),v=t?"connected":"reconnecting",S=t?"Connected":"Reconnecting...",w=mB(l),j=()=>o(!1);return x.useEffect(()=>{function k(b){var N,_;if(!(b.metaKey||b.ctrlKey||b.altKey)&&!hB(b.target)){if(b.key==="Escape"){if(u)return;s&&(o(!1),(N=f.current)==null||N.focus());return}if(b.key==="?"){b.preventDefault(),d(!0);return}if(b.key==="F1"){b.preventDefault(),y("/help");return}if(b.key==="/"){b.preventDefault(),(_=h.current)==null||_.focus();return}if(b.key==="["){b.preventDefault(),o(T=>!T);return}if(b.key==="g"){p.current=Date.now();return}if(Date.now()-p.current<1500){const T=fB[b.key.toLowerCase()];p.current=0,T&&(b.preventDefault(),y(T))}}}return document.addEventListener("keydown",k),()=>document.removeEventListener("keydown",k)},[s,u,y]),x.useEffect(()=>{var k;s&&((k=h.current)==null||k.focus())},[s]),x.useEffect(()=>{j()},[m.pathname]),i.jsxs("div",{className:"layout",children:[i.jsxs("header",{className:"topbar",children:[i.jsx("button",{type:"button",ref:f,className:"topbar-menu","aria-label":"Toggle navigation","aria-controls":"app-nav","aria-expanded":s,onClick:()=>o(k=>!k),children:i.jsx("span",{"aria-hidden":"true",children:"☰"})}),i.jsxs("div",{className:"topbar-brand",children:[i.jsx("span",{className:"topbar-logo","aria-hidden":"true",children:"🤖"}),i.jsx("span",{className:"topbar-title",children:"Agent-Nuvira"})]}),i.jsx("nav",{className:"primary-nav","aria-label":"Primary",children:MT.map(k=>i.jsxs(tS,{to:k.path,end:!0,className:({isActive:b})=>`primary-link${b?" active":""}`,children:[i.jsx("span",{"aria-hidden":"true",children:k.icon})," ",k.label]},k.path))}),i.jsxs("div",{className:"topbar-actions",children:[i.jsxs("button",{type:"button",className:"topbar-action",onClick:r,disabled:a,"aria-busy":a,children:[i.jsx("span",{"aria-hidden":"true",children:"⟳"})," ",a?"Refreshing…":"Refresh"]}),i.jsxs("button",{type:"button",className:"topbar-action","aria-haspopup":"dialog","aria-expanded":u,onClick:()=>d(!0),children:[i.jsx("span",{"aria-hidden":"true",children:"⌨️"})," Shortcuts"]}),i.jsx(uB,{}),i.jsxs("a",{className:"topbar-action",href:"https://www.agent-nuvira.com",target:"_blank",rel:"noopener noreferrer",title:"Agent-Nuvira website — capabilities, commands, docs, setup",children:[i.jsx("span",{"aria-hidden":"true",children:"🌐"})," Website"]}),i.jsx(dB,{})]})]}),i.jsxs("div",{className:"layout-body",children:[s&&i.jsx("div",{className:"nav-scrim",onClick:j,"aria-hidden":"true"}),i.jsxs("nav",{className:`nav${s?" open":""}`,id:"app-nav","aria-label":"Sections",children:[i.jsxs("div",{className:"nav-search",children:[i.jsx("label",{className:"sr-only",htmlFor:g,children:"Filter navigation"}),i.jsx("input",{id:g,ref:h,type:"search",className:"nav-search-input",placeholder:"Search",value:l,onChange:k=>c(k.target.value)})]}),i.jsxs("div",{className:"nav-links",children:[w.map(k=>i.jsxs("section",{className:"nav-group",children:[i.jsx("h2",{className:"nav-group-title",children:k.label}),k.items.map(b=>i.jsxs(tS,{to:b.path,end:b.path==="/",className:({isActive:N})=>`nav-link${N?" active":""}`,children:[i.jsx("span",{className:"nav-icon","aria-hidden":"true",children:b.icon}),b.label]},b.path))]},k.label)),w.length===0&&i.jsxs("p",{className:"nav-empty",children:["No sections match “",l,"”."]})]}),i.jsxs("div",{className:"nav-footer",children:[i.jsx("span",{className:`status-dot ${v}`}),i.jsx("span",{className:"status-text",children:S}),i.jsx("span",{className:"last-updated",children:n})]})]}),i.jsx("main",{className:"main",children:e})]}),i.jsx(pB,{open:u,onClose:()=>d(!1)})]})}function IT(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var a=e.length;for(t=0;t<a;t++)e[t]&&(n=IT(e[t]))&&(r&&(r+=" "),r+=n)}else for(n in e)e[n]&&(r&&(r+=" "),r+=n);return r}function Qe(){for(var e,t,n=0,r="",a=arguments.length;n<a;n++)(e=arguments[n])&&(t=IT(e))&&(r&&(r+=" "),r+=t);return r}var vB=Array.isArray,Hn=vB,yB=typeof li=="object"&&li&&li.Object===Object&&li,$T=yB,bB=$T,xB=typeof self=="object"&&self&&self.Object===Object&&self,wB=bB||xB||Function("return this")(),pa=wB,kB=pa,SB=kB.Symbol,Xu=SB,oS=Xu,LT=Object.prototype,jB=LT.hasOwnProperty,NB=LT.toString,tc=oS?oS.toStringTag:void 0;function EB(e){var t=jB.call(e,tc),n=e[tc];try{e[tc]=void 0;var r=!0}catch{}var a=NB.call(e);return r&&(t?e[tc]=n:delete e[tc]),a}var _B=EB,AB=Object.prototype,CB=AB.toString;function TB(e){return CB.call(e)}var OB=TB,lS=Xu,PB=_B,RB=OB,MB="[object Null]",IB="[object Undefined]",cS=lS?lS.toStringTag:void 0;function $B(e){return e==null?e===void 0?IB:MB:cS&&cS in Object(e)?PB(e):RB(e)}var Ba=$B;function LB(e){return e!=null&&typeof e=="object"}var za=LB,DB=Ba,BB=za,zB="[object Symbol]";function FB(e){return typeof e=="symbol"||BB(e)&&DB(e)==zB}var kl=FB,UB=Hn,WB=kl,HB=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,GB=/^\w*$/;function qB(e,t){if(UB(e))return!1;var n=typeof e;return n=="number"||n=="symbol"||n=="boolean"||e==null||WB(e)?!0:GB.test(e)||!HB.test(e)||t!=null&&e in Object(t)}var ew=qB;function KB(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}var Mi=KB;const Sl=tt(Mi);var VB=Ba,YB=Mi,XB="[object AsyncFunction]",QB="[object Function]",ZB="[object GeneratorFunction]",JB="[object Proxy]";function ez(e){if(!YB(e))return!1;var t=VB(e);return t==QB||t==ZB||t==XB||t==JB}var tw=ez;const De=tt(tw);var tz=pa,nz=tz["__core-js_shared__"],rz=nz,og=rz,uS=function(){var e=/[^.]+$/.exec(og&&og.keys&&og.keys.IE_PROTO||"");return e?"Symbol(src)_1."+e:""}();function az(e){return!!uS&&uS in e}var iz=az,sz=Function.prototype,oz=sz.toString;function lz(e){if(e!=null){try{return oz.call(e)}catch{}try{return e+""}catch{}}return""}var DT=lz,cz=tw,uz=iz,dz=Mi,fz=DT,hz=/[\\^$.*+?()[\]{}|]/g,pz=/^\[object .+?Constructor\]$/,mz=Function.prototype,gz=Object.prototype,vz=mz.toString,yz=gz.hasOwnProperty,bz=RegExp("^"+vz.call(yz).replace(hz,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function xz(e){if(!dz(e)||uz(e))return!1;var t=cz(e)?bz:pz;return t.test(fz(e))}var wz=xz;function kz(e,t){return e==null?void 0:e[t]}var Sz=kz,jz=wz,Nz=Sz;function Ez(e,t){var n=Nz(e,t);return jz(n)?n:void 0}var Us=Ez,_z=Us,Az=_z(Object,"create"),Mp=Az,dS=Mp;function Cz(){this.__data__=dS?dS(null):{},this.size=0}var Tz=Cz;function Oz(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}var Pz=Oz,Rz=Mp,Mz="__lodash_hash_undefined__",Iz=Object.prototype,$z=Iz.hasOwnProperty;function Lz(e){var t=this.__data__;if(Rz){var n=t[e];return n===Mz?void 0:n}return $z.call(t,e)?t[e]:void 0}var Dz=Lz,Bz=Mp,zz=Object.prototype,Fz=zz.hasOwnProperty;function Uz(e){var t=this.__data__;return Bz?t[e]!==void 0:Fz.call(t,e)}var Wz=Uz,Hz=Mp,Gz="__lodash_hash_undefined__";function qz(e,t){var n=this.__data__;return this.size+=this.has(e)?0:1,n[e]=Hz&&t===void 0?Gz:t,this}var Kz=qz,Vz=Tz,Yz=Pz,Xz=Dz,Qz=Wz,Zz=Kz;function jl(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}jl.prototype.clear=Vz;jl.prototype.delete=Yz;jl.prototype.get=Xz;jl.prototype.has=Qz;jl.prototype.set=Zz;var Jz=jl;function eF(){this.__data__=[],this.size=0}var tF=eF;function nF(e,t){return e===t||e!==e&&t!==t}var nw=nF,rF=nw;function aF(e,t){for(var n=e.length;n--;)if(rF(e[n][0],t))return n;return-1}var Ip=aF,iF=Ip,sF=Array.prototype,oF=sF.splice;function lF(e){var t=this.__data__,n=iF(t,e);if(n<0)return!1;var r=t.length-1;return n==r?t.pop():oF.call(t,n,1),--this.size,!0}var cF=lF,uF=Ip;function dF(e){var t=this.__data__,n=uF(t,e);return n<0?void 0:t[n][1]}var fF=dF,hF=Ip;function pF(e){return hF(this.__data__,e)>-1}var mF=pF,gF=Ip;function vF(e,t){var n=this.__data__,r=gF(n,e);return r<0?(++this.size,n.push([e,t])):n[r][1]=t,this}var yF=vF,bF=tF,xF=cF,wF=fF,kF=mF,SF=yF;function Nl(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}Nl.prototype.clear=bF;Nl.prototype.delete=xF;Nl.prototype.get=wF;Nl.prototype.has=kF;Nl.prototype.set=SF;var $p=Nl,jF=Us,NF=pa,EF=jF(NF,"Map"),rw=EF,fS=Jz,_F=$p,AF=rw;function CF(){this.size=0,this.__data__={hash:new fS,map:new(AF||_F),string:new fS}}var TF=CF;function OF(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}var PF=OF,RF=PF;function MF(e,t){var n=e.__data__;return RF(t)?n[typeof t=="string"?"string":"hash"]:n.map}var Lp=MF,IF=Lp;function $F(e){var t=IF(this,e).delete(e);return this.size-=t?1:0,t}var LF=$F,DF=Lp;function BF(e){return DF(this,e).get(e)}var zF=BF,FF=Lp;function UF(e){return FF(this,e).has(e)}var WF=UF,HF=Lp;function GF(e,t){var n=HF(this,e),r=n.size;return n.set(e,t),this.size+=n.size==r?0:1,this}var qF=GF,KF=TF,VF=LF,YF=zF,XF=WF,QF=qF;function El(e){var t=-1,n=e==null?0:e.length;for(this.clear();++t<n;){var r=e[t];this.set(r[0],r[1])}}El.prototype.clear=KF;El.prototype.delete=VF;El.prototype.get=YF;El.prototype.has=XF;El.prototype.set=QF;var aw=El,BT=aw,ZF="Expected a function";function iw(e,t){if(typeof e!="function"||t!=null&&typeof t!="function")throw new TypeError(ZF);var n=function(){var r=arguments,a=t?t.apply(this,r):r[0],s=n.cache;if(s.has(a))return s.get(a);var o=e.apply(this,r);return n.cache=s.set(a,o)||s,o};return n.cache=new(iw.Cache||BT),n}iw.Cache=BT;var zT=iw;const JF=tt(zT);var eU=zT,tU=500;function nU(e){var t=eU(e,function(r){return n.size===tU&&n.clear(),r}),n=t.cache;return t}var rU=nU,aU=rU,iU=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,sU=/\\(\\)?/g,oU=aU(function(e){var t=[];return e.charCodeAt(0)===46&&t.push(""),e.replace(iU,function(n,r,a,s){t.push(a?s.replace(sU,"$1"):r||n)}),t}),lU=oU;function cU(e,t){for(var n=-1,r=e==null?0:e.length,a=Array(r);++n<r;)a[n]=t(e[n],n,e);return a}var sw=cU,hS=Xu,uU=sw,dU=Hn,fU=kl,pS=hS?hS.prototype:void 0,mS=pS?pS.toString:void 0;function FT(e){if(typeof e=="string")return e;if(dU(e))return uU(e,FT)+"";if(fU(e))return mS?mS.call(e):"";var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var hU=FT,pU=hU;function mU(e){return e==null?"":pU(e)}var UT=mU,gU=Hn,vU=ew,yU=lU,bU=UT;function xU(e,t){return gU(e)?e:vU(e,t)?[e]:yU(bU(e))}var WT=xU,wU=kl;function kU(e){if(typeof e=="string"||wU(e))return e;var t=e+"";return t=="0"&&1/e==-1/0?"-0":t}var Dp=kU,SU=WT,jU=Dp;function NU(e,t){t=SU(t,e);for(var n=0,r=t.length;e!=null&&n<r;)e=e[jU(t[n++])];return n&&n==r?e:void 0}var ow=NU,EU=ow;function _U(e,t,n){var r=e==null?void 0:EU(e,t);return r===void 0?n:r}var HT=_U;const Sr=tt(HT);function AU(e){return e==null}var CU=AU;const Ze=tt(CU);var TU=Ba,OU=Hn,PU=za,RU="[object String]";function MU(e){return typeof e=="string"||!OU(e)&&PU(e)&&TU(e)==RU}var IU=MU;const Ms=tt(IU);var GT={exports:{}},st={};/**
|
|
68
|
+
* @license React
|
|
69
|
+
* react-is.production.min.js
|
|
70
|
+
*
|
|
71
|
+
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
72
|
+
*
|
|
73
|
+
* This source code is licensed under the MIT license found in the
|
|
74
|
+
* LICENSE file in the root directory of this source tree.
|
|
75
|
+
*/var lw=Symbol.for("react.element"),cw=Symbol.for("react.portal"),Bp=Symbol.for("react.fragment"),zp=Symbol.for("react.strict_mode"),Fp=Symbol.for("react.profiler"),Up=Symbol.for("react.provider"),Wp=Symbol.for("react.context"),$U=Symbol.for("react.server_context"),Hp=Symbol.for("react.forward_ref"),Gp=Symbol.for("react.suspense"),qp=Symbol.for("react.suspense_list"),Kp=Symbol.for("react.memo"),Vp=Symbol.for("react.lazy"),LU=Symbol.for("react.offscreen"),qT;qT=Symbol.for("react.module.reference");function _r(e){if(typeof e=="object"&&e!==null){var t=e.$$typeof;switch(t){case lw:switch(e=e.type,e){case Bp:case Fp:case zp:case Gp:case qp:return e;default:switch(e=e&&e.$$typeof,e){case $U:case Wp:case Hp:case Vp:case Kp:case Up:return e;default:return t}}case cw:return t}}}st.ContextConsumer=Wp;st.ContextProvider=Up;st.Element=lw;st.ForwardRef=Hp;st.Fragment=Bp;st.Lazy=Vp;st.Memo=Kp;st.Portal=cw;st.Profiler=Fp;st.StrictMode=zp;st.Suspense=Gp;st.SuspenseList=qp;st.isAsyncMode=function(){return!1};st.isConcurrentMode=function(){return!1};st.isContextConsumer=function(e){return _r(e)===Wp};st.isContextProvider=function(e){return _r(e)===Up};st.isElement=function(e){return typeof e=="object"&&e!==null&&e.$$typeof===lw};st.isForwardRef=function(e){return _r(e)===Hp};st.isFragment=function(e){return _r(e)===Bp};st.isLazy=function(e){return _r(e)===Vp};st.isMemo=function(e){return _r(e)===Kp};st.isPortal=function(e){return _r(e)===cw};st.isProfiler=function(e){return _r(e)===Fp};st.isStrictMode=function(e){return _r(e)===zp};st.isSuspense=function(e){return _r(e)===Gp};st.isSuspenseList=function(e){return _r(e)===qp};st.isValidElementType=function(e){return typeof e=="string"||typeof e=="function"||e===Bp||e===Fp||e===zp||e===Gp||e===qp||e===LU||typeof e=="object"&&e!==null&&(e.$$typeof===Vp||e.$$typeof===Kp||e.$$typeof===Up||e.$$typeof===Wp||e.$$typeof===Hp||e.$$typeof===qT||e.getModuleId!==void 0)};st.typeOf=_r;GT.exports=st;var DU=GT.exports,BU=Ba,zU=za,FU="[object Number]";function UU(e){return typeof e=="number"||zU(e)&&BU(e)==FU}var KT=UU;const WU=tt(KT);var HU=KT;function GU(e){return HU(e)&&e!=+e}var qU=GU;const Qu=tt(qU);var zr=function(t){return t===0?0:t>0?1:-1},gs=function(t){return Ms(t)&&t.indexOf("%")===t.length-1},ue=function(t){return WU(t)&&!Qu(t)},KU=function(t){return Ze(t)},Zt=function(t){return ue(t)||Ms(t)},VU=0,Yp=function(t){var n=++VU;return"".concat(t||"").concat(n)},Is=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:0,a=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1;if(!ue(t)&&!Ms(t))return r;var s;if(gs(t)){var o=t.indexOf("%");s=n*parseFloat(t.slice(0,o))/100}else s=+t;return Qu(s)&&(s=r),a&&s>n&&(s=n),s},si=function(t){if(!t)return null;var n=Object.keys(t);return n&&n.length?t[n[0]]:null},YU=function(t){if(!Array.isArray(t))return!1;for(var n=t.length,r={},a=0;a<n;a++)if(!r[t[a]])r[t[a]]=!0;else return!0;return!1},to=function(t,n){return ue(t)&&ue(n)?function(r){return t+r*(n-t)}:function(){return n}};function vy(e,t,n){return!e||!e.length?null:e.find(function(r){return r&&(typeof t=="function"?t(r):Sr(r,t))===n})}var XU=function(t,n){return ue(t)&&ue(n)?t-n:Ms(t)&&Ms(n)?t.localeCompare(n):t instanceof Date&&n instanceof Date?t.getTime()-n.getTime():String(t).localeCompare(String(n))};function $o(e,t){for(var n in e)if({}.hasOwnProperty.call(e,n)&&(!{}.hasOwnProperty.call(t,n)||e[n]!==t[n]))return!1;for(var r in t)if({}.hasOwnProperty.call(t,r)&&!{}.hasOwnProperty.call(e,r))return!1;return!0}function yy(e){"@babel/helpers - typeof";return yy=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},yy(e)}var QU=["viewBox","children"],ZU=["aria-activedescendant","aria-atomic","aria-autocomplete","aria-busy","aria-checked","aria-colcount","aria-colindex","aria-colspan","aria-controls","aria-current","aria-describedby","aria-details","aria-disabled","aria-errormessage","aria-expanded","aria-flowto","aria-haspopup","aria-hidden","aria-invalid","aria-keyshortcuts","aria-label","aria-labelledby","aria-level","aria-live","aria-modal","aria-multiline","aria-multiselectable","aria-orientation","aria-owns","aria-placeholder","aria-posinset","aria-pressed","aria-readonly","aria-relevant","aria-required","aria-roledescription","aria-rowcount","aria-rowindex","aria-rowspan","aria-selected","aria-setsize","aria-sort","aria-valuemax","aria-valuemin","aria-valuenow","aria-valuetext","className","color","height","id","lang","max","media","method","min","name","style","target","width","role","tabIndex","accentHeight","accumulate","additive","alignmentBaseline","allowReorder","alphabetic","amplitude","arabicForm","ascent","attributeName","attributeType","autoReverse","azimuth","baseFrequency","baselineShift","baseProfile","bbox","begin","bias","by","calcMode","capHeight","clip","clipPath","clipPathUnits","clipRule","colorInterpolation","colorInterpolationFilters","colorProfile","colorRendering","contentScriptType","contentStyleType","cursor","cx","cy","d","decelerate","descent","diffuseConstant","direction","display","divisor","dominantBaseline","dur","dx","dy","edgeMode","elevation","enableBackground","end","exponent","externalResourcesRequired","fill","fillOpacity","fillRule","filter","filterRes","filterUnits","floodColor","floodOpacity","focusable","fontFamily","fontSize","fontSizeAdjust","fontStretch","fontStyle","fontVariant","fontWeight","format","from","fx","fy","g1","g2","glyphName","glyphOrientationHorizontal","glyphOrientationVertical","glyphRef","gradientTransform","gradientUnits","hanging","horizAdvX","horizOriginX","href","ideographic","imageRendering","in2","in","intercept","k1","k2","k3","k4","k","kernelMatrix","kernelUnitLength","kerning","keyPoints","keySplines","keyTimes","lengthAdjust","letterSpacing","lightingColor","limitingConeAngle","local","markerEnd","markerHeight","markerMid","markerStart","markerUnits","markerWidth","mask","maskContentUnits","maskUnits","mathematical","mode","numOctaves","offset","opacity","operator","order","orient","orientation","origin","overflow","overlinePosition","overlineThickness","paintOrder","panose1","pathLength","patternContentUnits","patternTransform","patternUnits","pointerEvents","pointsAtX","pointsAtY","pointsAtZ","preserveAlpha","preserveAspectRatio","primitiveUnits","r","radius","refX","refY","renderingIntent","repeatCount","repeatDur","requiredExtensions","requiredFeatures","restart","result","rotate","rx","ry","seed","shapeRendering","slope","spacing","specularConstant","specularExponent","speed","spreadMethod","startOffset","stdDeviation","stemh","stemv","stitchTiles","stopColor","stopOpacity","strikethroughPosition","strikethroughThickness","string","stroke","strokeDasharray","strokeDashoffset","strokeLinecap","strokeLinejoin","strokeMiterlimit","strokeOpacity","strokeWidth","surfaceScale","systemLanguage","tableValues","targetX","targetY","textAnchor","textDecoration","textLength","textRendering","to","transform","u1","u2","underlinePosition","underlineThickness","unicode","unicodeBidi","unicodeRange","unitsPerEm","vAlphabetic","values","vectorEffect","version","vertAdvY","vertOriginX","vertOriginY","vHanging","vIdeographic","viewTarget","visibility","vMathematical","widths","wordSpacing","writingMode","x1","x2","x","xChannelSelector","xHeight","xlinkActuate","xlinkArcrole","xlinkHref","xlinkRole","xlinkShow","xlinkTitle","xlinkType","xmlBase","xmlLang","xmlns","xmlnsXlink","xmlSpace","y1","y2","y","yChannelSelector","z","zoomAndPan","ref","key","angle"],gS=["points","pathLength"],lg={svg:QU,polygon:gS,polyline:gS},uw=["dangerouslySetInnerHTML","onCopy","onCopyCapture","onCut","onCutCapture","onPaste","onPasteCapture","onCompositionEnd","onCompositionEndCapture","onCompositionStart","onCompositionStartCapture","onCompositionUpdate","onCompositionUpdateCapture","onFocus","onFocusCapture","onBlur","onBlurCapture","onChange","onChangeCapture","onBeforeInput","onBeforeInputCapture","onInput","onInputCapture","onReset","onResetCapture","onSubmit","onSubmitCapture","onInvalid","onInvalidCapture","onLoad","onLoadCapture","onError","onErrorCapture","onKeyDown","onKeyDownCapture","onKeyPress","onKeyPressCapture","onKeyUp","onKeyUpCapture","onAbort","onAbortCapture","onCanPlay","onCanPlayCapture","onCanPlayThrough","onCanPlayThroughCapture","onDurationChange","onDurationChangeCapture","onEmptied","onEmptiedCapture","onEncrypted","onEncryptedCapture","onEnded","onEndedCapture","onLoadedData","onLoadedDataCapture","onLoadedMetadata","onLoadedMetadataCapture","onLoadStart","onLoadStartCapture","onPause","onPauseCapture","onPlay","onPlayCapture","onPlaying","onPlayingCapture","onProgress","onProgressCapture","onRateChange","onRateChangeCapture","onSeeked","onSeekedCapture","onSeeking","onSeekingCapture","onStalled","onStalledCapture","onSuspend","onSuspendCapture","onTimeUpdate","onTimeUpdateCapture","onVolumeChange","onVolumeChangeCapture","onWaiting","onWaitingCapture","onAuxClick","onAuxClickCapture","onClick","onClickCapture","onContextMenu","onContextMenuCapture","onDoubleClick","onDoubleClickCapture","onDrag","onDragCapture","onDragEnd","onDragEndCapture","onDragEnter","onDragEnterCapture","onDragExit","onDragExitCapture","onDragLeave","onDragLeaveCapture","onDragOver","onDragOverCapture","onDragStart","onDragStartCapture","onDrop","onDropCapture","onMouseDown","onMouseDownCapture","onMouseEnter","onMouseLeave","onMouseMove","onMouseMoveCapture","onMouseOut","onMouseOutCapture","onMouseOver","onMouseOverCapture","onMouseUp","onMouseUpCapture","onSelect","onSelectCapture","onTouchCancel","onTouchCancelCapture","onTouchEnd","onTouchEndCapture","onTouchMove","onTouchMoveCapture","onTouchStart","onTouchStartCapture","onPointerDown","onPointerDownCapture","onPointerMove","onPointerMoveCapture","onPointerUp","onPointerUpCapture","onPointerCancel","onPointerCancelCapture","onPointerEnter","onPointerEnterCapture","onPointerLeave","onPointerLeaveCapture","onPointerOver","onPointerOverCapture","onPointerOut","onPointerOutCapture","onGotPointerCapture","onGotPointerCaptureCapture","onLostPointerCapture","onLostPointerCaptureCapture","onScroll","onScrollCapture","onWheel","onWheelCapture","onAnimationStart","onAnimationStartCapture","onAnimationEnd","onAnimationEndCapture","onAnimationIteration","onAnimationIterationCapture","onTransitionEnd","onTransitionEndCapture"],ah=function(t,n){if(!t||typeof t=="function"||typeof t=="boolean")return null;var r=t;if(x.isValidElement(t)&&(r=t.props),!Sl(r))return null;var a={};return Object.keys(r).forEach(function(s){uw.includes(s)&&(a[s]=n||function(o){return r[s](r,o)})}),a},JU=function(t,n,r){return function(a){return t(n,r,a),null}},ih=function(t,n,r){if(!Sl(t)||yy(t)!=="object")return null;var a=null;return Object.keys(t).forEach(function(s){var o=t[s];uw.includes(s)&&typeof o=="function"&&(a||(a={}),a[s]=JU(o,n,r))}),a},e3=["children"],t3=["children"];function vS(e,t){if(e==null)return{};var n=n3(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function n3(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}var yS={click:"onClick",mousedown:"onMouseDown",mouseup:"onMouseUp",mouseover:"onMouseOver",mousemove:"onMouseMove",mouseout:"onMouseOut",mouseenter:"onMouseEnter",mouseleave:"onMouseLeave",touchcancel:"onTouchCancel",touchend:"onTouchEnd",touchmove:"onTouchMove",touchstart:"onTouchStart",contextmenu:"onContextMenu",dblclick:"onDoubleClick"},_a=function(t){return typeof t=="string"?t:t?t.displayName||t.name||"Component":""},bS=null,cg=null,dw=function e(t){if(t===bS&&Array.isArray(cg))return cg;var n=[];return x.Children.forEach(t,function(r){Ze(r)||(DU.isFragment(r)?n=n.concat(e(r.props.children)):n.push(r))}),cg=n,bS=t,n};function Wr(e,t){var n=[],r=[];return Array.isArray(t)?r=t.map(function(a){return _a(a)}):r=[_a(t)],dw(e).forEach(function(a){var s=Sr(a,"type.displayName")||Sr(a,"type.name");r.indexOf(s)!==-1&&n.push(a)}),n}function Jn(e,t){var n=Wr(e,t);return n&&n[0]}var xS=function(t){if(!t||!t.props)return!1;var n=t.props,r=n.width,a=n.height;return!(!ue(r)||r<=0||!ue(a)||a<=0)},r3=["a","altGlyph","altGlyphDef","altGlyphItem","animate","animateColor","animateMotion","animateTransform","circle","clipPath","color-profile","cursor","defs","desc","ellipse","feBlend","feColormatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence","filter","font","font-face","font-face-format","font-face-name","font-face-url","foreignObject","g","glyph","glyphRef","hkern","image","line","lineGradient","marker","mask","metadata","missing-glyph","mpath","path","pattern","polygon","polyline","radialGradient","rect","script","set","stop","style","svg","switch","symbol","text","textPath","title","tref","tspan","use","view","vkern"],a3=function(t){return t&&t.type&&Ms(t.type)&&r3.indexOf(t.type)>=0},i3=function(t,n,r,a){var s,o=(s=lg==null?void 0:lg[a])!==null&&s!==void 0?s:[];return n.startsWith("data-")||!De(t)&&(a&&o.includes(n)||ZU.includes(n))||r&&uw.includes(n)},Xe=function(t,n,r){if(!t||typeof t=="function"||typeof t=="boolean")return null;var a=t;if(x.isValidElement(t)&&(a=t.props),!Sl(a))return null;var s={};return Object.keys(a).forEach(function(o){var l;i3((l=a)===null||l===void 0?void 0:l[o],o,n,r)&&(s[o]=a[o])}),s},by=function e(t,n){if(t===n)return!0;var r=x.Children.count(t);if(r!==x.Children.count(n))return!1;if(r===0)return!0;if(r===1)return wS(Array.isArray(t)?t[0]:t,Array.isArray(n)?n[0]:n);for(var a=0;a<r;a++){var s=t[a],o=n[a];if(Array.isArray(s)||Array.isArray(o)){if(!e(s,o))return!1}else if(!wS(s,o))return!1}return!0},wS=function(t,n){if(Ze(t)&&Ze(n))return!0;if(!Ze(t)&&!Ze(n)){var r=t.props||{},a=r.children,s=vS(r,e3),o=n.props||{},l=o.children,c=vS(o,t3);return a&&l?$o(s,c)&&by(a,l):!a&&!l?$o(s,c):!1}return!1},kS=function(t,n){var r=[],a={};return dw(t).forEach(function(s,o){if(a3(s))r.push(s);else if(s){var l=_a(s.type),c=n[l]||{},u=c.handler,d=c.once;if(u&&(!d||!a[l])){var f=u(s,l,o);r.push(f),a[l]=!0}}}),r},s3=function(t){var n=t&&t.type;return n&&yS[n]?yS[n]:null},o3=function(t,n){return dw(n).indexOf(t)},l3=["children","width","height","viewBox","className","style","title","desc"];function xy(){return xy=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},xy.apply(this,arguments)}function c3(e,t){if(e==null)return{};var n=u3(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function u3(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function wy(e){var t=e.children,n=e.width,r=e.height,a=e.viewBox,s=e.className,o=e.style,l=e.title,c=e.desc,u=c3(e,l3),d=a||{width:n,height:r,x:0,y:0},f=Qe("recharts-surface",s);return V.createElement("svg",xy({},Xe(u,!0,"svg"),{className:f,width:n,height:r,style:o,viewBox:"".concat(d.x," ").concat(d.y," ").concat(d.width," ").concat(d.height)}),V.createElement("title",null,l),V.createElement("desc",null,c),t)}var d3=["children","className"];function ky(){return ky=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ky.apply(this,arguments)}function f3(e,t){if(e==null)return{};var n=h3(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function h3(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}var an=V.forwardRef(function(e,t){var n=e.children,r=e.className,a=f3(e,d3),s=Qe("recharts-layer",r);return V.createElement("g",ky({className:s},Xe(a,!0),{ref:t}),n)}),Aa=function(t,n){for(var r=arguments.length,a=new Array(r>2?r-2:0),s=2;s<r;s++)a[s-2]=arguments[s]};function p3(e,t,n){var r=-1,a=e.length;t<0&&(t=-t>a?0:a+t),n=n>a?a:n,n<0&&(n+=a),a=t>n?0:n-t>>>0,t>>>=0;for(var s=Array(a);++r<a;)s[r]=e[r+t];return s}var m3=p3,g3=m3;function v3(e,t,n){var r=e.length;return n=n===void 0?r:n,!t&&n>=r?e:g3(e,t,n)}var y3=v3,b3="\\ud800-\\udfff",x3="\\u0300-\\u036f",w3="\\ufe20-\\ufe2f",k3="\\u20d0-\\u20ff",S3=x3+w3+k3,j3="\\ufe0e\\ufe0f",N3="\\u200d",E3=RegExp("["+N3+b3+S3+j3+"]");function _3(e){return E3.test(e)}var VT=_3;function A3(e){return e.split("")}var C3=A3,YT="\\ud800-\\udfff",T3="\\u0300-\\u036f",O3="\\ufe20-\\ufe2f",P3="\\u20d0-\\u20ff",R3=T3+O3+P3,M3="\\ufe0e\\ufe0f",I3="["+YT+"]",Sy="["+R3+"]",jy="\\ud83c[\\udffb-\\udfff]",$3="(?:"+Sy+"|"+jy+")",XT="[^"+YT+"]",QT="(?:\\ud83c[\\udde6-\\uddff]){2}",ZT="[\\ud800-\\udbff][\\udc00-\\udfff]",L3="\\u200d",JT=$3+"?",eO="["+M3+"]?",D3="(?:"+L3+"(?:"+[XT,QT,ZT].join("|")+")"+eO+JT+")*",B3=eO+JT+D3,z3="(?:"+[XT+Sy+"?",Sy,QT,ZT,I3].join("|")+")",F3=RegExp(jy+"(?="+jy+")|"+z3+B3,"g");function U3(e){return e.match(F3)||[]}var W3=U3,H3=C3,G3=VT,q3=W3;function K3(e){return G3(e)?q3(e):H3(e)}var V3=K3,Y3=y3,X3=VT,Q3=V3,Z3=UT;function J3(e){return function(t){t=Z3(t);var n=X3(t)?Q3(t):void 0,r=n?n[0]:t.charAt(0),a=n?Y3(n,1).join(""):t.slice(1);return r[e]()+a}}var e4=J3,t4=e4,n4=t4("toUpperCase"),r4=n4;const Xp=tt(r4);function pt(e){return function(){return e}}const tO=Math.cos,sh=Math.sin,Kr=Math.sqrt,oh=Math.PI,Qp=2*oh,Ny=Math.PI,Ey=2*Ny,ss=1e-6,a4=Ey-ss;function nO(e){this._+=e[0];for(let t=1,n=e.length;t<n;++t)this._+=arguments[t]+e[t]}function i4(e){let t=Math.floor(e);if(!(t>=0))throw new Error(`invalid digits: ${e}`);if(t>15)return nO;const n=10**t;return function(r){this._+=r[0];for(let a=1,s=r.length;a<s;++a)this._+=Math.round(arguments[a]*n)/n+r[a]}}class s4{constructor(t){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=t==null?nO:i4(t)}moveTo(t,n){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(t,n){this._append`L${this._x1=+t},${this._y1=+n}`}quadraticCurveTo(t,n,r,a){this._append`Q${+t},${+n},${this._x1=+r},${this._y1=+a}`}bezierCurveTo(t,n,r,a,s,o){this._append`C${+t},${+n},${+r},${+a},${this._x1=+s},${this._y1=+o}`}arcTo(t,n,r,a,s){if(t=+t,n=+n,r=+r,a=+a,s=+s,s<0)throw new Error(`negative radius: ${s}`);let o=this._x1,l=this._y1,c=r-t,u=a-n,d=o-t,f=l-n,h=d*d+f*f;if(this._x1===null)this._append`M${this._x1=t},${this._y1=n}`;else if(h>ss)if(!(Math.abs(f*c-u*d)>ss)||!s)this._append`L${this._x1=t},${this._y1=n}`;else{let p=r-o,g=a-l,m=c*c+u*u,y=p*p+g*g,v=Math.sqrt(m),S=Math.sqrt(h),w=s*Math.tan((Ny-Math.acos((m+h-y)/(2*v*S)))/2),j=w/S,k=w/v;Math.abs(j-1)>ss&&this._append`L${t+j*d},${n+j*f}`,this._append`A${s},${s},0,0,${+(f*p>d*g)},${this._x1=t+k*c},${this._y1=n+k*u}`}}arc(t,n,r,a,s,o){if(t=+t,n=+n,r=+r,o=!!o,r<0)throw new Error(`negative radius: ${r}`);let l=r*Math.cos(a),c=r*Math.sin(a),u=t+l,d=n+c,f=1^o,h=o?a-s:s-a;this._x1===null?this._append`M${u},${d}`:(Math.abs(this._x1-u)>ss||Math.abs(this._y1-d)>ss)&&this._append`L${u},${d}`,r&&(h<0&&(h=h%Ey+Ey),h>a4?this._append`A${r},${r},0,1,${f},${t-l},${n-c}A${r},${r},0,1,${f},${this._x1=u},${this._y1=d}`:h>ss&&this._append`A${r},${r},0,${+(h>=Ny)},${f},${this._x1=t+r*Math.cos(s)},${this._y1=n+r*Math.sin(s)}`)}rect(t,n,r,a){this._append`M${this._x0=this._x1=+t},${this._y0=this._y1=+n}h${r=+r}v${+a}h${-r}Z`}toString(){return this._}}function fw(e){let t=3;return e.digits=function(n){if(!arguments.length)return t;if(n==null)t=null;else{const r=Math.floor(n);if(!(r>=0))throw new RangeError(`invalid digits: ${n}`);t=r}return e},()=>new s4(t)}function hw(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function rO(e){this._context=e}rO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:this._context.lineTo(e,t);break}}};function Zp(e){return new rO(e)}function aO(e){return e[0]}function iO(e){return e[1]}function sO(e,t){var n=pt(!0),r=null,a=Zp,s=null,o=fw(l);e=typeof e=="function"?e:e===void 0?aO:pt(e),t=typeof t=="function"?t:t===void 0?iO:pt(t);function l(c){var u,d=(c=hw(c)).length,f,h=!1,p;for(r==null&&(s=a(p=o())),u=0;u<=d;++u)!(u<d&&n(f=c[u],u,c))===h&&((h=!h)?s.lineStart():s.lineEnd()),h&&s.point(+e(f,u,c),+t(f,u,c));if(p)return s=null,p+""||null}return l.x=function(c){return arguments.length?(e=typeof c=="function"?c:pt(+c),l):e},l.y=function(c){return arguments.length?(t=typeof c=="function"?c:pt(+c),l):t},l.defined=function(c){return arguments.length?(n=typeof c=="function"?c:pt(!!c),l):n},l.curve=function(c){return arguments.length?(a=c,r!=null&&(s=a(r)),l):a},l.context=function(c){return arguments.length?(c==null?r=s=null:s=a(r=c),l):r},l}function Fd(e,t,n){var r=null,a=pt(!0),s=null,o=Zp,l=null,c=fw(u);e=typeof e=="function"?e:e===void 0?aO:pt(+e),t=typeof t=="function"?t:pt(t===void 0?0:+t),n=typeof n=="function"?n:n===void 0?iO:pt(+n);function u(f){var h,p,g,m=(f=hw(f)).length,y,v=!1,S,w=new Array(m),j=new Array(m);for(s==null&&(l=o(S=c())),h=0;h<=m;++h){if(!(h<m&&a(y=f[h],h,f))===v)if(v=!v)p=h,l.areaStart(),l.lineStart();else{for(l.lineEnd(),l.lineStart(),g=h-1;g>=p;--g)l.point(w[g],j[g]);l.lineEnd(),l.areaEnd()}v&&(w[h]=+e(y,h,f),j[h]=+t(y,h,f),l.point(r?+r(y,h,f):w[h],n?+n(y,h,f):j[h]))}if(S)return l=null,S+""||null}function d(){return sO().defined(a).curve(o).context(s)}return u.x=function(f){return arguments.length?(e=typeof f=="function"?f:pt(+f),r=null,u):e},u.x0=function(f){return arguments.length?(e=typeof f=="function"?f:pt(+f),u):e},u.x1=function(f){return arguments.length?(r=f==null?null:typeof f=="function"?f:pt(+f),u):r},u.y=function(f){return arguments.length?(t=typeof f=="function"?f:pt(+f),n=null,u):t},u.y0=function(f){return arguments.length?(t=typeof f=="function"?f:pt(+f),u):t},u.y1=function(f){return arguments.length?(n=f==null?null:typeof f=="function"?f:pt(+f),u):n},u.lineX0=u.lineY0=function(){return d().x(e).y(t)},u.lineY1=function(){return d().x(e).y(n)},u.lineX1=function(){return d().x(r).y(t)},u.defined=function(f){return arguments.length?(a=typeof f=="function"?f:pt(!!f),u):a},u.curve=function(f){return arguments.length?(o=f,s!=null&&(l=o(s)),u):o},u.context=function(f){return arguments.length?(f==null?s=l=null:l=o(s=f),u):s},u}class oO{constructor(t,n){this._context=t,this._x=n}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(t,n){switch(t=+t,n=+n,this._point){case 0:{this._point=1,this._line?this._context.lineTo(t,n):this._context.moveTo(t,n);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+t)/2,this._y0,this._x0,n,t,n):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+n)/2,t,this._y0,t,n);break}}this._x0=t,this._y0=n}}function o4(e){return new oO(e,!0)}function l4(e){return new oO(e,!1)}const pw={draw(e,t){const n=Kr(t/oh);e.moveTo(n,0),e.arc(0,0,n,0,Qp)}},c4={draw(e,t){const n=Kr(t/5)/2;e.moveTo(-3*n,-n),e.lineTo(-n,-n),e.lineTo(-n,-3*n),e.lineTo(n,-3*n),e.lineTo(n,-n),e.lineTo(3*n,-n),e.lineTo(3*n,n),e.lineTo(n,n),e.lineTo(n,3*n),e.lineTo(-n,3*n),e.lineTo(-n,n),e.lineTo(-3*n,n),e.closePath()}},lO=Kr(1/3),u4=lO*2,d4={draw(e,t){const n=Kr(t/u4),r=n*lO;e.moveTo(0,-n),e.lineTo(r,0),e.lineTo(0,n),e.lineTo(-r,0),e.closePath()}},f4={draw(e,t){const n=Kr(t),r=-n/2;e.rect(r,r,n,n)}},h4=.8908130915292852,cO=sh(oh/10)/sh(7*oh/10),p4=sh(Qp/10)*cO,m4=-tO(Qp/10)*cO,g4={draw(e,t){const n=Kr(t*h4),r=p4*n,a=m4*n;e.moveTo(0,-n),e.lineTo(r,a);for(let s=1;s<5;++s){const o=Qp*s/5,l=tO(o),c=sh(o);e.lineTo(c*n,-l*n),e.lineTo(l*r-c*a,c*r+l*a)}e.closePath()}},ug=Kr(3),v4={draw(e,t){const n=-Kr(t/(ug*3));e.moveTo(0,n*2),e.lineTo(-ug*n,-n),e.lineTo(ug*n,-n),e.closePath()}},hr=-.5,pr=Kr(3)/2,_y=1/Kr(12),y4=(_y/2+1)*3,b4={draw(e,t){const n=Kr(t/y4),r=n/2,a=n*_y,s=r,o=n*_y+n,l=-s,c=o;e.moveTo(r,a),e.lineTo(s,o),e.lineTo(l,c),e.lineTo(hr*r-pr*a,pr*r+hr*a),e.lineTo(hr*s-pr*o,pr*s+hr*o),e.lineTo(hr*l-pr*c,pr*l+hr*c),e.lineTo(hr*r+pr*a,hr*a-pr*r),e.lineTo(hr*s+pr*o,hr*o-pr*s),e.lineTo(hr*l+pr*c,hr*c-pr*l),e.closePath()}};function x4(e,t){let n=null,r=fw(a);e=typeof e=="function"?e:pt(e||pw),t=typeof t=="function"?t:pt(t===void 0?64:+t);function a(){let s;if(n||(n=s=r()),e.apply(this,arguments).draw(n,+t.apply(this,arguments)),s)return n=null,s+""||null}return a.type=function(s){return arguments.length?(e=typeof s=="function"?s:pt(s),a):e},a.size=function(s){return arguments.length?(t=typeof s=="function"?s:pt(+s),a):t},a.context=function(s){return arguments.length?(n=s??null,a):n},a}function lh(){}function ch(e,t,n){e._context.bezierCurveTo((2*e._x0+e._x1)/3,(2*e._y0+e._y1)/3,(e._x0+2*e._x1)/3,(e._y0+2*e._y1)/3,(e._x0+4*e._x1+t)/6,(e._y0+4*e._y1+n)/6)}function uO(e){this._context=e}uO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:ch(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:ch(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function w4(e){return new uO(e)}function dO(e){this._context=e}dO.prototype={areaStart:lh,areaEnd:lh,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._x2=e,this._y2=t;break;case 1:this._point=2,this._x3=e,this._y3=t;break;case 2:this._point=3,this._x4=e,this._y4=t,this._context.moveTo((this._x0+4*this._x1+e)/6,(this._y0+4*this._y1+t)/6);break;default:ch(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function k4(e){return new dO(e)}function fO(e){this._context=e}fO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var n=(this._x0+4*this._x1+e)/6,r=(this._y0+4*this._y1+t)/6;this._line?this._context.lineTo(n,r):this._context.moveTo(n,r);break;case 3:this._point=4;default:ch(this,e,t);break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t}};function S4(e){return new fO(e)}function hO(e){this._context=e}hO.prototype={areaStart:lh,areaEnd:lh,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(e,t){e=+e,t=+t,this._point?this._context.lineTo(e,t):(this._point=1,this._context.moveTo(e,t))}};function j4(e){return new hO(e)}function SS(e){return e<0?-1:1}function jS(e,t,n){var r=e._x1-e._x0,a=t-e._x1,s=(e._y1-e._y0)/(r||a<0&&-0),o=(n-e._y1)/(a||r<0&&-0),l=(s*a+o*r)/(r+a);return(SS(s)+SS(o))*Math.min(Math.abs(s),Math.abs(o),.5*Math.abs(l))||0}function NS(e,t){var n=e._x1-e._x0;return n?(3*(e._y1-e._y0)/n-t)/2:t}function dg(e,t,n){var r=e._x0,a=e._y0,s=e._x1,o=e._y1,l=(s-r)/3;e._context.bezierCurveTo(r+l,a+l*t,s-l,o-l*n,s,o)}function uh(e){this._context=e}uh.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:dg(this,this._t0,NS(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(e,t){var n=NaN;if(e=+e,t=+t,!(e===this._x1&&t===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;break;case 2:this._point=3,dg(this,NS(this,n=jS(this,e,t)),n);break;default:dg(this,this._t0,n=jS(this,e,t));break}this._x0=this._x1,this._x1=e,this._y0=this._y1,this._y1=t,this._t0=n}}};function pO(e){this._context=new mO(e)}(pO.prototype=Object.create(uh.prototype)).point=function(e,t){uh.prototype.point.call(this,t,e)};function mO(e){this._context=e}mO.prototype={moveTo:function(e,t){this._context.moveTo(t,e)},closePath:function(){this._context.closePath()},lineTo:function(e,t){this._context.lineTo(t,e)},bezierCurveTo:function(e,t,n,r,a,s){this._context.bezierCurveTo(t,e,r,n,s,a)}};function N4(e){return new uh(e)}function E4(e){return new pO(e)}function gO(e){this._context=e}gO.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var e=this._x,t=this._y,n=e.length;if(n)if(this._line?this._context.lineTo(e[0],t[0]):this._context.moveTo(e[0],t[0]),n===2)this._context.lineTo(e[1],t[1]);else for(var r=ES(e),a=ES(t),s=0,o=1;o<n;++s,++o)this._context.bezierCurveTo(r[0][s],a[0][s],r[1][s],a[1][s],e[o],t[o]);(this._line||this._line!==0&&n===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(e,t){this._x.push(+e),this._y.push(+t)}};function ES(e){var t,n=e.length-1,r,a=new Array(n),s=new Array(n),o=new Array(n);for(a[0]=0,s[0]=2,o[0]=e[0]+2*e[1],t=1;t<n-1;++t)a[t]=1,s[t]=4,o[t]=4*e[t]+2*e[t+1];for(a[n-1]=2,s[n-1]=7,o[n-1]=8*e[n-1]+e[n],t=1;t<n;++t)r=a[t]/s[t-1],s[t]-=r,o[t]-=r*o[t-1];for(a[n-1]=o[n-1]/s[n-1],t=n-2;t>=0;--t)a[t]=(o[t]-a[t+1])/s[t];for(s[n-1]=(e[n]+a[n-1])/2,t=0;t<n-1;++t)s[t]=2*e[t+1]-a[t+1];return[a,s]}function _4(e){return new gO(e)}function Jp(e,t){this._context=e,this._t=t}Jp.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(e,t){switch(e=+e,t=+t,this._point){case 0:this._point=1,this._line?this._context.lineTo(e,t):this._context.moveTo(e,t);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,t),this._context.lineTo(e,t);else{var n=this._x*(1-this._t)+e*this._t;this._context.lineTo(n,this._y),this._context.lineTo(n,t)}break}}this._x=e,this._y=t}};function A4(e){return new Jp(e,.5)}function C4(e){return new Jp(e,0)}function T4(e){return new Jp(e,1)}function Vo(e,t){if((o=e.length)>1)for(var n=1,r,a,s=e[t[0]],o,l=s.length;n<o;++n)for(a=s,s=e[t[n]],r=0;r<l;++r)s[r][1]+=s[r][0]=isNaN(a[r][1])?a[r][0]:a[r][1]}function Ay(e){for(var t=e.length,n=new Array(t);--t>=0;)n[t]=t;return n}function O4(e,t){return e[t]}function P4(e){const t=[];return t.key=e,t}function R4(){var e=pt([]),t=Ay,n=Vo,r=O4;function a(s){var o=Array.from(e.apply(this,arguments),P4),l,c=o.length,u=-1,d;for(const f of s)for(l=0,++u;l<c;++l)(o[l][u]=[0,+r(f,o[l].key,u,s)]).data=f;for(l=0,d=hw(t(o));l<c;++l)o[d[l]].index=l;return n(o,d),o}return a.keys=function(s){return arguments.length?(e=typeof s=="function"?s:pt(Array.from(s)),a):e},a.value=function(s){return arguments.length?(r=typeof s=="function"?s:pt(+s),a):r},a.order=function(s){return arguments.length?(t=s==null?Ay:typeof s=="function"?s:pt(Array.from(s)),a):t},a.offset=function(s){return arguments.length?(n=s??Vo,a):n},a}function M4(e,t){if((r=e.length)>0){for(var n,r,a=0,s=e[0].length,o;a<s;++a){for(o=n=0;n<r;++n)o+=e[n][a][1]||0;if(o)for(n=0;n<r;++n)e[n][a][1]/=o}Vo(e,t)}}function I4(e,t){if((a=e.length)>0){for(var n=0,r=e[t[0]],a,s=r.length;n<s;++n){for(var o=0,l=0;o<a;++o)l+=e[o][n][1]||0;r[n][1]+=r[n][0]=-l/2}Vo(e,t)}}function $4(e,t){if(!(!((o=e.length)>0)||!((s=(a=e[t[0]]).length)>0))){for(var n=0,r=1,a,s,o;r<s;++r){for(var l=0,c=0,u=0;l<o;++l){for(var d=e[t[l]],f=d[r][1]||0,h=d[r-1][1]||0,p=(f-h)/2,g=0;g<l;++g){var m=e[t[g]],y=m[r][1]||0,v=m[r-1][1]||0;p+=y-v}c+=f,u+=p*f}a[r-1][1]+=a[r-1][0]=n,c&&(n-=u/c)}a[r-1][1]+=a[r-1][0]=n,Vo(e,t)}}function iu(e){"@babel/helpers - typeof";return iu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},iu(e)}var L4=["type","size","sizeType"];function Cy(){return Cy=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Cy.apply(this,arguments)}function _S(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function AS(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?_S(Object(n),!0).forEach(function(r){D4(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_S(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function D4(e,t,n){return t=B4(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function B4(e){var t=z4(e,"string");return iu(t)=="symbol"?t:t+""}function z4(e,t){if(iu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(iu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function F4(e,t){if(e==null)return{};var n=U4(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function U4(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}var vO={symbolCircle:pw,symbolCross:c4,symbolDiamond:d4,symbolSquare:f4,symbolStar:g4,symbolTriangle:v4,symbolWye:b4},W4=Math.PI/180,H4=function(t){var n="symbol".concat(Xp(t));return vO[n]||pw},G4=function(t,n,r){if(n==="area")return t;switch(r){case"cross":return 5*t*t/9;case"diamond":return .5*t*t/Math.sqrt(3);case"square":return t*t;case"star":{var a=18*W4;return 1.25*t*t*(Math.tan(a)-Math.tan(a*2)*Math.pow(Math.tan(a),2))}case"triangle":return Math.sqrt(3)*t*t/4;case"wye":return(21-10*Math.sqrt(3))*t*t/8;default:return Math.PI*t*t/4}},q4=function(t,n){vO["symbol".concat(Xp(t))]=n},mw=function(t){var n=t.type,r=n===void 0?"circle":n,a=t.size,s=a===void 0?64:a,o=t.sizeType,l=o===void 0?"area":o,c=F4(t,L4),u=AS(AS({},c),{},{type:r,size:s,sizeType:l}),d=function(){var y=H4(r),v=x4().type(y).size(G4(s,l,r));return v()},f=u.className,h=u.cx,p=u.cy,g=Xe(u,!0);return h===+h&&p===+p&&s===+s?V.createElement("path",Cy({},g,{className:Qe("recharts-symbols",f),transform:"translate(".concat(h,", ").concat(p,")"),d:d()})):null};mw.registerSymbol=q4;function Yo(e){"@babel/helpers - typeof";return Yo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Yo(e)}function Ty(){return Ty=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ty.apply(this,arguments)}function CS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function K4(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?CS(Object(n),!0).forEach(function(r){su(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):CS(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function V4(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Y4(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,bO(r.key),r)}}function X4(e,t,n){return t&&Y4(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Q4(e,t,n){return t=dh(t),Z4(e,yO()?Reflect.construct(t,n||[],dh(e).constructor):t.apply(e,n))}function Z4(e,t){if(t&&(Yo(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return J4(e)}function J4(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function yO(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(yO=function(){return!!e})()}function dh(e){return dh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},dh(e)}function e6(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Oy(e,t)}function Oy(e,t){return Oy=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Oy(e,t)}function su(e,t,n){return t=bO(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function bO(e){var t=t6(e,"string");return Yo(t)=="symbol"?t:t+""}function t6(e,t){if(Yo(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Yo(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var mr=32,gw=function(e){function t(){return V4(this,t),Q4(this,t,arguments)}return e6(t,e),X4(t,[{key:"renderIcon",value:function(r){var a=this.props.inactiveColor,s=mr/2,o=mr/6,l=mr/3,c=r.inactive?a:r.color;if(r.type==="plainline")return V.createElement("line",{strokeWidth:4,fill:"none",stroke:c,strokeDasharray:r.payload.strokeDasharray,x1:0,y1:s,x2:mr,y2:s,className:"recharts-legend-icon"});if(r.type==="line")return V.createElement("path",{strokeWidth:4,fill:"none",stroke:c,d:"M0,".concat(s,"h").concat(l,`
|
|
76
|
+
A`).concat(o,",").concat(o,",0,1,1,").concat(2*l,",").concat(s,`
|
|
77
|
+
H`).concat(mr,"M").concat(2*l,",").concat(s,`
|
|
78
|
+
A`).concat(o,",").concat(o,",0,1,1,").concat(l,",").concat(s),className:"recharts-legend-icon"});if(r.type==="rect")return V.createElement("path",{stroke:"none",fill:c,d:"M0,".concat(mr/8,"h").concat(mr,"v").concat(mr*3/4,"h").concat(-mr,"z"),className:"recharts-legend-icon"});if(V.isValidElement(r.legendIcon)){var u=K4({},r);return delete u.legendIcon,V.cloneElement(r.legendIcon,u)}return V.createElement(mw,{fill:c,cx:s,cy:s,size:mr,sizeType:"diameter",type:r.type})}},{key:"renderItems",value:function(){var r=this,a=this.props,s=a.payload,o=a.iconSize,l=a.layout,c=a.formatter,u=a.inactiveColor,d={x:0,y:0,width:mr,height:mr},f={display:l==="horizontal"?"inline-block":"block",marginRight:10},h={display:"inline-block",verticalAlign:"middle",marginRight:4};return s.map(function(p,g){var m=p.formatter||c,y=Qe(su(su({"recharts-legend-item":!0},"legend-item-".concat(g),!0),"inactive",p.inactive));if(p.type==="none")return null;var v=De(p.value)?null:p.value;Aa(!De(p.value),`The name property is also required when using a function for the dataKey of a chart's cartesian components. Ex: <Bar name="Name of my Data"/>`);var S=p.inactive?u:p.color;return V.createElement("li",Ty({className:y,style:f,key:"legend-item-".concat(g)},ih(r.props,p,g)),V.createElement(wy,{width:o,height:o,viewBox:d,style:h},r.renderIcon(p)),V.createElement("span",{className:"recharts-legend-item-text",style:{color:S}},m?m(v,p,g):v))})}},{key:"render",value:function(){var r=this.props,a=r.payload,s=r.layout,o=r.align;if(!a||!a.length)return null;var l={padding:0,margin:0,textAlign:s==="horizontal"?o:"left"};return V.createElement("ul",{className:"recharts-default-legend",style:l},this.renderItems())}}])}(x.PureComponent);su(gw,"displayName","Legend");su(gw,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"middle",inactiveColor:"#ccc"});var n6=$p;function r6(){this.__data__=new n6,this.size=0}var a6=r6;function i6(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}var s6=i6;function o6(e){return this.__data__.get(e)}var l6=o6;function c6(e){return this.__data__.has(e)}var u6=c6,d6=$p,f6=rw,h6=aw,p6=200;function m6(e,t){var n=this.__data__;if(n instanceof d6){var r=n.__data__;if(!f6||r.length<p6-1)return r.push([e,t]),this.size=++n.size,this;n=this.__data__=new h6(r)}return n.set(e,t),this.size=n.size,this}var g6=m6,v6=$p,y6=a6,b6=s6,x6=l6,w6=u6,k6=g6;function _l(e){var t=this.__data__=new v6(e);this.size=t.size}_l.prototype.clear=y6;_l.prototype.delete=b6;_l.prototype.get=x6;_l.prototype.has=w6;_l.prototype.set=k6;var xO=_l,S6="__lodash_hash_undefined__";function j6(e){return this.__data__.set(e,S6),this}var N6=j6;function E6(e){return this.__data__.has(e)}var _6=E6,A6=aw,C6=N6,T6=_6;function fh(e){var t=-1,n=e==null?0:e.length;for(this.__data__=new A6;++t<n;)this.add(e[t])}fh.prototype.add=fh.prototype.push=C6;fh.prototype.has=T6;var wO=fh;function O6(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(t(e[n],n,e))return!0;return!1}var kO=O6;function P6(e,t){return e.has(t)}var SO=P6,R6=wO,M6=kO,I6=SO,$6=1,L6=2;function D6(e,t,n,r,a,s){var o=n&$6,l=e.length,c=t.length;if(l!=c&&!(o&&c>l))return!1;var u=s.get(e),d=s.get(t);if(u&&d)return u==t&&d==e;var f=-1,h=!0,p=n&L6?new R6:void 0;for(s.set(e,t),s.set(t,e);++f<l;){var g=e[f],m=t[f];if(r)var y=o?r(m,g,f,t,e,s):r(g,m,f,e,t,s);if(y!==void 0){if(y)continue;h=!1;break}if(p){if(!M6(t,function(v,S){if(!I6(p,S)&&(g===v||a(g,v,n,r,s)))return p.push(S)})){h=!1;break}}else if(!(g===m||a(g,m,n,r,s))){h=!1;break}}return s.delete(e),s.delete(t),h}var jO=D6,B6=pa,z6=B6.Uint8Array,F6=z6;function U6(e){var t=-1,n=Array(e.size);return e.forEach(function(r,a){n[++t]=[a,r]}),n}var W6=U6;function H6(e){var t=-1,n=Array(e.size);return e.forEach(function(r){n[++t]=r}),n}var vw=H6,TS=Xu,OS=F6,G6=nw,q6=jO,K6=W6,V6=vw,Y6=1,X6=2,Q6="[object Boolean]",Z6="[object Date]",J6="[object Error]",eW="[object Map]",tW="[object Number]",nW="[object RegExp]",rW="[object Set]",aW="[object String]",iW="[object Symbol]",sW="[object ArrayBuffer]",oW="[object DataView]",PS=TS?TS.prototype:void 0,fg=PS?PS.valueOf:void 0;function lW(e,t,n,r,a,s,o){switch(n){case oW:if(e.byteLength!=t.byteLength||e.byteOffset!=t.byteOffset)return!1;e=e.buffer,t=t.buffer;case sW:return!(e.byteLength!=t.byteLength||!s(new OS(e),new OS(t)));case Q6:case Z6:case tW:return G6(+e,+t);case J6:return e.name==t.name&&e.message==t.message;case nW:case aW:return e==t+"";case eW:var l=K6;case rW:var c=r&Y6;if(l||(l=V6),e.size!=t.size&&!c)return!1;var u=o.get(e);if(u)return u==t;r|=X6,o.set(e,t);var d=q6(l(e),l(t),r,a,s,o);return o.delete(e),d;case iW:if(fg)return fg.call(e)==fg.call(t)}return!1}var cW=lW;function uW(e,t){for(var n=-1,r=t.length,a=e.length;++n<r;)e[a+n]=t[n];return e}var NO=uW,dW=NO,fW=Hn;function hW(e,t,n){var r=t(e);return fW(e)?r:dW(r,n(e))}var pW=hW;function mW(e,t){for(var n=-1,r=e==null?0:e.length,a=0,s=[];++n<r;){var o=e[n];t(o,n,e)&&(s[a++]=o)}return s}var gW=mW;function vW(){return[]}var yW=vW,bW=gW,xW=yW,wW=Object.prototype,kW=wW.propertyIsEnumerable,RS=Object.getOwnPropertySymbols,SW=RS?function(e){return e==null?[]:(e=Object(e),bW(RS(e),function(t){return kW.call(e,t)}))}:xW,jW=SW;function NW(e,t){for(var n=-1,r=Array(e);++n<e;)r[n]=t(n);return r}var EW=NW,_W=Ba,AW=za,CW="[object Arguments]";function TW(e){return AW(e)&&_W(e)==CW}var OW=TW,MS=OW,PW=za,EO=Object.prototype,RW=EO.hasOwnProperty,MW=EO.propertyIsEnumerable,IW=MS(function(){return arguments}())?MS:function(e){return PW(e)&&RW.call(e,"callee")&&!MW.call(e,"callee")},yw=IW,hh={exports:{}};function $W(){return!1}var LW=$W;hh.exports;(function(e,t){var n=pa,r=LW,a=t&&!t.nodeType&&t,s=a&&!0&&e&&!e.nodeType&&e,o=s&&s.exports===a,l=o?n.Buffer:void 0,c=l?l.isBuffer:void 0,u=c||r;e.exports=u})(hh,hh.exports);var _O=hh.exports,DW=9007199254740991,BW=/^(?:0|[1-9]\d*)$/;function zW(e,t){var n=typeof e;return t=t??DW,!!t&&(n=="number"||n!="symbol"&&BW.test(e))&&e>-1&&e%1==0&&e<t}var bw=zW,FW=9007199254740991;function UW(e){return typeof e=="number"&&e>-1&&e%1==0&&e<=FW}var xw=UW,WW=Ba,HW=xw,GW=za,qW="[object Arguments]",KW="[object Array]",VW="[object Boolean]",YW="[object Date]",XW="[object Error]",QW="[object Function]",ZW="[object Map]",JW="[object Number]",e8="[object Object]",t8="[object RegExp]",n8="[object Set]",r8="[object String]",a8="[object WeakMap]",i8="[object ArrayBuffer]",s8="[object DataView]",o8="[object Float32Array]",l8="[object Float64Array]",c8="[object Int8Array]",u8="[object Int16Array]",d8="[object Int32Array]",f8="[object Uint8Array]",h8="[object Uint8ClampedArray]",p8="[object Uint16Array]",m8="[object Uint32Array]",xt={};xt[o8]=xt[l8]=xt[c8]=xt[u8]=xt[d8]=xt[f8]=xt[h8]=xt[p8]=xt[m8]=!0;xt[qW]=xt[KW]=xt[i8]=xt[VW]=xt[s8]=xt[YW]=xt[XW]=xt[QW]=xt[ZW]=xt[JW]=xt[e8]=xt[t8]=xt[n8]=xt[r8]=xt[a8]=!1;function g8(e){return GW(e)&&HW(e.length)&&!!xt[WW(e)]}var v8=g8;function y8(e){return function(t){return e(t)}}var AO=y8,ph={exports:{}};ph.exports;(function(e,t){var n=$T,r=t&&!t.nodeType&&t,a=r&&!0&&e&&!e.nodeType&&e,s=a&&a.exports===r,o=s&&n.process,l=function(){try{var c=a&&a.require&&a.require("util").types;return c||o&&o.binding&&o.binding("util")}catch{}}();e.exports=l})(ph,ph.exports);var b8=ph.exports,x8=v8,w8=AO,IS=b8,$S=IS&&IS.isTypedArray,k8=$S?w8($S):x8,CO=k8,S8=EW,j8=yw,N8=Hn,E8=_O,_8=bw,A8=CO,C8=Object.prototype,T8=C8.hasOwnProperty;function O8(e,t){var n=N8(e),r=!n&&j8(e),a=!n&&!r&&E8(e),s=!n&&!r&&!a&&A8(e),o=n||r||a||s,l=o?S8(e.length,String):[],c=l.length;for(var u in e)(t||T8.call(e,u))&&!(o&&(u=="length"||a&&(u=="offset"||u=="parent")||s&&(u=="buffer"||u=="byteLength"||u=="byteOffset")||_8(u,c)))&&l.push(u);return l}var P8=O8,R8=Object.prototype;function M8(e){var t=e&&e.constructor,n=typeof t=="function"&&t.prototype||R8;return e===n}var I8=M8;function $8(e,t){return function(n){return e(t(n))}}var TO=$8,L8=TO,D8=L8(Object.keys,Object),B8=D8,z8=I8,F8=B8,U8=Object.prototype,W8=U8.hasOwnProperty;function H8(e){if(!z8(e))return F8(e);var t=[];for(var n in Object(e))W8.call(e,n)&&n!="constructor"&&t.push(n);return t}var G8=H8,q8=tw,K8=xw;function V8(e){return e!=null&&K8(e.length)&&!q8(e)}var Zu=V8,Y8=P8,X8=G8,Q8=Zu;function Z8(e){return Q8(e)?Y8(e):X8(e)}var em=Z8,J8=pW,eH=jW,tH=em;function nH(e){return J8(e,tH,eH)}var rH=nH,LS=rH,aH=1,iH=Object.prototype,sH=iH.hasOwnProperty;function oH(e,t,n,r,a,s){var o=n&aH,l=LS(e),c=l.length,u=LS(t),d=u.length;if(c!=d&&!o)return!1;for(var f=c;f--;){var h=l[f];if(!(o?h in t:sH.call(t,h)))return!1}var p=s.get(e),g=s.get(t);if(p&&g)return p==t&&g==e;var m=!0;s.set(e,t),s.set(t,e);for(var y=o;++f<c;){h=l[f];var v=e[h],S=t[h];if(r)var w=o?r(S,v,h,t,e,s):r(v,S,h,e,t,s);if(!(w===void 0?v===S||a(v,S,n,r,s):w)){m=!1;break}y||(y=h=="constructor")}if(m&&!y){var j=e.constructor,k=t.constructor;j!=k&&"constructor"in e&&"constructor"in t&&!(typeof j=="function"&&j instanceof j&&typeof k=="function"&&k instanceof k)&&(m=!1)}return s.delete(e),s.delete(t),m}var lH=oH,cH=Us,uH=pa,dH=cH(uH,"DataView"),fH=dH,hH=Us,pH=pa,mH=hH(pH,"Promise"),gH=mH,vH=Us,yH=pa,bH=vH(yH,"Set"),OO=bH,xH=Us,wH=pa,kH=xH(wH,"WeakMap"),SH=kH,Py=fH,Ry=rw,My=gH,Iy=OO,$y=SH,PO=Ba,Al=DT,DS="[object Map]",jH="[object Object]",BS="[object Promise]",zS="[object Set]",FS="[object WeakMap]",US="[object DataView]",NH=Al(Py),EH=Al(Ry),_H=Al(My),AH=Al(Iy),CH=Al($y),os=PO;(Py&&os(new Py(new ArrayBuffer(1)))!=US||Ry&&os(new Ry)!=DS||My&&os(My.resolve())!=BS||Iy&&os(new Iy)!=zS||$y&&os(new $y)!=FS)&&(os=function(e){var t=PO(e),n=t==jH?e.constructor:void 0,r=n?Al(n):"";if(r)switch(r){case NH:return US;case EH:return DS;case _H:return BS;case AH:return zS;case CH:return FS}return t});var TH=os,hg=xO,OH=jO,PH=cW,RH=lH,WS=TH,HS=Hn,GS=_O,MH=CO,IH=1,qS="[object Arguments]",KS="[object Array]",Ud="[object Object]",$H=Object.prototype,VS=$H.hasOwnProperty;function LH(e,t,n,r,a,s){var o=HS(e),l=HS(t),c=o?KS:WS(e),u=l?KS:WS(t);c=c==qS?Ud:c,u=u==qS?Ud:u;var d=c==Ud,f=u==Ud,h=c==u;if(h&&GS(e)){if(!GS(t))return!1;o=!0,d=!1}if(h&&!d)return s||(s=new hg),o||MH(e)?OH(e,t,n,r,a,s):PH(e,t,c,n,r,a,s);if(!(n&IH)){var p=d&&VS.call(e,"__wrapped__"),g=f&&VS.call(t,"__wrapped__");if(p||g){var m=p?e.value():e,y=g?t.value():t;return s||(s=new hg),a(m,y,n,r,s)}}return h?(s||(s=new hg),RH(e,t,n,r,a,s)):!1}var DH=LH,BH=DH,YS=za;function RO(e,t,n,r,a){return e===t?!0:e==null||t==null||!YS(e)&&!YS(t)?e!==e&&t!==t:BH(e,t,n,r,RO,a)}var ww=RO,zH=xO,FH=ww,UH=1,WH=2;function HH(e,t,n,r){var a=n.length,s=a,o=!r;if(e==null)return!s;for(e=Object(e);a--;){var l=n[a];if(o&&l[2]?l[1]!==e[l[0]]:!(l[0]in e))return!1}for(;++a<s;){l=n[a];var c=l[0],u=e[c],d=l[1];if(o&&l[2]){if(u===void 0&&!(c in e))return!1}else{var f=new zH;if(r)var h=r(u,d,c,e,t,f);if(!(h===void 0?FH(d,u,UH|WH,r,f):h))return!1}}return!0}var GH=HH,qH=Mi;function KH(e){return e===e&&!qH(e)}var MO=KH,VH=MO,YH=em;function XH(e){for(var t=YH(e),n=t.length;n--;){var r=t[n],a=e[r];t[n]=[r,a,VH(a)]}return t}var QH=XH;function ZH(e,t){return function(n){return n==null?!1:n[e]===t&&(t!==void 0||e in Object(n))}}var IO=ZH,JH=GH,e5=QH,t5=IO;function n5(e){var t=e5(e);return t.length==1&&t[0][2]?t5(t[0][0],t[0][1]):function(n){return n===e||JH(n,e,t)}}var r5=n5;function a5(e,t){return e!=null&&t in Object(e)}var i5=a5,s5=WT,o5=yw,l5=Hn,c5=bw,u5=xw,d5=Dp;function f5(e,t,n){t=s5(t,e);for(var r=-1,a=t.length,s=!1;++r<a;){var o=d5(t[r]);if(!(s=e!=null&&n(e,o)))break;e=e[o]}return s||++r!=a?s:(a=e==null?0:e.length,!!a&&u5(a)&&c5(o,a)&&(l5(e)||o5(e)))}var h5=f5,p5=i5,m5=h5;function g5(e,t){return e!=null&&m5(e,t,p5)}var v5=g5,y5=ww,b5=HT,x5=v5,w5=ew,k5=MO,S5=IO,j5=Dp,N5=1,E5=2;function _5(e,t){return w5(e)&&k5(t)?S5(j5(e),t):function(n){var r=b5(n,e);return r===void 0&&r===t?x5(n,e):y5(t,r,N5|E5)}}var A5=_5;function C5(e){return e}var Cl=C5;function T5(e){return function(t){return t==null?void 0:t[e]}}var O5=T5,P5=ow;function R5(e){return function(t){return P5(t,e)}}var M5=R5,I5=O5,$5=M5,L5=ew,D5=Dp;function B5(e){return L5(e)?I5(D5(e)):$5(e)}var z5=B5,F5=r5,U5=A5,W5=Cl,H5=Hn,G5=z5;function q5(e){return typeof e=="function"?e:e==null?W5:typeof e=="object"?H5(e)?U5(e[0],e[1]):F5(e):G5(e)}var Ii=q5;function K5(e,t,n,r){for(var a=e.length,s=n+(r?1:-1);r?s--:++s<a;)if(t(e[s],s,e))return s;return-1}var $O=K5;function V5(e){return e!==e}var Y5=V5;function X5(e,t,n){for(var r=n-1,a=e.length;++r<a;)if(e[r]===t)return r;return-1}var Q5=X5,Z5=$O,J5=Y5,e9=Q5;function t9(e,t,n){return t===t?e9(e,t,n):Z5(e,J5,n)}var n9=t9,r9=n9;function a9(e,t){var n=e==null?0:e.length;return!!n&&r9(e,t,0)>-1}var i9=a9;function s9(e,t,n){for(var r=-1,a=e==null?0:e.length;++r<a;)if(n(t,e[r]))return!0;return!1}var o9=s9;function l9(){}var c9=l9,pg=OO,u9=c9,d9=vw,f9=1/0,h9=pg&&1/d9(new pg([,-0]))[1]==f9?function(e){return new pg(e)}:u9,p9=h9,m9=wO,g9=i9,v9=o9,y9=SO,b9=p9,x9=vw,w9=200;function k9(e,t,n){var r=-1,a=g9,s=e.length,o=!0,l=[],c=l;if(n)o=!1,a=v9;else if(s>=w9){var u=t?null:b9(e);if(u)return x9(u);o=!1,a=y9,c=new m9}else c=t?[]:l;e:for(;++r<s;){var d=e[r],f=t?t(d):d;if(d=n||d!==0?d:0,o&&f===f){for(var h=c.length;h--;)if(c[h]===f)continue e;t&&c.push(f),l.push(d)}else a(c,f,n)||(c!==l&&c.push(f),l.push(d))}return l}var S9=k9,j9=Ii,N9=S9;function E9(e,t){return e&&e.length?N9(e,j9(t)):[]}var _9=E9;const XS=tt(_9);function LO(e,t,n){return t===!0?XS(e,n):De(t)?XS(e,t):e}function Xo(e){"@babel/helpers - typeof";return Xo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Xo(e)}var A9=["ref"];function QS(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function ya(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?QS(Object(n),!0).forEach(function(r){tm(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):QS(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function C9(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function ZS(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,BO(r.key),r)}}function T9(e,t,n){return t&&ZS(e.prototype,t),n&&ZS(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function O9(e,t,n){return t=mh(t),P9(e,DO()?Reflect.construct(t,n||[],mh(e).constructor):t.apply(e,n))}function P9(e,t){if(t&&(Xo(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return R9(e)}function R9(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function DO(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(DO=function(){return!!e})()}function mh(e){return mh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},mh(e)}function M9(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Ly(e,t)}function Ly(e,t){return Ly=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Ly(e,t)}function tm(e,t,n){return t=BO(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function BO(e){var t=I9(e,"string");return Xo(t)=="symbol"?t:t+""}function I9(e,t){if(Xo(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Xo(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}function $9(e,t){if(e==null)return{};var n=L9(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function L9(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function D9(e){return e.value}function B9(e,t){if(V.isValidElement(e))return V.cloneElement(e,t);if(typeof e=="function")return V.createElement(e,t);t.ref;var n=$9(t,A9);return V.createElement(gw,n)}var JS=1,Ss=function(e){function t(){var n;C9(this,t);for(var r=arguments.length,a=new Array(r),s=0;s<r;s++)a[s]=arguments[s];return n=O9(this,t,[].concat(a)),tm(n,"lastBoundingBox",{width:-1,height:-1}),n}return M9(t,e),T9(t,[{key:"componentDidMount",value:function(){this.updateBBox()}},{key:"componentDidUpdate",value:function(){this.updateBBox()}},{key:"getBBox",value:function(){if(this.wrapperNode&&this.wrapperNode.getBoundingClientRect){var r=this.wrapperNode.getBoundingClientRect();return r.height=this.wrapperNode.offsetHeight,r.width=this.wrapperNode.offsetWidth,r}return null}},{key:"updateBBox",value:function(){var r=this.props.onBBoxUpdate,a=this.getBBox();a?(Math.abs(a.width-this.lastBoundingBox.width)>JS||Math.abs(a.height-this.lastBoundingBox.height)>JS)&&(this.lastBoundingBox.width=a.width,this.lastBoundingBox.height=a.height,r&&r(a)):(this.lastBoundingBox.width!==-1||this.lastBoundingBox.height!==-1)&&(this.lastBoundingBox.width=-1,this.lastBoundingBox.height=-1,r&&r(null))}},{key:"getBBoxSnapshot",value:function(){return this.lastBoundingBox.width>=0&&this.lastBoundingBox.height>=0?ya({},this.lastBoundingBox):{width:0,height:0}}},{key:"getDefaultPosition",value:function(r){var a=this.props,s=a.layout,o=a.align,l=a.verticalAlign,c=a.margin,u=a.chartWidth,d=a.chartHeight,f,h;if(!r||(r.left===void 0||r.left===null)&&(r.right===void 0||r.right===null))if(o==="center"&&s==="vertical"){var p=this.getBBoxSnapshot();f={left:((u||0)-p.width)/2}}else f=o==="right"?{right:c&&c.right||0}:{left:c&&c.left||0};if(!r||(r.top===void 0||r.top===null)&&(r.bottom===void 0||r.bottom===null))if(l==="middle"){var g=this.getBBoxSnapshot();h={top:((d||0)-g.height)/2}}else h=l==="bottom"?{bottom:c&&c.bottom||0}:{top:c&&c.top||0};return ya(ya({},f),h)}},{key:"render",value:function(){var r=this,a=this.props,s=a.content,o=a.width,l=a.height,c=a.wrapperStyle,u=a.payloadUniqBy,d=a.payload,f=ya(ya({position:"absolute",width:o||"auto",height:l||"auto"},this.getDefaultPosition(c)),c);return V.createElement("div",{className:"recharts-legend-wrapper",style:f,ref:function(p){r.wrapperNode=p}},B9(s,ya(ya({},this.props),{},{payload:LO(d,u,D9)})))}}],[{key:"getWithHeight",value:function(r,a){var s=ya(ya({},this.defaultProps),r.props),o=s.layout;return o==="vertical"&&ue(r.props.height)?{height:r.props.height}:o==="horizontal"?{width:r.props.width||a}:null}}])}(x.PureComponent);tm(Ss,"displayName","Legend");tm(Ss,"defaultProps",{iconSize:14,layout:"horizontal",align:"center",verticalAlign:"bottom"});var ej=Xu,z9=yw,F9=Hn,tj=ej?ej.isConcatSpreadable:void 0;function U9(e){return F9(e)||z9(e)||!!(tj&&e&&e[tj])}var W9=U9,H9=NO,G9=W9;function zO(e,t,n,r,a){var s=-1,o=e.length;for(n||(n=G9),a||(a=[]);++s<o;){var l=e[s];t>0&&n(l)?t>1?zO(l,t-1,n,r,a):H9(a,l):r||(a[a.length]=l)}return a}var FO=zO;function q9(e){return function(t,n,r){for(var a=-1,s=Object(t),o=r(t),l=o.length;l--;){var c=o[e?l:++a];if(n(s[c],c,s)===!1)break}return t}}var K9=q9,V9=K9,Y9=V9(),X9=Y9,Q9=X9,Z9=em;function J9(e,t){return e&&Q9(e,t,Z9)}var UO=J9,eG=Zu;function tG(e,t){return function(n,r){if(n==null)return n;if(!eG(n))return e(n,r);for(var a=n.length,s=t?a:-1,o=Object(n);(t?s--:++s<a)&&r(o[s],s,o)!==!1;);return n}}var nG=tG,rG=UO,aG=nG,iG=aG(rG),kw=iG,sG=kw,oG=Zu;function lG(e,t){var n=-1,r=oG(e)?Array(e.length):[];return sG(e,function(a,s,o){r[++n]=t(a,s,o)}),r}var WO=lG;function cG(e,t){var n=e.length;for(e.sort(t);n--;)e[n]=e[n].value;return e}var uG=cG,nj=kl;function dG(e,t){if(e!==t){var n=e!==void 0,r=e===null,a=e===e,s=nj(e),o=t!==void 0,l=t===null,c=t===t,u=nj(t);if(!l&&!u&&!s&&e>t||s&&o&&c&&!l&&!u||r&&o&&c||!n&&c||!a)return 1;if(!r&&!s&&!u&&e<t||u&&n&&a&&!r&&!s||l&&n&&a||!o&&a||!c)return-1}return 0}var fG=dG,hG=fG;function pG(e,t,n){for(var r=-1,a=e.criteria,s=t.criteria,o=a.length,l=n.length;++r<o;){var c=hG(a[r],s[r]);if(c){if(r>=l)return c;var u=n[r];return c*(u=="desc"?-1:1)}}return e.index-t.index}var mG=pG,mg=sw,gG=ow,vG=Ii,yG=WO,bG=uG,xG=AO,wG=mG,kG=Cl,SG=Hn;function jG(e,t,n){t.length?t=mg(t,function(s){return SG(s)?function(o){return gG(o,s.length===1?s[0]:s)}:s}):t=[kG];var r=-1;t=mg(t,xG(vG));var a=yG(e,function(s,o,l){var c=mg(t,function(u){return u(s)});return{criteria:c,index:++r,value:s}});return bG(a,function(s,o){return wG(s,o,n)})}var NG=jG;function EG(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}var _G=EG,AG=_G,rj=Math.max;function CG(e,t,n){return t=rj(t===void 0?e.length-1:t,0),function(){for(var r=arguments,a=-1,s=rj(r.length-t,0),o=Array(s);++a<s;)o[a]=r[t+a];a=-1;for(var l=Array(t+1);++a<t;)l[a]=r[a];return l[t]=n(o),AG(e,this,l)}}var TG=CG;function OG(e){return function(){return e}}var PG=OG,RG=Us,MG=function(){try{var e=RG(Object,"defineProperty");return e({},"",{}),e}catch{}}(),HO=MG,IG=PG,aj=HO,$G=Cl,LG=aj?function(e,t){return aj(e,"toString",{configurable:!0,enumerable:!1,value:IG(t),writable:!0})}:$G,DG=LG,BG=800,zG=16,FG=Date.now;function UG(e){var t=0,n=0;return function(){var r=FG(),a=zG-(r-n);if(n=r,a>0){if(++t>=BG)return arguments[0]}else t=0;return e.apply(void 0,arguments)}}var WG=UG,HG=DG,GG=WG,qG=GG(HG),KG=qG,VG=Cl,YG=TG,XG=KG;function QG(e,t){return XG(YG(e,t,VG),e+"")}var ZG=QG,JG=nw,eq=Zu,tq=bw,nq=Mi;function rq(e,t,n){if(!nq(n))return!1;var r=typeof t;return(r=="number"?eq(n)&&tq(t,n.length):r=="string"&&t in n)?JG(n[t],e):!1}var nm=rq,aq=FO,iq=NG,sq=ZG,ij=nm,oq=sq(function(e,t){if(e==null)return[];var n=t.length;return n>1&&ij(e,t[0],t[1])?t=[]:n>2&&ij(t[0],t[1],t[2])&&(t=[t[0]]),iq(e,aq(t,1),[])}),lq=oq;const Sw=tt(lq);function ou(e){"@babel/helpers - typeof";return ou=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ou(e)}function Dy(){return Dy=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Dy.apply(this,arguments)}function cq(e,t){return hq(e)||fq(e,t)||dq(e,t)||uq()}function uq(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
79
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function dq(e,t){if(e){if(typeof e=="string")return sj(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return sj(e,t)}}function sj(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function fq(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function hq(e){if(Array.isArray(e))return e}function oj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function gg(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?oj(Object(n),!0).forEach(function(r){pq(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):oj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function pq(e,t,n){return t=mq(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function mq(e){var t=gq(e,"string");return ou(t)=="symbol"?t:t+""}function gq(e,t){if(ou(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(ou(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function vq(e){return Array.isArray(e)&&Zt(e[0])&&Zt(e[1])?e.join(" ~ "):e}var yq=function(t){var n=t.separator,r=n===void 0?" : ":n,a=t.contentStyle,s=a===void 0?{}:a,o=t.itemStyle,l=o===void 0?{}:o,c=t.labelStyle,u=c===void 0?{}:c,d=t.payload,f=t.formatter,h=t.itemSorter,p=t.wrapperClassName,g=t.labelClassName,m=t.label,y=t.labelFormatter,v=t.accessibilityLayer,S=v===void 0?!1:v,w=function(){if(d&&d.length){var P={padding:0,margin:0},z=(h?Sw(d,h):d).map(function(L,M){if(L.type==="none")return null;var D=gg({display:"block",paddingTop:4,paddingBottom:4,color:L.color||"#000"},l),W=L.formatter||f||vq,R=L.value,B=L.name,A=R,J=B;if(W&&A!=null&&J!=null){var F=W(R,B,L,M,d);if(Array.isArray(F)){var $=cq(F,2);A=$[0],J=$[1]}else A=F}return V.createElement("li",{className:"recharts-tooltip-item",key:"tooltip-item-".concat(M),style:D},Zt(J)?V.createElement("span",{className:"recharts-tooltip-item-name"},J):null,Zt(J)?V.createElement("span",{className:"recharts-tooltip-item-separator"},r):null,V.createElement("span",{className:"recharts-tooltip-item-value"},A),V.createElement("span",{className:"recharts-tooltip-item-unit"},L.unit||""))});return V.createElement("ul",{className:"recharts-tooltip-item-list",style:P},z)}return null},j=gg({margin:0,padding:10,backgroundColor:"#fff",border:"1px solid #ccc",whiteSpace:"nowrap"},s),k=gg({margin:0},u),b=!Ze(m),N=b?m:"",_=Qe("recharts-default-tooltip",p),T=Qe("recharts-tooltip-label",g);b&&y&&d!==void 0&&d!==null&&(N=y(m,d));var C=S?{role:"status","aria-live":"assertive"}:{};return V.createElement("div",Dy({className:_,style:j},C),V.createElement("p",{className:T,style:k},V.isValidElement(N)?N:"".concat(N)),w())};function lu(e){"@babel/helpers - typeof";return lu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},lu(e)}function Wd(e,t,n){return t=bq(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function bq(e){var t=xq(e,"string");return lu(t)=="symbol"?t:t+""}function xq(e,t){if(lu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(lu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var nc="recharts-tooltip-wrapper",wq={visibility:"hidden"};function kq(e){var t=e.coordinate,n=e.translateX,r=e.translateY;return Qe(nc,Wd(Wd(Wd(Wd({},"".concat(nc,"-right"),ue(n)&&t&&ue(t.x)&&n>=t.x),"".concat(nc,"-left"),ue(n)&&t&&ue(t.x)&&n<t.x),"".concat(nc,"-bottom"),ue(r)&&t&&ue(t.y)&&r>=t.y),"".concat(nc,"-top"),ue(r)&&t&&ue(t.y)&&r<t.y))}function lj(e){var t=e.allowEscapeViewBox,n=e.coordinate,r=e.key,a=e.offsetTopLeft,s=e.position,o=e.reverseDirection,l=e.tooltipDimension,c=e.viewBox,u=e.viewBoxDimension;if(s&&ue(s[r]))return s[r];var d=n[r]-l-a,f=n[r]+a;if(t[r])return o[r]?d:f;if(o[r]){var h=d,p=c[r];return h<p?Math.max(f,c[r]):Math.max(d,c[r])}var g=f+l,m=c[r]+u;return g>m?Math.max(d,c[r]):Math.max(f,c[r])}function Sq(e){var t=e.translateX,n=e.translateY,r=e.useTranslate3d;return{transform:r?"translate3d(".concat(t,"px, ").concat(n,"px, 0)"):"translate(".concat(t,"px, ").concat(n,"px)")}}function jq(e){var t=e.allowEscapeViewBox,n=e.coordinate,r=e.offsetTopLeft,a=e.position,s=e.reverseDirection,o=e.tooltipBox,l=e.useTranslate3d,c=e.viewBox,u,d,f;return o.height>0&&o.width>0&&n?(d=lj({allowEscapeViewBox:t,coordinate:n,key:"x",offsetTopLeft:r,position:a,reverseDirection:s,tooltipDimension:o.width,viewBox:c,viewBoxDimension:c.width}),f=lj({allowEscapeViewBox:t,coordinate:n,key:"y",offsetTopLeft:r,position:a,reverseDirection:s,tooltipDimension:o.height,viewBox:c,viewBoxDimension:c.height}),u=Sq({translateX:d,translateY:f,useTranslate3d:l})):u=wq,{cssProperties:u,cssClasses:kq({translateX:d,translateY:f,coordinate:n})}}function Qo(e){"@babel/helpers - typeof";return Qo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Qo(e)}function cj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function uj(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?cj(Object(n),!0).forEach(function(r){zy(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):cj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Nq(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Eq(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,qO(r.key),r)}}function _q(e,t,n){return t&&Eq(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Aq(e,t,n){return t=gh(t),Cq(e,GO()?Reflect.construct(t,n||[],gh(e).constructor):t.apply(e,n))}function Cq(e,t){if(t&&(Qo(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Tq(e)}function Tq(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function GO(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(GO=function(){return!!e})()}function gh(e){return gh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},gh(e)}function Oq(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&By(e,t)}function By(e,t){return By=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},By(e,t)}function zy(e,t,n){return t=qO(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function qO(e){var t=Pq(e,"string");return Qo(t)=="symbol"?t:t+""}function Pq(e,t){if(Qo(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Qo(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var dj=1,Rq=function(e){function t(){var n;Nq(this,t);for(var r=arguments.length,a=new Array(r),s=0;s<r;s++)a[s]=arguments[s];return n=Aq(this,t,[].concat(a)),zy(n,"state",{dismissed:!1,dismissedAtCoordinate:{x:0,y:0},lastBoundingBox:{width:-1,height:-1}}),zy(n,"handleKeyDown",function(o){if(o.key==="Escape"){var l,c,u,d;n.setState({dismissed:!0,dismissedAtCoordinate:{x:(l=(c=n.props.coordinate)===null||c===void 0?void 0:c.x)!==null&&l!==void 0?l:0,y:(u=(d=n.props.coordinate)===null||d===void 0?void 0:d.y)!==null&&u!==void 0?u:0}})}}),n}return Oq(t,e),_q(t,[{key:"updateBBox",value:function(){if(this.wrapperNode&&this.wrapperNode.getBoundingClientRect){var r=this.wrapperNode.getBoundingClientRect();(Math.abs(r.width-this.state.lastBoundingBox.width)>dj||Math.abs(r.height-this.state.lastBoundingBox.height)>dj)&&this.setState({lastBoundingBox:{width:r.width,height:r.height}})}else(this.state.lastBoundingBox.width!==-1||this.state.lastBoundingBox.height!==-1)&&this.setState({lastBoundingBox:{width:-1,height:-1}})}},{key:"componentDidMount",value:function(){document.addEventListener("keydown",this.handleKeyDown),this.updateBBox()}},{key:"componentWillUnmount",value:function(){document.removeEventListener("keydown",this.handleKeyDown)}},{key:"componentDidUpdate",value:function(){var r,a;this.props.active&&this.updateBBox(),this.state.dismissed&&(((r=this.props.coordinate)===null||r===void 0?void 0:r.x)!==this.state.dismissedAtCoordinate.x||((a=this.props.coordinate)===null||a===void 0?void 0:a.y)!==this.state.dismissedAtCoordinate.y)&&(this.state.dismissed=!1)}},{key:"render",value:function(){var r=this,a=this.props,s=a.active,o=a.allowEscapeViewBox,l=a.animationDuration,c=a.animationEasing,u=a.children,d=a.coordinate,f=a.hasPayload,h=a.isAnimationActive,p=a.offset,g=a.position,m=a.reverseDirection,y=a.useTranslate3d,v=a.viewBox,S=a.wrapperStyle,w=jq({allowEscapeViewBox:o,coordinate:d,offsetTopLeft:p,position:g,reverseDirection:m,tooltipBox:this.state.lastBoundingBox,useTranslate3d:y,viewBox:v}),j=w.cssClasses,k=w.cssProperties,b=uj(uj({transition:h&&s?"transform ".concat(l,"ms ").concat(c):void 0},k),{},{pointerEvents:"none",visibility:!this.state.dismissed&&s&&f?"visible":"hidden",position:"absolute",top:0,left:0},S);return V.createElement("div",{tabIndex:-1,className:j,style:b,ref:function(_){r.wrapperNode=_}},u)}}])}(x.PureComponent),Mq=function(){return!(typeof window<"u"&&window.document&&window.document.createElement&&window.setTimeout)},Ju={isSsr:Mq()};function Zo(e){"@babel/helpers - typeof";return Zo=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Zo(e)}function fj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function hj(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?fj(Object(n),!0).forEach(function(r){jw(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):fj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Iq(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function $q(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,VO(r.key),r)}}function Lq(e,t,n){return t&&$q(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Dq(e,t,n){return t=vh(t),Bq(e,KO()?Reflect.construct(t,n||[],vh(e).constructor):t.apply(e,n))}function Bq(e,t){if(t&&(Zo(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return zq(e)}function zq(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function KO(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(KO=function(){return!!e})()}function vh(e){return vh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},vh(e)}function Fq(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Fy(e,t)}function Fy(e,t){return Fy=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Fy(e,t)}function jw(e,t,n){return t=VO(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function VO(e){var t=Uq(e,"string");return Zo(t)=="symbol"?t:t+""}function Uq(e,t){if(Zo(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Zo(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}function Wq(e){return e.dataKey}function Hq(e,t){return V.isValidElement(e)?V.cloneElement(e,t):typeof e=="function"?V.createElement(e,t):V.createElement(yq,t)}var bn=function(e){function t(){return Iq(this,t),Dq(this,t,arguments)}return Fq(t,e),Lq(t,[{key:"render",value:function(){var r=this,a=this.props,s=a.active,o=a.allowEscapeViewBox,l=a.animationDuration,c=a.animationEasing,u=a.content,d=a.coordinate,f=a.filterNull,h=a.isAnimationActive,p=a.offset,g=a.payload,m=a.payloadUniqBy,y=a.position,v=a.reverseDirection,S=a.useTranslate3d,w=a.viewBox,j=a.wrapperStyle,k=g??[];f&&k.length&&(k=LO(g.filter(function(N){return N.value!=null&&(N.hide!==!0||r.props.includeHidden)}),m,Wq));var b=k.length>0;return V.createElement(Rq,{allowEscapeViewBox:o,animationDuration:l,animationEasing:c,isAnimationActive:h,active:s,coordinate:d,hasPayload:b,offset:p,position:y,reverseDirection:v,useTranslate3d:S,viewBox:w,wrapperStyle:j},Hq(u,hj(hj({},this.props),{},{payload:k})))}}])}(x.PureComponent);jw(bn,"displayName","Tooltip");jw(bn,"defaultProps",{accessibilityLayer:!1,allowEscapeViewBox:{x:!1,y:!1},animationDuration:400,animationEasing:"ease",contentStyle:{},coordinate:{x:0,y:0},cursor:!0,cursorStyle:{},filterNull:!0,isAnimationActive:!Ju.isSsr,itemStyle:{},labelStyle:{},offset:10,reverseDirection:{x:!1,y:!1},separator:" : ",trigger:"hover",useTranslate3d:!1,viewBox:{x:0,y:0,height:0,width:0},wrapperStyle:{}});var Gq=pa,qq=function(){return Gq.Date.now()},Kq=qq,Vq=/\s/;function Yq(e){for(var t=e.length;t--&&Vq.test(e.charAt(t)););return t}var Xq=Yq,Qq=Xq,Zq=/^\s+/;function Jq(e){return e&&e.slice(0,Qq(e)+1).replace(Zq,"")}var eK=Jq,tK=eK,pj=Mi,nK=kl,mj=NaN,rK=/^[-+]0x[0-9a-f]+$/i,aK=/^0b[01]+$/i,iK=/^0o[0-7]+$/i,sK=parseInt;function oK(e){if(typeof e=="number")return e;if(nK(e))return mj;if(pj(e)){var t=typeof e.valueOf=="function"?e.valueOf():e;e=pj(t)?t+"":t}if(typeof e!="string")return e===0?e:+e;e=tK(e);var n=aK.test(e);return n||iK.test(e)?sK(e.slice(2),n?2:8):rK.test(e)?mj:+e}var YO=oK,lK=Mi,vg=Kq,gj=YO,cK="Expected a function",uK=Math.max,dK=Math.min;function fK(e,t,n){var r,a,s,o,l,c,u=0,d=!1,f=!1,h=!0;if(typeof e!="function")throw new TypeError(cK);t=gj(t)||0,lK(n)&&(d=!!n.leading,f="maxWait"in n,s=f?uK(gj(n.maxWait)||0,t):s,h="trailing"in n?!!n.trailing:h);function p(b){var N=r,_=a;return r=a=void 0,u=b,o=e.apply(_,N),o}function g(b){return u=b,l=setTimeout(v,t),d?p(b):o}function m(b){var N=b-c,_=b-u,T=t-N;return f?dK(T,s-_):T}function y(b){var N=b-c,_=b-u;return c===void 0||N>=t||N<0||f&&_>=s}function v(){var b=vg();if(y(b))return S(b);l=setTimeout(v,m(b))}function S(b){return l=void 0,h&&r?p(b):(r=a=void 0,o)}function w(){l!==void 0&&clearTimeout(l),u=0,r=c=a=l=void 0}function j(){return l===void 0?o:S(vg())}function k(){var b=vg(),N=y(b);if(r=arguments,a=this,c=b,N){if(l===void 0)return g(c);if(f)return clearTimeout(l),l=setTimeout(v,t),p(c)}return l===void 0&&(l=setTimeout(v,t)),o}return k.cancel=w,k.flush=j,k}var hK=fK,pK=hK,mK=Mi,gK="Expected a function";function vK(e,t,n){var r=!0,a=!0;if(typeof e!="function")throw new TypeError(gK);return mK(n)&&(r="leading"in n?!!n.leading:r,a="trailing"in n?!!n.trailing:a),pK(e,t,{leading:r,maxWait:t,trailing:a})}var yK=vK;const XO=tt(yK);function cu(e){"@babel/helpers - typeof";return cu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},cu(e)}function vj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Hd(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?vj(Object(n),!0).forEach(function(r){bK(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):vj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function bK(e,t,n){return t=xK(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function xK(e){var t=wK(e,"string");return cu(t)=="symbol"?t:t+""}function wK(e,t){if(cu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(cu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function kK(e,t){return EK(e)||NK(e,t)||jK(e,t)||SK()}function SK(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
80
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function jK(e,t){if(e){if(typeof e=="string")return yj(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return yj(e,t)}}function yj(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function NK(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function EK(e){if(Array.isArray(e))return e}var us=x.forwardRef(function(e,t){var n=e.aspect,r=e.initialDimension,a=r===void 0?{width:-1,height:-1}:r,s=e.width,o=s===void 0?"100%":s,l=e.height,c=l===void 0?"100%":l,u=e.minWidth,d=u===void 0?0:u,f=e.minHeight,h=e.maxHeight,p=e.children,g=e.debounce,m=g===void 0?0:g,y=e.id,v=e.className,S=e.onResize,w=e.style,j=w===void 0?{}:w,k=x.useRef(null),b=x.useRef();b.current=S,x.useImperativeHandle(t,function(){return Object.defineProperty(k.current,"current",{get:function(){return console.warn("The usage of ref.current.current is deprecated and will no longer be supported."),k.current},configurable:!0})});var N=x.useState({containerWidth:a.width,containerHeight:a.height}),_=kK(N,2),T=_[0],C=_[1],O=x.useCallback(function(z,L){C(function(M){var D=Math.round(z),W=Math.round(L);return M.containerWidth===D&&M.containerHeight===W?M:{containerWidth:D,containerHeight:W}})},[]);x.useEffect(function(){var z=function(B){var A,J=B[0].contentRect,F=J.width,$=J.height;O(F,$),(A=b.current)===null||A===void 0||A.call(b,F,$)};m>0&&(z=XO(z,m,{trailing:!0,leading:!1}));var L=new ResizeObserver(z),M=k.current.getBoundingClientRect(),D=M.width,W=M.height;return O(D,W),L.observe(k.current),function(){L.disconnect()}},[O,m]);var P=x.useMemo(function(){var z=T.containerWidth,L=T.containerHeight;if(z<0||L<0)return null;Aa(gs(o)||gs(c),`The width(%s) and height(%s) are both fixed numbers,
|
|
81
|
+
maybe you don't need to use a ResponsiveContainer.`,o,c),Aa(!n||n>0,"The aspect(%s) must be greater than zero.",n);var M=gs(o)?z:o,D=gs(c)?L:c;n&&n>0&&(M?D=M/n:D&&(M=D*n),h&&D>h&&(D=h)),Aa(M>0||D>0,`The width(%s) and height(%s) of chart should be greater than 0,
|
|
82
|
+
please check the style of container, or the props width(%s) and height(%s),
|
|
83
|
+
or add a minWidth(%s) or minHeight(%s) or use aspect(%s) to control the
|
|
84
|
+
height and width.`,M,D,o,c,d,f,n);var W=!Array.isArray(p)&&_a(p.type).endsWith("Chart");return V.Children.map(p,function(R){return V.isValidElement(R)?x.cloneElement(R,Hd({width:M,height:D},W?{style:Hd({height:"100%",width:"100%",maxHeight:D,maxWidth:M},R.props.style)}:{})):R})},[n,p,c,h,f,d,T,o]);return V.createElement("div",{id:y?"".concat(y):void 0,className:Qe("recharts-responsive-container",v),style:Hd(Hd({},j),{},{width:o,height:c,minWidth:d,minHeight:f,maxHeight:h}),ref:k},P)}),uu=function(t){return null};uu.displayName="Cell";function du(e){"@babel/helpers - typeof";return du=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},du(e)}function bj(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Uy(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?bj(Object(n),!0).forEach(function(r){_K(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):bj(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function _K(e,t,n){return t=AK(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function AK(e){var t=CK(e,"string");return du(t)=="symbol"?t:t+""}function CK(e,t){if(du(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(du(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var no={widthCache:{},cacheCount:0},TK=2e3,OK={position:"absolute",top:"-20000px",left:0,padding:0,margin:0,border:"none",whiteSpace:"pre"},xj="recharts_measurement_span";function PK(e){var t=Uy({},e);return Object.keys(t).forEach(function(n){t[n]||delete t[n]}),t}var Oc=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(t==null||Ju.isSsr)return{width:0,height:0};var r=PK(n),a=JSON.stringify({text:t,copyStyle:r});if(no.widthCache[a])return no.widthCache[a];try{var s=document.getElementById(xj);s||(s=document.createElement("span"),s.setAttribute("id",xj),s.setAttribute("aria-hidden","true"),document.body.appendChild(s));var o=Uy(Uy({},OK),r);Object.assign(s.style,o),s.textContent="".concat(t);var l=s.getBoundingClientRect(),c={width:l.width,height:l.height};return no.widthCache[a]=c,++no.cacheCount>TK&&(no.cacheCount=0,no.widthCache={}),c}catch{return{width:0,height:0}}},RK=function(t){return{top:t.top+window.scrollY-document.documentElement.clientTop,left:t.left+window.scrollX-document.documentElement.clientLeft}};function fu(e){"@babel/helpers - typeof";return fu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},fu(e)}function yh(e,t){return LK(e)||$K(e,t)||IK(e,t)||MK()}function MK(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
85
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function IK(e,t){if(e){if(typeof e=="string")return wj(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return wj(e,t)}}function wj(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function $K(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function LK(e){if(Array.isArray(e))return e}function DK(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function kj(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,zK(r.key),r)}}function BK(e,t,n){return t&&kj(e.prototype,t),n&&kj(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function zK(e){var t=FK(e,"string");return fu(t)=="symbol"?t:t+""}function FK(e,t){if(fu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(fu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var Sj=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([*/])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,jj=/(-?\d+(?:\.\d+)?[a-zA-Z%]*)([+-])(-?\d+(?:\.\d+)?[a-zA-Z%]*)/,UK=/^px|cm|vh|vw|em|rem|%|mm|in|pt|pc|ex|ch|vmin|vmax|Q$/,WK=/(-?\d+(?:\.\d+)?)([a-zA-Z%]+)?/,QO={cm:96/2.54,mm:96/25.4,pt:96/72,pc:96/6,in:96,Q:96/(2.54*40),px:1},HK=Object.keys(QO),Eo="NaN";function GK(e,t){return e*QO[t]}var Gd=function(){function e(t,n){DK(this,e),this.num=t,this.unit=n,this.num=t,this.unit=n,Number.isNaN(t)&&(this.unit=""),n!==""&&!UK.test(n)&&(this.num=NaN,this.unit=""),HK.includes(n)&&(this.num=GK(t,n),this.unit="px")}return BK(e,[{key:"add",value:function(n){return this.unit!==n.unit?new e(NaN,""):new e(this.num+n.num,this.unit)}},{key:"subtract",value:function(n){return this.unit!==n.unit?new e(NaN,""):new e(this.num-n.num,this.unit)}},{key:"multiply",value:function(n){return this.unit!==""&&n.unit!==""&&this.unit!==n.unit?new e(NaN,""):new e(this.num*n.num,this.unit||n.unit)}},{key:"divide",value:function(n){return this.unit!==""&&n.unit!==""&&this.unit!==n.unit?new e(NaN,""):new e(this.num/n.num,this.unit||n.unit)}},{key:"toString",value:function(){return"".concat(this.num).concat(this.unit)}},{key:"isNaN",value:function(){return Number.isNaN(this.num)}}],[{key:"parse",value:function(n){var r,a=(r=WK.exec(n))!==null&&r!==void 0?r:[],s=yh(a,3),o=s[1],l=s[2];return new e(parseFloat(o),l??"")}}])}();function ZO(e){if(e.includes(Eo))return Eo;for(var t=e;t.includes("*")||t.includes("/");){var n,r=(n=Sj.exec(t))!==null&&n!==void 0?n:[],a=yh(r,4),s=a[1],o=a[2],l=a[3],c=Gd.parse(s??""),u=Gd.parse(l??""),d=o==="*"?c.multiply(u):c.divide(u);if(d.isNaN())return Eo;t=t.replace(Sj,d.toString())}for(;t.includes("+")||/.-\d+(?:\.\d+)?/.test(t);){var f,h=(f=jj.exec(t))!==null&&f!==void 0?f:[],p=yh(h,4),g=p[1],m=p[2],y=p[3],v=Gd.parse(g??""),S=Gd.parse(y??""),w=m==="+"?v.add(S):v.subtract(S);if(w.isNaN())return Eo;t=t.replace(jj,w.toString())}return t}var Nj=/\(([^()]*)\)/;function qK(e){for(var t=e;t.includes("(");){var n=Nj.exec(t),r=yh(n,2),a=r[1];t=t.replace(Nj,ZO(a))}return t}function KK(e){var t=e.replace(/\s+/g,"");return t=qK(t),t=ZO(t),t}function VK(e){try{return KK(e)}catch{return Eo}}function yg(e){var t=VK(e.slice(5,-1));return t===Eo?"":t}var YK=["x","y","lineHeight","capHeight","scaleToFit","textAnchor","verticalAnchor","fill"],XK=["dx","dy","angle","className","breakAll"];function Wy(){return Wy=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Wy.apply(this,arguments)}function Ej(e,t){if(e==null)return{};var n=QK(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function QK(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function _j(e,t){return tV(e)||eV(e,t)||JK(e,t)||ZK()}function ZK(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
86
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function JK(e,t){if(e){if(typeof e=="string")return Aj(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Aj(e,t)}}function Aj(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function eV(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t===0){if(Object(n)!==n)return;c=!1}else for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function tV(e){if(Array.isArray(e))return e}var JO=/[ \f\n\r\t\v\u2028\u2029]+/,eP=function(t){var n=t.children,r=t.breakAll,a=t.style;try{var s=[];Ze(n)||(r?s=n.toString().split(""):s=n.toString().split(JO));var o=s.map(function(c){return{word:c,width:Oc(c,a).width}}),l=r?0:Oc(" ",a).width;return{wordsWithComputedWidth:o,spaceWidth:l}}catch{return null}},nV=function(t,n,r,a,s){var o=t.maxLines,l=t.children,c=t.style,u=t.breakAll,d=ue(o),f=l,h=function(){var M=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];return M.reduce(function(D,W){var R=W.word,B=W.width,A=D[D.length-1];if(A&&(a==null||s||A.width+B+r<Number(a)))A.words.push(R),A.width+=B+r;else{var J={words:[R],width:B};D.push(J)}return D},[])},p=h(n),g=function(M){return M.reduce(function(D,W){return D.width>W.width?D:W})};if(!d)return p;for(var m="…",y=function(M){var D=f.slice(0,M),W=eP({breakAll:u,style:c,children:D+m}).wordsWithComputedWidth,R=h(W),B=R.length>o||g(R).width>Number(a);return[B,R]},v=0,S=f.length-1,w=0,j;v<=S&&w<=f.length-1;){var k=Math.floor((v+S)/2),b=k-1,N=y(b),_=_j(N,2),T=_[0],C=_[1],O=y(k),P=_j(O,1),z=P[0];if(!T&&!z&&(v=k+1),T&&z&&(S=k-1),!T&&z){j=C;break}w++}return j||p},Cj=function(t){var n=Ze(t)?[]:t.toString().split(JO);return[{words:n}]},rV=function(t){var n=t.width,r=t.scaleToFit,a=t.children,s=t.style,o=t.breakAll,l=t.maxLines;if((n||r)&&!Ju.isSsr){var c,u,d=eP({breakAll:o,children:a,style:s});if(d){var f=d.wordsWithComputedWidth,h=d.spaceWidth;c=f,u=h}else return Cj(a);return nV({breakAll:o,children:a,maxLines:l,style:s},c,u,n,r)}return Cj(a)},Tj="#808080",bh=function(t){var n=t.x,r=n===void 0?0:n,a=t.y,s=a===void 0?0:a,o=t.lineHeight,l=o===void 0?"1em":o,c=t.capHeight,u=c===void 0?"0.71em":c,d=t.scaleToFit,f=d===void 0?!1:d,h=t.textAnchor,p=h===void 0?"start":h,g=t.verticalAnchor,m=g===void 0?"end":g,y=t.fill,v=y===void 0?Tj:y,S=Ej(t,YK),w=x.useMemo(function(){return rV({breakAll:S.breakAll,children:S.children,maxLines:S.maxLines,scaleToFit:f,style:S.style,width:S.width})},[S.breakAll,S.children,S.maxLines,f,S.style,S.width]),j=S.dx,k=S.dy,b=S.angle,N=S.className,_=S.breakAll,T=Ej(S,XK);if(!Zt(r)||!Zt(s))return null;var C=r+(ue(j)?j:0),O=s+(ue(k)?k:0),P;switch(m){case"start":P=yg("calc(".concat(u,")"));break;case"middle":P=yg("calc(".concat((w.length-1)/2," * -").concat(l," + (").concat(u," / 2))"));break;default:P=yg("calc(".concat(w.length-1," * -").concat(l,")"));break}var z=[];if(f){var L=w[0].width,M=S.width;z.push("scale(".concat((ue(M)?M/L:1)/L,")"))}return b&&z.push("rotate(".concat(b,", ").concat(C,", ").concat(O,")")),z.length&&(T.transform=z.join(" ")),V.createElement("text",Wy({},Xe(T,!0),{x:C,y:O,className:Qe("recharts-text",N),textAnchor:p,fill:v.includes("url")?Tj:v}),w.map(function(D,W){var R=D.words.join(_?"":" ");return V.createElement("tspan",{x:C,dy:W===0?P:l,key:"".concat(R,"-").concat(W)},R)}))};function ji(e,t){return e==null||t==null?NaN:e<t?-1:e>t?1:e>=t?0:NaN}function aV(e,t){return e==null||t==null?NaN:t<e?-1:t>e?1:t>=e?0:NaN}function Nw(e){let t,n,r;e.length!==2?(t=ji,n=(l,c)=>ji(e(l),c),r=(l,c)=>e(l)-c):(t=e===ji||e===aV?e:iV,n=e,r=e);function a(l,c,u=0,d=l.length){if(u<d){if(t(c,c)!==0)return d;do{const f=u+d>>>1;n(l[f],c)<0?u=f+1:d=f}while(u<d)}return u}function s(l,c,u=0,d=l.length){if(u<d){if(t(c,c)!==0)return d;do{const f=u+d>>>1;n(l[f],c)<=0?u=f+1:d=f}while(u<d)}return u}function o(l,c,u=0,d=l.length){const f=a(l,c,u,d-1);return f>u&&r(l[f-1],c)>-r(l[f],c)?f-1:f}return{left:a,center:o,right:s}}function iV(){return 0}function tP(e){return e===null?NaN:+e}function*sV(e,t){for(let n of e)n!=null&&(n=+n)>=n&&(yield n)}const oV=Nw(ji),ed=oV.right;Nw(tP).center;class Oj extends Map{constructor(t,n=uV){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:n}}),t!=null)for(const[r,a]of t)this.set(r,a)}get(t){return super.get(Pj(this,t))}has(t){return super.has(Pj(this,t))}set(t,n){return super.set(lV(this,t),n)}delete(t){return super.delete(cV(this,t))}}function Pj({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):n}function lV({_intern:e,_key:t},n){const r=t(n);return e.has(r)?e.get(r):(e.set(r,n),n)}function cV({_intern:e,_key:t},n){const r=t(n);return e.has(r)&&(n=e.get(r),e.delete(r)),n}function uV(e){return e!==null&&typeof e=="object"?e.valueOf():e}function dV(e=ji){if(e===ji)return nP;if(typeof e!="function")throw new TypeError("compare is not a function");return(t,n)=>{const r=e(t,n);return r||r===0?r:(e(n,n)===0)-(e(t,t)===0)}}function nP(e,t){return(e==null||!(e>=e))-(t==null||!(t>=t))||(e<t?-1:e>t?1:0)}const fV=Math.sqrt(50),hV=Math.sqrt(10),pV=Math.sqrt(2);function xh(e,t,n){const r=(t-e)/Math.max(0,n),a=Math.floor(Math.log10(r)),s=r/Math.pow(10,a),o=s>=fV?10:s>=hV?5:s>=pV?2:1;let l,c,u;return a<0?(u=Math.pow(10,-a)/o,l=Math.round(e*u),c=Math.round(t*u),l/u<e&&++l,c/u>t&&--c,u=-u):(u=Math.pow(10,a)*o,l=Math.round(e/u),c=Math.round(t/u),l*u<e&&++l,c*u>t&&--c),c<l&&.5<=n&&n<2?xh(e,t,n*2):[l,c,u]}function Hy(e,t,n){if(t=+t,e=+e,n=+n,!(n>0))return[];if(e===t)return[e];const r=t<e,[a,s,o]=r?xh(t,e,n):xh(e,t,n);if(!(s>=a))return[];const l=s-a+1,c=new Array(l);if(r)if(o<0)for(let u=0;u<l;++u)c[u]=(s-u)/-o;else for(let u=0;u<l;++u)c[u]=(s-u)*o;else if(o<0)for(let u=0;u<l;++u)c[u]=(a+u)/-o;else for(let u=0;u<l;++u)c[u]=(a+u)*o;return c}function Gy(e,t,n){return t=+t,e=+e,n=+n,xh(e,t,n)[2]}function qy(e,t,n){t=+t,e=+e,n=+n;const r=t<e,a=r?Gy(t,e,n):Gy(e,t,n);return(r?-1:1)*(a<0?1/-a:a)}function Rj(e,t){let n;for(const r of e)r!=null&&(n<r||n===void 0&&r>=r)&&(n=r);return n}function Mj(e,t){let n;for(const r of e)r!=null&&(n>r||n===void 0&&r>=r)&&(n=r);return n}function rP(e,t,n=0,r=1/0,a){if(t=Math.floor(t),n=Math.floor(Math.max(0,n)),r=Math.floor(Math.min(e.length-1,r)),!(n<=t&&t<=r))return e;for(a=a===void 0?nP:dV(a);r>n;){if(r-n>600){const c=r-n+1,u=t-n+1,d=Math.log(c),f=.5*Math.exp(2*d/3),h=.5*Math.sqrt(d*f*(c-f)/c)*(u-c/2<0?-1:1),p=Math.max(n,Math.floor(t-u*f/c+h)),g=Math.min(r,Math.floor(t+(c-u)*f/c+h));rP(e,t,p,g,a)}const s=e[t];let o=n,l=r;for(rc(e,n,t),a(e[r],s)>0&&rc(e,n,r);o<l;){for(rc(e,o,l),++o,--l;a(e[o],s)<0;)++o;for(;a(e[l],s)>0;)--l}a(e[n],s)===0?rc(e,n,l):(++l,rc(e,l,r)),l<=t&&(n=l+1),t<=l&&(r=l-1)}return e}function rc(e,t,n){const r=e[t];e[t]=e[n],e[n]=r}function mV(e,t,n){if(e=Float64Array.from(sV(e)),!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return Mj(e);if(t>=1)return Rj(e);var r,a=(r-1)*t,s=Math.floor(a),o=Rj(rP(e,s).subarray(0,s+1)),l=Mj(e.subarray(s+1));return o+(l-o)*(a-s)}}function gV(e,t,n=tP){if(!(!(r=e.length)||isNaN(t=+t))){if(t<=0||r<2)return+n(e[0],0,e);if(t>=1)return+n(e[r-1],r-1,e);var r,a=(r-1)*t,s=Math.floor(a),o=+n(e[s],s,e),l=+n(e[s+1],s+1,e);return o+(l-o)*(a-s)}}function vV(e,t,n){e=+e,t=+t,n=(a=arguments.length)<2?(t=e,e=0,1):a<3?1:+n;for(var r=-1,a=Math.max(0,Math.ceil((t-e)/n))|0,s=new Array(a);++r<a;)s[r]=e+r*n;return s}function Ar(e,t){switch(arguments.length){case 0:break;case 1:this.range(e);break;default:this.range(t).domain(e);break}return this}function Fa(e,t){switch(arguments.length){case 0:break;case 1:{typeof e=="function"?this.interpolator(e):this.range(e);break}default:{this.domain(e),typeof t=="function"?this.interpolator(t):this.range(t);break}}return this}const Ky=Symbol("implicit");function Ew(){var e=new Oj,t=[],n=[],r=Ky;function a(s){let o=e.get(s);if(o===void 0){if(r!==Ky)return r;e.set(s,o=t.push(s)-1)}return n[o%n.length]}return a.domain=function(s){if(!arguments.length)return t.slice();t=[],e=new Oj;for(const o of s)e.has(o)||e.set(o,t.push(o)-1);return a},a.range=function(s){return arguments.length?(n=Array.from(s),a):n.slice()},a.unknown=function(s){return arguments.length?(r=s,a):r},a.copy=function(){return Ew(t,n).unknown(r)},Ar.apply(a,arguments),a}function hu(){var e=Ew().unknown(void 0),t=e.domain,n=e.range,r=0,a=1,s,o,l=!1,c=0,u=0,d=.5;delete e.unknown;function f(){var h=t().length,p=a<r,g=p?a:r,m=p?r:a;s=(m-g)/Math.max(1,h-c+u*2),l&&(s=Math.floor(s)),g+=(m-g-s*(h-c))*d,o=s*(1-c),l&&(g=Math.round(g),o=Math.round(o));var y=vV(h).map(function(v){return g+s*v});return n(p?y.reverse():y)}return e.domain=function(h){return arguments.length?(t(h),f()):t()},e.range=function(h){return arguments.length?([r,a]=h,r=+r,a=+a,f()):[r,a]},e.rangeRound=function(h){return[r,a]=h,r=+r,a=+a,l=!0,f()},e.bandwidth=function(){return o},e.step=function(){return s},e.round=function(h){return arguments.length?(l=!!h,f()):l},e.padding=function(h){return arguments.length?(c=Math.min(1,u=+h),f()):c},e.paddingInner=function(h){return arguments.length?(c=Math.min(1,h),f()):c},e.paddingOuter=function(h){return arguments.length?(u=+h,f()):u},e.align=function(h){return arguments.length?(d=Math.max(0,Math.min(1,h)),f()):d},e.copy=function(){return hu(t(),[r,a]).round(l).paddingInner(c).paddingOuter(u).align(d)},Ar.apply(f(),arguments)}function aP(e){var t=e.copy;return e.padding=e.paddingOuter,delete e.paddingInner,delete e.paddingOuter,e.copy=function(){return aP(t())},e}function Pc(){return aP(hu.apply(null,arguments).paddingInner(1))}function _w(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function iP(e,t){var n=Object.create(e.prototype);for(var r in t)n[r]=t[r];return n}function td(){}var pu=.7,wh=1/pu,Lo="\\s*([+-]?\\d+)\\s*",mu="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",ua="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",yV=/^#([0-9a-f]{3,8})$/,bV=new RegExp(`^rgb\\(${Lo},${Lo},${Lo}\\)$`),xV=new RegExp(`^rgb\\(${ua},${ua},${ua}\\)$`),wV=new RegExp(`^rgba\\(${Lo},${Lo},${Lo},${mu}\\)$`),kV=new RegExp(`^rgba\\(${ua},${ua},${ua},${mu}\\)$`),SV=new RegExp(`^hsl\\(${mu},${ua},${ua}\\)$`),jV=new RegExp(`^hsla\\(${mu},${ua},${ua},${mu}\\)$`),Ij={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};_w(td,gu,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:$j,formatHex:$j,formatHex8:NV,formatHsl:EV,formatRgb:Lj,toString:Lj});function $j(){return this.rgb().formatHex()}function NV(){return this.rgb().formatHex8()}function EV(){return sP(this).formatHsl()}function Lj(){return this.rgb().formatRgb()}function gu(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=yV.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?Dj(t):n===3?new zn(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?qd(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?qd(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=bV.exec(e))?new zn(t[1],t[2],t[3],1):(t=xV.exec(e))?new zn(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=wV.exec(e))?qd(t[1],t[2],t[3],t[4]):(t=kV.exec(e))?qd(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=SV.exec(e))?Fj(t[1],t[2]/100,t[3]/100,1):(t=jV.exec(e))?Fj(t[1],t[2]/100,t[3]/100,t[4]):Ij.hasOwnProperty(e)?Dj(Ij[e]):e==="transparent"?new zn(NaN,NaN,NaN,0):null}function Dj(e){return new zn(e>>16&255,e>>8&255,e&255,1)}function qd(e,t,n,r){return r<=0&&(e=t=n=NaN),new zn(e,t,n,r)}function _V(e){return e instanceof td||(e=gu(e)),e?(e=e.rgb(),new zn(e.r,e.g,e.b,e.opacity)):new zn}function Vy(e,t,n,r){return arguments.length===1?_V(e):new zn(e,t,n,r??1)}function zn(e,t,n,r){this.r=+e,this.g=+t,this.b=+n,this.opacity=+r}_w(zn,Vy,iP(td,{brighter(e){return e=e==null?wh:Math.pow(wh,e),new zn(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?pu:Math.pow(pu,e),new zn(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new zn(js(this.r),js(this.g),js(this.b),kh(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:Bj,formatHex:Bj,formatHex8:AV,formatRgb:zj,toString:zj}));function Bj(){return`#${vs(this.r)}${vs(this.g)}${vs(this.b)}`}function AV(){return`#${vs(this.r)}${vs(this.g)}${vs(this.b)}${vs((isNaN(this.opacity)?1:this.opacity)*255)}`}function zj(){const e=kh(this.opacity);return`${e===1?"rgb(":"rgba("}${js(this.r)}, ${js(this.g)}, ${js(this.b)}${e===1?")":`, ${e})`}`}function kh(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function js(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function vs(e){return e=js(e),(e<16?"0":"")+e.toString(16)}function Fj(e,t,n,r){return r<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new Br(e,t,n,r)}function sP(e){if(e instanceof Br)return new Br(e.h,e.s,e.l,e.opacity);if(e instanceof td||(e=gu(e)),!e)return new Br;if(e instanceof Br)return e;e=e.rgb();var t=e.r/255,n=e.g/255,r=e.b/255,a=Math.min(t,n,r),s=Math.max(t,n,r),o=NaN,l=s-a,c=(s+a)/2;return l?(t===s?o=(n-r)/l+(n<r)*6:n===s?o=(r-t)/l+2:o=(t-n)/l+4,l/=c<.5?s+a:2-s-a,o*=60):l=c>0&&c<1?0:o,new Br(o,l,c,e.opacity)}function CV(e,t,n,r){return arguments.length===1?sP(e):new Br(e,t,n,r??1)}function Br(e,t,n,r){this.h=+e,this.s=+t,this.l=+n,this.opacity=+r}_w(Br,CV,iP(td,{brighter(e){return e=e==null?wh:Math.pow(wh,e),new Br(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?pu:Math.pow(pu,e),new Br(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,r=n+(n<.5?n:1-n)*t,a=2*n-r;return new zn(bg(e>=240?e-240:e+120,a,r),bg(e,a,r),bg(e<120?e+240:e-120,a,r),this.opacity)},clamp(){return new Br(Uj(this.h),Kd(this.s),Kd(this.l),kh(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=kh(this.opacity);return`${e===1?"hsl(":"hsla("}${Uj(this.h)}, ${Kd(this.s)*100}%, ${Kd(this.l)*100}%${e===1?")":`, ${e})`}`}}));function Uj(e){return e=(e||0)%360,e<0?e+360:e}function Kd(e){return Math.max(0,Math.min(1,e||0))}function bg(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const Aw=e=>()=>e;function TV(e,t){return function(n){return e+n*t}}function OV(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(r){return Math.pow(e+r*t,n)}}function PV(e){return(e=+e)==1?oP:function(t,n){return n-t?OV(t,n,e):Aw(isNaN(t)?n:t)}}function oP(e,t){var n=t-e;return n?TV(e,n):Aw(isNaN(e)?t:e)}const Wj=function e(t){var n=PV(t);function r(a,s){var o=n((a=Vy(a)).r,(s=Vy(s)).r),l=n(a.g,s.g),c=n(a.b,s.b),u=oP(a.opacity,s.opacity);return function(d){return a.r=o(d),a.g=l(d),a.b=c(d),a.opacity=u(d),a+""}}return r.gamma=e,r}(1);function RV(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,r=t.slice(),a;return function(s){for(a=0;a<n;++a)r[a]=e[a]*(1-s)+t[a]*s;return r}}function MV(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function IV(e,t){var n=t?t.length:0,r=e?Math.min(n,e.length):0,a=new Array(r),s=new Array(n),o;for(o=0;o<r;++o)a[o]=Tl(e[o],t[o]);for(;o<n;++o)s[o]=t[o];return function(l){for(o=0;o<r;++o)s[o]=a[o](l);return s}}function $V(e,t){var n=new Date;return e=+e,t=+t,function(r){return n.setTime(e*(1-r)+t*r),n}}function Sh(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function LV(e,t){var n={},r={},a;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(a in t)a in e?n[a]=Tl(e[a],t[a]):r[a]=t[a];return function(s){for(a in n)r[a]=n[a](s);return r}}var Yy=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,xg=new RegExp(Yy.source,"g");function DV(e){return function(){return e}}function BV(e){return function(t){return e(t)+""}}function zV(e,t){var n=Yy.lastIndex=xg.lastIndex=0,r,a,s,o=-1,l=[],c=[];for(e=e+"",t=t+"";(r=Yy.exec(e))&&(a=xg.exec(t));)(s=a.index)>n&&(s=t.slice(n,s),l[o]?l[o]+=s:l[++o]=s),(r=r[0])===(a=a[0])?l[o]?l[o]+=a:l[++o]=a:(l[++o]=null,c.push({i:o,x:Sh(r,a)})),n=xg.lastIndex;return n<t.length&&(s=t.slice(n),l[o]?l[o]+=s:l[++o]=s),l.length<2?c[0]?BV(c[0].x):DV(t):(t=c.length,function(u){for(var d=0,f;d<t;++d)l[(f=c[d]).i]=f.x(u);return l.join("")})}function Tl(e,t){var n=typeof t,r;return t==null||n==="boolean"?Aw(t):(n==="number"?Sh:n==="string"?(r=gu(t))?(t=r,Wj):zV:t instanceof gu?Wj:t instanceof Date?$V:MV(t)?RV:Array.isArray(t)?IV:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?LV:Sh)(e,t)}function Cw(e,t){return e=+e,t=+t,function(n){return Math.round(e*(1-n)+t*n)}}function FV(e,t){t===void 0&&(t=e,e=Tl);for(var n=0,r=t.length-1,a=t[0],s=new Array(r<0?0:r);n<r;)s[n]=e(a,a=t[++n]);return function(o){var l=Math.max(0,Math.min(r-1,Math.floor(o*=r)));return s[l](o-l)}}function UV(e){return function(){return e}}function jh(e){return+e}var Hj=[0,1];function On(e){return e}function Xy(e,t){return(t-=e=+e)?function(n){return(n-e)/t}:UV(isNaN(t)?NaN:.5)}function WV(e,t){var n;return e>t&&(n=e,e=t,t=n),function(r){return Math.max(e,Math.min(t,r))}}function HV(e,t,n){var r=e[0],a=e[1],s=t[0],o=t[1];return a<r?(r=Xy(a,r),s=n(o,s)):(r=Xy(r,a),s=n(s,o)),function(l){return s(r(l))}}function GV(e,t,n){var r=Math.min(e.length,t.length)-1,a=new Array(r),s=new Array(r),o=-1;for(e[r]<e[0]&&(e=e.slice().reverse(),t=t.slice().reverse());++o<r;)a[o]=Xy(e[o],e[o+1]),s[o]=n(t[o],t[o+1]);return function(l){var c=ed(e,l,1,r)-1;return s[c](a[c](l))}}function nd(e,t){return t.domain(e.domain()).range(e.range()).interpolate(e.interpolate()).clamp(e.clamp()).unknown(e.unknown())}function rm(){var e=Hj,t=Hj,n=Tl,r,a,s,o=On,l,c,u;function d(){var h=Math.min(e.length,t.length);return o!==On&&(o=WV(e[0],e[h-1])),l=h>2?GV:HV,c=u=null,f}function f(h){return h==null||isNaN(h=+h)?s:(c||(c=l(e.map(r),t,n)))(r(o(h)))}return f.invert=function(h){return o(a((u||(u=l(t,e.map(r),Sh)))(h)))},f.domain=function(h){return arguments.length?(e=Array.from(h,jh),d()):e.slice()},f.range=function(h){return arguments.length?(t=Array.from(h),d()):t.slice()},f.rangeRound=function(h){return t=Array.from(h),n=Cw,d()},f.clamp=function(h){return arguments.length?(o=h?!0:On,d()):o!==On},f.interpolate=function(h){return arguments.length?(n=h,d()):n},f.unknown=function(h){return arguments.length?(s=h,f):s},function(h,p){return r=h,a=p,d()}}function Tw(){return rm()(On,On)}function qV(e){return Math.abs(e=Math.round(e))>=1e21?e.toLocaleString("en").replace(/,/g,""):e.toString(10)}function Nh(e,t){if(!isFinite(e)||e===0)return null;var n=(e=t?e.toExponential(t-1):e.toExponential()).indexOf("e"),r=e.slice(0,n);return[r.length>1?r[0]+r.slice(2):r,+e.slice(n+1)]}function Jo(e){return e=Nh(Math.abs(e)),e?e[1]:NaN}function KV(e,t){return function(n,r){for(var a=n.length,s=[],o=0,l=e[0],c=0;a>0&&l>0&&(c+l+1>r&&(l=Math.max(1,r-c)),s.push(n.substring(a-=l,a+l)),!((c+=l+1)>r));)l=e[o=(o+1)%e.length];return s.reverse().join(t)}}function VV(e){return function(t){return t.replace(/[0-9]/g,function(n){return e[+n]})}}var YV=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function vu(e){if(!(t=YV.exec(e)))throw new Error("invalid format: "+e);var t;return new Ow({fill:t[1],align:t[2],sign:t[3],symbol:t[4],zero:t[5],width:t[6],comma:t[7],precision:t[8]&&t[8].slice(1),trim:t[9],type:t[10]})}vu.prototype=Ow.prototype;function Ow(e){this.fill=e.fill===void 0?" ":e.fill+"",this.align=e.align===void 0?">":e.align+"",this.sign=e.sign===void 0?"-":e.sign+"",this.symbol=e.symbol===void 0?"":e.symbol+"",this.zero=!!e.zero,this.width=e.width===void 0?void 0:+e.width,this.comma=!!e.comma,this.precision=e.precision===void 0?void 0:+e.precision,this.trim=!!e.trim,this.type=e.type===void 0?"":e.type+""}Ow.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function XV(e){e:for(var t=e.length,n=1,r=-1,a;n<t;++n)switch(e[n]){case".":r=a=n;break;case"0":r===0&&(r=n),a=n;break;default:if(!+e[n])break e;r>0&&(r=0);break}return r>0?e.slice(0,r)+e.slice(a+1):e}var Eh;function QV(e,t){var n=Nh(e,t);if(!n)return Eh=void 0,e.toPrecision(t);var r=n[0],a=n[1],s=a-(Eh=Math.max(-8,Math.min(8,Math.floor(a/3)))*3)+1,o=r.length;return s===o?r:s>o?r+new Array(s-o+1).join("0"):s>0?r.slice(0,s)+"."+r.slice(s):"0."+new Array(1-s).join("0")+Nh(e,Math.max(0,t+s-1))[0]}function Gj(e,t){var n=Nh(e,t);if(!n)return e+"";var r=n[0],a=n[1];return a<0?"0."+new Array(-a).join("0")+r:r.length>a+1?r.slice(0,a+1)+"."+r.slice(a+1):r+new Array(a-r.length+2).join("0")}const qj={"%":(e,t)=>(e*100).toFixed(t),b:e=>Math.round(e).toString(2),c:e=>e+"",d:qV,e:(e,t)=>e.toExponential(t),f:(e,t)=>e.toFixed(t),g:(e,t)=>e.toPrecision(t),o:e=>Math.round(e).toString(8),p:(e,t)=>Gj(e*100,t),r:Gj,s:QV,X:e=>Math.round(e).toString(16).toUpperCase(),x:e=>Math.round(e).toString(16)};function Kj(e){return e}var Vj=Array.prototype.map,Yj=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function ZV(e){var t=e.grouping===void 0||e.thousands===void 0?Kj:KV(Vj.call(e.grouping,Number),e.thousands+""),n=e.currency===void 0?"":e.currency[0]+"",r=e.currency===void 0?"":e.currency[1]+"",a=e.decimal===void 0?".":e.decimal+"",s=e.numerals===void 0?Kj:VV(Vj.call(e.numerals,String)),o=e.percent===void 0?"%":e.percent+"",l=e.minus===void 0?"−":e.minus+"",c=e.nan===void 0?"NaN":e.nan+"";function u(f,h){f=vu(f);var p=f.fill,g=f.align,m=f.sign,y=f.symbol,v=f.zero,S=f.width,w=f.comma,j=f.precision,k=f.trim,b=f.type;b==="n"?(w=!0,b="g"):qj[b]||(j===void 0&&(j=12),k=!0,b="g"),(v||p==="0"&&g==="=")&&(v=!0,p="0",g="=");var N=(h&&h.prefix!==void 0?h.prefix:"")+(y==="$"?n:y==="#"&&/[boxX]/.test(b)?"0"+b.toLowerCase():""),_=(y==="$"?r:/[%p]/.test(b)?o:"")+(h&&h.suffix!==void 0?h.suffix:""),T=qj[b],C=/[defgprs%]/.test(b);j=j===void 0?6:/[gprs]/.test(b)?Math.max(1,Math.min(21,j)):Math.max(0,Math.min(20,j));function O(P){var z=N,L=_,M,D,W;if(b==="c")L=T(P)+L,P="";else{P=+P;var R=P<0||1/P<0;if(P=isNaN(P)?c:T(Math.abs(P),j),k&&(P=XV(P)),R&&+P==0&&m!=="+"&&(R=!1),z=(R?m==="("?m:l:m==="-"||m==="("?"":m)+z,L=(b==="s"&&!isNaN(P)&&Eh!==void 0?Yj[8+Eh/3]:"")+L+(R&&m==="("?")":""),C){for(M=-1,D=P.length;++M<D;)if(W=P.charCodeAt(M),48>W||W>57){L=(W===46?a+P.slice(M+1):P.slice(M))+L,P=P.slice(0,M);break}}}w&&!v&&(P=t(P,1/0));var B=z.length+P.length+L.length,A=B<S?new Array(S-B+1).join(p):"";switch(w&&v&&(P=t(A+P,A.length?S-L.length:1/0),A=""),g){case"<":P=z+P+L+A;break;case"=":P=z+A+P+L;break;case"^":P=A.slice(0,B=A.length>>1)+z+P+L+A.slice(B);break;default:P=A+z+P+L;break}return s(P)}return O.toString=function(){return f+""},O}function d(f,h){var p=Math.max(-8,Math.min(8,Math.floor(Jo(h)/3)))*3,g=Math.pow(10,-p),m=u((f=vu(f),f.type="f",f),{suffix:Yj[8+p/3]});return function(y){return m(g*y)}}return{format:u,formatPrefix:d}}var Vd,Pw,lP;JV({thousands:",",grouping:[3],currency:["$",""]});function JV(e){return Vd=ZV(e),Pw=Vd.format,lP=Vd.formatPrefix,Vd}function e7(e){return Math.max(0,-Jo(Math.abs(e)))}function t7(e,t){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(Jo(t)/3)))*3-Jo(Math.abs(e)))}function n7(e,t){return e=Math.abs(e),t=Math.abs(t)-e,Math.max(0,Jo(t)-Jo(e))+1}function cP(e,t,n,r){var a=qy(e,t,n),s;switch(r=vu(r??",f"),r.type){case"s":{var o=Math.max(Math.abs(e),Math.abs(t));return r.precision==null&&!isNaN(s=t7(a,o))&&(r.precision=s),lP(r,o)}case"":case"e":case"g":case"p":case"r":{r.precision==null&&!isNaN(s=n7(a,Math.max(Math.abs(e),Math.abs(t))))&&(r.precision=s-(r.type==="e"));break}case"f":case"%":{r.precision==null&&!isNaN(s=e7(a))&&(r.precision=s-(r.type==="%")*2);break}}return Pw(r)}function $i(e){var t=e.domain;return e.ticks=function(n){var r=t();return Hy(r[0],r[r.length-1],n??10)},e.tickFormat=function(n,r){var a=t();return cP(a[0],a[a.length-1],n??10,r)},e.nice=function(n){n==null&&(n=10);var r=t(),a=0,s=r.length-1,o=r[a],l=r[s],c,u,d=10;for(l<o&&(u=o,o=l,l=u,u=a,a=s,s=u);d-- >0;){if(u=Gy(o,l,n),u===c)return r[a]=o,r[s]=l,t(r);if(u>0)o=Math.floor(o/u)*u,l=Math.ceil(l/u)*u;else if(u<0)o=Math.ceil(o*u)/u,l=Math.floor(l*u)/u;else break;c=u}return e},e}function _h(){var e=Tw();return e.copy=function(){return nd(e,_h())},Ar.apply(e,arguments),$i(e)}function uP(e){var t;function n(r){return r==null||isNaN(r=+r)?t:r}return n.invert=n,n.domain=n.range=function(r){return arguments.length?(e=Array.from(r,jh),n):e.slice()},n.unknown=function(r){return arguments.length?(t=r,n):t},n.copy=function(){return uP(e).unknown(t)},e=arguments.length?Array.from(e,jh):[0,1],$i(n)}function dP(e,t){e=e.slice();var n=0,r=e.length-1,a=e[n],s=e[r],o;return s<a&&(o=n,n=r,r=o,o=a,a=s,s=o),e[n]=t.floor(a),e[r]=t.ceil(s),e}function Xj(e){return Math.log(e)}function Qj(e){return Math.exp(e)}function r7(e){return-Math.log(-e)}function a7(e){return-Math.exp(-e)}function i7(e){return isFinite(e)?+("1e"+e):e<0?0:e}function s7(e){return e===10?i7:e===Math.E?Math.exp:t=>Math.pow(e,t)}function o7(e){return e===Math.E?Math.log:e===10&&Math.log10||e===2&&Math.log2||(e=Math.log(e),t=>Math.log(t)/e)}function Zj(e){return(t,n)=>-e(-t,n)}function Rw(e){const t=e(Xj,Qj),n=t.domain;let r=10,a,s;function o(){return a=o7(r),s=s7(r),n()[0]<0?(a=Zj(a),s=Zj(s),e(r7,a7)):e(Xj,Qj),t}return t.base=function(l){return arguments.length?(r=+l,o()):r},t.domain=function(l){return arguments.length?(n(l),o()):n()},t.ticks=l=>{const c=n();let u=c[0],d=c[c.length-1];const f=d<u;f&&([u,d]=[d,u]);let h=a(u),p=a(d),g,m;const y=l==null?10:+l;let v=[];if(!(r%1)&&p-h<y){if(h=Math.floor(h),p=Math.ceil(p),u>0){for(;h<=p;++h)for(g=1;g<r;++g)if(m=h<0?g/s(-h):g*s(h),!(m<u)){if(m>d)break;v.push(m)}}else for(;h<=p;++h)for(g=r-1;g>=1;--g)if(m=h>0?g/s(-h):g*s(h),!(m<u)){if(m>d)break;v.push(m)}v.length*2<y&&(v=Hy(u,d,y))}else v=Hy(h,p,Math.min(p-h,y)).map(s);return f?v.reverse():v},t.tickFormat=(l,c)=>{if(l==null&&(l=10),c==null&&(c=r===10?"s":","),typeof c!="function"&&(!(r%1)&&(c=vu(c)).precision==null&&(c.trim=!0),c=Pw(c)),l===1/0)return c;const u=Math.max(1,r*l/t.ticks().length);return d=>{let f=d/s(Math.round(a(d)));return f*r<r-.5&&(f*=r),f<=u?c(d):""}},t.nice=()=>n(dP(n(),{floor:l=>s(Math.floor(a(l))),ceil:l=>s(Math.ceil(a(l)))})),t}function fP(){const e=Rw(rm()).domain([1,10]);return e.copy=()=>nd(e,fP()).base(e.base()),Ar.apply(e,arguments),e}function Jj(e){return function(t){return Math.sign(t)*Math.log1p(Math.abs(t/e))}}function e1(e){return function(t){return Math.sign(t)*Math.expm1(Math.abs(t))*e}}function Mw(e){var t=1,n=e(Jj(t),e1(t));return n.constant=function(r){return arguments.length?e(Jj(t=+r),e1(t)):t},$i(n)}function hP(){var e=Mw(rm());return e.copy=function(){return nd(e,hP()).constant(e.constant())},Ar.apply(e,arguments)}function t1(e){return function(t){return t<0?-Math.pow(-t,e):Math.pow(t,e)}}function l7(e){return e<0?-Math.sqrt(-e):Math.sqrt(e)}function c7(e){return e<0?-e*e:e*e}function Iw(e){var t=e(On,On),n=1;function r(){return n===1?e(On,On):n===.5?e(l7,c7):e(t1(n),t1(1/n))}return t.exponent=function(a){return arguments.length?(n=+a,r()):n},$i(t)}function $w(){var e=Iw(rm());return e.copy=function(){return nd(e,$w()).exponent(e.exponent())},Ar.apply(e,arguments),e}function u7(){return $w.apply(null,arguments).exponent(.5)}function n1(e){return Math.sign(e)*e*e}function d7(e){return Math.sign(e)*Math.sqrt(Math.abs(e))}function pP(){var e=Tw(),t=[0,1],n=!1,r;function a(s){var o=d7(e(s));return isNaN(o)?r:n?Math.round(o):o}return a.invert=function(s){return e.invert(n1(s))},a.domain=function(s){return arguments.length?(e.domain(s),a):e.domain()},a.range=function(s){return arguments.length?(e.range((t=Array.from(s,jh)).map(n1)),a):t.slice()},a.rangeRound=function(s){return a.range(s).round(!0)},a.round=function(s){return arguments.length?(n=!!s,a):n},a.clamp=function(s){return arguments.length?(e.clamp(s),a):e.clamp()},a.unknown=function(s){return arguments.length?(r=s,a):r},a.copy=function(){return pP(e.domain(),t).round(n).clamp(e.clamp()).unknown(r)},Ar.apply(a,arguments),$i(a)}function mP(){var e=[],t=[],n=[],r;function a(){var o=0,l=Math.max(1,t.length);for(n=new Array(l-1);++o<l;)n[o-1]=gV(e,o/l);return s}function s(o){return o==null||isNaN(o=+o)?r:t[ed(n,o)]}return s.invertExtent=function(o){var l=t.indexOf(o);return l<0?[NaN,NaN]:[l>0?n[l-1]:e[0],l<n.length?n[l]:e[e.length-1]]},s.domain=function(o){if(!arguments.length)return e.slice();e=[];for(let l of o)l!=null&&!isNaN(l=+l)&&e.push(l);return e.sort(ji),a()},s.range=function(o){return arguments.length?(t=Array.from(o),a()):t.slice()},s.unknown=function(o){return arguments.length?(r=o,s):r},s.quantiles=function(){return n.slice()},s.copy=function(){return mP().domain(e).range(t).unknown(r)},Ar.apply(s,arguments)}function gP(){var e=0,t=1,n=1,r=[.5],a=[0,1],s;function o(c){return c!=null&&c<=c?a[ed(r,c,0,n)]:s}function l(){var c=-1;for(r=new Array(n);++c<n;)r[c]=((c+1)*t-(c-n)*e)/(n+1);return o}return o.domain=function(c){return arguments.length?([e,t]=c,e=+e,t=+t,l()):[e,t]},o.range=function(c){return arguments.length?(n=(a=Array.from(c)).length-1,l()):a.slice()},o.invertExtent=function(c){var u=a.indexOf(c);return u<0?[NaN,NaN]:u<1?[e,r[0]]:u>=n?[r[n-1],t]:[r[u-1],r[u]]},o.unknown=function(c){return arguments.length&&(s=c),o},o.thresholds=function(){return r.slice()},o.copy=function(){return gP().domain([e,t]).range(a).unknown(s)},Ar.apply($i(o),arguments)}function vP(){var e=[.5],t=[0,1],n,r=1;function a(s){return s!=null&&s<=s?t[ed(e,s,0,r)]:n}return a.domain=function(s){return arguments.length?(e=Array.from(s),r=Math.min(e.length,t.length-1),a):e.slice()},a.range=function(s){return arguments.length?(t=Array.from(s),r=Math.min(e.length,t.length-1),a):t.slice()},a.invertExtent=function(s){var o=t.indexOf(s);return[e[o-1],e[o]]},a.unknown=function(s){return arguments.length?(n=s,a):n},a.copy=function(){return vP().domain(e).range(t).unknown(n)},Ar.apply(a,arguments)}const wg=new Date,kg=new Date;function Jt(e,t,n,r){function a(s){return e(s=arguments.length===0?new Date:new Date(+s)),s}return a.floor=s=>(e(s=new Date(+s)),s),a.ceil=s=>(e(s=new Date(s-1)),t(s,1),e(s),s),a.round=s=>{const o=a(s),l=a.ceil(s);return s-o<l-s?o:l},a.offset=(s,o)=>(t(s=new Date(+s),o==null?1:Math.floor(o)),s),a.range=(s,o,l)=>{const c=[];if(s=a.ceil(s),l=l==null?1:Math.floor(l),!(s<o)||!(l>0))return c;let u;do c.push(u=new Date(+s)),t(s,l),e(s);while(u<s&&s<o);return c},a.filter=s=>Jt(o=>{if(o>=o)for(;e(o),!s(o);)o.setTime(o-1)},(o,l)=>{if(o>=o)if(l<0)for(;++l<=0;)for(;t(o,-1),!s(o););else for(;--l>=0;)for(;t(o,1),!s(o););}),n&&(a.count=(s,o)=>(wg.setTime(+s),kg.setTime(+o),e(wg),e(kg),Math.floor(n(wg,kg))),a.every=s=>(s=Math.floor(s),!isFinite(s)||!(s>0)?null:s>1?a.filter(r?o=>r(o)%s===0:o=>a.count(0,o)%s===0):a)),a}const Ah=Jt(()=>{},(e,t)=>{e.setTime(+e+t)},(e,t)=>t-e);Ah.every=e=>(e=Math.floor(e),!isFinite(e)||!(e>0)?null:e>1?Jt(t=>{t.setTime(Math.floor(t/e)*e)},(t,n)=>{t.setTime(+t+n*e)},(t,n)=>(n-t)/e):Ah);Ah.range;const Sa=1e3,wr=Sa*60,ja=wr*60,Ma=ja*24,Lw=Ma*7,r1=Ma*30,Sg=Ma*365,ys=Jt(e=>{e.setTime(e-e.getMilliseconds())},(e,t)=>{e.setTime(+e+t*Sa)},(e,t)=>(t-e)/Sa,e=>e.getUTCSeconds());ys.range;const Dw=Jt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Sa)},(e,t)=>{e.setTime(+e+t*wr)},(e,t)=>(t-e)/wr,e=>e.getMinutes());Dw.range;const Bw=Jt(e=>{e.setUTCSeconds(0,0)},(e,t)=>{e.setTime(+e+t*wr)},(e,t)=>(t-e)/wr,e=>e.getUTCMinutes());Bw.range;const zw=Jt(e=>{e.setTime(e-e.getMilliseconds()-e.getSeconds()*Sa-e.getMinutes()*wr)},(e,t)=>{e.setTime(+e+t*ja)},(e,t)=>(t-e)/ja,e=>e.getHours());zw.range;const Fw=Jt(e=>{e.setUTCMinutes(0,0,0)},(e,t)=>{e.setTime(+e+t*ja)},(e,t)=>(t-e)/ja,e=>e.getUTCHours());Fw.range;const rd=Jt(e=>e.setHours(0,0,0,0),(e,t)=>e.setDate(e.getDate()+t),(e,t)=>(t-e-(t.getTimezoneOffset()-e.getTimezoneOffset())*wr)/Ma,e=>e.getDate()-1);rd.range;const am=Jt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Ma,e=>e.getUTCDate()-1);am.range;const yP=Jt(e=>{e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCDate(e.getUTCDate()+t)},(e,t)=>(t-e)/Ma,e=>Math.floor(e/Ma));yP.range;function Ws(e){return Jt(t=>{t.setDate(t.getDate()-(t.getDay()+7-e)%7),t.setHours(0,0,0,0)},(t,n)=>{t.setDate(t.getDate()+n*7)},(t,n)=>(n-t-(n.getTimezoneOffset()-t.getTimezoneOffset())*wr)/Lw)}const im=Ws(0),Ch=Ws(1),f7=Ws(2),h7=Ws(3),el=Ws(4),p7=Ws(5),m7=Ws(6);im.range;Ch.range;f7.range;h7.range;el.range;p7.range;m7.range;function Hs(e){return Jt(t=>{t.setUTCDate(t.getUTCDate()-(t.getUTCDay()+7-e)%7),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCDate(t.getUTCDate()+n*7)},(t,n)=>(n-t)/Lw)}const sm=Hs(0),Th=Hs(1),g7=Hs(2),v7=Hs(3),tl=Hs(4),y7=Hs(5),b7=Hs(6);sm.range;Th.range;g7.range;v7.range;tl.range;y7.range;b7.range;const Uw=Jt(e=>{e.setDate(1),e.setHours(0,0,0,0)},(e,t)=>{e.setMonth(e.getMonth()+t)},(e,t)=>t.getMonth()-e.getMonth()+(t.getFullYear()-e.getFullYear())*12,e=>e.getMonth());Uw.range;const Ww=Jt(e=>{e.setUTCDate(1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCMonth(e.getUTCMonth()+t)},(e,t)=>t.getUTCMonth()-e.getUTCMonth()+(t.getUTCFullYear()-e.getUTCFullYear())*12,e=>e.getUTCMonth());Ww.range;const Ia=Jt(e=>{e.setMonth(0,1),e.setHours(0,0,0,0)},(e,t)=>{e.setFullYear(e.getFullYear()+t)},(e,t)=>t.getFullYear()-e.getFullYear(),e=>e.getFullYear());Ia.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Jt(t=>{t.setFullYear(Math.floor(t.getFullYear()/e)*e),t.setMonth(0,1),t.setHours(0,0,0,0)},(t,n)=>{t.setFullYear(t.getFullYear()+n*e)});Ia.range;const $a=Jt(e=>{e.setUTCMonth(0,1),e.setUTCHours(0,0,0,0)},(e,t)=>{e.setUTCFullYear(e.getUTCFullYear()+t)},(e,t)=>t.getUTCFullYear()-e.getUTCFullYear(),e=>e.getUTCFullYear());$a.every=e=>!isFinite(e=Math.floor(e))||!(e>0)?null:Jt(t=>{t.setUTCFullYear(Math.floor(t.getUTCFullYear()/e)*e),t.setUTCMonth(0,1),t.setUTCHours(0,0,0,0)},(t,n)=>{t.setUTCFullYear(t.getUTCFullYear()+n*e)});$a.range;function bP(e,t,n,r,a,s){const o=[[ys,1,Sa],[ys,5,5*Sa],[ys,15,15*Sa],[ys,30,30*Sa],[s,1,wr],[s,5,5*wr],[s,15,15*wr],[s,30,30*wr],[a,1,ja],[a,3,3*ja],[a,6,6*ja],[a,12,12*ja],[r,1,Ma],[r,2,2*Ma],[n,1,Lw],[t,1,r1],[t,3,3*r1],[e,1,Sg]];function l(u,d,f){const h=d<u;h&&([u,d]=[d,u]);const p=f&&typeof f.range=="function"?f:c(u,d,f),g=p?p.range(u,+d+1):[];return h?g.reverse():g}function c(u,d,f){const h=Math.abs(d-u)/f,p=Nw(([,,y])=>y).right(o,h);if(p===o.length)return e.every(qy(u/Sg,d/Sg,f));if(p===0)return Ah.every(Math.max(qy(u,d,f),1));const[g,m]=o[h/o[p-1][2]<o[p][2]/h?p-1:p];return g.every(m)}return[l,c]}const[x7,w7]=bP($a,Ww,sm,yP,Fw,Bw),[k7,S7]=bP(Ia,Uw,im,rd,zw,Dw);function jg(e){if(0<=e.y&&e.y<100){var t=new Date(-1,e.m,e.d,e.H,e.M,e.S,e.L);return t.setFullYear(e.y),t}return new Date(e.y,e.m,e.d,e.H,e.M,e.S,e.L)}function Ng(e){if(0<=e.y&&e.y<100){var t=new Date(Date.UTC(-1,e.m,e.d,e.H,e.M,e.S,e.L));return t.setUTCFullYear(e.y),t}return new Date(Date.UTC(e.y,e.m,e.d,e.H,e.M,e.S,e.L))}function ac(e,t,n){return{y:e,m:t,d:n,H:0,M:0,S:0,L:0}}function j7(e){var t=e.dateTime,n=e.date,r=e.time,a=e.periods,s=e.days,o=e.shortDays,l=e.months,c=e.shortMonths,u=ic(a),d=sc(a),f=ic(s),h=sc(s),p=ic(o),g=sc(o),m=ic(l),y=sc(l),v=ic(c),S=sc(c),w={a:W,A:R,b:B,B:A,c:null,d:c1,e:c1,f:K7,g:rY,G:iY,H:H7,I:G7,j:q7,L:xP,m:V7,M:Y7,p:J,q:F,Q:f1,s:h1,S:X7,u:Q7,U:Z7,V:J7,w:eY,W:tY,x:null,X:null,y:nY,Y:aY,Z:sY,"%":d1},j={a:$,A:ie,b:de,B:me,c:null,d:u1,e:u1,f:uY,g:xY,G:kY,H:oY,I:lY,j:cY,L:kP,m:dY,M:fY,p:Te,q:Q,Q:f1,s:h1,S:hY,u:pY,U:mY,V:gY,w:vY,W:yY,x:null,X:null,y:bY,Y:wY,Z:SY,"%":d1},k={a:C,A:O,b:P,B:z,c:L,d:o1,e:o1,f:z7,g:s1,G:i1,H:l1,I:l1,j:$7,L:B7,m:I7,M:L7,p:T,q:M7,Q:U7,s:W7,S:D7,u:C7,U:T7,V:O7,w:A7,W:P7,x:M,X:D,y:s1,Y:i1,Z:R7,"%":F7};w.x=b(n,w),w.X=b(r,w),w.c=b(t,w),j.x=b(n,j),j.X=b(r,j),j.c=b(t,j);function b(X,ae){return function(ce){var H=[],xe=-1,we=0,je=X.length,ge,Ie,fe;for(ce instanceof Date||(ce=new Date(+ce));++xe<je;)X.charCodeAt(xe)===37&&(H.push(X.slice(we,xe)),(Ie=a1[ge=X.charAt(++xe)])!=null?ge=X.charAt(++xe):Ie=ge==="e"?" ":"0",(fe=ae[ge])&&(ge=fe(ce,Ie)),H.push(ge),we=xe+1);return H.push(X.slice(we,xe)),H.join("")}}function N(X,ae){return function(ce){var H=ac(1900,void 0,1),xe=_(H,X,ce+="",0),we,je;if(xe!=ce.length)return null;if("Q"in H)return new Date(H.Q);if("s"in H)return new Date(H.s*1e3+("L"in H?H.L:0));if(ae&&!("Z"in H)&&(H.Z=0),"p"in H&&(H.H=H.H%12+H.p*12),H.m===void 0&&(H.m="q"in H?H.q:0),"V"in H){if(H.V<1||H.V>53)return null;"w"in H||(H.w=1),"Z"in H?(we=Ng(ac(H.y,0,1)),je=we.getUTCDay(),we=je>4||je===0?Th.ceil(we):Th(we),we=am.offset(we,(H.V-1)*7),H.y=we.getUTCFullYear(),H.m=we.getUTCMonth(),H.d=we.getUTCDate()+(H.w+6)%7):(we=jg(ac(H.y,0,1)),je=we.getDay(),we=je>4||je===0?Ch.ceil(we):Ch(we),we=rd.offset(we,(H.V-1)*7),H.y=we.getFullYear(),H.m=we.getMonth(),H.d=we.getDate()+(H.w+6)%7)}else("W"in H||"U"in H)&&("w"in H||(H.w="u"in H?H.u%7:"W"in H?1:0),je="Z"in H?Ng(ac(H.y,0,1)).getUTCDay():jg(ac(H.y,0,1)).getDay(),H.m=0,H.d="W"in H?(H.w+6)%7+H.W*7-(je+5)%7:H.w+H.U*7-(je+6)%7);return"Z"in H?(H.H+=H.Z/100|0,H.M+=H.Z%100,Ng(H)):jg(H)}}function _(X,ae,ce,H){for(var xe=0,we=ae.length,je=ce.length,ge,Ie;xe<we;){if(H>=je)return-1;if(ge=ae.charCodeAt(xe++),ge===37){if(ge=ae.charAt(xe++),Ie=k[ge in a1?ae.charAt(xe++):ge],!Ie||(H=Ie(X,ce,H))<0)return-1}else if(ge!=ce.charCodeAt(H++))return-1}return H}function T(X,ae,ce){var H=u.exec(ae.slice(ce));return H?(X.p=d.get(H[0].toLowerCase()),ce+H[0].length):-1}function C(X,ae,ce){var H=p.exec(ae.slice(ce));return H?(X.w=g.get(H[0].toLowerCase()),ce+H[0].length):-1}function O(X,ae,ce){var H=f.exec(ae.slice(ce));return H?(X.w=h.get(H[0].toLowerCase()),ce+H[0].length):-1}function P(X,ae,ce){var H=v.exec(ae.slice(ce));return H?(X.m=S.get(H[0].toLowerCase()),ce+H[0].length):-1}function z(X,ae,ce){var H=m.exec(ae.slice(ce));return H?(X.m=y.get(H[0].toLowerCase()),ce+H[0].length):-1}function L(X,ae,ce){return _(X,t,ae,ce)}function M(X,ae,ce){return _(X,n,ae,ce)}function D(X,ae,ce){return _(X,r,ae,ce)}function W(X){return o[X.getDay()]}function R(X){return s[X.getDay()]}function B(X){return c[X.getMonth()]}function A(X){return l[X.getMonth()]}function J(X){return a[+(X.getHours()>=12)]}function F(X){return 1+~~(X.getMonth()/3)}function $(X){return o[X.getUTCDay()]}function ie(X){return s[X.getUTCDay()]}function de(X){return c[X.getUTCMonth()]}function me(X){return l[X.getUTCMonth()]}function Te(X){return a[+(X.getUTCHours()>=12)]}function Q(X){return 1+~~(X.getUTCMonth()/3)}return{format:function(X){var ae=b(X+="",w);return ae.toString=function(){return X},ae},parse:function(X){var ae=N(X+="",!1);return ae.toString=function(){return X},ae},utcFormat:function(X){var ae=b(X+="",j);return ae.toString=function(){return X},ae},utcParse:function(X){var ae=N(X+="",!0);return ae.toString=function(){return X},ae}}}var a1={"-":"",_:" ",0:"0"},on=/^\s*\d+/,N7=/^%/,E7=/[\\^$*+?|[\]().{}]/g;function Ve(e,t,n){var r=e<0?"-":"",a=(r?-e:e)+"",s=a.length;return r+(s<n?new Array(n-s+1).join(t)+a:a)}function _7(e){return e.replace(E7,"\\$&")}function ic(e){return new RegExp("^(?:"+e.map(_7).join("|")+")","i")}function sc(e){return new Map(e.map((t,n)=>[t.toLowerCase(),n]))}function A7(e,t,n){var r=on.exec(t.slice(n,n+1));return r?(e.w=+r[0],n+r[0].length):-1}function C7(e,t,n){var r=on.exec(t.slice(n,n+1));return r?(e.u=+r[0],n+r[0].length):-1}function T7(e,t,n){var r=on.exec(t.slice(n,n+2));return r?(e.U=+r[0],n+r[0].length):-1}function O7(e,t,n){var r=on.exec(t.slice(n,n+2));return r?(e.V=+r[0],n+r[0].length):-1}function P7(e,t,n){var r=on.exec(t.slice(n,n+2));return r?(e.W=+r[0],n+r[0].length):-1}function i1(e,t,n){var r=on.exec(t.slice(n,n+4));return r?(e.y=+r[0],n+r[0].length):-1}function s1(e,t,n){var r=on.exec(t.slice(n,n+2));return r?(e.y=+r[0]+(+r[0]>68?1900:2e3),n+r[0].length):-1}function R7(e,t,n){var r=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(t.slice(n,n+6));return r?(e.Z=r[1]?0:-(r[2]+(r[3]||"00")),n+r[0].length):-1}function M7(e,t,n){var r=on.exec(t.slice(n,n+1));return r?(e.q=r[0]*3-3,n+r[0].length):-1}function I7(e,t,n){var r=on.exec(t.slice(n,n+2));return r?(e.m=r[0]-1,n+r[0].length):-1}function o1(e,t,n){var r=on.exec(t.slice(n,n+2));return r?(e.d=+r[0],n+r[0].length):-1}function $7(e,t,n){var r=on.exec(t.slice(n,n+3));return r?(e.m=0,e.d=+r[0],n+r[0].length):-1}function l1(e,t,n){var r=on.exec(t.slice(n,n+2));return r?(e.H=+r[0],n+r[0].length):-1}function L7(e,t,n){var r=on.exec(t.slice(n,n+2));return r?(e.M=+r[0],n+r[0].length):-1}function D7(e,t,n){var r=on.exec(t.slice(n,n+2));return r?(e.S=+r[0],n+r[0].length):-1}function B7(e,t,n){var r=on.exec(t.slice(n,n+3));return r?(e.L=+r[0],n+r[0].length):-1}function z7(e,t,n){var r=on.exec(t.slice(n,n+6));return r?(e.L=Math.floor(r[0]/1e3),n+r[0].length):-1}function F7(e,t,n){var r=N7.exec(t.slice(n,n+1));return r?n+r[0].length:-1}function U7(e,t,n){var r=on.exec(t.slice(n));return r?(e.Q=+r[0],n+r[0].length):-1}function W7(e,t,n){var r=on.exec(t.slice(n));return r?(e.s=+r[0],n+r[0].length):-1}function c1(e,t){return Ve(e.getDate(),t,2)}function H7(e,t){return Ve(e.getHours(),t,2)}function G7(e,t){return Ve(e.getHours()%12||12,t,2)}function q7(e,t){return Ve(1+rd.count(Ia(e),e),t,3)}function xP(e,t){return Ve(e.getMilliseconds(),t,3)}function K7(e,t){return xP(e,t)+"000"}function V7(e,t){return Ve(e.getMonth()+1,t,2)}function Y7(e,t){return Ve(e.getMinutes(),t,2)}function X7(e,t){return Ve(e.getSeconds(),t,2)}function Q7(e){var t=e.getDay();return t===0?7:t}function Z7(e,t){return Ve(im.count(Ia(e)-1,e),t,2)}function wP(e){var t=e.getDay();return t>=4||t===0?el(e):el.ceil(e)}function J7(e,t){return e=wP(e),Ve(el.count(Ia(e),e)+(Ia(e).getDay()===4),t,2)}function eY(e){return e.getDay()}function tY(e,t){return Ve(Ch.count(Ia(e)-1,e),t,2)}function nY(e,t){return Ve(e.getFullYear()%100,t,2)}function rY(e,t){return e=wP(e),Ve(e.getFullYear()%100,t,2)}function aY(e,t){return Ve(e.getFullYear()%1e4,t,4)}function iY(e,t){var n=e.getDay();return e=n>=4||n===0?el(e):el.ceil(e),Ve(e.getFullYear()%1e4,t,4)}function sY(e){var t=e.getTimezoneOffset();return(t>0?"-":(t*=-1,"+"))+Ve(t/60|0,"0",2)+Ve(t%60,"0",2)}function u1(e,t){return Ve(e.getUTCDate(),t,2)}function oY(e,t){return Ve(e.getUTCHours(),t,2)}function lY(e,t){return Ve(e.getUTCHours()%12||12,t,2)}function cY(e,t){return Ve(1+am.count($a(e),e),t,3)}function kP(e,t){return Ve(e.getUTCMilliseconds(),t,3)}function uY(e,t){return kP(e,t)+"000"}function dY(e,t){return Ve(e.getUTCMonth()+1,t,2)}function fY(e,t){return Ve(e.getUTCMinutes(),t,2)}function hY(e,t){return Ve(e.getUTCSeconds(),t,2)}function pY(e){var t=e.getUTCDay();return t===0?7:t}function mY(e,t){return Ve(sm.count($a(e)-1,e),t,2)}function SP(e){var t=e.getUTCDay();return t>=4||t===0?tl(e):tl.ceil(e)}function gY(e,t){return e=SP(e),Ve(tl.count($a(e),e)+($a(e).getUTCDay()===4),t,2)}function vY(e){return e.getUTCDay()}function yY(e,t){return Ve(Th.count($a(e)-1,e),t,2)}function bY(e,t){return Ve(e.getUTCFullYear()%100,t,2)}function xY(e,t){return e=SP(e),Ve(e.getUTCFullYear()%100,t,2)}function wY(e,t){return Ve(e.getUTCFullYear()%1e4,t,4)}function kY(e,t){var n=e.getUTCDay();return e=n>=4||n===0?tl(e):tl.ceil(e),Ve(e.getUTCFullYear()%1e4,t,4)}function SY(){return"+0000"}function d1(){return"%"}function f1(e){return+e}function h1(e){return Math.floor(+e/1e3)}var ro,jP,NP;jY({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function jY(e){return ro=j7(e),jP=ro.format,ro.parse,NP=ro.utcFormat,ro.utcParse,ro}function NY(e){return new Date(e)}function EY(e){return e instanceof Date?+e:+new Date(+e)}function Hw(e,t,n,r,a,s,o,l,c,u){var d=Tw(),f=d.invert,h=d.domain,p=u(".%L"),g=u(":%S"),m=u("%I:%M"),y=u("%I %p"),v=u("%a %d"),S=u("%b %d"),w=u("%B"),j=u("%Y");function k(b){return(c(b)<b?p:l(b)<b?g:o(b)<b?m:s(b)<b?y:r(b)<b?a(b)<b?v:S:n(b)<b?w:j)(b)}return d.invert=function(b){return new Date(f(b))},d.domain=function(b){return arguments.length?h(Array.from(b,EY)):h().map(NY)},d.ticks=function(b){var N=h();return e(N[0],N[N.length-1],b??10)},d.tickFormat=function(b,N){return N==null?k:u(N)},d.nice=function(b){var N=h();return(!b||typeof b.range!="function")&&(b=t(N[0],N[N.length-1],b??10)),b?h(dP(N,b)):d},d.copy=function(){return nd(d,Hw(e,t,n,r,a,s,o,l,c,u))},d}function _Y(){return Ar.apply(Hw(k7,S7,Ia,Uw,im,rd,zw,Dw,ys,jP).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function AY(){return Ar.apply(Hw(x7,w7,$a,Ww,sm,am,Fw,Bw,ys,NP).domain([Date.UTC(2e3,0,1),Date.UTC(2e3,0,2)]),arguments)}function om(){var e=0,t=1,n,r,a,s,o=On,l=!1,c;function u(f){return f==null||isNaN(f=+f)?c:o(a===0?.5:(f=(s(f)-n)*a,l?Math.max(0,Math.min(1,f)):f))}u.domain=function(f){return arguments.length?([e,t]=f,n=s(e=+e),r=s(t=+t),a=n===r?0:1/(r-n),u):[e,t]},u.clamp=function(f){return arguments.length?(l=!!f,u):l},u.interpolator=function(f){return arguments.length?(o=f,u):o};function d(f){return function(h){var p,g;return arguments.length?([p,g]=h,o=f(p,g),u):[o(0),o(1)]}}return u.range=d(Tl),u.rangeRound=d(Cw),u.unknown=function(f){return arguments.length?(c=f,u):c},function(f){return s=f,n=f(e),r=f(t),a=n===r?0:1/(r-n),u}}function Li(e,t){return t.domain(e.domain()).interpolator(e.interpolator()).clamp(e.clamp()).unknown(e.unknown())}function EP(){var e=$i(om()(On));return e.copy=function(){return Li(e,EP())},Fa.apply(e,arguments)}function _P(){var e=Rw(om()).domain([1,10]);return e.copy=function(){return Li(e,_P()).base(e.base())},Fa.apply(e,arguments)}function AP(){var e=Mw(om());return e.copy=function(){return Li(e,AP()).constant(e.constant())},Fa.apply(e,arguments)}function Gw(){var e=Iw(om());return e.copy=function(){return Li(e,Gw()).exponent(e.exponent())},Fa.apply(e,arguments)}function CY(){return Gw.apply(null,arguments).exponent(.5)}function CP(){var e=[],t=On;function n(r){if(r!=null&&!isNaN(r=+r))return t((ed(e,r,1)-1)/(e.length-1))}return n.domain=function(r){if(!arguments.length)return e.slice();e=[];for(let a of r)a!=null&&!isNaN(a=+a)&&e.push(a);return e.sort(ji),n},n.interpolator=function(r){return arguments.length?(t=r,n):t},n.range=function(){return e.map((r,a)=>t(a/(e.length-1)))},n.quantiles=function(r){return Array.from({length:r+1},(a,s)=>mV(e,s/r))},n.copy=function(){return CP(t).domain(e)},Fa.apply(n,arguments)}function lm(){var e=0,t=.5,n=1,r=1,a,s,o,l,c,u=On,d,f=!1,h;function p(m){return isNaN(m=+m)?h:(m=.5+((m=+d(m))-s)*(r*m<r*s?l:c),u(f?Math.max(0,Math.min(1,m)):m))}p.domain=function(m){return arguments.length?([e,t,n]=m,a=d(e=+e),s=d(t=+t),o=d(n=+n),l=a===s?0:.5/(s-a),c=s===o?0:.5/(o-s),r=s<a?-1:1,p):[e,t,n]},p.clamp=function(m){return arguments.length?(f=!!m,p):f},p.interpolator=function(m){return arguments.length?(u=m,p):u};function g(m){return function(y){var v,S,w;return arguments.length?([v,S,w]=y,u=FV(m,[v,S,w]),p):[u(0),u(.5),u(1)]}}return p.range=g(Tl),p.rangeRound=g(Cw),p.unknown=function(m){return arguments.length?(h=m,p):h},function(m){return d=m,a=m(e),s=m(t),o=m(n),l=a===s?0:.5/(s-a),c=s===o?0:.5/(o-s),r=s<a?-1:1,p}}function TP(){var e=$i(lm()(On));return e.copy=function(){return Li(e,TP())},Fa.apply(e,arguments)}function OP(){var e=Rw(lm()).domain([.1,1,10]);return e.copy=function(){return Li(e,OP()).base(e.base())},Fa.apply(e,arguments)}function PP(){var e=Mw(lm());return e.copy=function(){return Li(e,PP()).constant(e.constant())},Fa.apply(e,arguments)}function qw(){var e=Iw(lm());return e.copy=function(){return Li(e,qw()).exponent(e.exponent())},Fa.apply(e,arguments)}function TY(){return qw.apply(null,arguments).exponent(.5)}const p1=Object.freeze(Object.defineProperty({__proto__:null,scaleBand:hu,scaleDiverging:TP,scaleDivergingLog:OP,scaleDivergingPow:qw,scaleDivergingSqrt:TY,scaleDivergingSymlog:PP,scaleIdentity:uP,scaleImplicit:Ky,scaleLinear:_h,scaleLog:fP,scaleOrdinal:Ew,scalePoint:Pc,scalePow:$w,scaleQuantile:mP,scaleQuantize:gP,scaleRadial:pP,scaleSequential:EP,scaleSequentialLog:_P,scaleSequentialPow:Gw,scaleSequentialQuantile:CP,scaleSequentialSqrt:CY,scaleSequentialSymlog:AP,scaleSqrt:u7,scaleSymlog:hP,scaleThreshold:vP,scaleTime:_Y,scaleUtc:AY,tickFormat:cP},Symbol.toStringTag,{value:"Module"}));var OY=kl;function PY(e,t,n){for(var r=-1,a=e.length;++r<a;){var s=e[r],o=t(s);if(o!=null&&(l===void 0?o===o&&!OY(o):n(o,l)))var l=o,c=s}return c}var RP=PY;function RY(e,t){return e>t}var MY=RY,IY=RP,$Y=MY,LY=Cl;function DY(e){return e&&e.length?IY(e,LY,$Y):void 0}var BY=DY;const cm=tt(BY);function zY(e,t){return e<t}var FY=zY,UY=RP,WY=FY,HY=Cl;function GY(e){return e&&e.length?UY(e,HY,WY):void 0}var qY=GY;const um=tt(qY);var KY=sw,VY=Ii,YY=WO,XY=Hn;function QY(e,t){var n=XY(e)?KY:YY;return n(e,VY(t))}var ZY=QY,JY=FO,eX=ZY;function tX(e,t){return JY(eX(e,t),1)}var nX=tX;const rX=tt(nX);var aX=ww;function iX(e,t){return aX(e,t)}var sX=iX;const Kw=tt(sX);var Ol=1e9,oX={precision:20,rounding:4,toExpNeg:-7,toExpPos:21,LN10:"2.302585092994045684017991454684364207601101488628772976033327900967572609677352480235997205089598298341967784042286"},Yw,Nt=!0,Er="[DecimalError] ",Ns=Er+"Invalid argument: ",Vw=Er+"Exponent out of range: ",Pl=Math.floor,ls=Math.pow,lX=/^(\d+(\.\d*)?|\.\d+)(e[+-]?\d+)?$/i,er,tn=1e7,wt=7,MP=9007199254740991,Oh=Pl(MP/wt),ye={};ye.absoluteValue=ye.abs=function(){var e=new this.constructor(this);return e.s&&(e.s=1),e};ye.comparedTo=ye.cmp=function(e){var t,n,r,a,s=this;if(e=new s.constructor(e),s.s!==e.s)return s.s||-e.s;if(s.e!==e.e)return s.e>e.e^s.s<0?1:-1;for(r=s.d.length,a=e.d.length,t=0,n=r<a?r:a;t<n;++t)if(s.d[t]!==e.d[t])return s.d[t]>e.d[t]^s.s<0?1:-1;return r===a?0:r>a^s.s<0?1:-1};ye.decimalPlaces=ye.dp=function(){var e=this,t=e.d.length-1,n=(t-e.e)*wt;if(t=e.d[t],t)for(;t%10==0;t/=10)n--;return n<0?0:n};ye.dividedBy=ye.div=function(e){return Ca(this,new this.constructor(e))};ye.dividedToIntegerBy=ye.idiv=function(e){var t=this,n=t.constructor;return ft(Ca(t,new n(e),0,1),n.precision)};ye.equals=ye.eq=function(e){return!this.cmp(e)};ye.exponent=function(){return Gt(this)};ye.greaterThan=ye.gt=function(e){return this.cmp(e)>0};ye.greaterThanOrEqualTo=ye.gte=function(e){return this.cmp(e)>=0};ye.isInteger=ye.isint=function(){return this.e>this.d.length-2};ye.isNegative=ye.isneg=function(){return this.s<0};ye.isPositive=ye.ispos=function(){return this.s>0};ye.isZero=function(){return this.s===0};ye.lessThan=ye.lt=function(e){return this.cmp(e)<0};ye.lessThanOrEqualTo=ye.lte=function(e){return this.cmp(e)<1};ye.logarithm=ye.log=function(e){var t,n=this,r=n.constructor,a=r.precision,s=a+5;if(e===void 0)e=new r(10);else if(e=new r(e),e.s<1||e.eq(er))throw Error(Er+"NaN");if(n.s<1)throw Error(Er+(n.s?"NaN":"-Infinity"));return n.eq(er)?new r(0):(Nt=!1,t=Ca(yu(n,s),yu(e,s),s),Nt=!0,ft(t,a))};ye.minus=ye.sub=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?LP(t,e):IP(t,(e.s=-e.s,e))};ye.modulo=ye.mod=function(e){var t,n=this,r=n.constructor,a=r.precision;if(e=new r(e),!e.s)throw Error(Er+"NaN");return n.s?(Nt=!1,t=Ca(n,e,0,1).times(e),Nt=!0,n.minus(t)):ft(new r(n),a)};ye.naturalExponential=ye.exp=function(){return $P(this)};ye.naturalLogarithm=ye.ln=function(){return yu(this)};ye.negated=ye.neg=function(){var e=new this.constructor(this);return e.s=-e.s||0,e};ye.plus=ye.add=function(e){var t=this;return e=new t.constructor(e),t.s==e.s?IP(t,e):LP(t,(e.s=-e.s,e))};ye.precision=ye.sd=function(e){var t,n,r,a=this;if(e!==void 0&&e!==!!e&&e!==1&&e!==0)throw Error(Ns+e);if(t=Gt(a)+1,r=a.d.length-1,n=r*wt+1,r=a.d[r],r){for(;r%10==0;r/=10)n--;for(r=a.d[0];r>=10;r/=10)n++}return e&&t>n?t:n};ye.squareRoot=ye.sqrt=function(){var e,t,n,r,a,s,o,l=this,c=l.constructor;if(l.s<1){if(!l.s)return new c(0);throw Error(Er+"NaN")}for(e=Gt(l),Nt=!1,a=Math.sqrt(+l),a==0||a==1/0?(t=oa(l.d),(t.length+e)%2==0&&(t+="0"),a=Math.sqrt(t),e=Pl((e+1)/2)-(e<0||e%2),a==1/0?t="5e"+e:(t=a.toExponential(),t=t.slice(0,t.indexOf("e")+1)+e),r=new c(t)):r=new c(a.toString()),n=c.precision,a=o=n+3;;)if(s=r,r=s.plus(Ca(l,s,o+2)).times(.5),oa(s.d).slice(0,o)===(t=oa(r.d)).slice(0,o)){if(t=t.slice(o-3,o+1),a==o&&t=="4999"){if(ft(s,n+1,0),s.times(s).eq(l)){r=s;break}}else if(t!="9999")break;o+=4}return Nt=!0,ft(r,n)};ye.times=ye.mul=function(e){var t,n,r,a,s,o,l,c,u,d=this,f=d.constructor,h=d.d,p=(e=new f(e)).d;if(!d.s||!e.s)return new f(0);for(e.s*=d.s,n=d.e+e.e,c=h.length,u=p.length,c<u&&(s=h,h=p,p=s,o=c,c=u,u=o),s=[],o=c+u,r=o;r--;)s.push(0);for(r=u;--r>=0;){for(t=0,a=c+r;a>r;)l=s[a]+p[r]*h[a-r-1]+t,s[a--]=l%tn|0,t=l/tn|0;s[a]=(s[a]+t)%tn|0}for(;!s[--o];)s.pop();return t?++n:s.shift(),e.d=s,e.e=n,Nt?ft(e,f.precision):e};ye.toDecimalPlaces=ye.todp=function(e,t){var n=this,r=n.constructor;return n=new r(n),e===void 0?n:(fa(e,0,Ol),t===void 0?t=r.rounding:fa(t,0,8),ft(n,e+Gt(n)+1,t))};ye.toExponential=function(e,t){var n,r=this,a=r.constructor;return e===void 0?n=$s(r,!0):(fa(e,0,Ol),t===void 0?t=a.rounding:fa(t,0,8),r=ft(new a(r),e+1,t),n=$s(r,!0,e+1)),n};ye.toFixed=function(e,t){var n,r,a=this,s=a.constructor;return e===void 0?$s(a):(fa(e,0,Ol),t===void 0?t=s.rounding:fa(t,0,8),r=ft(new s(a),e+Gt(a)+1,t),n=$s(r.abs(),!1,e+Gt(r)+1),a.isneg()&&!a.isZero()?"-"+n:n)};ye.toInteger=ye.toint=function(){var e=this,t=e.constructor;return ft(new t(e),Gt(e)+1,t.rounding)};ye.toNumber=function(){return+this};ye.toPower=ye.pow=function(e){var t,n,r,a,s,o,l=this,c=l.constructor,u=12,d=+(e=new c(e));if(!e.s)return new c(er);if(l=new c(l),!l.s){if(e.s<1)throw Error(Er+"Infinity");return l}if(l.eq(er))return l;if(r=c.precision,e.eq(er))return ft(l,r);if(t=e.e,n=e.d.length-1,o=t>=n,s=l.s,o){if((n=d<0?-d:d)<=MP){for(a=new c(er),t=Math.ceil(r/wt+4),Nt=!1;n%2&&(a=a.times(l),g1(a.d,t)),n=Pl(n/2),n!==0;)l=l.times(l),g1(l.d,t);return Nt=!0,e.s<0?new c(er).div(a):ft(a,r)}}else if(s<0)throw Error(Er+"NaN");return s=s<0&&e.d[Math.max(t,n)]&1?-1:1,l.s=1,Nt=!1,a=e.times(yu(l,r+u)),Nt=!0,a=$P(a),a.s=s,a};ye.toPrecision=function(e,t){var n,r,a=this,s=a.constructor;return e===void 0?(n=Gt(a),r=$s(a,n<=s.toExpNeg||n>=s.toExpPos)):(fa(e,1,Ol),t===void 0?t=s.rounding:fa(t,0,8),a=ft(new s(a),e,t),n=Gt(a),r=$s(a,e<=n||n<=s.toExpNeg,e)),r};ye.toSignificantDigits=ye.tosd=function(e,t){var n=this,r=n.constructor;return e===void 0?(e=r.precision,t=r.rounding):(fa(e,1,Ol),t===void 0?t=r.rounding:fa(t,0,8)),ft(new r(n),e,t)};ye.toString=ye.valueOf=ye.val=ye.toJSON=ye[Symbol.for("nodejs.util.inspect.custom")]=function(){var e=this,t=Gt(e),n=e.constructor;return $s(e,t<=n.toExpNeg||t>=n.toExpPos)};function IP(e,t){var n,r,a,s,o,l,c,u,d=e.constructor,f=d.precision;if(!e.s||!t.s)return t.s||(t=new d(e)),Nt?ft(t,f):t;if(c=e.d,u=t.d,o=e.e,a=t.e,c=c.slice(),s=o-a,s){for(s<0?(r=c,s=-s,l=u.length):(r=u,a=o,l=c.length),o=Math.ceil(f/wt),l=o>l?o+1:l+1,s>l&&(s=l,r.length=1),r.reverse();s--;)r.push(0);r.reverse()}for(l=c.length,s=u.length,l-s<0&&(s=l,r=u,u=c,c=r),n=0;s;)n=(c[--s]=c[s]+u[s]+n)/tn|0,c[s]%=tn;for(n&&(c.unshift(n),++a),l=c.length;c[--l]==0;)c.pop();return t.d=c,t.e=a,Nt?ft(t,f):t}function fa(e,t,n){if(e!==~~e||e<t||e>n)throw Error(Ns+e)}function oa(e){var t,n,r,a=e.length-1,s="",o=e[0];if(a>0){for(s+=o,t=1;t<a;t++)r=e[t]+"",n=wt-r.length,n&&(s+=ri(n)),s+=r;o=e[t],r=o+"",n=wt-r.length,n&&(s+=ri(n))}else if(o===0)return"0";for(;o%10===0;)o/=10;return s+o}var Ca=function(){function e(r,a){var s,o=0,l=r.length;for(r=r.slice();l--;)s=r[l]*a+o,r[l]=s%tn|0,o=s/tn|0;return o&&r.unshift(o),r}function t(r,a,s,o){var l,c;if(s!=o)c=s>o?1:-1;else for(l=c=0;l<s;l++)if(r[l]!=a[l]){c=r[l]>a[l]?1:-1;break}return c}function n(r,a,s){for(var o=0;s--;)r[s]-=o,o=r[s]<a[s]?1:0,r[s]=o*tn+r[s]-a[s];for(;!r[0]&&r.length>1;)r.shift()}return function(r,a,s,o){var l,c,u,d,f,h,p,g,m,y,v,S,w,j,k,b,N,_,T=r.constructor,C=r.s==a.s?1:-1,O=r.d,P=a.d;if(!r.s)return new T(r);if(!a.s)throw Error(Er+"Division by zero");for(c=r.e-a.e,N=P.length,k=O.length,p=new T(C),g=p.d=[],u=0;P[u]==(O[u]||0);)++u;if(P[u]>(O[u]||0)&&--c,s==null?S=s=T.precision:o?S=s+(Gt(r)-Gt(a))+1:S=s,S<0)return new T(0);if(S=S/wt+2|0,u=0,N==1)for(d=0,P=P[0],S++;(u<k||d)&&S--;u++)w=d*tn+(O[u]||0),g[u]=w/P|0,d=w%P|0;else{for(d=tn/(P[0]+1)|0,d>1&&(P=e(P,d),O=e(O,d),N=P.length,k=O.length),j=N,m=O.slice(0,N),y=m.length;y<N;)m[y++]=0;_=P.slice(),_.unshift(0),b=P[0],P[1]>=tn/2&&++b;do d=0,l=t(P,m,N,y),l<0?(v=m[0],N!=y&&(v=v*tn+(m[1]||0)),d=v/b|0,d>1?(d>=tn&&(d=tn-1),f=e(P,d),h=f.length,y=m.length,l=t(f,m,h,y),l==1&&(d--,n(f,N<h?_:P,h))):(d==0&&(l=d=1),f=P.slice()),h=f.length,h<y&&f.unshift(0),n(m,f,y),l==-1&&(y=m.length,l=t(P,m,N,y),l<1&&(d++,n(m,N<y?_:P,y))),y=m.length):l===0&&(d++,m=[0]),g[u++]=d,l&&m[0]?m[y++]=O[j]||0:(m=[O[j]],y=1);while((j++<k||m[0]!==void 0)&&S--)}return g[0]||g.shift(),p.e=c,ft(p,o?s+Gt(p)+1:s)}}();function $P(e,t){var n,r,a,s,o,l,c=0,u=0,d=e.constructor,f=d.precision;if(Gt(e)>16)throw Error(Vw+Gt(e));if(!e.s)return new d(er);for(Nt=!1,l=f,o=new d(.03125);e.abs().gte(.1);)e=e.times(o),u+=5;for(r=Math.log(ls(2,u))/Math.LN10*2+5|0,l+=r,n=a=s=new d(er),d.precision=l;;){if(a=ft(a.times(e),l),n=n.times(++c),o=s.plus(Ca(a,n,l)),oa(o.d).slice(0,l)===oa(s.d).slice(0,l)){for(;u--;)s=ft(s.times(s),l);return d.precision=f,t==null?(Nt=!0,ft(s,f)):s}s=o}}function Gt(e){for(var t=e.e*wt,n=e.d[0];n>=10;n/=10)t++;return t}function Eg(e,t,n){if(t>e.LN10.sd())throw Nt=!0,n&&(e.precision=n),Error(Er+"LN10 precision limit exceeded");return ft(new e(e.LN10),t)}function ri(e){for(var t="";e--;)t+="0";return t}function yu(e,t){var n,r,a,s,o,l,c,u,d,f=1,h=10,p=e,g=p.d,m=p.constructor,y=m.precision;if(p.s<1)throw Error(Er+(p.s?"NaN":"-Infinity"));if(p.eq(er))return new m(0);if(t==null?(Nt=!1,u=y):u=t,p.eq(10))return t==null&&(Nt=!0),Eg(m,u);if(u+=h,m.precision=u,n=oa(g),r=n.charAt(0),s=Gt(p),Math.abs(s)<15e14){for(;r<7&&r!=1||r==1&&n.charAt(1)>3;)p=p.times(e),n=oa(p.d),r=n.charAt(0),f++;s=Gt(p),r>1?(p=new m("0."+n),s++):p=new m(r+"."+n.slice(1))}else return c=Eg(m,u+2,y).times(s+""),p=yu(new m(r+"."+n.slice(1)),u-h).plus(c),m.precision=y,t==null?(Nt=!0,ft(p,y)):p;for(l=o=p=Ca(p.minus(er),p.plus(er),u),d=ft(p.times(p),u),a=3;;){if(o=ft(o.times(d),u),c=l.plus(Ca(o,new m(a),u)),oa(c.d).slice(0,u)===oa(l.d).slice(0,u))return l=l.times(2),s!==0&&(l=l.plus(Eg(m,u+2,y).times(s+""))),l=Ca(l,new m(f),u),m.precision=y,t==null?(Nt=!0,ft(l,y)):l;l=c,a+=2}}function m1(e,t){var n,r,a;for((n=t.indexOf("."))>-1&&(t=t.replace(".","")),(r=t.search(/e/i))>0?(n<0&&(n=r),n+=+t.slice(r+1),t=t.substring(0,r)):n<0&&(n=t.length),r=0;t.charCodeAt(r)===48;)++r;for(a=t.length;t.charCodeAt(a-1)===48;)--a;if(t=t.slice(r,a),t){if(a-=r,n=n-r-1,e.e=Pl(n/wt),e.d=[],r=(n+1)%wt,n<0&&(r+=wt),r<a){for(r&&e.d.push(+t.slice(0,r)),a-=wt;r<a;)e.d.push(+t.slice(r,r+=wt));t=t.slice(r),r=wt-t.length}else r-=a;for(;r--;)t+="0";if(e.d.push(+t),Nt&&(e.e>Oh||e.e<-Oh))throw Error(Vw+n)}else e.s=0,e.e=0,e.d=[0];return e}function ft(e,t,n){var r,a,s,o,l,c,u,d,f=e.d;for(o=1,s=f[0];s>=10;s/=10)o++;if(r=t-o,r<0)r+=wt,a=t,u=f[d=0];else{if(d=Math.ceil((r+1)/wt),s=f.length,d>=s)return e;for(u=s=f[d],o=1;s>=10;s/=10)o++;r%=wt,a=r-wt+o}if(n!==void 0&&(s=ls(10,o-a-1),l=u/s%10|0,c=t<0||f[d+1]!==void 0||u%s,c=n<4?(l||c)&&(n==0||n==(e.s<0?3:2)):l>5||l==5&&(n==4||c||n==6&&(r>0?a>0?u/ls(10,o-a):0:f[d-1])%10&1||n==(e.s<0?8:7))),t<1||!f[0])return c?(s=Gt(e),f.length=1,t=t-s-1,f[0]=ls(10,(wt-t%wt)%wt),e.e=Pl(-t/wt)||0):(f.length=1,f[0]=e.e=e.s=0),e;if(r==0?(f.length=d,s=1,d--):(f.length=d+1,s=ls(10,wt-r),f[d]=a>0?(u/ls(10,o-a)%ls(10,a)|0)*s:0),c)for(;;)if(d==0){(f[0]+=s)==tn&&(f[0]=1,++e.e);break}else{if(f[d]+=s,f[d]!=tn)break;f[d--]=0,s=1}for(r=f.length;f[--r]===0;)f.pop();if(Nt&&(e.e>Oh||e.e<-Oh))throw Error(Vw+Gt(e));return e}function LP(e,t){var n,r,a,s,o,l,c,u,d,f,h=e.constructor,p=h.precision;if(!e.s||!t.s)return t.s?t.s=-t.s:t=new h(e),Nt?ft(t,p):t;if(c=e.d,f=t.d,r=t.e,u=e.e,c=c.slice(),o=u-r,o){for(d=o<0,d?(n=c,o=-o,l=f.length):(n=f,r=u,l=c.length),a=Math.max(Math.ceil(p/wt),l)+2,o>a&&(o=a,n.length=1),n.reverse(),a=o;a--;)n.push(0);n.reverse()}else{for(a=c.length,l=f.length,d=a<l,d&&(l=a),a=0;a<l;a++)if(c[a]!=f[a]){d=c[a]<f[a];break}o=0}for(d&&(n=c,c=f,f=n,t.s=-t.s),l=c.length,a=f.length-l;a>0;--a)c[l++]=0;for(a=f.length;a>o;){if(c[--a]<f[a]){for(s=a;s&&c[--s]===0;)c[s]=tn-1;--c[s],c[a]+=tn}c[a]-=f[a]}for(;c[--l]===0;)c.pop();for(;c[0]===0;c.shift())--r;return c[0]?(t.d=c,t.e=r,Nt?ft(t,p):t):new h(0)}function $s(e,t,n){var r,a=Gt(e),s=oa(e.d),o=s.length;return t?(n&&(r=n-o)>0?s=s.charAt(0)+"."+s.slice(1)+ri(r):o>1&&(s=s.charAt(0)+"."+s.slice(1)),s=s+(a<0?"e":"e+")+a):a<0?(s="0."+ri(-a-1)+s,n&&(r=n-o)>0&&(s+=ri(r))):a>=o?(s+=ri(a+1-o),n&&(r=n-a-1)>0&&(s=s+"."+ri(r))):((r=a+1)<o&&(s=s.slice(0,r)+"."+s.slice(r)),n&&(r=n-o)>0&&(a+1===o&&(s+="."),s+=ri(r))),e.s<0?"-"+s:s}function g1(e,t){if(e.length>t)return e.length=t,!0}function DP(e){var t,n,r;function a(s){var o=this;if(!(o instanceof a))return new a(s);if(o.constructor=a,s instanceof a){o.s=s.s,o.e=s.e,o.d=(s=s.d)?s.slice():s;return}if(typeof s=="number"){if(s*0!==0)throw Error(Ns+s);if(s>0)o.s=1;else if(s<0)s=-s,o.s=-1;else{o.s=0,o.e=0,o.d=[0];return}if(s===~~s&&s<1e7){o.e=0,o.d=[s];return}return m1(o,s.toString())}else if(typeof s!="string")throw Error(Ns+s);if(s.charCodeAt(0)===45?(s=s.slice(1),o.s=-1):o.s=1,lX.test(s))m1(o,s);else throw Error(Ns+s)}if(a.prototype=ye,a.ROUND_UP=0,a.ROUND_DOWN=1,a.ROUND_CEIL=2,a.ROUND_FLOOR=3,a.ROUND_HALF_UP=4,a.ROUND_HALF_DOWN=5,a.ROUND_HALF_EVEN=6,a.ROUND_HALF_CEIL=7,a.ROUND_HALF_FLOOR=8,a.clone=DP,a.config=a.set=cX,e===void 0&&(e={}),e)for(r=["precision","rounding","toExpNeg","toExpPos","LN10"],t=0;t<r.length;)e.hasOwnProperty(n=r[t++])||(e[n]=this[n]);return a.config(e),a}function cX(e){if(!e||typeof e!="object")throw Error(Er+"Object expected");var t,n,r,a=["precision",1,Ol,"rounding",0,8,"toExpNeg",-1/0,0,"toExpPos",0,1/0];for(t=0;t<a.length;t+=3)if((r=e[n=a[t]])!==void 0)if(Pl(r)===r&&r>=a[t+1]&&r<=a[t+2])this[n]=r;else throw Error(Ns+n+": "+r);if((r=e[n="LN10"])!==void 0)if(r==Math.LN10)this[n]=new this(r);else throw Error(Ns+n+": "+r);return this}var Yw=DP(oX);er=new Yw(1);const ct=Yw;function uX(e){return pX(e)||hX(e)||fX(e)||dX()}function dX(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
87
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function fX(e,t){if(e){if(typeof e=="string")return Qy(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Qy(e,t)}}function hX(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function pX(e){if(Array.isArray(e))return Qy(e)}function Qy(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var mX=function(t){return t},BP={},zP=function(t){return t===BP},v1=function(t){return function n(){return arguments.length===0||arguments.length===1&&zP(arguments.length<=0?void 0:arguments[0])?n:t.apply(void 0,arguments)}},gX=function e(t,n){return t===1?n:v1(function(){for(var r=arguments.length,a=new Array(r),s=0;s<r;s++)a[s]=arguments[s];var o=a.filter(function(l){return l!==BP}).length;return o>=t?n.apply(void 0,a):e(t-o,v1(function(){for(var l=arguments.length,c=new Array(l),u=0;u<l;u++)c[u]=arguments[u];var d=a.map(function(f){return zP(f)?c.shift():f});return n.apply(void 0,uX(d).concat(c))}))})},dm=function(t){return gX(t.length,t)},Zy=function(t,n){for(var r=[],a=t;a<n;++a)r[a-t]=a;return r},vX=dm(function(e,t){return Array.isArray(t)?t.map(e):Object.keys(t).map(function(n){return t[n]}).map(e)}),yX=function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];if(!n.length)return mX;var a=n.reverse(),s=a[0],o=a.slice(1);return function(){return o.reduce(function(l,c){return c(l)},s.apply(void 0,arguments))}},Jy=function(t){return Array.isArray(t)?t.reverse():t.split("").reverse.join("")},FP=function(t){var n=null,r=null;return function(){for(var a=arguments.length,s=new Array(a),o=0;o<a;o++)s[o]=arguments[o];return n&&s.every(function(l,c){return l===n[c]})||(n=s,r=t.apply(void 0,s)),r}};function bX(e){var t;return e===0?t=1:t=Math.floor(new ct(e).abs().log(10).toNumber())+1,t}function xX(e,t,n){for(var r=new ct(e),a=0,s=[];r.lt(t)&&a<1e5;)s.push(r.toNumber()),r=r.add(n),a++;return s}var wX=dm(function(e,t,n){var r=+e,a=+t;return r+n*(a-r)}),kX=dm(function(e,t,n){var r=t-+e;return r=r||1/0,(n-e)/r}),SX=dm(function(e,t,n){var r=t-+e;return r=r||1/0,Math.max(0,Math.min(1,(n-e)/r))});const fm={rangeStep:xX,getDigitCount:bX,interpolateNumber:wX,uninterpolateNumber:kX,uninterpolateTruncation:SX};function eb(e){return EX(e)||NX(e)||UP(e)||jX()}function jX(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
88
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function NX(e){if(typeof Symbol<"u"&&Symbol.iterator in Object(e))return Array.from(e)}function EX(e){if(Array.isArray(e))return tb(e)}function bu(e,t){return CX(e)||AX(e,t)||UP(e,t)||_X()}function _X(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
89
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function UP(e,t){if(e){if(typeof e=="string")return tb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return tb(e,t)}}function tb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function AX(e,t){if(!(typeof Symbol>"u"||!(Symbol.iterator in Object(e)))){var n=[],r=!0,a=!1,s=void 0;try{for(var o=e[Symbol.iterator](),l;!(r=(l=o.next()).done)&&(n.push(l.value),!(t&&n.length===t));r=!0);}catch(c){a=!0,s=c}finally{try{!r&&o.return!=null&&o.return()}finally{if(a)throw s}}return n}}function CX(e){if(Array.isArray(e))return e}function WP(e){var t=bu(e,2),n=t[0],r=t[1],a=n,s=r;return n>r&&(a=r,s=n),[a,s]}function HP(e,t,n){if(e.lte(0))return new ct(0);var r=fm.getDigitCount(e.toNumber()),a=new ct(10).pow(r),s=e.div(a),o=r!==1?.05:.1,l=new ct(Math.ceil(s.div(o).toNumber())).add(n).mul(o),c=l.mul(a);return t?c:new ct(Math.ceil(c))}function TX(e,t,n){var r=1,a=new ct(e);if(!a.isint()&&n){var s=Math.abs(e);s<1?(r=new ct(10).pow(fm.getDigitCount(e)-1),a=new ct(Math.floor(a.div(r).toNumber())).mul(r)):s>1&&(a=new ct(Math.floor(e)))}else e===0?a=new ct(Math.floor((t-1)/2)):n||(a=new ct(Math.floor(e)));var o=Math.floor((t-1)/2),l=yX(vX(function(c){return a.add(new ct(c-o).mul(r)).toNumber()}),Zy);return l(0,t)}function GP(e,t,n,r){var a=arguments.length>4&&arguments[4]!==void 0?arguments[4]:0;if(!Number.isFinite((t-e)/(n-1)))return{step:new ct(0),tickMin:new ct(0),tickMax:new ct(0)};var s=HP(new ct(t).sub(e).div(n-1),r,a),o;e<=0&&t>=0?o=new ct(0):(o=new ct(e).add(t).div(2),o=o.sub(new ct(o).mod(s)));var l=Math.ceil(o.sub(e).div(s).toNumber()),c=Math.ceil(new ct(t).sub(o).div(s).toNumber()),u=l+c+1;return u>n?GP(e,t,n,r,a+1):(u<n&&(c=t>0?c+(n-u):c,l=t>0?l:l+(n-u)),{step:s,tickMin:o.sub(new ct(l).mul(s)),tickMax:o.add(new ct(c).mul(s))})}function OX(e){var t=bu(e,2),n=t[0],r=t[1],a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:6,s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=Math.max(a,2),l=WP([n,r]),c=bu(l,2),u=c[0],d=c[1];if(u===-1/0||d===1/0){var f=d===1/0?[u].concat(eb(Zy(0,a-1).map(function(){return 1/0}))):[].concat(eb(Zy(0,a-1).map(function(){return-1/0})),[d]);return n>r?Jy(f):f}if(u===d)return TX(u,a,s);var h=GP(u,d,o,s),p=h.step,g=h.tickMin,m=h.tickMax,y=fm.rangeStep(g,m.add(new ct(.1).mul(p)),p);return n>r?Jy(y):y}function PX(e,t){var n=bu(e,2),r=n[0],a=n[1],s=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,o=WP([r,a]),l=bu(o,2),c=l[0],u=l[1];if(c===-1/0||u===1/0)return[r,a];if(c===u)return[c];var d=Math.max(t,2),f=HP(new ct(u).sub(c).div(d-1),s,0),h=[].concat(eb(fm.rangeStep(new ct(c),new ct(u).sub(new ct(.99).mul(f)),f)),[u]);return r>a?Jy(h):h}var RX=FP(OX),MX=FP(PX),IX="Invariant failed";function Ls(e,t){throw new Error(IX)}var $X=["offset","layout","width","dataKey","data","dataPointFormatter","xAxis","yAxis"];function nl(e){"@babel/helpers - typeof";return nl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},nl(e)}function Ph(){return Ph=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ph.apply(this,arguments)}function LX(e,t){return FX(e)||zX(e,t)||BX(e,t)||DX()}function DX(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
90
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function BX(e,t){if(e){if(typeof e=="string")return y1(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return y1(e,t)}}function y1(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function zX(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function FX(e){if(Array.isArray(e))return e}function UX(e,t){if(e==null)return{};var n=WX(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function WX(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function HX(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function GX(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,VP(r.key),r)}}function qX(e,t,n){return t&&GX(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function KX(e,t,n){return t=Rh(t),VX(e,qP()?Reflect.construct(t,n||[],Rh(e).constructor):t.apply(e,n))}function VX(e,t){if(t&&(nl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return YX(e)}function YX(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function qP(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(qP=function(){return!!e})()}function Rh(e){return Rh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Rh(e)}function XX(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&nb(e,t)}function nb(e,t){return nb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},nb(e,t)}function KP(e,t,n){return t=VP(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function VP(e){var t=QX(e,"string");return nl(t)=="symbol"?t:t+""}function QX(e,t){if(nl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(nl(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var hm=function(e){function t(){return HX(this,t),KX(this,t,arguments)}return XX(t,e),qX(t,[{key:"render",value:function(){var r=this.props,a=r.offset,s=r.layout,o=r.width,l=r.dataKey,c=r.data,u=r.dataPointFormatter,d=r.xAxis,f=r.yAxis,h=UX(r,$X),p=Xe(h,!1);this.props.direction==="x"&&d.type!=="number"&&Ls();var g=c.map(function(m){var y=u(m,l),v=y.x,S=y.y,w=y.value,j=y.errorVal;if(!j)return null;var k=[],b,N;if(Array.isArray(j)){var _=LX(j,2);b=_[0],N=_[1]}else b=N=j;if(s==="vertical"){var T=d.scale,C=S+a,O=C+o,P=C-o,z=T(w-b),L=T(w+N);k.push({x1:L,y1:O,x2:L,y2:P}),k.push({x1:z,y1:C,x2:L,y2:C}),k.push({x1:z,y1:O,x2:z,y2:P})}else if(s==="horizontal"){var M=f.scale,D=v+a,W=D-o,R=D+o,B=M(w-b),A=M(w+N);k.push({x1:W,y1:A,x2:R,y2:A}),k.push({x1:D,y1:B,x2:D,y2:A}),k.push({x1:W,y1:B,x2:R,y2:B})}return V.createElement(an,Ph({className:"recharts-errorBar",key:"bar-".concat(k.map(function(J){return"".concat(J.x1,"-").concat(J.x2,"-").concat(J.y1,"-").concat(J.y2)}))},p),k.map(function(J){return V.createElement("line",Ph({},J,{key:"line-".concat(J.x1,"-").concat(J.x2,"-").concat(J.y1,"-").concat(J.y2)}))}))});return V.createElement(an,{className:"recharts-errorBars"},g)}}])}(V.Component);KP(hm,"defaultProps",{stroke:"black",strokeWidth:1.5,width:5,offset:0,layout:"horizontal"});KP(hm,"displayName","ErrorBar");function xu(e){"@babel/helpers - typeof";return xu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},xu(e)}function b1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function es(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?b1(Object(n),!0).forEach(function(r){ZX(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):b1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function ZX(e,t,n){return t=JX(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function JX(e){var t=eQ(e,"string");return xu(t)=="symbol"?t:t+""}function eQ(e,t){if(xu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(xu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var YP=function(t){var n=t.children,r=t.formattedGraphicalItems,a=t.legendWidth,s=t.legendContent,o=Jn(n,Ss);if(!o)return null;var l=Ss.defaultProps,c=l!==void 0?es(es({},l),o.props):{},u;return o.props&&o.props.payload?u=o.props&&o.props.payload:s==="children"?u=(r||[]).reduce(function(d,f){var h=f.item,p=f.props,g=p.sectors||p.data||[];return d.concat(g.map(function(m){return{type:o.props.iconType||h.props.legendType,value:m.name,color:m.fill,payload:m}}))},[]):u=(r||[]).map(function(d){var f=d.item,h=f.type.defaultProps,p=h!==void 0?es(es({},h),f.props):{},g=p.dataKey,m=p.name,y=p.legendType,v=p.hide;return{inactive:v,dataKey:g,type:c.iconType||y||"square",color:Xw(f),value:m||g,payload:p}}),es(es(es({},c),Ss.getWithHeight(o,a)),{},{payload:u,item:o})};function wu(e){"@babel/helpers - typeof";return wu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},wu(e)}function x1(e){return aQ(e)||rQ(e)||nQ(e)||tQ()}function tQ(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
91
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function nQ(e,t){if(e){if(typeof e=="string")return rb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return rb(e,t)}}function rQ(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function aQ(e){if(Array.isArray(e))return rb(e)}function rb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function w1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Pt(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?w1(Object(n),!0).forEach(function(r){Do(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):w1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Do(e,t,n){return t=iQ(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function iQ(e){var t=sQ(e,"string");return wu(t)=="symbol"?t:t+""}function sQ(e,t){if(wu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(wu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ha(e,t,n){return Ze(e)||Ze(t)?n:Zt(t)?Sr(e,t,n):De(t)?t(e):n}function Rc(e,t,n,r){var a=rX(e,function(l){return ha(l,t)});if(n==="number"){var s=a.filter(function(l){return ue(l)||parseFloat(l)});return s.length?[um(s),cm(s)]:[1/0,-1/0]}var o=r?a.filter(function(l){return!Ze(l)}):a;return o.map(function(l){return Zt(l)||l instanceof Date?l:""})}var oQ=function(t){var n,r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[],a=arguments.length>2?arguments[2]:void 0,s=arguments.length>3?arguments[3]:void 0,o=-1,l=(n=r==null?void 0:r.length)!==null&&n!==void 0?n:0;if(l<=1)return 0;if(s&&s.axisType==="angleAxis"&&Math.abs(Math.abs(s.range[1]-s.range[0])-360)<=1e-6)for(var c=s.range,u=0;u<l;u++){var d=u>0?a[u-1].coordinate:a[l-1].coordinate,f=a[u].coordinate,h=u>=l-1?a[0].coordinate:a[u+1].coordinate,p=void 0;if(zr(f-d)!==zr(h-f)){var g=[];if(zr(h-f)===zr(c[1]-c[0])){p=h;var m=f+c[1]-c[0];g[0]=Math.min(m,(m+d)/2),g[1]=Math.max(m,(m+d)/2)}else{p=d;var y=h+c[1]-c[0];g[0]=Math.min(f,(y+f)/2),g[1]=Math.max(f,(y+f)/2)}var v=[Math.min(f,(p+f)/2),Math.max(f,(p+f)/2)];if(t>v[0]&&t<=v[1]||t>=g[0]&&t<=g[1]){o=a[u].index;break}}else{var S=Math.min(d,h),w=Math.max(d,h);if(t>(S+f)/2&&t<=(w+f)/2){o=a[u].index;break}}}else for(var j=0;j<l;j++)if(j===0&&t<=(r[j].coordinate+r[j+1].coordinate)/2||j>0&&j<l-1&&t>(r[j].coordinate+r[j-1].coordinate)/2&&t<=(r[j].coordinate+r[j+1].coordinate)/2||j===l-1&&t>(r[j].coordinate+r[j-1].coordinate)/2){o=r[j].index;break}return o},Xw=function(t){var n,r=t,a=r.type.displayName,s=(n=t.type)!==null&&n!==void 0&&n.defaultProps?Pt(Pt({},t.type.defaultProps),t.props):t.props,o=s.stroke,l=s.fill,c;switch(a){case"Line":c=o;break;case"Area":case"Radar":c=o&&o!=="none"?o:l;break;default:c=l;break}return c},lQ=function(t){var n=t.barSize,r=t.totalSize,a=t.stackGroups,s=a===void 0?{}:a;if(!s)return{};for(var o={},l=Object.keys(s),c=0,u=l.length;c<u;c++)for(var d=s[l[c]].stackGroups,f=Object.keys(d),h=0,p=f.length;h<p;h++){var g=d[f[h]],m=g.items,y=g.cateAxisId,v=m.filter(function(N){return _a(N.type).indexOf("Bar")>=0});if(v&&v.length){var S=v[0].type.defaultProps,w=S!==void 0?Pt(Pt({},S),v[0].props):v[0].props,j=w.barSize,k=w[y];o[k]||(o[k]=[]);var b=Ze(j)?n:j;o[k].push({item:v[0],stackList:v.slice(1),barSize:Ze(b)?void 0:Is(b,r,0)})}}return o},cQ=function(t){var n=t.barGap,r=t.barCategoryGap,a=t.bandSize,s=t.sizeList,o=s===void 0?[]:s,l=t.maxBarSize,c=o.length;if(c<1)return null;var u=Is(n,a,0,!0),d,f=[];if(o[0].barSize===+o[0].barSize){var h=!1,p=a/c,g=o.reduce(function(j,k){return j+k.barSize||0},0);g+=(c-1)*u,g>=a&&(g-=(c-1)*u,u=0),g>=a&&p>0&&(h=!0,p*=.9,g=c*p);var m=(a-g)/2>>0,y={offset:m-u,size:0};d=o.reduce(function(j,k){var b={item:k.item,position:{offset:y.offset+y.size+u,size:h?p:k.barSize}},N=[].concat(x1(j),[b]);return y=N[N.length-1].position,k.stackList&&k.stackList.length&&k.stackList.forEach(function(_){N.push({item:_,position:y})}),N},f)}else{var v=Is(r,a,0,!0);a-2*v-(c-1)*u<=0&&(u=0);var S=(a-2*v-(c-1)*u)/c;S>1&&(S>>=0);var w=l===+l?Math.min(S,l):S;d=o.reduce(function(j,k,b){var N=[].concat(x1(j),[{item:k.item,position:{offset:v+(S+u)*b+(S-w)/2,size:w}}]);return k.stackList&&k.stackList.length&&k.stackList.forEach(function(_){N.push({item:_,position:N[N.length-1].position})}),N},f)}return d},uQ=function(t,n,r,a){var s=r.children,o=r.width,l=r.margin,c=o-(l.left||0)-(l.right||0),u=YP({children:s,legendWidth:c});if(u){var d=a||{},f=d.width,h=d.height,p=u.align,g=u.verticalAlign,m=u.layout;if((m==="vertical"||m==="horizontal"&&g==="middle")&&p!=="center"&&ue(t[p]))return Pt(Pt({},t),{},Do({},p,t[p]+(f||0)));if((m==="horizontal"||m==="vertical"&&p==="center")&&g!=="middle"&&ue(t[g]))return Pt(Pt({},t),{},Do({},g,t[g]+(h||0)))}return t},dQ=function(t,n,r){return Ze(n)?!0:t==="horizontal"?n==="yAxis":t==="vertical"||r==="x"?n==="xAxis":r==="y"?n==="yAxis":!0},XP=function(t,n,r,a,s){var o=n.props.children,l=Wr(o,hm).filter(function(u){return dQ(a,s,u.props.direction)});if(l&&l.length){var c=l.map(function(u){return u.props.dataKey});return t.reduce(function(u,d){var f=ha(d,r);if(Ze(f))return u;var h=Array.isArray(f)?[um(f),cm(f)]:[f,f],p=c.reduce(function(g,m){var y=ha(d,m,0),v=h[0]-Math.abs(Array.isArray(y)?y[0]:y),S=h[1]+Math.abs(Array.isArray(y)?y[1]:y);return[Math.min(v,g[0]),Math.max(S,g[1])]},[1/0,-1/0]);return[Math.min(p[0],u[0]),Math.max(p[1],u[1])]},[1/0,-1/0])}return null},fQ=function(t,n,r,a,s){var o=n.map(function(l){return XP(t,l,r,s,a)}).filter(function(l){return!Ze(l)});return o&&o.length?o.reduce(function(l,c){return[Math.min(l[0],c[0]),Math.max(l[1],c[1])]},[1/0,-1/0]):null},QP=function(t,n,r,a,s){var o=n.map(function(c){var u=c.props.dataKey;return r==="number"&&u&&XP(t,c,u,a)||Rc(t,u,r,s)});if(r==="number")return o.reduce(function(c,u){return[Math.min(c[0],u[0]),Math.max(c[1],u[1])]},[1/0,-1/0]);var l={};return o.reduce(function(c,u){for(var d=0,f=u.length;d<f;d++)l[u[d]]||(l[u[d]]=!0,c.push(u[d]));return c},[])},ZP=function(t,n){return t==="horizontal"&&n==="xAxis"||t==="vertical"&&n==="yAxis"||t==="centric"&&n==="angleAxis"||t==="radial"&&n==="radiusAxis"},JP=function(t,n,r,a){if(a)return t.map(function(c){return c.coordinate});var s,o,l=t.map(function(c){return c.coordinate===n&&(s=!0),c.coordinate===r&&(o=!0),c.coordinate});return s||l.push(n),o||l.push(r),l},Na=function(t,n,r){if(!t)return null;var a=t.scale,s=t.duplicateDomain,o=t.type,l=t.range,c=t.realScaleType==="scaleBand"?a.bandwidth()/2:2,u=(n||r)&&o==="category"&&a.bandwidth?a.bandwidth()/c:0;if(u=t.axisType==="angleAxis"&&(l==null?void 0:l.length)>=2?zr(l[0]-l[1])*2*u:u,n&&(t.ticks||t.niceTicks)){var d=(t.ticks||t.niceTicks).map(function(f){var h=s?s.indexOf(f):f;return{coordinate:a(h)+u,value:f,offset:u}});return d.filter(function(f){return!Qu(f.coordinate)})}return t.isCategorical&&t.categoricalDomain?t.categoricalDomain.map(function(f,h){return{coordinate:a(f)+u,value:f,index:h,offset:u}}):a.ticks&&!r?a.ticks(t.tickCount).map(function(f){return{coordinate:a(f)+u,value:f,offset:u}}):a.domain().map(function(f,h){return{coordinate:a(f)+u,value:s?s[f]:f,index:h,offset:u}})},_g=new WeakMap,Yd=function(t,n){if(typeof n!="function")return t;_g.has(t)||_g.set(t,new WeakMap);var r=_g.get(t);if(r.has(n))return r.get(n);var a=function(){t.apply(void 0,arguments),n.apply(void 0,arguments)};return r.set(n,a),a},hQ=function(t,n,r){var a=t.scale,s=t.type,o=t.layout,l=t.axisType;if(a==="auto")return o==="radial"&&l==="radiusAxis"?{scale:hu(),realScaleType:"band"}:o==="radial"&&l==="angleAxis"?{scale:_h(),realScaleType:"linear"}:s==="category"&&n&&(n.indexOf("LineChart")>=0||n.indexOf("AreaChart")>=0||n.indexOf("ComposedChart")>=0&&!r)?{scale:Pc(),realScaleType:"point"}:s==="category"?{scale:hu(),realScaleType:"band"}:{scale:_h(),realScaleType:"linear"};if(Ms(a)){var c="scale".concat(Xp(a));return{scale:(p1[c]||Pc)(),realScaleType:p1[c]?c:"point"}}return De(a)?{scale:a}:{scale:Pc(),realScaleType:"point"}},k1=1e-4,pQ=function(t){var n=t.domain();if(!(!n||n.length<=2)){var r=n.length,a=t.range(),s=Math.min(a[0],a[1])-k1,o=Math.max(a[0],a[1])+k1,l=t(n[0]),c=t(n[r-1]);(l<s||l>o||c<s||c>o)&&t.domain([n[0],n[r-1]])}},mQ=function(t,n){if(!t)return null;for(var r=0,a=t.length;r<a;r++)if(t[r].item===n)return t[r].position;return null},gQ=function(t,n){if(!n||n.length!==2||!ue(n[0])||!ue(n[1]))return t;var r=Math.min(n[0],n[1]),a=Math.max(n[0],n[1]),s=[t[0],t[1]];return(!ue(t[0])||t[0]<r)&&(s[0]=r),(!ue(t[1])||t[1]>a)&&(s[1]=a),s[0]>a&&(s[0]=a),s[1]<r&&(s[1]=r),s},vQ=function(t){var n=t.length;if(!(n<=0))for(var r=0,a=t[0].length;r<a;++r)for(var s=0,o=0,l=0;l<n;++l){var c=Qu(t[l][r][1])?t[l][r][0]:t[l][r][1];c>=0?(t[l][r][0]=s,t[l][r][1]=s+c,s=t[l][r][1]):(t[l][r][0]=o,t[l][r][1]=o+c,o=t[l][r][1])}},yQ=function(t){var n=t.length;if(!(n<=0))for(var r=0,a=t[0].length;r<a;++r)for(var s=0,o=0;o<n;++o){var l=Qu(t[o][r][1])?t[o][r][0]:t[o][r][1];l>=0?(t[o][r][0]=s,t[o][r][1]=s+l,s=t[o][r][1]):(t[o][r][0]=0,t[o][r][1]=0)}},bQ={sign:vQ,expand:M4,none:Vo,silhouette:I4,wiggle:$4,positive:yQ},xQ=function(t,n,r){var a=n.map(function(l){return l.props.dataKey}),s=bQ[r],o=R4().keys(a).value(function(l,c){return+ha(l,c,0)}).order(Ay).offset(s);return o(t)},wQ=function(t,n,r,a,s,o){if(!t)return null;var l=o?n.reverse():n,c={},u=l.reduce(function(f,h){var p,g=(p=h.type)!==null&&p!==void 0&&p.defaultProps?Pt(Pt({},h.type.defaultProps),h.props):h.props,m=g.stackId,y=g.hide;if(y)return f;var v=g[r],S=f[v]||{hasStack:!1,stackGroups:{}};if(Zt(m)){var w=S.stackGroups[m]||{numericAxisId:r,cateAxisId:a,items:[]};w.items.push(h),S.hasStack=!0,S.stackGroups[m]=w}else S.stackGroups[Yp("_stackId_")]={numericAxisId:r,cateAxisId:a,items:[h]};return Pt(Pt({},f),{},Do({},v,S))},c),d={};return Object.keys(u).reduce(function(f,h){var p=u[h];if(p.hasStack){var g={};p.stackGroups=Object.keys(p.stackGroups).reduce(function(m,y){var v=p.stackGroups[y];return Pt(Pt({},m),{},Do({},y,{numericAxisId:r,cateAxisId:a,items:v.items,stackedData:xQ(t,v.items,s)}))},g)}return Pt(Pt({},f),{},Do({},h,p))},d)},kQ=function(t,n){var r=n.realScaleType,a=n.type,s=n.tickCount,o=n.originalDomain,l=n.allowDecimals,c=r||n.scale;if(c!=="auto"&&c!=="linear")return null;if(s&&a==="number"&&o&&(o[0]==="auto"||o[1]==="auto")){var u=t.domain();if(!u.length)return null;var d=RX(u,s,l);return t.domain([um(d),cm(d)]),{niceTicks:d}}if(s&&a==="number"){var f=t.domain(),h=MX(f,s,l);return{niceTicks:h}}return null},S1=function(t){var n=t.axis,r=t.ticks,a=t.offset,s=t.bandSize,o=t.entry,l=t.index;if(n.type==="category")return r[l]?r[l].coordinate+a:null;var c=ha(o,n.dataKey,n.domain[l]);return Ze(c)?null:n.scale(c)-s/2+a},SQ=function(t){var n=t.numericAxis,r=n.scale.domain();if(n.type==="number"){var a=Math.min(r[0],r[1]),s=Math.max(r[0],r[1]);return a<=0&&s>=0?0:s<0?s:a}return r[0]},jQ=function(t,n){var r,a=(r=t.type)!==null&&r!==void 0&&r.defaultProps?Pt(Pt({},t.type.defaultProps),t.props):t.props,s=a.stackId;if(Zt(s)){var o=n[s];if(o){var l=o.items.indexOf(t);return l>=0?o.stackedData[l]:null}}return null},NQ=function(t){return t.reduce(function(n,r){return[um(r.concat([n[0]]).filter(ue)),cm(r.concat([n[1]]).filter(ue))]},[1/0,-1/0])},eR=function(t,n,r){return Object.keys(t).reduce(function(a,s){var o=t[s],l=o.stackedData,c=l.reduce(function(u,d){var f=NQ(d.slice(n,r+1));return[Math.min(u[0],f[0]),Math.max(u[1],f[1])]},[1/0,-1/0]);return[Math.min(c[0],a[0]),Math.max(c[1],a[1])]},[1/0,-1/0]).map(function(a){return a===1/0||a===-1/0?0:a})},j1=/^dataMin[\s]*-[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,N1=/^dataMax[\s]*\+[\s]*([0-9]+([.]{1}[0-9]+){0,1})$/,ab=function(t,n,r){if(De(t))return t(n,r);if(!Array.isArray(t))return n;var a=[];if(ue(t[0]))a[0]=r?t[0]:Math.min(t[0],n[0]);else if(j1.test(t[0])){var s=+j1.exec(t[0])[1];a[0]=n[0]-s}else De(t[0])?a[0]=t[0](n[0]):a[0]=n[0];if(ue(t[1]))a[1]=r?t[1]:Math.max(t[1],n[1]);else if(N1.test(t[1])){var o=+N1.exec(t[1])[1];a[1]=n[1]+o}else De(t[1])?a[1]=t[1](n[1]):a[1]=n[1];return a},Mh=function(t,n,r){if(t&&t.scale&&t.scale.bandwidth){var a=t.scale.bandwidth();if(!r||a>0)return a}if(t&&n&&n.length>=2){for(var s=Sw(n,function(f){return f.coordinate}),o=1/0,l=1,c=s.length;l<c;l++){var u=s[l],d=s[l-1];o=Math.min((u.coordinate||0)-(d.coordinate||0),o)}return o===1/0?0:o}return r?void 0:0},E1=function(t,n,r){return!t||!t.length||Kw(t,Sr(r,"type.defaultProps.domain"))?n:t},tR=function(t,n){var r=t.type.defaultProps?Pt(Pt({},t.type.defaultProps),t.props):t.props,a=r.dataKey,s=r.name,o=r.unit,l=r.formatter,c=r.tooltipType,u=r.chartType,d=r.hide;return Pt(Pt({},Xe(t,!1)),{},{dataKey:a,unit:o,formatter:l,name:s||a,color:Xw(t),value:ha(n,a),type:c,payload:n,chartType:u,hide:d})};function ku(e){"@babel/helpers - typeof";return ku=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ku(e)}function _1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function A1(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?_1(Object(n),!0).forEach(function(r){EQ(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):_1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function EQ(e,t,n){return t=_Q(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function _Q(e){var t=AQ(e,"string");return ku(t)=="symbol"?t:t+""}function AQ(e,t){if(ku(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(ku(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Ih=Math.PI/180,CQ=function(t){return t*180/Math.PI},un=function(t,n,r,a){return{x:t+Math.cos(-Ih*a)*r,y:n+Math.sin(-Ih*a)*r}},TQ=function(t,n){var r=t.x,a=t.y,s=n.x,o=n.y;return Math.sqrt(Math.pow(r-s,2)+Math.pow(a-o,2))},OQ=function(t,n){var r=t.x,a=t.y,s=n.cx,o=n.cy,l=TQ({x:r,y:a},{x:s,y:o});if(l<=0)return{radius:l};var c=(r-s)/l,u=Math.acos(c);return a>o&&(u=2*Math.PI-u),{radius:l,angle:CQ(u),angleInRadian:u}},PQ=function(t){var n=t.startAngle,r=t.endAngle,a=Math.floor(n/360),s=Math.floor(r/360),o=Math.min(a,s);return{startAngle:n-o*360,endAngle:r-o*360}},RQ=function(t,n){var r=n.startAngle,a=n.endAngle,s=Math.floor(r/360),o=Math.floor(a/360),l=Math.min(s,o);return t+l*360},C1=function(t,n){var r=t.x,a=t.y,s=OQ({x:r,y:a},n),o=s.radius,l=s.angle,c=n.innerRadius,u=n.outerRadius;if(o<c||o>u)return!1;if(o===0)return!0;var d=PQ(n),f=d.startAngle,h=d.endAngle,p=l,g;if(f<=h){for(;p>h;)p-=360;for(;p<f;)p+=360;g=p>=f&&p<=h}else{for(;p>f;)p-=360;for(;p<h;)p+=360;g=p>=h&&p<=f}return g?A1(A1({},n),{},{radius:o,angle:RQ(p,n)}):null};function Su(e){"@babel/helpers - typeof";return Su=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Su(e)}var MQ=["offset"];function IQ(e){return BQ(e)||DQ(e)||LQ(e)||$Q()}function $Q(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
92
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function LQ(e,t){if(e){if(typeof e=="string")return ib(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ib(e,t)}}function DQ(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function BQ(e){if(Array.isArray(e))return ib(e)}function ib(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function zQ(e,t){if(e==null)return{};var n=FQ(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function FQ(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function T1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Yt(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?T1(Object(n),!0).forEach(function(r){UQ(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):T1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function UQ(e,t,n){return t=WQ(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function WQ(e){var t=HQ(e,"string");return Su(t)=="symbol"?t:t+""}function HQ(e,t){if(Su(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Su(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function ju(){return ju=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ju.apply(this,arguments)}var GQ=function(t){var n=t.value,r=t.formatter,a=Ze(t.children)?n:t.children;return De(r)?r(a):a},qQ=function(t,n){var r=zr(n-t),a=Math.min(Math.abs(n-t),360);return r*a},KQ=function(t,n,r){var a=t.position,s=t.viewBox,o=t.offset,l=t.className,c=s,u=c.cx,d=c.cy,f=c.innerRadius,h=c.outerRadius,p=c.startAngle,g=c.endAngle,m=c.clockWise,y=(f+h)/2,v=qQ(p,g),S=v>=0?1:-1,w,j;a==="insideStart"?(w=p+S*o,j=m):a==="insideEnd"?(w=g-S*o,j=!m):a==="end"&&(w=g+S*o,j=m),j=v<=0?j:!j;var k=un(u,d,y,w),b=un(u,d,y,w+(j?1:-1)*359),N="M".concat(k.x,",").concat(k.y,`
|
|
93
|
+
A`).concat(y,",").concat(y,",0,1,").concat(j?0:1,`,
|
|
94
|
+
`).concat(b.x,",").concat(b.y),_=Ze(t.id)?Yp("recharts-radial-line-"):t.id;return V.createElement("text",ju({},r,{dominantBaseline:"central",className:Qe("recharts-radial-bar-label",l)}),V.createElement("defs",null,V.createElement("path",{id:_,d:N})),V.createElement("textPath",{xlinkHref:"#".concat(_)},n))},VQ=function(t){var n=t.viewBox,r=t.offset,a=t.position,s=n,o=s.cx,l=s.cy,c=s.innerRadius,u=s.outerRadius,d=s.startAngle,f=s.endAngle,h=(d+f)/2;if(a==="outside"){var p=un(o,l,u+r,h),g=p.x,m=p.y;return{x:g,y:m,textAnchor:g>=o?"start":"end",verticalAnchor:"middle"}}if(a==="center")return{x:o,y:l,textAnchor:"middle",verticalAnchor:"middle"};if(a==="centerTop")return{x:o,y:l,textAnchor:"middle",verticalAnchor:"start"};if(a==="centerBottom")return{x:o,y:l,textAnchor:"middle",verticalAnchor:"end"};var y=(c+u)/2,v=un(o,l,y,h),S=v.x,w=v.y;return{x:S,y:w,textAnchor:"middle",verticalAnchor:"middle"}},YQ=function(t){var n=t.viewBox,r=t.parentViewBox,a=t.offset,s=t.position,o=n,l=o.x,c=o.y,u=o.width,d=o.height,f=d>=0?1:-1,h=f*a,p=f>0?"end":"start",g=f>0?"start":"end",m=u>=0?1:-1,y=m*a,v=m>0?"end":"start",S=m>0?"start":"end";if(s==="top"){var w={x:l+u/2,y:c-f*a,textAnchor:"middle",verticalAnchor:p};return Yt(Yt({},w),r?{height:Math.max(c-r.y,0),width:u}:{})}if(s==="bottom"){var j={x:l+u/2,y:c+d+h,textAnchor:"middle",verticalAnchor:g};return Yt(Yt({},j),r?{height:Math.max(r.y+r.height-(c+d),0),width:u}:{})}if(s==="left"){var k={x:l-y,y:c+d/2,textAnchor:v,verticalAnchor:"middle"};return Yt(Yt({},k),r?{width:Math.max(k.x-r.x,0),height:d}:{})}if(s==="right"){var b={x:l+u+y,y:c+d/2,textAnchor:S,verticalAnchor:"middle"};return Yt(Yt({},b),r?{width:Math.max(r.x+r.width-b.x,0),height:d}:{})}var N=r?{width:u,height:d}:{};return s==="insideLeft"?Yt({x:l+y,y:c+d/2,textAnchor:S,verticalAnchor:"middle"},N):s==="insideRight"?Yt({x:l+u-y,y:c+d/2,textAnchor:v,verticalAnchor:"middle"},N):s==="insideTop"?Yt({x:l+u/2,y:c+h,textAnchor:"middle",verticalAnchor:g},N):s==="insideBottom"?Yt({x:l+u/2,y:c+d-h,textAnchor:"middle",verticalAnchor:p},N):s==="insideTopLeft"?Yt({x:l+y,y:c+h,textAnchor:S,verticalAnchor:g},N):s==="insideTopRight"?Yt({x:l+u-y,y:c+h,textAnchor:v,verticalAnchor:g},N):s==="insideBottomLeft"?Yt({x:l+y,y:c+d-h,textAnchor:S,verticalAnchor:p},N):s==="insideBottomRight"?Yt({x:l+u-y,y:c+d-h,textAnchor:v,verticalAnchor:p},N):Sl(s)&&(ue(s.x)||gs(s.x))&&(ue(s.y)||gs(s.y))?Yt({x:l+Is(s.x,u),y:c+Is(s.y,d),textAnchor:"end",verticalAnchor:"end"},N):Yt({x:l+u/2,y:c+d/2,textAnchor:"middle",verticalAnchor:"middle"},N)},XQ=function(t){return"cx"in t&&ue(t.cx)};function wn(e){var t=e.offset,n=t===void 0?5:t,r=zQ(e,MQ),a=Yt({offset:n},r),s=a.viewBox,o=a.position,l=a.value,c=a.children,u=a.content,d=a.className,f=d===void 0?"":d,h=a.textBreakAll;if(!s||Ze(l)&&Ze(c)&&!x.isValidElement(u)&&!De(u))return null;if(x.isValidElement(u))return x.cloneElement(u,a);var p;if(De(u)){if(p=x.createElement(u,a),x.isValidElement(p))return p}else p=GQ(a);var g=XQ(s),m=Xe(a,!0);if(g&&(o==="insideStart"||o==="insideEnd"||o==="end"))return KQ(a,p,m);var y=g?VQ(a):YQ(a);return V.createElement(bh,ju({className:Qe("recharts-label",f)},m,y,{breakAll:h}),p)}wn.displayName="Label";var nR=function(t){var n=t.cx,r=t.cy,a=t.angle,s=t.startAngle,o=t.endAngle,l=t.r,c=t.radius,u=t.innerRadius,d=t.outerRadius,f=t.x,h=t.y,p=t.top,g=t.left,m=t.width,y=t.height,v=t.clockWise,S=t.labelViewBox;if(S)return S;if(ue(m)&&ue(y)){if(ue(f)&&ue(h))return{x:f,y:h,width:m,height:y};if(ue(p)&&ue(g))return{x:p,y:g,width:m,height:y}}return ue(f)&&ue(h)?{x:f,y:h,width:0,height:0}:ue(n)&&ue(r)?{cx:n,cy:r,startAngle:s||a||0,endAngle:o||a||0,innerRadius:u||0,outerRadius:d||c||l||0,clockWise:v}:t.viewBox?t.viewBox:{}},QQ=function(t,n){return t?t===!0?V.createElement(wn,{key:"label-implicit",viewBox:n}):Zt(t)?V.createElement(wn,{key:"label-implicit",viewBox:n,value:t}):x.isValidElement(t)?t.type===wn?x.cloneElement(t,{key:"label-implicit",viewBox:n}):V.createElement(wn,{key:"label-implicit",content:t,viewBox:n}):De(t)?V.createElement(wn,{key:"label-implicit",content:t,viewBox:n}):Sl(t)?V.createElement(wn,ju({viewBox:n},t,{key:"label-implicit"})):null:null},ZQ=function(t,n){var r=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(!t||!t.children&&r&&!t.label)return null;var a=t.children,s=nR(t),o=Wr(a,wn).map(function(c,u){return x.cloneElement(c,{viewBox:n||s,key:"label-".concat(u)})});if(!r)return o;var l=QQ(t.label,n||s);return[l].concat(IQ(o))};wn.parseViewBox=nR;wn.renderCallByParent=ZQ;function JQ(e){var t=e==null?0:e.length;return t?e[t-1]:void 0}var eZ=JQ;const tZ=tt(eZ);function Nu(e){"@babel/helpers - typeof";return Nu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Nu(e)}var nZ=["valueAccessor"],rZ=["data","dataKey","clockWise","id","textBreakAll"];function aZ(e){return lZ(e)||oZ(e)||sZ(e)||iZ()}function iZ(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
95
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function sZ(e,t){if(e){if(typeof e=="string")return sb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return sb(e,t)}}function oZ(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function lZ(e){if(Array.isArray(e))return sb(e)}function sb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function $h(){return $h=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},$h.apply(this,arguments)}function O1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function P1(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?O1(Object(n),!0).forEach(function(r){cZ(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):O1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function cZ(e,t,n){return t=uZ(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function uZ(e){var t=dZ(e,"string");return Nu(t)=="symbol"?t:t+""}function dZ(e,t){if(Nu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Nu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function R1(e,t){if(e==null)return{};var n=fZ(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function fZ(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}var hZ=function(t){return Array.isArray(t.value)?tZ(t.value):t.value};function Es(e){var t=e.valueAccessor,n=t===void 0?hZ:t,r=R1(e,nZ),a=r.data,s=r.dataKey,o=r.clockWise,l=r.id,c=r.textBreakAll,u=R1(r,rZ);return!a||!a.length?null:V.createElement(an,{className:"recharts-label-list"},a.map(function(d,f){var h=Ze(s)?n(d,f):ha(d&&d.payload,s),p=Ze(l)?{}:{id:"".concat(l,"-").concat(f)};return V.createElement(wn,$h({},Xe(d,!0),u,p,{parentViewBox:d.parentViewBox,value:h,textBreakAll:c,viewBox:wn.parseViewBox(Ze(o)?d:P1(P1({},d),{},{clockWise:o})),key:"label-".concat(f),index:f}))}))}Es.displayName="LabelList";function pZ(e,t){return e?e===!0?V.createElement(Es,{key:"labelList-implicit",data:t}):V.isValidElement(e)||De(e)?V.createElement(Es,{key:"labelList-implicit",data:t,content:e}):Sl(e)?V.createElement(Es,$h({data:t},e,{key:"labelList-implicit"})):null:null}function mZ(e,t){var n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;if(!e||!e.children&&n&&!e.label)return null;var r=e.children,a=Wr(r,Es).map(function(o,l){return x.cloneElement(o,{data:t,key:"labelList-".concat(l)})});if(!n)return a;var s=pZ(e.label,t);return[s].concat(aZ(a))}Es.renderCallByParent=mZ;function Eu(e){"@babel/helpers - typeof";return Eu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Eu(e)}function ob(){return ob=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ob.apply(this,arguments)}function M1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function I1(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?M1(Object(n),!0).forEach(function(r){gZ(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):M1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function gZ(e,t,n){return t=vZ(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vZ(e){var t=yZ(e,"string");return Eu(t)=="symbol"?t:t+""}function yZ(e,t){if(Eu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Eu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var bZ=function(t,n){var r=zr(n-t),a=Math.min(Math.abs(n-t),359.999);return r*a},Xd=function(t){var n=t.cx,r=t.cy,a=t.radius,s=t.angle,o=t.sign,l=t.isExternal,c=t.cornerRadius,u=t.cornerIsExternal,d=c*(l?1:-1)+a,f=Math.asin(c/d)/Ih,h=u?s:s+o*f,p=un(n,r,d,h),g=un(n,r,a,h),m=u?s-o*f:s,y=un(n,r,d*Math.cos(f*Ih),m);return{center:p,circleTangency:g,lineTangency:y,theta:f}},rR=function(t){var n=t.cx,r=t.cy,a=t.innerRadius,s=t.outerRadius,o=t.startAngle,l=t.endAngle,c=bZ(o,l),u=o+c,d=un(n,r,s,o),f=un(n,r,s,u),h="M ".concat(d.x,",").concat(d.y,`
|
|
96
|
+
A `).concat(s,",").concat(s,`,0,
|
|
97
|
+
`).concat(+(Math.abs(c)>180),",").concat(+(o>u),`,
|
|
98
|
+
`).concat(f.x,",").concat(f.y,`
|
|
99
|
+
`);if(a>0){var p=un(n,r,a,o),g=un(n,r,a,u);h+="L ".concat(g.x,",").concat(g.y,`
|
|
100
|
+
A `).concat(a,",").concat(a,`,0,
|
|
101
|
+
`).concat(+(Math.abs(c)>180),",").concat(+(o<=u),`,
|
|
102
|
+
`).concat(p.x,",").concat(p.y," Z")}else h+="L ".concat(n,",").concat(r," Z");return h},xZ=function(t){var n=t.cx,r=t.cy,a=t.innerRadius,s=t.outerRadius,o=t.cornerRadius,l=t.forceCornerRadius,c=t.cornerIsExternal,u=t.startAngle,d=t.endAngle,f=zr(d-u),h=Xd({cx:n,cy:r,radius:s,angle:u,sign:f,cornerRadius:o,cornerIsExternal:c}),p=h.circleTangency,g=h.lineTangency,m=h.theta,y=Xd({cx:n,cy:r,radius:s,angle:d,sign:-f,cornerRadius:o,cornerIsExternal:c}),v=y.circleTangency,S=y.lineTangency,w=y.theta,j=c?Math.abs(u-d):Math.abs(u-d)-m-w;if(j<0)return l?"M ".concat(g.x,",").concat(g.y,`
|
|
103
|
+
a`).concat(o,",").concat(o,",0,0,1,").concat(o*2,`,0
|
|
104
|
+
a`).concat(o,",").concat(o,",0,0,1,").concat(-o*2,`,0
|
|
105
|
+
`):rR({cx:n,cy:r,innerRadius:a,outerRadius:s,startAngle:u,endAngle:d});var k="M ".concat(g.x,",").concat(g.y,`
|
|
106
|
+
A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(p.x,",").concat(p.y,`
|
|
107
|
+
A`).concat(s,",").concat(s,",0,").concat(+(j>180),",").concat(+(f<0),",").concat(v.x,",").concat(v.y,`
|
|
108
|
+
A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(S.x,",").concat(S.y,`
|
|
109
|
+
`);if(a>0){var b=Xd({cx:n,cy:r,radius:a,angle:u,sign:f,isExternal:!0,cornerRadius:o,cornerIsExternal:c}),N=b.circleTangency,_=b.lineTangency,T=b.theta,C=Xd({cx:n,cy:r,radius:a,angle:d,sign:-f,isExternal:!0,cornerRadius:o,cornerIsExternal:c}),O=C.circleTangency,P=C.lineTangency,z=C.theta,L=c?Math.abs(u-d):Math.abs(u-d)-T-z;if(L<0&&o===0)return"".concat(k,"L").concat(n,",").concat(r,"Z");k+="L".concat(P.x,",").concat(P.y,`
|
|
110
|
+
A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(O.x,",").concat(O.y,`
|
|
111
|
+
A`).concat(a,",").concat(a,",0,").concat(+(L>180),",").concat(+(f>0),",").concat(N.x,",").concat(N.y,`
|
|
112
|
+
A`).concat(o,",").concat(o,",0,0,").concat(+(f<0),",").concat(_.x,",").concat(_.y,"Z")}else k+="L".concat(n,",").concat(r,"Z");return k},wZ={cx:0,cy:0,innerRadius:0,outerRadius:0,startAngle:0,endAngle:0,cornerRadius:0,forceCornerRadius:!1,cornerIsExternal:!1},aR=function(t){var n=I1(I1({},wZ),t),r=n.cx,a=n.cy,s=n.innerRadius,o=n.outerRadius,l=n.cornerRadius,c=n.forceCornerRadius,u=n.cornerIsExternal,d=n.startAngle,f=n.endAngle,h=n.className;if(o<s||d===f)return null;var p=Qe("recharts-sector",h),g=o-s,m=Is(l,g,0,!0),y;return m>0&&Math.abs(d-f)<360?y=xZ({cx:r,cy:a,innerRadius:s,outerRadius:o,cornerRadius:Math.min(m,g/2),forceCornerRadius:c,cornerIsExternal:u,startAngle:d,endAngle:f}):y=rR({cx:r,cy:a,innerRadius:s,outerRadius:o,startAngle:d,endAngle:f}),V.createElement("path",ob({},Xe(n,!0),{className:p,d:y,role:"img"}))};function _u(e){"@babel/helpers - typeof";return _u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},_u(e)}function lb(){return lb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},lb.apply(this,arguments)}function $1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function L1(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?$1(Object(n),!0).forEach(function(r){kZ(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):$1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function kZ(e,t,n){return t=SZ(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function SZ(e){var t=jZ(e,"string");return _u(t)=="symbol"?t:t+""}function jZ(e,t){if(_u(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(_u(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var D1={curveBasisClosed:k4,curveBasisOpen:S4,curveBasis:w4,curveBumpX:o4,curveBumpY:l4,curveLinearClosed:j4,curveLinear:Zp,curveMonotoneX:N4,curveMonotoneY:E4,curveNatural:_4,curveStep:A4,curveStepAfter:T4,curveStepBefore:C4},Qd=function(t){return t.x===+t.x&&t.y===+t.y},oc=function(t){return t.x},lc=function(t){return t.y},NZ=function(t,n){if(De(t))return t;var r="curve".concat(Xp(t));return(r==="curveMonotone"||r==="curveBump")&&n?D1["".concat(r).concat(n==="vertical"?"Y":"X")]:D1[r]||Zp},EZ=function(t){var n=t.type,r=n===void 0?"linear":n,a=t.points,s=a===void 0?[]:a,o=t.baseLine,l=t.layout,c=t.connectNulls,u=c===void 0?!1:c,d=NZ(r,l),f=u?s.filter(function(m){return Qd(m)}):s,h;if(Array.isArray(o)){var p=u?o.filter(function(m){return Qd(m)}):o,g=f.map(function(m,y){return L1(L1({},m),{},{base:p[y]})});return l==="vertical"?h=Fd().y(lc).x1(oc).x0(function(m){return m.base.x}):h=Fd().x(oc).y1(lc).y0(function(m){return m.base.y}),h.defined(Qd).curve(d),h(g)}return l==="vertical"&&ue(o)?h=Fd().y(lc).x1(oc).x0(o):ue(o)?h=Fd().x(oc).y1(lc).y0(o):h=sO().x(oc).y(lc),h.defined(Qd).curve(d),h(f)},B1=function(t){var n=t.className,r=t.points,a=t.path,s=t.pathRef;if((!r||!r.length)&&!a)return null;var o=r&&r.length?EZ(t):a;return x.createElement("path",lb({},Xe(t,!1),ah(t),{className:Qe("recharts-curve",n),d:o,ref:s}))},iR={exports:{}},_Z="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED",AZ=_Z,CZ=AZ;function sR(){}function oR(){}oR.resetWarningCache=sR;var TZ=function(){function e(r,a,s,o,l,c){if(c!==CZ){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}e.isRequired=e;function t(){return e}var n={array:e,bigint:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:oR,resetWarningCache:sR};return n.PropTypes=n,n};iR.exports=TZ();var OZ=iR.exports;const et=tt(OZ),{getOwnPropertyNames:PZ,getOwnPropertySymbols:RZ}=Object,{hasOwnProperty:MZ}=Object.prototype;function Ag(e,t){return function(r,a,s){return e(r,a,s)&&t(r,a,s)}}function Zd(e){return function(n,r,a){if(!n||!r||typeof n!="object"||typeof r!="object")return e(n,r,a);const{cache:s}=a,o=s.get(n),l=s.get(r);if(o&&l)return o===r&&l===n;s.set(n,r),s.set(r,n);const c=e(n,r,a);return s.delete(n),s.delete(r),c}}function IZ(e){return e!=null?e[Symbol.toStringTag]:void 0}function z1(e){return PZ(e).concat(RZ(e))}const $Z=Object.hasOwn||((e,t)=>MZ.call(e,t));function Gs(e,t){return e===t||!e&&!t&&e!==e&&t!==t}const LZ="__v",DZ="__o",BZ="_owner",{getOwnPropertyDescriptor:F1,keys:U1}=Object;function zZ(e,t){return e.byteLength===t.byteLength&&Lh(new Uint8Array(e),new Uint8Array(t))}function FZ(e,t,n){let r=e.length;if(t.length!==r)return!1;for(;r-- >0;)if(!n.equals(e[r],t[r],r,r,e,t,n))return!1;return!0}function UZ(e,t){return e.byteLength===t.byteLength&&Lh(new Uint8Array(e.buffer,e.byteOffset,e.byteLength),new Uint8Array(t.buffer,t.byteOffset,t.byteLength))}function WZ(e,t){return Gs(e.getTime(),t.getTime())}function HZ(e,t){return e.name===t.name&&e.message===t.message&&e.cause===t.cause&&e.stack===t.stack}function GZ(e,t){return e===t}function W1(e,t,n){const r=e.size;if(r!==t.size)return!1;if(!r)return!0;const a=new Array(r),s=e.entries();let o,l,c=0;for(;(o=s.next())&&!o.done;){const u=t.entries();let d=!1,f=0;for(;(l=u.next())&&!l.done;){if(a[f]){f++;continue}const h=o.value,p=l.value;if(n.equals(h[0],p[0],c,f,e,t,n)&&n.equals(h[1],p[1],h[0],p[0],e,t,n)){d=a[f]=!0;break}f++}if(!d)return!1;c++}return!0}const qZ=Gs;function KZ(e,t,n){const r=U1(e);let a=r.length;if(U1(t).length!==a)return!1;for(;a-- >0;)if(!lR(e,t,n,r[a]))return!1;return!0}function cc(e,t,n){const r=z1(e);let a=r.length;if(z1(t).length!==a)return!1;let s,o,l;for(;a-- >0;)if(s=r[a],!lR(e,t,n,s)||(o=F1(e,s),l=F1(t,s),(o||l)&&(!o||!l||o.configurable!==l.configurable||o.enumerable!==l.enumerable||o.writable!==l.writable)))return!1;return!0}function VZ(e,t){return Gs(e.valueOf(),t.valueOf())}function YZ(e,t){return e.source===t.source&&e.flags===t.flags}function H1(e,t,n){const r=e.size;if(r!==t.size)return!1;if(!r)return!0;const a=new Array(r),s=e.values();let o,l;for(;(o=s.next())&&!o.done;){const c=t.values();let u=!1,d=0;for(;(l=c.next())&&!l.done;){if(!a[d]&&n.equals(o.value,l.value,o.value,l.value,e,t,n)){u=a[d]=!0;break}d++}if(!u)return!1}return!0}function Lh(e,t){let n=e.byteLength;if(t.byteLength!==n||e.byteOffset!==t.byteOffset)return!1;for(;n-- >0;)if(e[n]!==t[n])return!1;return!0}function XZ(e,t){return e.hostname===t.hostname&&e.pathname===t.pathname&&e.protocol===t.protocol&&e.port===t.port&&e.hash===t.hash&&e.username===t.username&&e.password===t.password}function lR(e,t,n,r){return(r===BZ||r===DZ||r===LZ)&&(e.$$typeof||t.$$typeof)?!0:$Z(t,r)&&n.equals(e[r],t[r],r,r,e,t,n)}const QZ="[object ArrayBuffer]",ZZ="[object Arguments]",JZ="[object Boolean]",eJ="[object DataView]",tJ="[object Date]",nJ="[object Error]",rJ="[object Map]",aJ="[object Number]",iJ="[object Object]",sJ="[object RegExp]",oJ="[object Set]",lJ="[object String]",cJ={"[object Int8Array]":!0,"[object Uint8Array]":!0,"[object Uint8ClampedArray]":!0,"[object Int16Array]":!0,"[object Uint16Array]":!0,"[object Int32Array]":!0,"[object Uint32Array]":!0,"[object Float16Array]":!0,"[object Float32Array]":!0,"[object Float64Array]":!0,"[object BigInt64Array]":!0,"[object BigUint64Array]":!0},uJ="[object URL]",dJ=Object.prototype.toString;function fJ({areArrayBuffersEqual:e,areArraysEqual:t,areDataViewsEqual:n,areDatesEqual:r,areErrorsEqual:a,areFunctionsEqual:s,areMapsEqual:o,areNumbersEqual:l,areObjectsEqual:c,arePrimitiveWrappersEqual:u,areRegExpsEqual:d,areSetsEqual:f,areTypedArraysEqual:h,areUrlsEqual:p,unknownTagComparators:g}){return function(y,v,S){if(y===v)return!0;if(y==null||v==null)return!1;const w=typeof y;if(w!==typeof v)return!1;if(w!=="object")return w==="number"?l(y,v,S):w==="function"?s(y,v,S):!1;const j=y.constructor;if(j!==v.constructor)return!1;if(j===Object)return c(y,v,S);if(Array.isArray(y))return t(y,v,S);if(j===Date)return r(y,v,S);if(j===RegExp)return d(y,v,S);if(j===Map)return o(y,v,S);if(j===Set)return f(y,v,S);const k=dJ.call(y);if(k===tJ)return r(y,v,S);if(k===sJ)return d(y,v,S);if(k===rJ)return o(y,v,S);if(k===oJ)return f(y,v,S);if(k===iJ)return typeof y.then!="function"&&typeof v.then!="function"&&c(y,v,S);if(k===uJ)return p(y,v,S);if(k===nJ)return a(y,v,S);if(k===ZZ)return c(y,v,S);if(cJ[k])return h(y,v,S);if(k===QZ)return e(y,v,S);if(k===eJ)return n(y,v,S);if(k===JZ||k===aJ||k===lJ)return u(y,v,S);if(g){let b=g[k];if(!b){const N=IZ(y);N&&(b=g[N])}if(b)return b(y,v,S)}return!1}}function hJ({circular:e,createCustomConfig:t,strict:n}){let r={areArrayBuffersEqual:zZ,areArraysEqual:n?cc:FZ,areDataViewsEqual:UZ,areDatesEqual:WZ,areErrorsEqual:HZ,areFunctionsEqual:GZ,areMapsEqual:n?Ag(W1,cc):W1,areNumbersEqual:qZ,areObjectsEqual:n?cc:KZ,arePrimitiveWrappersEqual:VZ,areRegExpsEqual:YZ,areSetsEqual:n?Ag(H1,cc):H1,areTypedArraysEqual:n?Ag(Lh,cc):Lh,areUrlsEqual:XZ,unknownTagComparators:void 0};if(t&&(r=Object.assign({},r,t(r))),e){const a=Zd(r.areArraysEqual),s=Zd(r.areMapsEqual),o=Zd(r.areObjectsEqual),l=Zd(r.areSetsEqual);r=Object.assign({},r,{areArraysEqual:a,areMapsEqual:s,areObjectsEqual:o,areSetsEqual:l})}return r}function pJ(e){return function(t,n,r,a,s,o,l){return e(t,n,l)}}function mJ({circular:e,comparator:t,createState:n,equals:r,strict:a}){if(n)return function(l,c){const{cache:u=e?new WeakMap:void 0,meta:d}=n();return t(l,c,{cache:u,equals:r,meta:d,strict:a})};if(e)return function(l,c){return t(l,c,{cache:new WeakMap,equals:r,meta:void 0,strict:a})};const s={cache:void 0,equals:r,meta:void 0,strict:a};return function(l,c){return t(l,c,s)}}const gJ=Di();Di({strict:!0});Di({circular:!0});Di({circular:!0,strict:!0});Di({createInternalComparator:()=>Gs});Di({strict:!0,createInternalComparator:()=>Gs});Di({circular:!0,createInternalComparator:()=>Gs});Di({circular:!0,createInternalComparator:()=>Gs,strict:!0});function Di(e={}){const{circular:t=!1,createInternalComparator:n,createState:r,strict:a=!1}=e,s=hJ(e),o=fJ(s),l=n?n(o):pJ(o);return mJ({circular:t,comparator:o,createState:r,equals:l,strict:a})}function vJ(e){typeof requestAnimationFrame<"u"&&requestAnimationFrame(e)}function G1(e){var t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n=-1,r=function a(s){n<0&&(n=s),s-n>t?(e(s),n=-1):vJ(a)};requestAnimationFrame(r)}function cb(e){"@babel/helpers - typeof";return cb=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},cb(e)}function yJ(e){return kJ(e)||wJ(e)||xJ(e)||bJ()}function bJ(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
113
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function xJ(e,t){if(e){if(typeof e=="string")return q1(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return q1(e,t)}}function q1(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function wJ(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function kJ(e){if(Array.isArray(e))return e}function SJ(){var e={},t=function(){return null},n=!1,r=function a(s){if(!n){if(Array.isArray(s)){if(!s.length)return;var o=s,l=yJ(o),c=l[0],u=l.slice(1);if(typeof c=="number"){G1(a.bind(null,u),c);return}a(c),G1(a.bind(null,u));return}cb(s)==="object"&&(e=s,t(e)),typeof s=="function"&&s()}};return{stop:function(){n=!0},start:function(s){n=!1,r(s)},subscribe:function(s){return t=s,function(){t=function(){return null}}}}}function Au(e){"@babel/helpers - typeof";return Au=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Au(e)}function K1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function V1(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?K1(Object(n),!0).forEach(function(r){cR(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):K1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function cR(e,t,n){return t=jJ(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function jJ(e){var t=NJ(e,"string");return Au(t)==="symbol"?t:String(t)}function NJ(e,t){if(Au(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Au(r)!=="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var EJ=function(t,n){return[Object.keys(t),Object.keys(n)].reduce(function(r,a){return r.filter(function(s){return a.includes(s)})})},_J=function(t){return t},AJ=function(t){return t.replace(/([A-Z])/g,function(n){return"-".concat(n.toLowerCase())})},Mc=function(t,n){return Object.keys(n).reduce(function(r,a){return V1(V1({},r),{},cR({},a,t(a,n[a])))},{})},Y1=function(t,n,r){return t.map(function(a){return"".concat(AJ(a)," ").concat(n,"ms ").concat(r)}).join(",")};function CJ(e,t){return PJ(e)||OJ(e,t)||uR(e,t)||TJ()}function TJ(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
114
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function OJ(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function PJ(e){if(Array.isArray(e))return e}function RJ(e){return $J(e)||IJ(e)||uR(e)||MJ()}function MJ(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
115
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function uR(e,t){if(e){if(typeof e=="string")return ub(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ub(e,t)}}function IJ(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function $J(e){if(Array.isArray(e))return ub(e)}function ub(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Dh=1e-4,dR=function(t,n){return[0,3*t,3*n-6*t,3*t-3*n+1]},fR=function(t,n){return t.map(function(r,a){return r*Math.pow(n,a)}).reduce(function(r,a){return r+a})},X1=function(t,n){return function(r){var a=dR(t,n);return fR(a,r)}},LJ=function(t,n){return function(r){var a=dR(t,n),s=[].concat(RJ(a.map(function(o,l){return o*l}).slice(1)),[0]);return fR(s,r)}},Q1=function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];var a=n[0],s=n[1],o=n[2],l=n[3];if(n.length===1)switch(n[0]){case"linear":a=0,s=0,o=1,l=1;break;case"ease":a=.25,s=.1,o=.25,l=1;break;case"ease-in":a=.42,s=0,o=1,l=1;break;case"ease-out":a=.42,s=0,o=.58,l=1;break;case"ease-in-out":a=0,s=0,o=.58,l=1;break;default:{var c=n[0].split("(");if(c[0]==="cubic-bezier"&&c[1].split(")")[0].split(",").length===4){var u=c[1].split(")")[0].split(",").map(function(y){return parseFloat(y)}),d=CJ(u,4);a=d[0],s=d[1],o=d[2],l=d[3]}}}var f=X1(a,o),h=X1(s,l),p=LJ(a,o),g=function(v){return v>1?1:v<0?0:v},m=function(v){for(var S=v>1?1:v,w=S,j=0;j<8;++j){var k=f(w)-S,b=p(w);if(Math.abs(k-S)<Dh||b<Dh)return h(w);w=g(w-k/b)}return h(w)};return m.isStepper=!1,m},DJ=function(){var t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},n=t.stiff,r=n===void 0?100:n,a=t.damping,s=a===void 0?8:a,o=t.dt,l=o===void 0?17:o,c=function(d,f,h){var p=-(d-f)*r,g=h*s,m=h+(p-g)*l/1e3,y=h*l/1e3+d;return Math.abs(y-f)<Dh&&Math.abs(m)<Dh?[f,0]:[y,m]};return c.isStepper=!0,c.dt=l,c},BJ=function(){for(var t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];var a=n[0];if(typeof a=="string")switch(a){case"ease":case"ease-in-out":case"ease-out":case"ease-in":case"linear":return Q1(a);case"spring":return DJ();default:if(a.split("(")[0]==="cubic-bezier")return Q1(a)}return typeof a=="function"?a:null};function Cu(e){"@babel/helpers - typeof";return Cu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Cu(e)}function Z1(e){return UJ(e)||FJ(e)||hR(e)||zJ()}function zJ(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
116
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function FJ(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function UJ(e){if(Array.isArray(e))return fb(e)}function J1(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function ln(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?J1(Object(n),!0).forEach(function(r){db(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):J1(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function db(e,t,n){return t=WJ(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function WJ(e){var t=HJ(e,"string");return Cu(t)==="symbol"?t:String(t)}function HJ(e,t){if(Cu(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Cu(r)!=="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function GJ(e,t){return VJ(e)||KJ(e,t)||hR(e,t)||qJ()}function qJ(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
117
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function hR(e,t){if(e){if(typeof e=="string")return fb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return fb(e,t)}}function fb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function KJ(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function VJ(e){if(Array.isArray(e))return e}var Bh=function(t,n,r){return t+(n-t)*r},hb=function(t){var n=t.from,r=t.to;return n!==r},YJ=function e(t,n,r){var a=Mc(function(s,o){if(hb(o)){var l=t(o.from,o.to,o.velocity),c=GJ(l,2),u=c[0],d=c[1];return ln(ln({},o),{},{from:u,velocity:d})}return o},n);return r<1?Mc(function(s,o){return hb(o)?ln(ln({},o),{},{velocity:Bh(o.velocity,a[s].velocity,r),from:Bh(o.from,a[s].from,r)}):o},n):e(t,a,r-1)};const XJ=function(e,t,n,r,a){var s=EJ(e,t),o=s.reduce(function(y,v){return ln(ln({},y),{},db({},v,[e[v],t[v]]))},{}),l=s.reduce(function(y,v){return ln(ln({},y),{},db({},v,{from:e[v],velocity:0,to:t[v]}))},{}),c=-1,u,d,f=function(){return null},h=function(){return Mc(function(v,S){return S.from},l)},p=function(){return!Object.values(l).filter(hb).length},g=function(v){u||(u=v);var S=v-u,w=S/n.dt;l=YJ(n,l,w),a(ln(ln(ln({},e),t),h())),u=v,p()||(c=requestAnimationFrame(f))},m=function(v){d||(d=v);var S=(v-d)/r,w=Mc(function(k,b){return Bh.apply(void 0,Z1(b).concat([n(S)]))},o);if(a(ln(ln(ln({},e),t),w)),S<1)c=requestAnimationFrame(f);else{var j=Mc(function(k,b){return Bh.apply(void 0,Z1(b).concat([n(1)]))},o);a(ln(ln(ln({},e),t),j))}};return f=n.isStepper?g:m,function(){return requestAnimationFrame(f),function(){cancelAnimationFrame(c)}}};function rl(e){"@babel/helpers - typeof";return rl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},rl(e)}var QJ=["children","begin","duration","attributeName","easing","isActive","steps","from","to","canBegin","onAnimationEnd","shouldReAnimate","onAnimationReStart"];function ZJ(e,t){if(e==null)return{};var n=JJ(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function JJ(e,t){if(e==null)return{};var n={},r=Object.keys(e),a,s;for(s=0;s<r.length;s++)a=r[s],!(t.indexOf(a)>=0)&&(n[a]=e[a]);return n}function Cg(e){return ree(e)||nee(e)||tee(e)||eee()}function eee(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
118
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function tee(e,t){if(e){if(typeof e=="string")return pb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return pb(e,t)}}function nee(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function ree(e){if(Array.isArray(e))return pb(e)}function pb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function eN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Mr(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?eN(Object(n),!0).forEach(function(r){bc(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):eN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function bc(e,t,n){return t=pR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function aee(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function iee(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,pR(r.key),r)}}function see(e,t,n){return t&&iee(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function pR(e){var t=oee(e,"string");return rl(t)==="symbol"?t:String(t)}function oee(e,t){if(rl(e)!=="object"||e===null)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(rl(r)!=="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function lee(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&mb(e,t)}function mb(e,t){return mb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},mb(e,t)}function cee(e){var t=uee();return function(){var r=zh(e),a;if(t){var s=zh(this).constructor;a=Reflect.construct(r,arguments,s)}else a=r.apply(this,arguments);return gb(this,a)}}function gb(e,t){if(t&&(rl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return vb(e)}function vb(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function uee(){if(typeof Reflect>"u"||!Reflect.construct||Reflect.construct.sham)return!1;if(typeof Proxy=="function")return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){})),!0}catch{return!1}}function zh(e){return zh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},zh(e)}var Ai=function(e){lee(n,e);var t=cee(n);function n(r,a){var s;aee(this,n),s=t.call(this,r,a);var o=s.props,l=o.isActive,c=o.attributeName,u=o.from,d=o.to,f=o.steps,h=o.children,p=o.duration;if(s.handleStyleChange=s.handleStyleChange.bind(vb(s)),s.changeStyle=s.changeStyle.bind(vb(s)),!l||p<=0)return s.state={style:{}},typeof h=="function"&&(s.state={style:d}),gb(s);if(f&&f.length)s.state={style:f[0].style};else if(u){if(typeof h=="function")return s.state={style:u},gb(s);s.state={style:c?bc({},c,u):u}}else s.state={style:{}};return s}return see(n,[{key:"componentDidMount",value:function(){var a=this.props,s=a.isActive,o=a.canBegin;this.mounted=!0,!(!s||!o)&&this.runAnimation(this.props)}},{key:"componentDidUpdate",value:function(a){var s=this.props,o=s.isActive,l=s.canBegin,c=s.attributeName,u=s.shouldReAnimate,d=s.to,f=s.from,h=this.state.style;if(l){if(!o){var p={style:c?bc({},c,d):d};this.state&&h&&(c&&h[c]!==d||!c&&h!==d)&&this.setState(p);return}if(!(gJ(a.to,d)&&a.canBegin&&a.isActive)){var g=!a.canBegin||!a.isActive;this.manager&&this.manager.stop(),this.stopJSAnimation&&this.stopJSAnimation();var m=g||u?f:a.to;if(this.state&&h){var y={style:c?bc({},c,m):m};(c&&h[c]!==m||!c&&h!==m)&&this.setState(y)}this.runAnimation(Mr(Mr({},this.props),{},{from:m,begin:0}))}}}},{key:"componentWillUnmount",value:function(){this.mounted=!1;var a=this.props.onAnimationEnd;this.unSubscribe&&this.unSubscribe(),this.manager&&(this.manager.stop(),this.manager=null),this.stopJSAnimation&&this.stopJSAnimation(),a&&a()}},{key:"handleStyleChange",value:function(a){this.changeStyle(a)}},{key:"changeStyle",value:function(a){this.mounted&&this.setState({style:a})}},{key:"runJSAnimation",value:function(a){var s=this,o=a.from,l=a.to,c=a.duration,u=a.easing,d=a.begin,f=a.onAnimationEnd,h=a.onAnimationStart,p=XJ(o,l,BJ(u),c,this.changeStyle),g=function(){s.stopJSAnimation=p()};this.manager.start([h,d,g,c,f])}},{key:"runStepAnimation",value:function(a){var s=this,o=a.steps,l=a.begin,c=a.onAnimationStart,u=o[0],d=u.style,f=u.duration,h=f===void 0?0:f,p=function(m,y,v){if(v===0)return m;var S=y.duration,w=y.easing,j=w===void 0?"ease":w,k=y.style,b=y.properties,N=y.onAnimationEnd,_=v>0?o[v-1]:y,T=b||Object.keys(k);if(typeof j=="function"||j==="spring")return[].concat(Cg(m),[s.runJSAnimation.bind(s,{from:_.style,to:k,duration:S,easing:j}),S]);var C=Y1(T,S,j),O=Mr(Mr(Mr({},_.style),k),{},{transition:C});return[].concat(Cg(m),[O,S,N]).filter(_J)};return this.manager.start([c].concat(Cg(o.reduce(p,[d,Math.max(h,l)])),[a.onAnimationEnd]))}},{key:"runAnimation",value:function(a){this.manager||(this.manager=SJ());var s=a.begin,o=a.duration,l=a.attributeName,c=a.to,u=a.easing,d=a.onAnimationStart,f=a.onAnimationEnd,h=a.steps,p=a.children,g=this.manager;if(this.unSubscribe=g.subscribe(this.handleStyleChange),typeof u=="function"||typeof p=="function"||u==="spring"){this.runJSAnimation(a);return}if(h.length>1){this.runStepAnimation(a);return}var m=l?bc({},l,c):c,y=Y1(Object.keys(m),o,u);g.start([d,s,Mr(Mr({},m),{},{transition:y}),o,f])}},{key:"render",value:function(){var a=this.props,s=a.children;a.begin;var o=a.duration;a.attributeName,a.easing;var l=a.isActive;a.steps,a.from,a.to,a.canBegin,a.onAnimationEnd,a.shouldReAnimate,a.onAnimationReStart;var c=ZJ(a,QJ),u=x.Children.count(s),d=this.state.style;if(typeof s=="function")return s(d);if(!l||u===0||o<=0)return s;var f=function(p){var g=p.props,m=g.style,y=m===void 0?{}:m,v=g.className,S=x.cloneElement(p,Mr(Mr({},c),{},{style:Mr(Mr({},y),d),className:v}));return S};return u===1?f(x.Children.only(s)):V.createElement("div",null,x.Children.map(s,function(h){return f(h)}))}}]),n}(x.PureComponent);Ai.displayName="Animate";Ai.defaultProps={begin:0,duration:1e3,from:"",to:"",attributeName:"",easing:"ease",isActive:!0,canBegin:!0,steps:[],onAnimationEnd:function(){},onAnimationStart:function(){}};Ai.propTypes={from:et.oneOfType([et.object,et.string]),to:et.oneOfType([et.object,et.string]),attributeName:et.string,duration:et.number,begin:et.number,easing:et.oneOfType([et.string,et.func]),steps:et.arrayOf(et.shape({duration:et.number.isRequired,style:et.object.isRequired,easing:et.oneOfType([et.oneOf(["ease","ease-in","ease-out","ease-in-out","linear"]),et.func]),properties:et.arrayOf("string"),onAnimationEnd:et.func})),children:et.oneOfType([et.node,et.func]),isActive:et.bool,canBegin:et.bool,onAnimationEnd:et.func,shouldReAnimate:et.bool,onAnimationStart:et.func,onAnimationReStart:et.func};function Tu(e){"@babel/helpers - typeof";return Tu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Tu(e)}function Fh(){return Fh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Fh.apply(this,arguments)}function dee(e,t){return mee(e)||pee(e,t)||hee(e,t)||fee()}function fee(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
119
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function hee(e,t){if(e){if(typeof e=="string")return tN(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return tN(e,t)}}function tN(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function pee(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function mee(e){if(Array.isArray(e))return e}function nN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function rN(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?nN(Object(n),!0).forEach(function(r){gee(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):nN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function gee(e,t,n){return t=vee(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function vee(e){var t=yee(e,"string");return Tu(t)=="symbol"?t:t+""}function yee(e,t){if(Tu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Tu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var aN=function(t,n,r,a,s){var o=Math.min(Math.abs(r)/2,Math.abs(a)/2),l=a>=0?1:-1,c=r>=0?1:-1,u=a>=0&&r>=0||a<0&&r<0?1:0,d;if(o>0&&s instanceof Array){for(var f=[0,0,0,0],h=0,p=4;h<p;h++)f[h]=s[h]>o?o:s[h];d="M".concat(t,",").concat(n+l*f[0]),f[0]>0&&(d+="A ".concat(f[0],",").concat(f[0],",0,0,").concat(u,",").concat(t+c*f[0],",").concat(n)),d+="L ".concat(t+r-c*f[1],",").concat(n),f[1]>0&&(d+="A ".concat(f[1],",").concat(f[1],",0,0,").concat(u,`,
|
|
120
|
+
`).concat(t+r,",").concat(n+l*f[1])),d+="L ".concat(t+r,",").concat(n+a-l*f[2]),f[2]>0&&(d+="A ".concat(f[2],",").concat(f[2],",0,0,").concat(u,`,
|
|
121
|
+
`).concat(t+r-c*f[2],",").concat(n+a)),d+="L ".concat(t+c*f[3],",").concat(n+a),f[3]>0&&(d+="A ".concat(f[3],",").concat(f[3],",0,0,").concat(u,`,
|
|
122
|
+
`).concat(t,",").concat(n+a-l*f[3])),d+="Z"}else if(o>0&&s===+s&&s>0){var g=Math.min(o,s);d="M ".concat(t,",").concat(n+l*g,`
|
|
123
|
+
A `).concat(g,",").concat(g,",0,0,").concat(u,",").concat(t+c*g,",").concat(n,`
|
|
124
|
+
L `).concat(t+r-c*g,",").concat(n,`
|
|
125
|
+
A `).concat(g,",").concat(g,",0,0,").concat(u,",").concat(t+r,",").concat(n+l*g,`
|
|
126
|
+
L `).concat(t+r,",").concat(n+a-l*g,`
|
|
127
|
+
A `).concat(g,",").concat(g,",0,0,").concat(u,",").concat(t+r-c*g,",").concat(n+a,`
|
|
128
|
+
L `).concat(t+c*g,",").concat(n+a,`
|
|
129
|
+
A `).concat(g,",").concat(g,",0,0,").concat(u,",").concat(t,",").concat(n+a-l*g," Z")}else d="M ".concat(t,",").concat(n," h ").concat(r," v ").concat(a," h ").concat(-r," Z");return d},bee=function(t,n){if(!t||!n)return!1;var r=t.x,a=t.y,s=n.x,o=n.y,l=n.width,c=n.height;if(Math.abs(l)>0&&Math.abs(c)>0){var u=Math.min(s,s+l),d=Math.max(s,s+l),f=Math.min(o,o+c),h=Math.max(o,o+c);return r>=u&&r<=d&&a>=f&&a<=h}return!1},xee={x:0,y:0,width:0,height:0,radius:0,isAnimationActive:!1,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},Qw=function(t){var n=rN(rN({},xee),t),r=x.useRef(),a=x.useState(-1),s=dee(a,2),o=s[0],l=s[1];x.useEffect(function(){if(r.current&&r.current.getTotalLength)try{var j=r.current.getTotalLength();j&&l(j)}catch{}},[]);var c=n.x,u=n.y,d=n.width,f=n.height,h=n.radius,p=n.className,g=n.animationEasing,m=n.animationDuration,y=n.animationBegin,v=n.isAnimationActive,S=n.isUpdateAnimationActive;if(c!==+c||u!==+u||d!==+d||f!==+f||d===0||f===0)return null;var w=Qe("recharts-rectangle",p);return S?V.createElement(Ai,{canBegin:o>0,from:{width:d,height:f,x:c,y:u},to:{width:d,height:f,x:c,y:u},duration:m,animationEasing:g,isActive:S},function(j){var k=j.width,b=j.height,N=j.x,_=j.y;return V.createElement(Ai,{canBegin:o>0,from:"0px ".concat(o===-1?1:o,"px"),to:"".concat(o,"px 0px"),attributeName:"strokeDasharray",begin:y,duration:m,isActive:v,easing:g},V.createElement("path",Fh({},Xe(n,!0),{className:w,d:aN(N,_,k,b,h),ref:r})))}):V.createElement("path",Fh({},Xe(n,!0),{className:w,d:aN(c,u,d,f,h)}))};function yb(){return yb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},yb.apply(this,arguments)}var mR=function(t){var n=t.cx,r=t.cy,a=t.r,s=t.className,o=Qe("recharts-dot",s);return n===+n&&r===+r&&a===+a?x.createElement("circle",yb({},Xe(t,!1),ah(t),{className:o,cx:n,cy:r,r:a})):null};function Ou(e){"@babel/helpers - typeof";return Ou=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ou(e)}var wee=["x","y","top","left","width","height","className"];function bb(){return bb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},bb.apply(this,arguments)}function iN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function kee(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?iN(Object(n),!0).forEach(function(r){See(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):iN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function See(e,t,n){return t=jee(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function jee(e){var t=Nee(e,"string");return Ou(t)=="symbol"?t:t+""}function Nee(e,t){if(Ou(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Ou(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Eee(e,t){if(e==null)return{};var n=_ee(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function _ee(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}var Aee=function(t,n,r,a,s,o){return"M".concat(t,",").concat(s,"v").concat(a,"M").concat(o,",").concat(n,"h").concat(r)},Cee=function(t){var n=t.x,r=n===void 0?0:n,a=t.y,s=a===void 0?0:a,o=t.top,l=o===void 0?0:o,c=t.left,u=c===void 0?0:c,d=t.width,f=d===void 0?0:d,h=t.height,p=h===void 0?0:h,g=t.className,m=Eee(t,wee),y=kee({x:r,y:s,top:l,left:u,width:f,height:p},m);return!ue(r)||!ue(s)||!ue(f)||!ue(p)||!ue(l)||!ue(u)?null:V.createElement("path",bb({},Xe(y,!0),{className:Qe("recharts-cross",g),d:Aee(r,s,f,p,l,u)}))},Tee=TO,Oee=Tee(Object.getPrototypeOf,Object),Pee=Oee,Ree=Ba,Mee=Pee,Iee=za,$ee="[object Object]",Lee=Function.prototype,Dee=Object.prototype,gR=Lee.toString,Bee=Dee.hasOwnProperty,zee=gR.call(Object);function Fee(e){if(!Iee(e)||Ree(e)!=$ee)return!1;var t=Mee(e);if(t===null)return!0;var n=Bee.call(t,"constructor")&&t.constructor;return typeof n=="function"&&n instanceof n&&gR.call(n)==zee}var Uee=Fee;const Wee=tt(Uee);var Hee=Ba,Gee=za,qee="[object Boolean]";function Kee(e){return e===!0||e===!1||Gee(e)&&Hee(e)==qee}var Vee=Kee;const Yee=tt(Vee);function Pu(e){"@babel/helpers - typeof";return Pu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Pu(e)}function Uh(){return Uh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Uh.apply(this,arguments)}function Xee(e,t){return ete(e)||Jee(e,t)||Zee(e,t)||Qee()}function Qee(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
130
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Zee(e,t){if(e){if(typeof e=="string")return sN(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return sN(e,t)}}function sN(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Jee(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function ete(e){if(Array.isArray(e))return e}function oN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function lN(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?oN(Object(n),!0).forEach(function(r){tte(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):oN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function tte(e,t,n){return t=nte(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function nte(e){var t=rte(e,"string");return Pu(t)=="symbol"?t:t+""}function rte(e,t){if(Pu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Pu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var cN=function(t,n,r,a,s){var o=r-a,l;return l="M ".concat(t,",").concat(n),l+="L ".concat(t+r,",").concat(n),l+="L ".concat(t+r-o/2,",").concat(n+s),l+="L ".concat(t+r-o/2-a,",").concat(n+s),l+="L ".concat(t,",").concat(n," Z"),l},ate={x:0,y:0,upperWidth:0,lowerWidth:0,height:0,isUpdateAnimationActive:!1,animationBegin:0,animationDuration:1500,animationEasing:"ease"},ite=function(t){var n=lN(lN({},ate),t),r=x.useRef(),a=x.useState(-1),s=Xee(a,2),o=s[0],l=s[1];x.useEffect(function(){if(r.current&&r.current.getTotalLength)try{var w=r.current.getTotalLength();w&&l(w)}catch{}},[]);var c=n.x,u=n.y,d=n.upperWidth,f=n.lowerWidth,h=n.height,p=n.className,g=n.animationEasing,m=n.animationDuration,y=n.animationBegin,v=n.isUpdateAnimationActive;if(c!==+c||u!==+u||d!==+d||f!==+f||h!==+h||d===0&&f===0||h===0)return null;var S=Qe("recharts-trapezoid",p);return v?V.createElement(Ai,{canBegin:o>0,from:{upperWidth:0,lowerWidth:0,height:h,x:c,y:u},to:{upperWidth:d,lowerWidth:f,height:h,x:c,y:u},duration:m,animationEasing:g,isActive:v},function(w){var j=w.upperWidth,k=w.lowerWidth,b=w.height,N=w.x,_=w.y;return V.createElement(Ai,{canBegin:o>0,from:"0px ".concat(o===-1?1:o,"px"),to:"".concat(o,"px 0px"),attributeName:"strokeDasharray",begin:y,duration:m,easing:g},V.createElement("path",Uh({},Xe(n,!0),{className:S,d:cN(N,_,j,k,b),ref:r})))}):V.createElement("g",null,V.createElement("path",Uh({},Xe(n,!0),{className:S,d:cN(c,u,d,f,h)})))},ste=["option","shapeType","propTransformer","activeClassName","isActive"];function Ru(e){"@babel/helpers - typeof";return Ru=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ru(e)}function ote(e,t){if(e==null)return{};var n=lte(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function lte(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function uN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Wh(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?uN(Object(n),!0).forEach(function(r){cte(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):uN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function cte(e,t,n){return t=ute(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ute(e){var t=dte(e,"string");return Ru(t)=="symbol"?t:t+""}function dte(e,t){if(Ru(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Ru(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function fte(e,t){return Wh(Wh({},t),e)}function hte(e,t){return e==="symbols"}function dN(e){var t=e.shapeType,n=e.elementProps;switch(t){case"rectangle":return V.createElement(Qw,n);case"trapezoid":return V.createElement(ite,n);case"sector":return V.createElement(aR,n);case"symbols":if(hte(t))return V.createElement(mw,n);break;default:return null}}function pte(e){return x.isValidElement(e)?e.props:e}function mte(e){var t=e.option,n=e.shapeType,r=e.propTransformer,a=r===void 0?fte:r,s=e.activeClassName,o=s===void 0?"recharts-active-shape":s,l=e.isActive,c=ote(e,ste),u;if(x.isValidElement(t))u=x.cloneElement(t,Wh(Wh({},c),pte(t)));else if(De(t))u=t(c);else if(Wee(t)&&!Yee(t)){var d=a(t,c);u=V.createElement(dN,{shapeType:n,elementProps:d})}else{var f=c;u=V.createElement(dN,{shapeType:n,elementProps:f})}return l?V.createElement(an,{className:o},u):u}function pm(e,t){return t!=null&&"trapezoids"in e.props}function mm(e,t){return t!=null&&"sectors"in e.props}function Mu(e,t){return t!=null&&"points"in e.props}function gte(e,t){var n,r,a=e.x===(t==null||(n=t.labelViewBox)===null||n===void 0?void 0:n.x)||e.x===t.x,s=e.y===(t==null||(r=t.labelViewBox)===null||r===void 0?void 0:r.y)||e.y===t.y;return a&&s}function vte(e,t){var n=e.endAngle===t.endAngle,r=e.startAngle===t.startAngle;return n&&r}function yte(e,t){var n=e.x===t.x,r=e.y===t.y,a=e.z===t.z;return n&&r&&a}function bte(e,t){var n;return pm(e,t)?n=gte:mm(e,t)?n=vte:Mu(e,t)&&(n=yte),n}function xte(e,t){var n;return pm(e,t)?n="trapezoids":mm(e,t)?n="sectors":Mu(e,t)&&(n="points"),n}function wte(e,t){if(pm(e,t)){var n;return(n=t.tooltipPayload)===null||n===void 0||(n=n[0])===null||n===void 0||(n=n.payload)===null||n===void 0?void 0:n.payload}if(mm(e,t)){var r;return(r=t.tooltipPayload)===null||r===void 0||(r=r[0])===null||r===void 0||(r=r.payload)===null||r===void 0?void 0:r.payload}return Mu(e,t)?t.payload:{}}function kte(e){var t=e.activeTooltipItem,n=e.graphicalItem,r=e.itemData,a=xte(n,t),s=wte(n,t),o=r.filter(function(c,u){var d=Kw(s,c),f=n.props[a].filter(function(g){var m=bte(n,t);return m(g,t)}),h=n.props[a].indexOf(f[f.length-1]),p=u===h;return d&&p}),l=r.indexOf(o[o.length-1]);return l}var Ste=Math.ceil,jte=Math.max;function Nte(e,t,n,r){for(var a=-1,s=jte(Ste((t-e)/(n||1)),0),o=Array(s);s--;)o[r?s:++a]=e,e+=n;return o}var Ete=Nte,_te=YO,fN=1/0,Ate=17976931348623157e292;function Cte(e){if(!e)return e===0?e:0;if(e=_te(e),e===fN||e===-fN){var t=e<0?-1:1;return t*Ate}return e===e?e:0}var vR=Cte,Tte=Ete,Ote=nm,Tg=vR;function Pte(e){return function(t,n,r){return r&&typeof r!="number"&&Ote(t,n,r)&&(n=r=void 0),t=Tg(t),n===void 0?(n=t,t=0):n=Tg(n),r=r===void 0?t<n?1:-1:Tg(r),Tte(t,n,r,e)}}var Rte=Pte,Mte=Rte,Ite=Mte(),$te=Ite;const Hh=tt($te);function Iu(e){"@babel/helpers - typeof";return Iu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Iu(e)}function hN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function pN(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?hN(Object(n),!0).forEach(function(r){yR(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):hN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function yR(e,t,n){return t=Lte(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Lte(e){var t=Dte(e,"string");return Iu(t)=="symbol"?t:t+""}function Dte(e,t){if(Iu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Iu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Bte=["Webkit","Moz","O","ms"],zte=function(t,n){var r=t.replace(/(\w)/,function(s){return s.toUpperCase()}),a=Bte.reduce(function(s,o){return pN(pN({},s),{},yR({},o+r,n))},{});return a[t]=n,a};function al(e){"@babel/helpers - typeof";return al=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},al(e)}function Gh(){return Gh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Gh.apply(this,arguments)}function mN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Og(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?mN(Object(n),!0).forEach(function(r){Qn(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):mN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Fte(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function gN(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,xR(r.key),r)}}function Ute(e,t,n){return t&&gN(e.prototype,t),n&&gN(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Wte(e,t,n){return t=qh(t),Hte(e,bR()?Reflect.construct(t,n||[],qh(e).constructor):t.apply(e,n))}function Hte(e,t){if(t&&(al(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Gte(e)}function Gte(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function bR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(bR=function(){return!!e})()}function qh(e){return qh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},qh(e)}function qte(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&xb(e,t)}function xb(e,t){return xb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},xb(e,t)}function Qn(e,t,n){return t=xR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function xR(e){var t=Kte(e,"string");return al(t)=="symbol"?t:t+""}function Kte(e,t){if(al(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(al(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var Vte=function(t){var n=t.data,r=t.startIndex,a=t.endIndex,s=t.x,o=t.width,l=t.travellerWidth;if(!n||!n.length)return{};var c=n.length,u=Pc().domain(Hh(0,c)).range([s,s+o-l]),d=u.domain().map(function(f){return u(f)});return{isTextActive:!1,isSlideMoving:!1,isTravellerMoving:!1,isTravellerFocused:!1,startX:u(r),endX:u(a),scale:u,scaleValues:d}},vN=function(t){return t.changedTouches&&!!t.changedTouches.length},il=function(e){function t(n){var r;return Fte(this,t),r=Wte(this,t,[n]),Qn(r,"handleDrag",function(a){r.leaveTimer&&(clearTimeout(r.leaveTimer),r.leaveTimer=null),r.state.isTravellerMoving?r.handleTravellerMove(a):r.state.isSlideMoving&&r.handleSlideDrag(a)}),Qn(r,"handleTouchMove",function(a){a.changedTouches!=null&&a.changedTouches.length>0&&r.handleDrag(a.changedTouches[0])}),Qn(r,"handleDragEnd",function(){r.setState({isTravellerMoving:!1,isSlideMoving:!1},function(){var a=r.props,s=a.endIndex,o=a.onDragEnd,l=a.startIndex;o==null||o({endIndex:s,startIndex:l})}),r.detachDragEndListener()}),Qn(r,"handleLeaveWrapper",function(){(r.state.isTravellerMoving||r.state.isSlideMoving)&&(r.leaveTimer=window.setTimeout(r.handleDragEnd,r.props.leaveTimeOut))}),Qn(r,"handleEnterSlideOrTraveller",function(){r.setState({isTextActive:!0})}),Qn(r,"handleLeaveSlideOrTraveller",function(){r.setState({isTextActive:!1})}),Qn(r,"handleSlideDragStart",function(a){var s=vN(a)?a.changedTouches[0]:a;r.setState({isTravellerMoving:!1,isSlideMoving:!0,slideMoveStartX:s.pageX}),r.attachDragEndListener()}),r.travellerDragStartHandlers={startX:r.handleTravellerDragStart.bind(r,"startX"),endX:r.handleTravellerDragStart.bind(r,"endX")},r.state={},r}return qte(t,e),Ute(t,[{key:"componentWillUnmount",value:function(){this.leaveTimer&&(clearTimeout(this.leaveTimer),this.leaveTimer=null),this.detachDragEndListener()}},{key:"getIndex",value:function(r){var a=r.startX,s=r.endX,o=this.state.scaleValues,l=this.props,c=l.gap,u=l.data,d=u.length-1,f=Math.min(a,s),h=Math.max(a,s),p=t.getIndexInRange(o,f),g=t.getIndexInRange(o,h);return{startIndex:p-p%c,endIndex:g===d?d:g-g%c}}},{key:"getTextOfTick",value:function(r){var a=this.props,s=a.data,o=a.tickFormatter,l=a.dataKey,c=ha(s[r],l,r);return De(o)?o(c,r):c}},{key:"attachDragEndListener",value:function(){window.addEventListener("mouseup",this.handleDragEnd,!0),window.addEventListener("touchend",this.handleDragEnd,!0),window.addEventListener("mousemove",this.handleDrag,!0)}},{key:"detachDragEndListener",value:function(){window.removeEventListener("mouseup",this.handleDragEnd,!0),window.removeEventListener("touchend",this.handleDragEnd,!0),window.removeEventListener("mousemove",this.handleDrag,!0)}},{key:"handleSlideDrag",value:function(r){var a=this.state,s=a.slideMoveStartX,o=a.startX,l=a.endX,c=this.props,u=c.x,d=c.width,f=c.travellerWidth,h=c.startIndex,p=c.endIndex,g=c.onChange,m=r.pageX-s;m>0?m=Math.min(m,u+d-f-l,u+d-f-o):m<0&&(m=Math.max(m,u-o,u-l));var y=this.getIndex({startX:o+m,endX:l+m});(y.startIndex!==h||y.endIndex!==p)&&g&&g(y),this.setState({startX:o+m,endX:l+m,slideMoveStartX:r.pageX})}},{key:"handleTravellerDragStart",value:function(r,a){var s=vN(a)?a.changedTouches[0]:a;this.setState({isSlideMoving:!1,isTravellerMoving:!0,movingTravellerId:r,brushMoveStartX:s.pageX}),this.attachDragEndListener()}},{key:"handleTravellerMove",value:function(r){var a=this.state,s=a.brushMoveStartX,o=a.movingTravellerId,l=a.endX,c=a.startX,u=this.state[o],d=this.props,f=d.x,h=d.width,p=d.travellerWidth,g=d.onChange,m=d.gap,y=d.data,v={startX:this.state.startX,endX:this.state.endX},S=r.pageX-s;S>0?S=Math.min(S,f+h-p-u):S<0&&(S=Math.max(S,f-u)),v[o]=u+S;var w=this.getIndex(v),j=w.startIndex,k=w.endIndex,b=function(){var _=y.length-1;return o==="startX"&&(l>c?j%m===0:k%m===0)||l<c&&k===_||o==="endX"&&(l>c?k%m===0:j%m===0)||l>c&&k===_};this.setState(Qn(Qn({},o,u+S),"brushMoveStartX",r.pageX),function(){g&&b()&&g(w)})}},{key:"handleTravellerMoveKeyboard",value:function(r,a){var s=this,o=this.state,l=o.scaleValues,c=o.startX,u=o.endX,d=this.state[a],f=l.indexOf(d);if(f!==-1){var h=f+r;if(!(h===-1||h>=l.length)){var p=l[h];a==="startX"&&p>=u||a==="endX"&&p<=c||this.setState(Qn({},a,p),function(){s.props.onChange(s.getIndex({startX:s.state.startX,endX:s.state.endX}))})}}}},{key:"renderBackground",value:function(){var r=this.props,a=r.x,s=r.y,o=r.width,l=r.height,c=r.fill,u=r.stroke;return V.createElement("rect",{stroke:u,fill:c,x:a,y:s,width:o,height:l})}},{key:"renderPanorama",value:function(){var r=this.props,a=r.x,s=r.y,o=r.width,l=r.height,c=r.data,u=r.children,d=r.padding,f=x.Children.only(u);return f?V.cloneElement(f,{x:a,y:s,width:o,height:l,margin:d,compact:!0,data:c}):null}},{key:"renderTravellerLayer",value:function(r,a){var s,o,l=this,c=this.props,u=c.y,d=c.travellerWidth,f=c.height,h=c.traveller,p=c.ariaLabel,g=c.data,m=c.startIndex,y=c.endIndex,v=Math.max(r,this.props.x),S=Og(Og({},Xe(this.props,!1)),{},{x:v,y:u,width:d,height:f}),w=p||"Min value: ".concat((s=g[m])===null||s===void 0?void 0:s.name,", Max value: ").concat((o=g[y])===null||o===void 0?void 0:o.name);return V.createElement(an,{tabIndex:0,role:"slider","aria-label":w,"aria-valuenow":r,className:"recharts-brush-traveller",onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.travellerDragStartHandlers[a],onTouchStart:this.travellerDragStartHandlers[a],onKeyDown:function(k){["ArrowLeft","ArrowRight"].includes(k.key)&&(k.preventDefault(),k.stopPropagation(),l.handleTravellerMoveKeyboard(k.key==="ArrowRight"?1:-1,a))},onFocus:function(){l.setState({isTravellerFocused:!0})},onBlur:function(){l.setState({isTravellerFocused:!1})},style:{cursor:"col-resize"}},t.renderTraveller(h,S))}},{key:"renderSlide",value:function(r,a){var s=this.props,o=s.y,l=s.height,c=s.stroke,u=s.travellerWidth,d=Math.min(r,a)+u,f=Math.max(Math.abs(a-r)-u,0);return V.createElement("rect",{className:"recharts-brush-slide",onMouseEnter:this.handleEnterSlideOrTraveller,onMouseLeave:this.handleLeaveSlideOrTraveller,onMouseDown:this.handleSlideDragStart,onTouchStart:this.handleSlideDragStart,style:{cursor:"move"},stroke:"none",fill:c,fillOpacity:.2,x:d,y:o,width:f,height:l})}},{key:"renderText",value:function(){var r=this.props,a=r.startIndex,s=r.endIndex,o=r.y,l=r.height,c=r.travellerWidth,u=r.stroke,d=this.state,f=d.startX,h=d.endX,p=5,g={pointerEvents:"none",fill:u};return V.createElement(an,{className:"recharts-brush-texts"},V.createElement(bh,Gh({textAnchor:"end",verticalAnchor:"middle",x:Math.min(f,h)-p,y:o+l/2},g),this.getTextOfTick(a)),V.createElement(bh,Gh({textAnchor:"start",verticalAnchor:"middle",x:Math.max(f,h)+c+p,y:o+l/2},g),this.getTextOfTick(s)))}},{key:"render",value:function(){var r=this.props,a=r.data,s=r.className,o=r.children,l=r.x,c=r.y,u=r.width,d=r.height,f=r.alwaysShowText,h=this.state,p=h.startX,g=h.endX,m=h.isTextActive,y=h.isSlideMoving,v=h.isTravellerMoving,S=h.isTravellerFocused;if(!a||!a.length||!ue(l)||!ue(c)||!ue(u)||!ue(d)||u<=0||d<=0)return null;var w=Qe("recharts-brush",s),j=V.Children.count(o)===1,k=zte("userSelect","none");return V.createElement(an,{className:w,onMouseLeave:this.handleLeaveWrapper,onTouchMove:this.handleTouchMove,style:k},this.renderBackground(),j&&this.renderPanorama(),this.renderSlide(p,g),this.renderTravellerLayer(p,"startX"),this.renderTravellerLayer(g,"endX"),(m||y||v||S||f)&&this.renderText())}}],[{key:"renderDefaultTraveller",value:function(r){var a=r.x,s=r.y,o=r.width,l=r.height,c=r.stroke,u=Math.floor(s+l/2)-1;return V.createElement(V.Fragment,null,V.createElement("rect",{x:a,y:s,width:o,height:l,fill:c,stroke:"none"}),V.createElement("line",{x1:a+1,y1:u,x2:a+o-1,y2:u,fill:"none",stroke:"#fff"}),V.createElement("line",{x1:a+1,y1:u+2,x2:a+o-1,y2:u+2,fill:"none",stroke:"#fff"}))}},{key:"renderTraveller",value:function(r,a){var s;return V.isValidElement(r)?s=V.cloneElement(r,a):De(r)?s=r(a):s=t.renderDefaultTraveller(a),s}},{key:"getDerivedStateFromProps",value:function(r,a){var s=r.data,o=r.width,l=r.x,c=r.travellerWidth,u=r.updateId,d=r.startIndex,f=r.endIndex;if(s!==a.prevData||u!==a.prevUpdateId)return Og({prevData:s,prevTravellerWidth:c,prevUpdateId:u,prevX:l,prevWidth:o},s&&s.length?Vte({data:s,width:o,x:l,travellerWidth:c,startIndex:d,endIndex:f}):{scale:null,scaleValues:null});if(a.scale&&(o!==a.prevWidth||l!==a.prevX||c!==a.prevTravellerWidth)){a.scale.range([l,l+o-c]);var h=a.scale.domain().map(function(p){return a.scale(p)});return{prevData:s,prevTravellerWidth:c,prevUpdateId:u,prevX:l,prevWidth:o,startX:a.scale(r.startIndex),endX:a.scale(r.endIndex),scaleValues:h}}return null}},{key:"getIndexInRange",value:function(r,a){for(var s=r.length,o=0,l=s-1;l-o>1;){var c=Math.floor((o+l)/2);r[c]>a?l=c:o=c}return a>=r[l]?l:o}}])}(x.PureComponent);Qn(il,"displayName","Brush");Qn(il,"defaultProps",{height:40,travellerWidth:5,gap:1,fill:"#fff",stroke:"#666",padding:{top:1,right:1,bottom:1,left:1},leaveTimeOut:1e3,alwaysShowText:!1});var Yte=kw;function Xte(e,t){var n;return Yte(e,function(r,a,s){return n=t(r,a,s),!n}),!!n}var Qte=Xte,Zte=kO,Jte=Ii,ene=Qte,tne=Hn,nne=nm;function rne(e,t,n){var r=tne(e)?Zte:ene;return n&&nne(e,t,n)&&(t=void 0),r(e,Jte(t))}var ane=rne;const ine=tt(ane);var da=function(t,n){var r=t.alwaysShow,a=t.ifOverflow;return r&&(a="extendDomain"),a===n},yN=HO;function sne(e,t,n){t=="__proto__"&&yN?yN(e,t,{configurable:!0,enumerable:!0,value:n,writable:!0}):e[t]=n}var one=sne,lne=one,cne=UO,une=Ii;function dne(e,t){var n={};return t=une(t),cne(e,function(r,a,s){lne(n,a,t(r,a,s))}),n}var fne=dne;const hne=tt(fne);function pne(e,t){for(var n=-1,r=e==null?0:e.length;++n<r;)if(!t(e[n],n,e))return!1;return!0}var mne=pne,gne=kw;function vne(e,t){var n=!0;return gne(e,function(r,a,s){return n=!!t(r,a,s),n}),n}var yne=vne,bne=mne,xne=yne,wne=Ii,kne=Hn,Sne=nm;function jne(e,t,n){var r=kne(e)?bne:xne;return n&&Sne(e,t,n)&&(t=void 0),r(e,wne(t))}var Nne=jne;const wR=tt(Nne);var Ene=["x","y"];function $u(e){"@babel/helpers - typeof";return $u=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},$u(e)}function wb(){return wb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},wb.apply(this,arguments)}function bN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function uc(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?bN(Object(n),!0).forEach(function(r){_ne(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):bN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function _ne(e,t,n){return t=Ane(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Ane(e){var t=Cne(e,"string");return $u(t)=="symbol"?t:t+""}function Cne(e,t){if($u(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if($u(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function Tne(e,t){if(e==null)return{};var n=One(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function One(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function Pne(e,t){var n=e.x,r=e.y,a=Tne(e,Ene),s="".concat(n),o=parseInt(s,10),l="".concat(r),c=parseInt(l,10),u="".concat(t.height||a.height),d=parseInt(u,10),f="".concat(t.width||a.width),h=parseInt(f,10);return uc(uc(uc(uc(uc({},t),a),o?{x:o}:{}),c?{y:c}:{}),{},{height:d,width:h,name:t.name,radius:t.radius})}function xN(e){return V.createElement(mte,wb({shapeType:"rectangle",propTransformer:Pne,activeClassName:"recharts-active-bar"},e))}var Rne=function(t){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;return function(r,a){if(typeof t=="number")return t;var s=ue(r)||KU(r);return s?t(r,a):(s||Ls(),n)}},Mne=["value","background"],kR;function sl(e){"@babel/helpers - typeof";return sl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},sl(e)}function Ine(e,t){if(e==null)return{};var n=$ne(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function $ne(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function Kh(){return Kh=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Kh.apply(this,arguments)}function wN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Ut(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?wN(Object(n),!0).forEach(function(r){fi(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):wN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Lne(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function kN(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,jR(r.key),r)}}function Dne(e,t,n){return t&&kN(e.prototype,t),n&&kN(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function Bne(e,t,n){return t=Vh(t),zne(e,SR()?Reflect.construct(t,n||[],Vh(e).constructor):t.apply(e,n))}function zne(e,t){if(t&&(sl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Fne(e)}function Fne(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function SR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(SR=function(){return!!e})()}function Vh(e){return Vh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Vh(e)}function Une(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&kb(e,t)}function kb(e,t){return kb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},kb(e,t)}function fi(e,t,n){return t=jR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function jR(e){var t=Wne(e,"string");return sl(t)=="symbol"?t:t+""}function Wne(e,t){if(sl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(sl(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var yn=function(e){function t(){var n;Lne(this,t);for(var r=arguments.length,a=new Array(r),s=0;s<r;s++)a[s]=arguments[s];return n=Bne(this,t,[].concat(a)),fi(n,"state",{isAnimationFinished:!1}),fi(n,"id",Yp("recharts-bar-")),fi(n,"handleAnimationEnd",function(){var o=n.props.onAnimationEnd;n.setState({isAnimationFinished:!0}),o&&o()}),fi(n,"handleAnimationStart",function(){var o=n.props.onAnimationStart;n.setState({isAnimationFinished:!1}),o&&o()}),n}return Une(t,e),Dne(t,[{key:"renderRectanglesStatically",value:function(r){var a=this,s=this.props,o=s.shape,l=s.dataKey,c=s.activeIndex,u=s.activeBar,d=Xe(this.props,!1);return r&&r.map(function(f,h){var p=h===c,g=p?u:o,m=Ut(Ut(Ut({},d),f),{},{isActive:p,option:g,index:h,dataKey:l,onAnimationStart:a.handleAnimationStart,onAnimationEnd:a.handleAnimationEnd});return V.createElement(an,Kh({className:"recharts-bar-rectangle"},ih(a.props,f,h),{key:"rectangle-".concat(f==null?void 0:f.x,"-").concat(f==null?void 0:f.y,"-").concat(f==null?void 0:f.value,"-").concat(h)}),V.createElement(xN,m))})}},{key:"renderRectanglesWithAnimation",value:function(){var r=this,a=this.props,s=a.data,o=a.layout,l=a.isAnimationActive,c=a.animationBegin,u=a.animationDuration,d=a.animationEasing,f=a.animationId,h=this.state.prevData;return V.createElement(Ai,{begin:c,duration:u,isActive:l,easing:d,from:{t:0},to:{t:1},key:"bar-".concat(f),onAnimationEnd:this.handleAnimationEnd,onAnimationStart:this.handleAnimationStart},function(p){var g=p.t,m=s.map(function(y,v){var S=h&&h[v];if(S){var w=to(S.x,y.x),j=to(S.y,y.y),k=to(S.width,y.width),b=to(S.height,y.height);return Ut(Ut({},y),{},{x:w(g),y:j(g),width:k(g),height:b(g)})}if(o==="horizontal"){var N=to(0,y.height),_=N(g);return Ut(Ut({},y),{},{y:y.y+y.height-_,height:_})}var T=to(0,y.width),C=T(g);return Ut(Ut({},y),{},{width:C})});return V.createElement(an,null,r.renderRectanglesStatically(m))})}},{key:"renderRectangles",value:function(){var r=this.props,a=r.data,s=r.isAnimationActive,o=this.state.prevData;return s&&a&&a.length&&(!o||!Kw(o,a))?this.renderRectanglesWithAnimation():this.renderRectanglesStatically(a)}},{key:"renderBackground",value:function(){var r=this,a=this.props,s=a.data,o=a.dataKey,l=a.activeIndex,c=Xe(this.props.background,!1);return s.map(function(u,d){u.value;var f=u.background,h=Ine(u,Mne);if(!f)return null;var p=Ut(Ut(Ut(Ut(Ut({},h),{},{fill:"#eee"},f),c),ih(r.props,u,d)),{},{onAnimationStart:r.handleAnimationStart,onAnimationEnd:r.handleAnimationEnd,dataKey:o,index:d,className:"recharts-bar-background-rectangle"});return V.createElement(xN,Kh({key:"background-bar-".concat(d),option:r.props.background,isActive:d===l},p))})}},{key:"renderErrorBar",value:function(r,a){if(this.props.isAnimationActive&&!this.state.isAnimationFinished)return null;var s=this.props,o=s.data,l=s.xAxis,c=s.yAxis,u=s.layout,d=s.children,f=Wr(d,hm);if(!f)return null;var h=u==="vertical"?o[0].height/2:o[0].width/2,p=function(y,v){var S=Array.isArray(y.value)?y.value[1]:y.value;return{x:y.x,y:y.y,value:S,errorVal:ha(y,v)}},g={clipPath:r?"url(#clipPath-".concat(a,")"):null};return V.createElement(an,g,f.map(function(m){return V.cloneElement(m,{key:"error-bar-".concat(a,"-").concat(m.props.dataKey),data:o,xAxis:l,yAxis:c,layout:u,offset:h,dataPointFormatter:p})}))}},{key:"render",value:function(){var r=this.props,a=r.hide,s=r.data,o=r.className,l=r.xAxis,c=r.yAxis,u=r.left,d=r.top,f=r.width,h=r.height,p=r.isAnimationActive,g=r.background,m=r.id;if(a||!s||!s.length)return null;var y=this.state.isAnimationFinished,v=Qe("recharts-bar",o),S=l&&l.allowDataOverflow,w=c&&c.allowDataOverflow,j=S||w,k=Ze(m)?this.id:m;return V.createElement(an,{className:v},S||w?V.createElement("defs",null,V.createElement("clipPath",{id:"clipPath-".concat(k)},V.createElement("rect",{x:S?u:u-f/2,y:w?d:d-h/2,width:S?f:f*2,height:w?h:h*2}))):null,V.createElement(an,{className:"recharts-bar-rectangles",clipPath:j?"url(#clipPath-".concat(k,")"):null},g?this.renderBackground():null,this.renderRectangles()),this.renderErrorBar(j,k),(!p||y)&&Es.renderCallByParent(this.props,s))}}],[{key:"getDerivedStateFromProps",value:function(r,a){return r.animationId!==a.prevAnimationId?{prevAnimationId:r.animationId,curData:r.data,prevData:a.curData}:r.data!==a.curData?{curData:r.data}:null}}])}(x.PureComponent);kR=yn;fi(yn,"displayName","Bar");fi(yn,"defaultProps",{xAxisId:0,yAxisId:0,legendType:"rect",minPointSize:0,hide:!1,data:[],layout:"vertical",activeBar:!1,isAnimationActive:!Ju.isSsr,animationBegin:0,animationDuration:400,animationEasing:"ease"});fi(yn,"getComposedData",function(e){var t=e.props,n=e.item,r=e.barPosition,a=e.bandSize,s=e.xAxis,o=e.yAxis,l=e.xAxisTicks,c=e.yAxisTicks,u=e.stackedData,d=e.dataStartIndex,f=e.displayedData,h=e.offset,p=mQ(r,n);if(!p)return null;var g=t.layout,m=n.type.defaultProps,y=m!==void 0?Ut(Ut({},m),n.props):n.props,v=y.dataKey,S=y.children,w=y.minPointSize,j=g==="horizontal"?o:s,k=u?j.scale.domain():null,b=SQ({numericAxis:j}),N=Wr(S,uu),_=f.map(function(T,C){var O,P,z,L,M,D;u?O=gQ(u[d+C],k):(O=ha(T,v),Array.isArray(O)||(O=[b,O]));var W=Rne(w,kR.defaultProps.minPointSize)(O[1],C);if(g==="horizontal"){var R,B=[o.scale(O[0]),o.scale(O[1])],A=B[0],J=B[1];P=S1({axis:s,ticks:l,bandSize:a,offset:p.offset,entry:T,index:C}),z=(R=J??A)!==null&&R!==void 0?R:void 0,L=p.size;var F=A-J;if(M=Number.isNaN(F)?0:F,D={x:P,y:o.y,width:L,height:o.height},Math.abs(W)>0&&Math.abs(M)<Math.abs(W)){var $=zr(M||W)*(Math.abs(W)-Math.abs(M));z-=$,M+=$}}else{var ie=[s.scale(O[0]),s.scale(O[1])],de=ie[0],me=ie[1];if(P=de,z=S1({axis:o,ticks:c,bandSize:a,offset:p.offset,entry:T,index:C}),L=me-de,M=p.size,D={x:s.x,y:z,width:s.width,height:M},Math.abs(W)>0&&Math.abs(L)<Math.abs(W)){var Te=zr(L||W)*(Math.abs(W)-Math.abs(L));L+=Te}}return Ut(Ut(Ut({},T),{},{x:P,y:z,width:L,height:M,value:u?O:O[1],payload:T,background:D},N&&N[C]&&N[C].props),{},{tooltipPayload:[tR(n,T)],tooltipPosition:{x:P+L/2,y:z+M/2}})});return Ut({data:_,layout:g},h)});function Lu(e){"@babel/helpers - typeof";return Lu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Lu(e)}function Hne(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function SN(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,NR(r.key),r)}}function Gne(e,t,n){return t&&SN(e.prototype,t),n&&SN(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function jN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Lr(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?jN(Object(n),!0).forEach(function(r){gm(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):jN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function gm(e,t,n){return t=NR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function NR(e){var t=qne(e,"string");return Lu(t)=="symbol"?t:t+""}function qne(e,t){if(Lu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Lu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Kne=function(t,n,r,a,s){var o=t.width,l=t.height,c=t.layout,u=t.children,d=Object.keys(n),f={left:r.left,leftMirror:r.left,right:o-r.right,rightMirror:o-r.right,top:r.top,topMirror:r.top,bottom:l-r.bottom,bottomMirror:l-r.bottom},h=!!Jn(u,yn);return d.reduce(function(p,g){var m=n[g],y=m.orientation,v=m.domain,S=m.padding,w=S===void 0?{}:S,j=m.mirror,k=m.reversed,b="".concat(y).concat(j?"Mirror":""),N,_,T,C,O;if(m.type==="number"&&(m.padding==="gap"||m.padding==="no-gap")){var P=v[1]-v[0],z=1/0,L=m.categoricalDomain.sort(XU);if(L.forEach(function(ie,de){de>0&&(z=Math.min((ie||0)-(L[de-1]||0),z))}),Number.isFinite(z)){var M=z/P,D=m.layout==="vertical"?r.height:r.width;if(m.padding==="gap"&&(N=M*D/2),m.padding==="no-gap"){var W=Is(t.barCategoryGap,M*D),R=M*D/2;N=R-W-(R-W)/D*W}}}a==="xAxis"?_=[r.left+(w.left||0)+(N||0),r.left+r.width-(w.right||0)-(N||0)]:a==="yAxis"?_=c==="horizontal"?[r.top+r.height-(w.bottom||0),r.top+(w.top||0)]:[r.top+(w.top||0)+(N||0),r.top+r.height-(w.bottom||0)-(N||0)]:_=m.range,k&&(_=[_[1],_[0]]);var B=hQ(m,s,h),A=B.scale,J=B.realScaleType;A.domain(v).range(_),pQ(A);var F=kQ(A,Lr(Lr({},m),{},{realScaleType:J}));a==="xAxis"?(O=y==="top"&&!j||y==="bottom"&&j,T=r.left,C=f[b]-O*m.height):a==="yAxis"&&(O=y==="left"&&!j||y==="right"&&j,T=f[b]-O*m.width,C=r.top);var $=Lr(Lr(Lr({},m),F),{},{realScaleType:J,x:T,y:C,scale:A,width:a==="xAxis"?r.width:m.width,height:a==="yAxis"?r.height:m.height});return $.bandSize=Mh($,F),!m.hide&&a==="xAxis"?f[b]+=(O?-1:1)*$.height:m.hide||(f[b]+=(O?-1:1)*$.width),Lr(Lr({},p),{},gm({},g,$))},{})},ER=function(t,n){var r=t.x,a=t.y,s=n.x,o=n.y;return{x:Math.min(r,s),y:Math.min(a,o),width:Math.abs(s-r),height:Math.abs(o-a)}},Vne=function(t){var n=t.x1,r=t.y1,a=t.x2,s=t.y2;return ER({x:n,y:r},{x:a,y:s})},_R=function(){function e(t){Hne(this,e),this.scale=t}return Gne(e,[{key:"domain",get:function(){return this.scale.domain}},{key:"range",get:function(){return this.scale.range}},{key:"rangeMin",get:function(){return this.range()[0]}},{key:"rangeMax",get:function(){return this.range()[1]}},{key:"bandwidth",get:function(){return this.scale.bandwidth}},{key:"apply",value:function(n){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=r.bandAware,s=r.position;if(n!==void 0){if(s)switch(s){case"start":return this.scale(n);case"middle":{var o=this.bandwidth?this.bandwidth()/2:0;return this.scale(n)+o}case"end":{var l=this.bandwidth?this.bandwidth():0;return this.scale(n)+l}default:return this.scale(n)}if(a){var c=this.bandwidth?this.bandwidth()/2:0;return this.scale(n)+c}return this.scale(n)}}},{key:"isInRange",value:function(n){var r=this.range(),a=r[0],s=r[r.length-1];return a<=s?n>=a&&n<=s:n>=s&&n<=a}}],[{key:"create",value:function(n){return new e(n)}}])}();gm(_R,"EPS",1e-4);var Zw=function(t){var n=Object.keys(t).reduce(function(r,a){return Lr(Lr({},r),{},gm({},a,_R.create(t[a])))},{});return Lr(Lr({},n),{},{apply:function(a){var s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=s.bandAware,l=s.position;return hne(a,function(c,u){return n[u].apply(c,{bandAware:o,position:l})})},isInRange:function(a){return wR(a,function(s,o){return n[o].isInRange(s)})}})};function Yne(e){return(e%180+180)%180}var Xne=function(t){var n=t.width,r=t.height,a=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,s=Yne(a),o=s*Math.PI/180,l=Math.atan(r/n),c=o>l&&o<Math.PI-l?r/Math.sin(o):n/Math.cos(o);return Math.abs(c)},Qne=Ii,Zne=Zu,Jne=em;function ere(e){return function(t,n,r){var a=Object(t);if(!Zne(t)){var s=Qne(n);t=Jne(t),n=function(l){return s(a[l],l,a)}}var o=e(t,n,r);return o>-1?a[s?t[o]:o]:void 0}}var tre=ere,nre=vR;function rre(e){var t=nre(e),n=t%1;return t===t?n?t-n:t:0}var are=rre,ire=$O,sre=Ii,ore=are,lre=Math.max;function cre(e,t,n){var r=e==null?0:e.length;if(!r)return-1;var a=n==null?0:ore(n);return a<0&&(a=lre(r+a,0)),ire(e,sre(t),a)}var ure=cre,dre=tre,fre=ure,hre=dre(fre),pre=hre;const mre=tt(pre);var gre=JF(function(e){return{x:e.left,y:e.top,width:e.width,height:e.height}},function(e){return["l",e.left,"t",e.top,"w",e.width,"h",e.height].join("")}),Jw=x.createContext(void 0),e0=x.createContext(void 0),AR=x.createContext(void 0),CR=x.createContext({}),TR=x.createContext(void 0),OR=x.createContext(0),PR=x.createContext(0),NN=function(t){var n=t.state,r=n.xAxisMap,a=n.yAxisMap,s=n.offset,o=t.clipPathId,l=t.children,c=t.width,u=t.height,d=gre(s);return V.createElement(Jw.Provider,{value:r},V.createElement(e0.Provider,{value:a},V.createElement(CR.Provider,{value:s},V.createElement(AR.Provider,{value:d},V.createElement(TR.Provider,{value:o},V.createElement(OR.Provider,{value:u},V.createElement(PR.Provider,{value:c},l)))))))},vre=function(){return x.useContext(TR)},RR=function(t){var n=x.useContext(Jw);n==null&&Ls();var r=n[t];return r==null&&Ls(),r},yre=function(){var t=x.useContext(Jw);return si(t)},bre=function(){var t=x.useContext(e0),n=mre(t,function(r){return wR(r.domain,Number.isFinite)});return n||si(t)},MR=function(t){var n=x.useContext(e0);n==null&&Ls();var r=n[t];return r==null&&Ls(),r},xre=function(){var t=x.useContext(AR);return t},wre=function(){return x.useContext(CR)},t0=function(){return x.useContext(PR)},n0=function(){return x.useContext(OR)};function ol(e){"@babel/helpers - typeof";return ol=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ol(e)}function kre(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Sre(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,$R(r.key),r)}}function jre(e,t,n){return t&&Sre(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Nre(e,t,n){return t=Yh(t),Ere(e,IR()?Reflect.construct(t,n||[],Yh(e).constructor):t.apply(e,n))}function Ere(e,t){if(t&&(ol(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return _re(e)}function _re(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function IR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(IR=function(){return!!e})()}function Yh(e){return Yh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Yh(e)}function Are(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Sb(e,t)}function Sb(e,t){return Sb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Sb(e,t)}function EN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function _N(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?EN(Object(n),!0).forEach(function(r){r0(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):EN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function r0(e,t,n){return t=$R(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function $R(e){var t=Cre(e,"string");return ol(t)=="symbol"?t:t+""}function Cre(e,t){if(ol(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(ol(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}function Tre(e,t){return Mre(e)||Rre(e,t)||Pre(e,t)||Ore()}function Ore(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
131
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function Pre(e,t){if(e){if(typeof e=="string")return AN(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return AN(e,t)}}function AN(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Rre(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function Mre(e){if(Array.isArray(e))return e}function jb(){return jb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jb.apply(this,arguments)}var Ire=function(t,n){var r;return V.isValidElement(t)?r=V.cloneElement(t,n):De(t)?r=t(n):r=V.createElement("line",jb({},n,{className:"recharts-reference-line-line"})),r},$re=function(t,n,r,a,s,o,l,c,u){var d=s.x,f=s.y,h=s.width,p=s.height;if(r){var g=u.y,m=t.y.apply(g,{position:o});if(da(u,"discard")&&!t.y.isInRange(m))return null;var y=[{x:d+h,y:m},{x:d,y:m}];return c==="left"?y.reverse():y}if(n){var v=u.x,S=t.x.apply(v,{position:o});if(da(u,"discard")&&!t.x.isInRange(S))return null;var w=[{x:S,y:f+p},{x:S,y:f}];return l==="top"?w.reverse():w}if(a){var j=u.segment,k=j.map(function(b){return t.apply(b,{position:o})});return da(u,"discard")&&ine(k,function(b){return!t.isInRange(b)})?null:k}return null};function Lre(e){var t=e.x,n=e.y,r=e.segment,a=e.xAxisId,s=e.yAxisId,o=e.shape,l=e.className,c=e.alwaysShow,u=vre(),d=RR(a),f=MR(s),h=xre();if(!u||!h)return null;Aa(c===void 0,'The alwaysShow prop is deprecated. Please use ifOverflow="extendDomain" instead.');var p=Zw({x:d.scale,y:f.scale}),g=Zt(t),m=Zt(n),y=r&&r.length===2,v=$re(p,g,m,y,h,e.position,d.orientation,f.orientation,e);if(!v)return null;var S=Tre(v,2),w=S[0],j=w.x,k=w.y,b=S[1],N=b.x,_=b.y,T=da(e,"hidden")?"url(#".concat(u,")"):void 0,C=_N(_N({clipPath:T},Xe(e,!0)),{},{x1:j,y1:k,x2:N,y2:_});return V.createElement(an,{className:Qe("recharts-reference-line",l)},Ire(o,C),wn.renderCallByParent(e,Vne({x1:j,y1:k,x2:N,y2:_})))}var a0=function(e){function t(){return kre(this,t),Nre(this,t,arguments)}return Are(t,e),jre(t,[{key:"render",value:function(){return V.createElement(Lre,this.props)}}])}(V.Component);r0(a0,"displayName","ReferenceLine");r0(a0,"defaultProps",{isFront:!1,ifOverflow:"discard",xAxisId:0,yAxisId:0,fill:"none",stroke:"#ccc",fillOpacity:1,strokeWidth:1,position:"middle"});function Nb(){return Nb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Nb.apply(this,arguments)}function ll(e){"@babel/helpers - typeof";return ll=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ll(e)}function CN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function TN(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?CN(Object(n),!0).forEach(function(r){vm(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):CN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Dre(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Bre(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,DR(r.key),r)}}function zre(e,t,n){return t&&Bre(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Fre(e,t,n){return t=Xh(t),Ure(e,LR()?Reflect.construct(t,n||[],Xh(e).constructor):t.apply(e,n))}function Ure(e,t){if(t&&(ll(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Wre(e)}function Wre(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function LR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(LR=function(){return!!e})()}function Xh(e){return Xh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Xh(e)}function Hre(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Eb(e,t)}function Eb(e,t){return Eb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Eb(e,t)}function vm(e,t,n){return t=DR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function DR(e){var t=Gre(e,"string");return ll(t)=="symbol"?t:t+""}function Gre(e,t){if(ll(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(ll(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var qre=function(t){var n=t.x,r=t.y,a=t.xAxis,s=t.yAxis,o=Zw({x:a.scale,y:s.scale}),l=o.apply({x:n,y:r},{bandAware:!0});return da(t,"discard")&&!o.isInRange(l)?null:l},ym=function(e){function t(){return Dre(this,t),Fre(this,t,arguments)}return Hre(t,e),zre(t,[{key:"render",value:function(){var r=this.props,a=r.x,s=r.y,o=r.r,l=r.alwaysShow,c=r.clipPathId,u=Zt(a),d=Zt(s);if(Aa(l===void 0,'The alwaysShow prop is deprecated. Please use ifOverflow="extendDomain" instead.'),!u||!d)return null;var f=qre(this.props);if(!f)return null;var h=f.x,p=f.y,g=this.props,m=g.shape,y=g.className,v=da(this.props,"hidden")?"url(#".concat(c,")"):void 0,S=TN(TN({clipPath:v},Xe(this.props,!0)),{},{cx:h,cy:p});return V.createElement(an,{className:Qe("recharts-reference-dot",y)},t.renderDot(m,S),wn.renderCallByParent(this.props,{x:h-o,y:p-o,width:2*o,height:2*o}))}}])}(V.Component);vm(ym,"displayName","ReferenceDot");vm(ym,"defaultProps",{isFront:!1,ifOverflow:"discard",xAxisId:0,yAxisId:0,r:10,fill:"#fff",stroke:"#ccc",fillOpacity:1,strokeWidth:1});vm(ym,"renderDot",function(e,t){var n;return V.isValidElement(e)?n=V.cloneElement(e,t):De(e)?n=e(t):n=V.createElement(mR,Nb({},t,{cx:t.cx,cy:t.cy,className:"recharts-reference-dot-dot"})),n});function _b(){return _b=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},_b.apply(this,arguments)}function cl(e){"@babel/helpers - typeof";return cl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},cl(e)}function ON(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function PN(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?ON(Object(n),!0).forEach(function(r){bm(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ON(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Kre(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Vre(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,zR(r.key),r)}}function Yre(e,t,n){return t&&Vre(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Xre(e,t,n){return t=Qh(t),Qre(e,BR()?Reflect.construct(t,n||[],Qh(e).constructor):t.apply(e,n))}function Qre(e,t){if(t&&(cl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Zre(e)}function Zre(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function BR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(BR=function(){return!!e})()}function Qh(e){return Qh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Qh(e)}function Jre(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Ab(e,t)}function Ab(e,t){return Ab=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Ab(e,t)}function bm(e,t,n){return t=zR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function zR(e){var t=eae(e,"string");return cl(t)=="symbol"?t:t+""}function eae(e,t){if(cl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(cl(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var tae=function(t,n,r,a,s){var o=s.x1,l=s.x2,c=s.y1,u=s.y2,d=s.xAxis,f=s.yAxis;if(!d||!f)return null;var h=Zw({x:d.scale,y:f.scale}),p={x:t?h.x.apply(o,{position:"start"}):h.x.rangeMin,y:r?h.y.apply(c,{position:"start"}):h.y.rangeMin},g={x:n?h.x.apply(l,{position:"end"}):h.x.rangeMax,y:a?h.y.apply(u,{position:"end"}):h.y.rangeMax};return da(s,"discard")&&(!h.isInRange(p)||!h.isInRange(g))?null:ER(p,g)},xm=function(e){function t(){return Kre(this,t),Xre(this,t,arguments)}return Jre(t,e),Yre(t,[{key:"render",value:function(){var r=this.props,a=r.x1,s=r.x2,o=r.y1,l=r.y2,c=r.className,u=r.alwaysShow,d=r.clipPathId;Aa(u===void 0,'The alwaysShow prop is deprecated. Please use ifOverflow="extendDomain" instead.');var f=Zt(a),h=Zt(s),p=Zt(o),g=Zt(l),m=this.props.shape;if(!f&&!h&&!p&&!g&&!m)return null;var y=tae(f,h,p,g,this.props);if(!y&&!m)return null;var v=da(this.props,"hidden")?"url(#".concat(d,")"):void 0;return V.createElement(an,{className:Qe("recharts-reference-area",c)},t.renderRect(m,PN(PN({clipPath:v},Xe(this.props,!0)),y)),wn.renderCallByParent(this.props,y))}}])}(V.Component);bm(xm,"displayName","ReferenceArea");bm(xm,"defaultProps",{isFront:!1,ifOverflow:"discard",xAxisId:0,yAxisId:0,r:10,fill:"#ccc",fillOpacity:.5,stroke:"none",strokeWidth:1});bm(xm,"renderRect",function(e,t){var n;return V.isValidElement(e)?n=V.cloneElement(e,t):De(e)?n=e(t):n=V.createElement(Qw,_b({},t,{className:"recharts-reference-area-rect"})),n});function FR(e,t,n){if(t<1)return[];if(t===1&&n===void 0)return e;for(var r=[],a=0;a<e.length;a+=t)r.push(e[a]);return r}function nae(e,t,n){var r={width:e.width+t.width,height:e.height+t.height};return Xne(r,n)}function rae(e,t,n){var r=n==="width",a=e.x,s=e.y,o=e.width,l=e.height;return t===1?{start:r?a:s,end:r?a+o:s+l}:{start:r?a+o:s+l,end:r?a:s}}function Zh(e,t,n,r,a){if(e*t<e*r||e*t>e*a)return!1;var s=n();return e*(t-e*s/2-r)>=0&&e*(t+e*s/2-a)<=0}function aae(e,t){return FR(e,t+1)}function iae(e,t,n,r,a){for(var s=(r||[]).slice(),o=t.start,l=t.end,c=0,u=1,d=o,f=function(){var g=r==null?void 0:r[c];if(g===void 0)return{v:FR(r,u)};var m=c,y,v=function(){return y===void 0&&(y=n(g,m)),y},S=g.coordinate,w=c===0||Zh(e,S,v,d,l);w||(c=0,d=o,u+=1),w&&(d=S+e*(v()/2+a),c+=u)},h;u<=s.length;)if(h=f(),h)return h.v;return[]}function Du(e){"@babel/helpers - typeof";return Du=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Du(e)}function RN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function vn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?RN(Object(n),!0).forEach(function(r){sae(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):RN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function sae(e,t,n){return t=oae(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function oae(e){var t=lae(e,"string");return Du(t)=="symbol"?t:t+""}function lae(e,t){if(Du(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Du(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function cae(e,t,n,r,a){for(var s=(r||[]).slice(),o=s.length,l=t.start,c=t.end,u=function(h){var p=s[h],g,m=function(){return g===void 0&&(g=n(p,h)),g};if(h===o-1){var y=e*(p.coordinate+e*m()/2-c);s[h]=p=vn(vn({},p),{},{tickCoord:y>0?p.coordinate-y*e:p.coordinate})}else s[h]=p=vn(vn({},p),{},{tickCoord:p.coordinate});var v=Zh(e,p.tickCoord,m,l,c);v&&(c=p.tickCoord-e*(m()/2+a),s[h]=vn(vn({},p),{},{isShow:!0}))},d=o-1;d>=0;d--)u(d);return s}function uae(e,t,n,r,a,s){var o=(r||[]).slice(),l=o.length,c=t.start,u=t.end;if(s){var d=r[l-1],f=n(d,l-1),h=e*(d.coordinate+e*f/2-u);o[l-1]=d=vn(vn({},d),{},{tickCoord:h>0?d.coordinate-h*e:d.coordinate});var p=Zh(e,d.tickCoord,function(){return f},c,u);p&&(u=d.tickCoord-e*(f/2+a),o[l-1]=vn(vn({},d),{},{isShow:!0}))}for(var g=s?l-1:l,m=function(S){var w=o[S],j,k=function(){return j===void 0&&(j=n(w,S)),j};if(S===0){var b=e*(w.coordinate-e*k()/2-c);o[S]=w=vn(vn({},w),{},{tickCoord:b<0?w.coordinate-b*e:w.coordinate})}else o[S]=w=vn(vn({},w),{},{tickCoord:w.coordinate});var N=Zh(e,w.tickCoord,k,c,u);N&&(c=w.tickCoord+e*(k()/2+a),o[S]=vn(vn({},w),{},{isShow:!0}))},y=0;y<g;y++)m(y);return o}function i0(e,t,n){var r=e.tick,a=e.ticks,s=e.viewBox,o=e.minTickGap,l=e.orientation,c=e.interval,u=e.tickFormatter,d=e.unit,f=e.angle;if(!a||!a.length||!r)return[];if(ue(c)||Ju.isSsr)return aae(a,typeof c=="number"&&ue(c)?c:0);var h=[],p=l==="top"||l==="bottom"?"width":"height",g=d&&p==="width"?Oc(d,{fontSize:t,letterSpacing:n}):{width:0,height:0},m=function(w,j){var k=De(u)?u(w.value,j):w.value;return p==="width"?nae(Oc(k,{fontSize:t,letterSpacing:n}),g,f):Oc(k,{fontSize:t,letterSpacing:n})[p]},y=a.length>=2?zr(a[1].coordinate-a[0].coordinate):1,v=rae(s,y,p);return c==="equidistantPreserveStart"?iae(y,v,m,a,o):(c==="preserveStart"||c==="preserveStartEnd"?h=uae(y,v,m,a,o,c==="preserveStartEnd"):h=cae(y,v,m,a,o),h.filter(function(S){return S.isShow}))}var dae=["viewBox"],fae=["viewBox"],hae=["ticks"];function ul(e){"@babel/helpers - typeof";return ul=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},ul(e)}function _o(){return _o=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},_o.apply(this,arguments)}function MN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Vt(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?MN(Object(n),!0).forEach(function(r){s0(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):MN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Pg(e,t){if(e==null)return{};var n=pae(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function pae(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function mae(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function IN(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,WR(r.key),r)}}function gae(e,t,n){return t&&IN(e.prototype,t),n&&IN(e,n),Object.defineProperty(e,"prototype",{writable:!1}),e}function vae(e,t,n){return t=Jh(t),yae(e,UR()?Reflect.construct(t,n||[],Jh(e).constructor):t.apply(e,n))}function yae(e,t){if(t&&(ul(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return bae(e)}function bae(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function UR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(UR=function(){return!!e})()}function Jh(e){return Jh=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},Jh(e)}function xae(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Cb(e,t)}function Cb(e,t){return Cb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Cb(e,t)}function s0(e,t,n){return t=WR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function WR(e){var t=wae(e,"string");return ul(t)=="symbol"?t:t+""}function wae(e,t){if(ul(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(ul(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var Rl=function(e){function t(n){var r;return mae(this,t),r=vae(this,t,[n]),r.state={fontSize:"",letterSpacing:""},r}return xae(t,e),gae(t,[{key:"shouldComponentUpdate",value:function(r,a){var s=r.viewBox,o=Pg(r,dae),l=this.props,c=l.viewBox,u=Pg(l,fae);return!$o(s,c)||!$o(o,u)||!$o(a,this.state)}},{key:"componentDidMount",value:function(){var r=this.layerReference;if(r){var a=r.getElementsByClassName("recharts-cartesian-axis-tick-value")[0];a&&this.setState({fontSize:window.getComputedStyle(a).fontSize,letterSpacing:window.getComputedStyle(a).letterSpacing})}}},{key:"getTickLineCoord",value:function(r){var a=this.props,s=a.x,o=a.y,l=a.width,c=a.height,u=a.orientation,d=a.tickSize,f=a.mirror,h=a.tickMargin,p,g,m,y,v,S,w=f?-1:1,j=r.tickSize||d,k=ue(r.tickCoord)?r.tickCoord:r.coordinate;switch(u){case"top":p=g=r.coordinate,y=o+ +!f*c,m=y-w*j,S=m-w*h,v=k;break;case"left":m=y=r.coordinate,g=s+ +!f*l,p=g-w*j,v=p-w*h,S=k;break;case"right":m=y=r.coordinate,g=s+ +f*l,p=g+w*j,v=p+w*h,S=k;break;default:p=g=r.coordinate,y=o+ +f*c,m=y+w*j,S=m+w*h,v=k;break}return{line:{x1:p,y1:m,x2:g,y2:y},tick:{x:v,y:S}}}},{key:"getTickTextAnchor",value:function(){var r=this.props,a=r.orientation,s=r.mirror,o;switch(a){case"left":o=s?"start":"end";break;case"right":o=s?"end":"start";break;default:o="middle";break}return o}},{key:"getTickVerticalAnchor",value:function(){var r=this.props,a=r.orientation,s=r.mirror,o="end";switch(a){case"left":case"right":o="middle";break;case"top":o=s?"start":"end";break;default:o=s?"end":"start";break}return o}},{key:"renderAxisLine",value:function(){var r=this.props,a=r.x,s=r.y,o=r.width,l=r.height,c=r.orientation,u=r.mirror,d=r.axisLine,f=Vt(Vt(Vt({},Xe(this.props,!1)),Xe(d,!1)),{},{fill:"none"});if(c==="top"||c==="bottom"){var h=+(c==="top"&&!u||c==="bottom"&&u);f=Vt(Vt({},f),{},{x1:a,y1:s+h*l,x2:a+o,y2:s+h*l})}else{var p=+(c==="left"&&!u||c==="right"&&u);f=Vt(Vt({},f),{},{x1:a+p*o,y1:s,x2:a+p*o,y2:s+l})}return V.createElement("line",_o({},f,{className:Qe("recharts-cartesian-axis-line",Sr(d,"className"))}))}},{key:"renderTicks",value:function(r,a,s){var o=this,l=this.props,c=l.tickLine,u=l.stroke,d=l.tick,f=l.tickFormatter,h=l.unit,p=i0(Vt(Vt({},this.props),{},{ticks:r}),a,s),g=this.getTickTextAnchor(),m=this.getTickVerticalAnchor(),y=Xe(this.props,!1),v=Xe(d,!1),S=Vt(Vt({},y),{},{fill:"none"},Xe(c,!1)),w=p.map(function(j,k){var b=o.getTickLineCoord(j),N=b.line,_=b.tick,T=Vt(Vt(Vt(Vt({textAnchor:g,verticalAnchor:m},y),{},{stroke:"none",fill:u},v),_),{},{index:k,payload:j,visibleTicksCount:p.length,tickFormatter:f});return V.createElement(an,_o({className:"recharts-cartesian-axis-tick",key:"tick-".concat(j.value,"-").concat(j.coordinate,"-").concat(j.tickCoord)},ih(o.props,j,k)),c&&V.createElement("line",_o({},S,N,{className:Qe("recharts-cartesian-axis-tick-line",Sr(c,"className"))})),d&&t.renderTickItem(d,T,"".concat(De(f)?f(j.value,k):j.value).concat(h||"")))});return V.createElement("g",{className:"recharts-cartesian-axis-ticks"},w)}},{key:"render",value:function(){var r=this,a=this.props,s=a.axisLine,o=a.width,l=a.height,c=a.ticksGenerator,u=a.className,d=a.hide;if(d)return null;var f=this.props,h=f.ticks,p=Pg(f,hae),g=h;return De(c)&&(g=h&&h.length>0?c(this.props):c(p)),o<=0||l<=0||!g||!g.length?null:V.createElement(an,{className:Qe("recharts-cartesian-axis",u),ref:function(y){r.layerReference=y}},s&&this.renderAxisLine(),this.renderTicks(g,this.state.fontSize,this.state.letterSpacing),wn.renderCallByParent(this.props))}}],[{key:"renderTickItem",value:function(r,a,s){var o,l=Qe(a.className,"recharts-cartesian-axis-tick-value");return V.isValidElement(r)?o=V.cloneElement(r,Vt(Vt({},a),{},{className:l})):De(r)?o=r(Vt(Vt({},a),{},{className:l})):o=V.createElement(bh,_o({},a,{className:"recharts-cartesian-axis-tick-value"}),s),o}}])}(x.Component);s0(Rl,"displayName","CartesianAxis");s0(Rl,"defaultProps",{x:0,y:0,width:0,height:0,viewBox:{x:0,y:0,width:0,height:0},orientation:"bottom",ticks:[],stroke:"#666",tickLine:!0,axisLine:!0,tick:!0,mirror:!1,minTickGap:5,tickSize:6,tickMargin:2,interval:"preserveEnd"});var kae=["x1","y1","x2","y2","key"],Sae=["offset"];function Ds(e){"@babel/helpers - typeof";return Ds=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Ds(e)}function $N(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function kn(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?$N(Object(n),!0).forEach(function(r){jae(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):$N(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function jae(e,t,n){return t=Nae(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Nae(e){var t=Eae(e,"string");return Ds(t)=="symbol"?t:t+""}function Eae(e,t){if(Ds(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Ds(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function bs(){return bs=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},bs.apply(this,arguments)}function LN(e,t){if(e==null)return{};var n=_ae(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function _ae(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}var Aae=function(t){var n=t.fill;if(!n||n==="none")return null;var r=t.fillOpacity,a=t.x,s=t.y,o=t.width,l=t.height,c=t.ry;return V.createElement("rect",{x:a,y:s,ry:c,width:o,height:l,stroke:"none",fill:n,fillOpacity:r,className:"recharts-cartesian-grid-bg"})};function HR(e,t){var n;if(V.isValidElement(e))n=V.cloneElement(e,t);else if(De(e))n=e(t);else{var r=t.x1,a=t.y1,s=t.x2,o=t.y2,l=t.key,c=LN(t,kae),u=Xe(c,!1);u.offset;var d=LN(u,Sae);n=V.createElement("line",bs({},d,{x1:r,y1:a,x2:s,y2:o,fill:"none",key:l}))}return n}function Cae(e){var t=e.x,n=e.width,r=e.horizontal,a=r===void 0?!0:r,s=e.horizontalPoints;if(!a||!s||!s.length)return null;var o=s.map(function(l,c){var u=kn(kn({},e),{},{x1:t,y1:l,x2:t+n,y2:l,key:"line-".concat(c),index:c});return HR(a,u)});return V.createElement("g",{className:"recharts-cartesian-grid-horizontal"},o)}function Tae(e){var t=e.y,n=e.height,r=e.vertical,a=r===void 0?!0:r,s=e.verticalPoints;if(!a||!s||!s.length)return null;var o=s.map(function(l,c){var u=kn(kn({},e),{},{x1:l,y1:t,x2:l,y2:t+n,key:"line-".concat(c),index:c});return HR(a,u)});return V.createElement("g",{className:"recharts-cartesian-grid-vertical"},o)}function Oae(e){var t=e.horizontalFill,n=e.fillOpacity,r=e.x,a=e.y,s=e.width,o=e.height,l=e.horizontalPoints,c=e.horizontal,u=c===void 0?!0:c;if(!u||!t||!t.length)return null;var d=l.map(function(h){return Math.round(h+a-a)}).sort(function(h,p){return h-p});a!==d[0]&&d.unshift(0);var f=d.map(function(h,p){var g=!d[p+1],m=g?a+o-h:d[p+1]-h;if(m<=0)return null;var y=p%t.length;return V.createElement("rect",{key:"react-".concat(p),y:h,x:r,height:m,width:s,stroke:"none",fill:t[y],fillOpacity:n,className:"recharts-cartesian-grid-bg"})});return V.createElement("g",{className:"recharts-cartesian-gridstripes-horizontal"},f)}function Pae(e){var t=e.vertical,n=t===void 0?!0:t,r=e.verticalFill,a=e.fillOpacity,s=e.x,o=e.y,l=e.width,c=e.height,u=e.verticalPoints;if(!n||!r||!r.length)return null;var d=u.map(function(h){return Math.round(h+s-s)}).sort(function(h,p){return h-p});s!==d[0]&&d.unshift(0);var f=d.map(function(h,p){var g=!d[p+1],m=g?s+l-h:d[p+1]-h;if(m<=0)return null;var y=p%r.length;return V.createElement("rect",{key:"react-".concat(p),x:h,y:o,width:m,height:c,stroke:"none",fill:r[y],fillOpacity:a,className:"recharts-cartesian-grid-bg"})});return V.createElement("g",{className:"recharts-cartesian-gridstripes-vertical"},f)}var Rae=function(t,n){var r=t.xAxis,a=t.width,s=t.height,o=t.offset;return JP(i0(kn(kn(kn({},Rl.defaultProps),r),{},{ticks:Na(r,!0),viewBox:{x:0,y:0,width:a,height:s}})),o.left,o.left+o.width,n)},Mae=function(t,n){var r=t.yAxis,a=t.width,s=t.height,o=t.offset;return JP(i0(kn(kn(kn({},Rl.defaultProps),r),{},{ticks:Na(r,!0),viewBox:{x:0,y:0,width:a,height:s}})),o.top,o.top+o.height,n)},ao={horizontal:!0,vertical:!0,stroke:"#ccc",fill:"none",verticalFill:[],horizontalFill:[]};function oi(e){var t,n,r,a,s,o,l=t0(),c=n0(),u=wre(),d=kn(kn({},e),{},{stroke:(t=e.stroke)!==null&&t!==void 0?t:ao.stroke,fill:(n=e.fill)!==null&&n!==void 0?n:ao.fill,horizontal:(r=e.horizontal)!==null&&r!==void 0?r:ao.horizontal,horizontalFill:(a=e.horizontalFill)!==null&&a!==void 0?a:ao.horizontalFill,vertical:(s=e.vertical)!==null&&s!==void 0?s:ao.vertical,verticalFill:(o=e.verticalFill)!==null&&o!==void 0?o:ao.verticalFill,x:ue(e.x)?e.x:u.left,y:ue(e.y)?e.y:u.top,width:ue(e.width)?e.width:u.width,height:ue(e.height)?e.height:u.height}),f=d.x,h=d.y,p=d.width,g=d.height,m=d.syncWithTicks,y=d.horizontalValues,v=d.verticalValues,S=yre(),w=bre();if(!ue(p)||p<=0||!ue(g)||g<=0||!ue(f)||f!==+f||!ue(h)||h!==+h)return null;var j=d.verticalCoordinatesGenerator||Rae,k=d.horizontalCoordinatesGenerator||Mae,b=d.horizontalPoints,N=d.verticalPoints;if((!b||!b.length)&&De(k)){var _=y&&y.length,T=k({yAxis:w?kn(kn({},w),{},{ticks:_?y:w.ticks}):void 0,width:l,height:c,offset:u},_?!0:m);Aa(Array.isArray(T),"horizontalCoordinatesGenerator should return Array but instead it returned [".concat(Ds(T),"]")),Array.isArray(T)&&(b=T)}if((!N||!N.length)&&De(j)){var C=v&&v.length,O=j({xAxis:S?kn(kn({},S),{},{ticks:C?v:S.ticks}):void 0,width:l,height:c,offset:u},C?!0:m);Aa(Array.isArray(O),"verticalCoordinatesGenerator should return Array but instead it returned [".concat(Ds(O),"]")),Array.isArray(O)&&(N=O)}return V.createElement("g",{className:"recharts-cartesian-grid"},V.createElement(Aae,{fill:d.fill,fillOpacity:d.fillOpacity,x:d.x,y:d.y,width:d.width,height:d.height,ry:d.ry}),V.createElement(Cae,bs({},d,{offset:u,horizontalPoints:b,xAxis:S,yAxis:w})),V.createElement(Tae,bs({},d,{offset:u,verticalPoints:N,xAxis:S,yAxis:w})),V.createElement(Oae,bs({},d,{horizontalPoints:b})),V.createElement(Pae,bs({},d,{verticalPoints:N})))}oi.displayName="CartesianGrid";function dl(e){"@babel/helpers - typeof";return dl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},dl(e)}function Iae(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function $ae(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,KR(r.key),r)}}function Lae(e,t,n){return t&&$ae(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Dae(e,t,n){return t=ep(t),Bae(e,GR()?Reflect.construct(t,n||[],ep(e).constructor):t.apply(e,n))}function Bae(e,t){if(t&&(dl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return zae(e)}function zae(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function GR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(GR=function(){return!!e})()}function ep(e){return ep=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},ep(e)}function Fae(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Tb(e,t)}function Tb(e,t){return Tb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Tb(e,t)}function qR(e,t,n){return t=KR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function KR(e){var t=Uae(e,"string");return dl(t)=="symbol"?t:t+""}function Uae(e,t){if(dl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(dl(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}function Ob(){return Ob=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ob.apply(this,arguments)}function Wae(e){var t=e.xAxisId,n=t0(),r=n0(),a=RR(t);return a==null?null:x.createElement(Rl,Ob({},a,{className:Qe("recharts-".concat(a.axisType," ").concat(a.axisType),a.className),viewBox:{x:0,y:0,width:n,height:r},ticksGenerator:function(o){return Na(o,!0)}}))}var ia=function(e){function t(){return Iae(this,t),Dae(this,t,arguments)}return Fae(t,e),Lae(t,[{key:"render",value:function(){return x.createElement(Wae,this.props)}}])}(x.Component);qR(ia,"displayName","XAxis");qR(ia,"defaultProps",{allowDecimals:!0,hide:!1,orientation:"bottom",width:0,height:30,mirror:!1,xAxisId:0,tickCount:5,type:"category",padding:{left:0,right:0},allowDataOverflow:!1,scale:"auto",reversed:!1,allowDuplicatedCategory:!0});function fl(e){"@babel/helpers - typeof";return fl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},fl(e)}function Hae(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function Gae(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,XR(r.key),r)}}function qae(e,t,n){return t&&Gae(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Kae(e,t,n){return t=tp(t),Vae(e,VR()?Reflect.construct(t,n||[],tp(e).constructor):t.apply(e,n))}function Vae(e,t){if(t&&(fl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Yae(e)}function Yae(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function VR(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(VR=function(){return!!e})()}function tp(e){return tp=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},tp(e)}function Xae(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&Pb(e,t)}function Pb(e,t){return Pb=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},Pb(e,t)}function YR(e,t,n){return t=XR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function XR(e){var t=Qae(e,"string");return fl(t)=="symbol"?t:t+""}function Qae(e,t){if(fl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(fl(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}function Rb(){return Rb=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Rb.apply(this,arguments)}var Zae=function(t){var n=t.yAxisId,r=t0(),a=n0(),s=MR(n);return s==null?null:x.createElement(Rl,Rb({},s,{className:Qe("recharts-".concat(s.axisType," ").concat(s.axisType),s.className),viewBox:{x:0,y:0,width:r,height:a},ticksGenerator:function(l){return Na(l,!0)}}))},sa=function(e){function t(){return Hae(this,t),Kae(this,t,arguments)}return Xae(t,e),qae(t,[{key:"render",value:function(){return x.createElement(Zae,this.props)}}])}(x.Component);YR(sa,"displayName","YAxis");YR(sa,"defaultProps",{allowDuplicatedCategory:!0,allowDecimals:!0,hide:!1,orientation:"left",width:60,height:0,mirror:!1,yAxisId:0,tickCount:5,type:"number",padding:{top:0,bottom:0},allowDataOverflow:!1,scale:"auto",reversed:!1});function DN(e){return nie(e)||tie(e)||eie(e)||Jae()}function Jae(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
132
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function eie(e,t){if(e){if(typeof e=="string")return Mb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Mb(e,t)}}function tie(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function nie(e){if(Array.isArray(e))return Mb(e)}function Mb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Ib=function(t,n,r,a,s){var o=Wr(t,a0),l=Wr(t,ym),c=[].concat(DN(o),DN(l)),u=Wr(t,xm),d="".concat(a,"Id"),f=a[0],h=n;if(c.length&&(h=c.reduce(function(m,y){if(y.props[d]===r&&da(y.props,"extendDomain")&&ue(y.props[f])){var v=y.props[f];return[Math.min(m[0],v),Math.max(m[1],v)]}return m},h)),u.length){var p="".concat(f,"1"),g="".concat(f,"2");h=u.reduce(function(m,y){if(y.props[d]===r&&da(y.props,"extendDomain")&&ue(y.props[p])&&ue(y.props[g])){var v=y.props[p],S=y.props[g];return[Math.min(m[0],v,S),Math.max(m[1],v,S)]}return m},h)}return s&&s.length&&(h=s.reduce(function(m,y){return ue(y)?[Math.min(m[0],y),Math.max(m[1],y)]:m},h)),h},QR={exports:{}};(function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}Object.create&&(r.prototype=Object.create(null),new r().__proto__||(n=!1));function a(c,u,d){this.fn=c,this.context=u,this.once=d||!1}function s(c,u,d,f,h){if(typeof d!="function")throw new TypeError("The listener must be a function");var p=new a(d,f||c,h),g=n?n+u:u;return c._events[g]?c._events[g].fn?c._events[g]=[c._events[g],p]:c._events[g].push(p):(c._events[g]=p,c._eventsCount++),c}function o(c,u){--c._eventsCount===0?c._events=new r:delete c._events[u]}function l(){this._events=new r,this._eventsCount=0}l.prototype.eventNames=function(){var u=[],d,f;if(this._eventsCount===0)return u;for(f in d=this._events)t.call(d,f)&&u.push(n?f.slice(1):f);return Object.getOwnPropertySymbols?u.concat(Object.getOwnPropertySymbols(d)):u},l.prototype.listeners=function(u){var d=n?n+u:u,f=this._events[d];if(!f)return[];if(f.fn)return[f.fn];for(var h=0,p=f.length,g=new Array(p);h<p;h++)g[h]=f[h].fn;return g},l.prototype.listenerCount=function(u){var d=n?n+u:u,f=this._events[d];return f?f.fn?1:f.length:0},l.prototype.emit=function(u,d,f,h,p,g){var m=n?n+u:u;if(!this._events[m])return!1;var y=this._events[m],v=arguments.length,S,w;if(y.fn){switch(y.once&&this.removeListener(u,y.fn,void 0,!0),v){case 1:return y.fn.call(y.context),!0;case 2:return y.fn.call(y.context,d),!0;case 3:return y.fn.call(y.context,d,f),!0;case 4:return y.fn.call(y.context,d,f,h),!0;case 5:return y.fn.call(y.context,d,f,h,p),!0;case 6:return y.fn.call(y.context,d,f,h,p,g),!0}for(w=1,S=new Array(v-1);w<v;w++)S[w-1]=arguments[w];y.fn.apply(y.context,S)}else{var j=y.length,k;for(w=0;w<j;w++)switch(y[w].once&&this.removeListener(u,y[w].fn,void 0,!0),v){case 1:y[w].fn.call(y[w].context);break;case 2:y[w].fn.call(y[w].context,d);break;case 3:y[w].fn.call(y[w].context,d,f);break;case 4:y[w].fn.call(y[w].context,d,f,h);break;default:if(!S)for(k=1,S=new Array(v-1);k<v;k++)S[k-1]=arguments[k];y[w].fn.apply(y[w].context,S)}}return!0},l.prototype.on=function(u,d,f){return s(this,u,d,f,!1)},l.prototype.once=function(u,d,f){return s(this,u,d,f,!0)},l.prototype.removeListener=function(u,d,f,h){var p=n?n+u:u;if(!this._events[p])return this;if(!d)return o(this,p),this;var g=this._events[p];if(g.fn)g.fn===d&&(!h||g.once)&&(!f||g.context===f)&&o(this,p);else{for(var m=0,y=[],v=g.length;m<v;m++)(g[m].fn!==d||h&&!g[m].once||f&&g[m].context!==f)&&y.push(g[m]);y.length?this._events[p]=y.length===1?y[0]:y:o(this,p)}return this},l.prototype.removeAllListeners=function(u){var d;return u?(d=n?n+u:u,this._events[d]&&o(this,d)):(this._events=new r,this._eventsCount=0),this},l.prototype.off=l.prototype.removeListener,l.prototype.addListener=l.prototype.on,l.prefixed=n,l.EventEmitter=l,e.exports=l})(QR);var rie=QR.exports;const aie=tt(rie);var Rg=new aie,Mg="recharts.syncMouseEvents";function Bu(e){"@babel/helpers - typeof";return Bu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},Bu(e)}function iie(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function sie(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,ZR(r.key),r)}}function oie(e,t,n){return t&&sie(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Ig(e,t,n){return t=ZR(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function ZR(e){var t=lie(e,"string");return Bu(t)=="symbol"?t:t+""}function lie(e,t){if(Bu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(Bu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return String(e)}var cie=function(){function e(){iie(this,e),Ig(this,"activeIndex",0),Ig(this,"coordinateList",[]),Ig(this,"layout","horizontal")}return oie(e,[{key:"setDetails",value:function(n){var r,a=n.coordinateList,s=a===void 0?null:a,o=n.container,l=o===void 0?null:o,c=n.layout,u=c===void 0?null:c,d=n.offset,f=d===void 0?null:d,h=n.mouseHandlerCallback,p=h===void 0?null:h;this.coordinateList=(r=s??this.coordinateList)!==null&&r!==void 0?r:[],this.container=l??this.container,this.layout=u??this.layout,this.offset=f??this.offset,this.mouseHandlerCallback=p??this.mouseHandlerCallback,this.activeIndex=Math.min(Math.max(this.activeIndex,0),this.coordinateList.length-1)}},{key:"focus",value:function(){this.spoofMouse()}},{key:"keyboardEvent",value:function(n){if(this.coordinateList.length!==0)switch(n.key){case"ArrowRight":{if(this.layout!=="horizontal")return;this.activeIndex=Math.min(this.activeIndex+1,this.coordinateList.length-1),this.spoofMouse();break}case"ArrowLeft":{if(this.layout!=="horizontal")return;this.activeIndex=Math.max(this.activeIndex-1,0),this.spoofMouse();break}}}},{key:"setIndex",value:function(n){this.activeIndex=n}},{key:"spoofMouse",value:function(){var n,r;if(this.layout==="horizontal"&&this.coordinateList.length!==0){var a=this.container.getBoundingClientRect(),s=a.x,o=a.y,l=a.height,c=this.coordinateList[this.activeIndex].coordinate,u=((n=window)===null||n===void 0?void 0:n.scrollX)||0,d=((r=window)===null||r===void 0?void 0:r.scrollY)||0,f=s+c+u,h=o+this.offset.top+l/2+d;this.mouseHandlerCallback({pageX:f,pageY:h})}}}])}();function uie(e,t,n){if(n==="number"&&t===!0&&Array.isArray(e)){var r=e==null?void 0:e[0],a=e==null?void 0:e[1];if(r&&a&&ue(r)&&ue(a))return!0}return!1}function die(e,t,n,r){var a=r/2;return{stroke:"none",fill:"#ccc",x:e==="horizontal"?t.x-a:n.left+.5,y:e==="horizontal"?n.top+.5:t.y-a,width:e==="horizontal"?r:n.width-1,height:e==="horizontal"?n.height-1:r}}function JR(e){var t=e.cx,n=e.cy,r=e.radius,a=e.startAngle,s=e.endAngle,o=un(t,n,r,a),l=un(t,n,r,s);return{points:[o,l],cx:t,cy:n,radius:r,startAngle:a,endAngle:s}}function fie(e,t,n){var r,a,s,o;if(e==="horizontal")r=t.x,s=r,a=n.top,o=n.top+n.height;else if(e==="vertical")a=t.y,o=a,r=n.left,s=n.left+n.width;else if(t.cx!=null&&t.cy!=null)if(e==="centric"){var l=t.cx,c=t.cy,u=t.innerRadius,d=t.outerRadius,f=t.angle,h=un(l,c,u,f),p=un(l,c,d,f);r=h.x,a=h.y,s=p.x,o=p.y}else return JR(t);return[{x:r,y:a},{x:s,y:o}]}function zu(e){"@babel/helpers - typeof";return zu=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},zu(e)}function BN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function Jd(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?BN(Object(n),!0).forEach(function(r){hie(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):BN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function hie(e,t,n){return t=pie(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function pie(e){var t=mie(e,"string");return zu(t)=="symbol"?t:t+""}function mie(e,t){if(zu(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(zu(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}function gie(e){var t,n,r=e.element,a=e.tooltipEventType,s=e.isActive,o=e.activeCoordinate,l=e.activePayload,c=e.offset,u=e.activeTooltipIndex,d=e.tooltipAxisBandSize,f=e.layout,h=e.chartName,p=(t=r.props.cursor)!==null&&t!==void 0?t:(n=r.type.defaultProps)===null||n===void 0?void 0:n.cursor;if(!r||!p||!s||!o||h!=="ScatterChart"&&a!=="axis")return null;var g,m=B1;if(h==="ScatterChart")g=o,m=Cee;else if(h==="BarChart")g=die(f,o,c,d),m=Qw;else if(f==="radial"){var y=JR(o),v=y.cx,S=y.cy,w=y.radius,j=y.startAngle,k=y.endAngle;g={cx:v,cy:S,startAngle:j,endAngle:k,innerRadius:w,outerRadius:w},m=aR}else g={points:fie(f,o,c)},m=B1;var b=Jd(Jd(Jd(Jd({stroke:"#ccc",pointerEvents:"none"},c),g),Xe(p,!1)),{},{payload:l,payloadIndex:u,className:Qe("recharts-tooltip-cursor",p.className)});return x.isValidElement(p)?x.cloneElement(p,b):x.createElement(m,b)}var vie=["item"],yie=["children","className","width","height","style","compact","title","desc"];function hl(e){"@babel/helpers - typeof";return hl=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(t){return typeof t}:function(t){return t&&typeof Symbol=="function"&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},hl(e)}function Ao(){return Ao=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ao.apply(this,arguments)}function zN(e,t){return wie(e)||xie(e,t)||tM(e,t)||bie()}function bie(){throw new TypeError(`Invalid attempt to destructure non-iterable instance.
|
|
133
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function xie(e,t){var n=e==null?null:typeof Symbol<"u"&&e[Symbol.iterator]||e["@@iterator"];if(n!=null){var r,a,s,o,l=[],c=!0,u=!1;try{if(s=(n=n.call(e)).next,t!==0)for(;!(c=(r=s.call(n)).done)&&(l.push(r.value),l.length!==t);c=!0);}catch(d){u=!0,a=d}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(u)throw a}}return l}}function wie(e){if(Array.isArray(e))return e}function FN(e,t){if(e==null)return{};var n=kie(e,t),r,a;if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(a=0;a<s.length;a++)r=s[a],!(t.indexOf(r)>=0)&&Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function kie(e,t){if(e==null)return{};var n={};for(var r in e)if(Object.prototype.hasOwnProperty.call(e,r)){if(t.indexOf(r)>=0)continue;n[r]=e[r]}return n}function Sie(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function jie(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,nM(r.key),r)}}function Nie(e,t,n){return t&&jie(e.prototype,t),Object.defineProperty(e,"prototype",{writable:!1}),e}function Eie(e,t,n){return t=np(t),_ie(e,eM()?Reflect.construct(t,n||[],np(e).constructor):t.apply(e,n))}function _ie(e,t){if(t&&(hl(t)==="object"||typeof t=="function"))return t;if(t!==void 0)throw new TypeError("Derived constructors may only return object or undefined");return Aie(e)}function Aie(e){if(e===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function eM(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch{}return(eM=function(){return!!e})()}function np(e){return np=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(n){return n.__proto__||Object.getPrototypeOf(n)},np(e)}function Cie(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&$b(e,t)}function $b(e,t){return $b=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(r,a){return r.__proto__=a,r},$b(e,t)}function pl(e){return Pie(e)||Oie(e)||tM(e)||Tie()}function Tie(){throw new TypeError(`Invalid attempt to spread non-iterable instance.
|
|
134
|
+
In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function tM(e,t){if(e){if(typeof e=="string")return Lb(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if(n==="Object"&&e.constructor&&(n=e.constructor.name),n==="Map"||n==="Set")return Array.from(e);if(n==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return Lb(e,t)}}function Oie(e){if(typeof Symbol<"u"&&e[Symbol.iterator]!=null||e["@@iterator"]!=null)return Array.from(e)}function Pie(e){if(Array.isArray(e))return Lb(e)}function Lb(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function UN(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable})),n.push.apply(n,r)}return n}function ee(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]!=null?arguments[t]:{};t%2?UN(Object(n),!0).forEach(function(r){Ce(e,r,n[r])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):UN(Object(n)).forEach(function(r){Object.defineProperty(e,r,Object.getOwnPropertyDescriptor(n,r))})}return e}function Ce(e,t,n){return t=nM(t),t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function nM(e){var t=Rie(e,"string");return hl(t)=="symbol"?t:t+""}function Rie(e,t){if(hl(e)!="object"||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t);if(hl(r)!="object")return r;throw new TypeError("@@toPrimitive must return a primitive value.")}return(t==="string"?String:Number)(e)}var Mie={xAxis:["bottom","top"],yAxis:["left","right"]},Iie={width:"100%",height:"100%"},rM={x:0,y:0};function ef(e){return e}var $ie=function(t,n){return n==="horizontal"?t.x:n==="vertical"?t.y:n==="centric"?t.angle:t.radius},Lie=function(t,n,r,a){var s=n.find(function(d){return d&&d.index===r});if(s){if(t==="horizontal")return{x:s.coordinate,y:a.y};if(t==="vertical")return{x:a.x,y:s.coordinate};if(t==="centric"){var o=s.coordinate,l=a.radius;return ee(ee(ee({},a),un(a.cx,a.cy,l,o)),{},{angle:o,radius:l})}var c=s.coordinate,u=a.angle;return ee(ee(ee({},a),un(a.cx,a.cy,c,u)),{},{angle:u,radius:c})}return rM},wm=function(t,n){var r=n.graphicalItems,a=n.dataStartIndex,s=n.dataEndIndex,o=(r??[]).reduce(function(l,c){var u=c.props.data;return u&&u.length?[].concat(pl(l),pl(u)):l},[]);return o.length>0?o:t&&t.length&&ue(a)&&ue(s)?t.slice(a,s+1):[]};function aM(e){return e==="number"?[0,"auto"]:void 0}var Db=function(t,n,r,a){var s=t.graphicalItems,o=t.tooltipAxis,l=wm(n,t);return r<0||!s||!s.length||r>=l.length?null:s.reduce(function(c,u){var d,f=(d=u.props.data)!==null&&d!==void 0?d:n;f&&t.dataStartIndex+t.dataEndIndex!==0&&t.dataEndIndex-t.dataStartIndex>=r&&(f=f.slice(t.dataStartIndex,t.dataEndIndex+1));var h;if(o.dataKey&&!o.allowDuplicatedCategory){var p=f===void 0?l:f;h=vy(p,o.dataKey,a)}else h=f&&f[r]||l[r];return h?[].concat(pl(c),[tR(u,h)]):c},[])},WN=function(t,n,r,a){var s=a||{x:t.chartX,y:t.chartY},o=$ie(s,r),l=t.orderedTooltipTicks,c=t.tooltipAxis,u=t.tooltipTicks,d=oQ(o,l,u,c);if(d>=0&&u){var f=u[d]&&u[d].value,h=Db(t,n,d,f),p=Lie(r,l,d,s);return{activeTooltipIndex:d,activeLabel:f,activePayload:h,activeCoordinate:p}}return null},Die=function(t,n){var r=n.axes,a=n.graphicalItems,s=n.axisType,o=n.axisIdKey,l=n.stackGroups,c=n.dataStartIndex,u=n.dataEndIndex,d=t.layout,f=t.children,h=t.stackOffset,p=ZP(d,s);return r.reduce(function(g,m){var y,v=m.type.defaultProps!==void 0?ee(ee({},m.type.defaultProps),m.props):m.props,S=v.type,w=v.dataKey,j=v.allowDataOverflow,k=v.allowDuplicatedCategory,b=v.scale,N=v.ticks,_=v.includeHidden,T=v[o];if(g[T])return g;var C=wm(t.data,{graphicalItems:a.filter(function(F){var $,ie=o in F.props?F.props[o]:($=F.type.defaultProps)===null||$===void 0?void 0:$[o];return ie===T}),dataStartIndex:c,dataEndIndex:u}),O=C.length,P,z,L;uie(v.domain,j,S)&&(P=ab(v.domain,null,j),p&&(S==="number"||b!=="auto")&&(L=Rc(C,w,"category")));var M=aM(S);if(!P||P.length===0){var D,W=(D=v.domain)!==null&&D!==void 0?D:M;if(w){if(P=Rc(C,w,S),S==="category"&&p){var R=YU(P);k&&R?(z=P,P=Hh(0,O)):k||(P=E1(W,P,m).reduce(function(F,$){return F.indexOf($)>=0?F:[].concat(pl(F),[$])},[]))}else if(S==="category")k?P=P.filter(function(F){return F!==""&&!Ze(F)}):P=E1(W,P,m).reduce(function(F,$){return F.indexOf($)>=0||$===""||Ze($)?F:[].concat(pl(F),[$])},[]);else if(S==="number"){var B=fQ(C,a.filter(function(F){var $,ie,de=o in F.props?F.props[o]:($=F.type.defaultProps)===null||$===void 0?void 0:$[o],me="hide"in F.props?F.props.hide:(ie=F.type.defaultProps)===null||ie===void 0?void 0:ie.hide;return de===T&&(_||!me)}),w,s,d);B&&(P=B)}p&&(S==="number"||b!=="auto")&&(L=Rc(C,w,"category"))}else p?P=Hh(0,O):l&&l[T]&&l[T].hasStack&&S==="number"?P=h==="expand"?[0,1]:eR(l[T].stackGroups,c,u):P=QP(C,a.filter(function(F){var $=o in F.props?F.props[o]:F.type.defaultProps[o],ie="hide"in F.props?F.props.hide:F.type.defaultProps.hide;return $===T&&(_||!ie)}),S,d,!0);if(S==="number")P=Ib(f,P,T,s,N),W&&(P=ab(W,P,j));else if(S==="category"&&W){var A=W,J=P.every(function(F){return A.indexOf(F)>=0});J&&(P=A)}}return ee(ee({},g),{},Ce({},T,ee(ee({},v),{},{axisType:s,domain:P,categoricalDomain:L,duplicateDomain:z,originalDomain:(y=v.domain)!==null&&y!==void 0?y:M,isCategorical:p,layout:d})))},{})},Bie=function(t,n){var r=n.graphicalItems,a=n.Axis,s=n.axisType,o=n.axisIdKey,l=n.stackGroups,c=n.dataStartIndex,u=n.dataEndIndex,d=t.layout,f=t.children,h=wm(t.data,{graphicalItems:r,dataStartIndex:c,dataEndIndex:u}),p=h.length,g=ZP(d,s),m=-1;return r.reduce(function(y,v){var S=v.type.defaultProps!==void 0?ee(ee({},v.type.defaultProps),v.props):v.props,w=S[o],j=aM("number");if(!y[w]){m++;var k;return g?k=Hh(0,p):l&&l[w]&&l[w].hasStack?(k=eR(l[w].stackGroups,c,u),k=Ib(f,k,w,s)):(k=ab(j,QP(h,r.filter(function(b){var N,_,T=o in b.props?b.props[o]:(N=b.type.defaultProps)===null||N===void 0?void 0:N[o],C="hide"in b.props?b.props.hide:(_=b.type.defaultProps)===null||_===void 0?void 0:_.hide;return T===w&&!C}),"number",d),a.defaultProps.allowDataOverflow),k=Ib(f,k,w,s)),ee(ee({},y),{},Ce({},w,ee(ee({axisType:s},a.defaultProps),{},{hide:!0,orientation:Sr(Mie,"".concat(s,".").concat(m%2),null),domain:k,originalDomain:j,isCategorical:g,layout:d})))}return y},{})},zie=function(t,n){var r=n.axisType,a=r===void 0?"xAxis":r,s=n.AxisComp,o=n.graphicalItems,l=n.stackGroups,c=n.dataStartIndex,u=n.dataEndIndex,d=t.children,f="".concat(a,"Id"),h=Wr(d,s),p={};return h&&h.length?p=Die(t,{axes:h,graphicalItems:o,axisType:a,axisIdKey:f,stackGroups:l,dataStartIndex:c,dataEndIndex:u}):o&&o.length&&(p=Bie(t,{Axis:s,graphicalItems:o,axisType:a,axisIdKey:f,stackGroups:l,dataStartIndex:c,dataEndIndex:u})),p},Fie=function(t){var n=si(t),r=Na(n,!1,!0);return{tooltipTicks:r,orderedTooltipTicks:Sw(r,function(a){return a.coordinate}),tooltipAxis:n,tooltipAxisBandSize:Mh(n,r)}},HN=function(t){var n=t.children,r=t.defaultShowTooltip,a=Jn(n,il),s=0,o=0;return t.data&&t.data.length!==0&&(o=t.data.length-1),a&&a.props&&(a.props.startIndex>=0&&(s=a.props.startIndex),a.props.endIndex>=0&&(o=a.props.endIndex)),{chartX:0,chartY:0,dataStartIndex:s,dataEndIndex:o,activeTooltipIndex:-1,isTooltipActive:!!r}},Uie=function(t){return!t||!t.length?!1:t.some(function(n){var r=_a(n&&n.type);return r&&r.indexOf("Bar")>=0})},GN=function(t){return t==="horizontal"?{numericAxisName:"yAxis",cateAxisName:"xAxis"}:t==="vertical"?{numericAxisName:"xAxis",cateAxisName:"yAxis"}:t==="centric"?{numericAxisName:"radiusAxis",cateAxisName:"angleAxis"}:{numericAxisName:"angleAxis",cateAxisName:"radiusAxis"}},Wie=function(t,n){var r=t.props,a=t.graphicalItems,s=t.xAxisMap,o=s===void 0?{}:s,l=t.yAxisMap,c=l===void 0?{}:l,u=r.width,d=r.height,f=r.children,h=r.margin||{},p=Jn(f,il),g=Jn(f,Ss),m=Object.keys(c).reduce(function(k,b){var N=c[b],_=N.orientation;return!N.mirror&&!N.hide?ee(ee({},k),{},Ce({},_,k[_]+N.width)):k},{left:h.left||0,right:h.right||0}),y=Object.keys(o).reduce(function(k,b){var N=o[b],_=N.orientation;return!N.mirror&&!N.hide?ee(ee({},k),{},Ce({},_,Sr(k,"".concat(_))+N.height)):k},{top:h.top||0,bottom:h.bottom||0}),v=ee(ee({},y),m),S=v.bottom;p&&(v.bottom+=p.props.height||il.defaultProps.height),g&&n&&(v=uQ(v,a,r,n));var w=u-v.left-v.right,j=d-v.top-v.bottom;return ee(ee({brushBottom:S},v),{},{width:Math.max(w,0),height:Math.max(j,0)})},Hie=function(t,n){if(n==="xAxis")return t[n].width;if(n==="yAxis")return t[n].height},Gie=function(t){var n=t.chartName,r=t.GraphicalChild,a=t.defaultTooltipEventType,s=a===void 0?"axis":a,o=t.validateTooltipEventTypes,l=o===void 0?["axis"]:o,c=t.axisComponents,u=t.legendContent,d=t.formatAxisMap,f=t.defaultProps,h=function(v,S){var w=S.graphicalItems,j=S.stackGroups,k=S.offset,b=S.updateId,N=S.dataStartIndex,_=S.dataEndIndex,T=v.barSize,C=v.layout,O=v.barGap,P=v.barCategoryGap,z=v.maxBarSize,L=GN(C),M=L.numericAxisName,D=L.cateAxisName,W=Uie(w),R=[];return w.forEach(function(B,A){var J=wm(v.data,{graphicalItems:[B],dataStartIndex:N,dataEndIndex:_}),F=B.type.defaultProps!==void 0?ee(ee({},B.type.defaultProps),B.props):B.props,$=F.dataKey,ie=F.maxBarSize,de=F["".concat(M,"Id")],me=F["".concat(D,"Id")],Te={},Q=c.reduce(function(Oe,Ye){var rt=S["".concat(Ye.axisType,"Map")],gt=F["".concat(Ye.axisType,"Id")];rt&&rt[gt]||Ye.axisType==="zAxis"||Ls();var Lt=rt[gt];return ee(ee({},Oe),{},Ce(Ce({},Ye.axisType,Lt),"".concat(Ye.axisType,"Ticks"),Na(Lt)))},Te),X=Q[D],ae=Q["".concat(D,"Ticks")],ce=j&&j[de]&&j[de].hasStack&&jQ(B,j[de].stackGroups),H=_a(B.type).indexOf("Bar")>=0,xe=Mh(X,ae),we=[],je=W&&lQ({barSize:T,stackGroups:j,totalSize:Hie(Q,D)});if(H){var ge,Ie,fe=Ze(ie)?z:ie,nt=(ge=(Ie=Mh(X,ae,!0))!==null&&Ie!==void 0?Ie:fe)!==null&&ge!==void 0?ge:0;we=cQ({barGap:O,barCategoryGap:P,bandSize:nt!==xe?nt:xe,sizeList:je[me],maxBarSize:fe}),nt!==xe&&(we=we.map(function(Oe){return ee(ee({},Oe),{},{position:ee(ee({},Oe.position),{},{offset:Oe.position.offset-nt/2})})}))}var Be=B&&B.type&&B.type.getComposedData;Be&&R.push({props:ee(ee({},Be(ee(ee({},Q),{},{displayedData:J,props:v,dataKey:$,item:B,bandSize:xe,barPosition:we,offset:k,stackedData:ce,layout:C,dataStartIndex:N,dataEndIndex:_}))),{},Ce(Ce(Ce({key:B.key||"item-".concat(A)},M,Q[M]),D,Q[D]),"animationId",b)),childIndex:o3(B,v.children),item:B})}),R},p=function(v,S){var w=v.props,j=v.dataStartIndex,k=v.dataEndIndex,b=v.updateId;if(!xS({props:w}))return null;var N=w.children,_=w.layout,T=w.stackOffset,C=w.data,O=w.reverseStackOrder,P=GN(_),z=P.numericAxisName,L=P.cateAxisName,M=Wr(N,r),D=wQ(C,M,"".concat(z,"Id"),"".concat(L,"Id"),T,O),W=c.reduce(function(F,$){var ie="".concat($.axisType,"Map");return ee(ee({},F),{},Ce({},ie,zie(w,ee(ee({},$),{},{graphicalItems:M,stackGroups:$.axisType===z&&D,dataStartIndex:j,dataEndIndex:k}))))},{}),R=Wie(ee(ee({},W),{},{props:w,graphicalItems:M}),S==null?void 0:S.legendBBox);Object.keys(W).forEach(function(F){W[F]=d(w,W[F],R,F.replace("Map",""),n)});var B=W["".concat(L,"Map")],A=Fie(B),J=h(w,ee(ee({},W),{},{dataStartIndex:j,dataEndIndex:k,updateId:b,graphicalItems:M,stackGroups:D,offset:R}));return ee(ee({formattedGraphicalItems:J,graphicalItems:M,offset:R,stackGroups:D},A),W)},g=function(y){function v(S){var w,j,k;return Sie(this,v),k=Eie(this,v,[S]),Ce(k,"eventEmitterSymbol",Symbol("rechartsEventEmitter")),Ce(k,"accessibilityManager",new cie),Ce(k,"handleLegendBBoxUpdate",function(b){if(b){var N=k.state,_=N.dataStartIndex,T=N.dataEndIndex,C=N.updateId;k.setState(ee({legendBBox:b},p({props:k.props,dataStartIndex:_,dataEndIndex:T,updateId:C},ee(ee({},k.state),{},{legendBBox:b}))))}}),Ce(k,"handleReceiveSyncEvent",function(b,N,_){if(k.props.syncId===b){if(_===k.eventEmitterSymbol&&typeof k.props.syncMethod!="function")return;k.applySyncEvent(N)}}),Ce(k,"handleBrushChange",function(b){var N=b.startIndex,_=b.endIndex;if(N!==k.state.dataStartIndex||_!==k.state.dataEndIndex){var T=k.state.updateId;k.setState(function(){return ee({dataStartIndex:N,dataEndIndex:_},p({props:k.props,dataStartIndex:N,dataEndIndex:_,updateId:T},k.state))}),k.triggerSyncEvent({dataStartIndex:N,dataEndIndex:_})}}),Ce(k,"handleMouseEnter",function(b){var N=k.getMouseInfo(b);if(N){var _=ee(ee({},N),{},{isTooltipActive:!0});k.setState(_),k.triggerSyncEvent(_);var T=k.props.onMouseEnter;De(T)&&T(_,b)}}),Ce(k,"triggeredAfterMouseMove",function(b){var N=k.getMouseInfo(b),_=N?ee(ee({},N),{},{isTooltipActive:!0}):{isTooltipActive:!1};k.setState(_),k.triggerSyncEvent(_);var T=k.props.onMouseMove;De(T)&&T(_,b)}),Ce(k,"handleItemMouseEnter",function(b){k.setState(function(){return{isTooltipActive:!0,activeItem:b,activePayload:b.tooltipPayload,activeCoordinate:b.tooltipPosition||{x:b.cx,y:b.cy}}})}),Ce(k,"handleItemMouseLeave",function(){k.setState(function(){return{isTooltipActive:!1}})}),Ce(k,"handleMouseMove",function(b){b.persist(),k.throttleTriggeredAfterMouseMove(b)}),Ce(k,"handleMouseLeave",function(b){k.throttleTriggeredAfterMouseMove.cancel();var N={isTooltipActive:!1};k.setState(N),k.triggerSyncEvent(N);var _=k.props.onMouseLeave;De(_)&&_(N,b)}),Ce(k,"handleOuterEvent",function(b){var N=s3(b),_=Sr(k.props,"".concat(N));if(N&&De(_)){var T,C;/.*touch.*/i.test(N)?C=k.getMouseInfo(b.changedTouches[0]):C=k.getMouseInfo(b),_((T=C)!==null&&T!==void 0?T:{},b)}}),Ce(k,"handleClick",function(b){var N=k.getMouseInfo(b);if(N){var _=ee(ee({},N),{},{isTooltipActive:!0});k.setState(_),k.triggerSyncEvent(_);var T=k.props.onClick;De(T)&&T(_,b)}}),Ce(k,"handleMouseDown",function(b){var N=k.props.onMouseDown;if(De(N)){var _=k.getMouseInfo(b);N(_,b)}}),Ce(k,"handleMouseUp",function(b){var N=k.props.onMouseUp;if(De(N)){var _=k.getMouseInfo(b);N(_,b)}}),Ce(k,"handleTouchMove",function(b){b.changedTouches!=null&&b.changedTouches.length>0&&k.throttleTriggeredAfterMouseMove(b.changedTouches[0])}),Ce(k,"handleTouchStart",function(b){b.changedTouches!=null&&b.changedTouches.length>0&&k.handleMouseDown(b.changedTouches[0])}),Ce(k,"handleTouchEnd",function(b){b.changedTouches!=null&&b.changedTouches.length>0&&k.handleMouseUp(b.changedTouches[0])}),Ce(k,"handleDoubleClick",function(b){var N=k.props.onDoubleClick;if(De(N)){var _=k.getMouseInfo(b);N(_,b)}}),Ce(k,"handleContextMenu",function(b){var N=k.props.onContextMenu;if(De(N)){var _=k.getMouseInfo(b);N(_,b)}}),Ce(k,"triggerSyncEvent",function(b){k.props.syncId!==void 0&&Rg.emit(Mg,k.props.syncId,b,k.eventEmitterSymbol)}),Ce(k,"applySyncEvent",function(b){var N=k.props,_=N.layout,T=N.syncMethod,C=k.state.updateId,O=b.dataStartIndex,P=b.dataEndIndex;if(b.dataStartIndex!==void 0||b.dataEndIndex!==void 0)k.setState(ee({dataStartIndex:O,dataEndIndex:P},p({props:k.props,dataStartIndex:O,dataEndIndex:P,updateId:C},k.state)));else if(b.activeTooltipIndex!==void 0){var z=b.chartX,L=b.chartY,M=b.activeTooltipIndex,D=k.state,W=D.offset,R=D.tooltipTicks;if(!W)return;if(typeof T=="function")M=T(R,b);else if(T==="value"){M=-1;for(var B=0;B<R.length;B++)if(R[B].value===b.activeLabel){M=B;break}}var A=ee(ee({},W),{},{x:W.left,y:W.top}),J=Math.min(z,A.x+A.width),F=Math.min(L,A.y+A.height),$=R[M]&&R[M].value,ie=Db(k.state,k.props.data,M),de=R[M]?{x:_==="horizontal"?R[M].coordinate:J,y:_==="horizontal"?F:R[M].coordinate}:rM;k.setState(ee(ee({},b),{},{activeLabel:$,activeCoordinate:de,activePayload:ie,activeTooltipIndex:M}))}else k.setState(b)}),Ce(k,"renderCursor",function(b){var N,_=k.state,T=_.isTooltipActive,C=_.activeCoordinate,O=_.activePayload,P=_.offset,z=_.activeTooltipIndex,L=_.tooltipAxisBandSize,M=k.getTooltipEventType(),D=(N=b.props.active)!==null&&N!==void 0?N:T,W=k.props.layout,R=b.key||"_recharts-cursor";return V.createElement(gie,{key:R,activeCoordinate:C,activePayload:O,activeTooltipIndex:z,chartName:n,element:b,isActive:D,layout:W,offset:P,tooltipAxisBandSize:L,tooltipEventType:M})}),Ce(k,"renderPolarAxis",function(b,N,_){var T=Sr(b,"type.axisType"),C=Sr(k.state,"".concat(T,"Map")),O=b.type.defaultProps,P=O!==void 0?ee(ee({},O),b.props):b.props,z=C&&C[P["".concat(T,"Id")]];return x.cloneElement(b,ee(ee({},z),{},{className:Qe(T,z.className),key:b.key||"".concat(N,"-").concat(_),ticks:Na(z,!0)}))}),Ce(k,"renderPolarGrid",function(b){var N=b.props,_=N.radialLines,T=N.polarAngles,C=N.polarRadius,O=k.state,P=O.radiusAxisMap,z=O.angleAxisMap,L=si(P),M=si(z),D=M.cx,W=M.cy,R=M.innerRadius,B=M.outerRadius;return x.cloneElement(b,{polarAngles:Array.isArray(T)?T:Na(M,!0).map(function(A){return A.coordinate}),polarRadius:Array.isArray(C)?C:Na(L,!0).map(function(A){return A.coordinate}),cx:D,cy:W,innerRadius:R,outerRadius:B,key:b.key||"polar-grid",radialLines:_})}),Ce(k,"renderLegend",function(){var b=k.state.formattedGraphicalItems,N=k.props,_=N.children,T=N.width,C=N.height,O=k.props.margin||{},P=T-(O.left||0)-(O.right||0),z=YP({children:_,formattedGraphicalItems:b,legendWidth:P,legendContent:u});if(!z)return null;var L=z.item,M=FN(z,vie);return x.cloneElement(L,ee(ee({},M),{},{chartWidth:T,chartHeight:C,margin:O,onBBoxUpdate:k.handleLegendBBoxUpdate}))}),Ce(k,"renderTooltip",function(){var b,N=k.props,_=N.children,T=N.accessibilityLayer,C=Jn(_,bn);if(!C)return null;var O=k.state,P=O.isTooltipActive,z=O.activeCoordinate,L=O.activePayload,M=O.activeLabel,D=O.offset,W=(b=C.props.active)!==null&&b!==void 0?b:P;return x.cloneElement(C,{viewBox:ee(ee({},D),{},{x:D.left,y:D.top}),active:W,label:M,payload:W?L:[],coordinate:z,accessibilityLayer:T})}),Ce(k,"renderBrush",function(b){var N=k.props,_=N.margin,T=N.data,C=k.state,O=C.offset,P=C.dataStartIndex,z=C.dataEndIndex,L=C.updateId;return x.cloneElement(b,{key:b.key||"_recharts-brush",onChange:Yd(k.handleBrushChange,b.props.onChange),data:T,x:ue(b.props.x)?b.props.x:O.left,y:ue(b.props.y)?b.props.y:O.top+O.height+O.brushBottom-(_.bottom||0),width:ue(b.props.width)?b.props.width:O.width,startIndex:P,endIndex:z,updateId:"brush-".concat(L)})}),Ce(k,"renderReferenceElement",function(b,N,_){if(!b)return null;var T=k,C=T.clipPathId,O=k.state,P=O.xAxisMap,z=O.yAxisMap,L=O.offset,M=b.type.defaultProps||{},D=b.props,W=D.xAxisId,R=W===void 0?M.xAxisId:W,B=D.yAxisId,A=B===void 0?M.yAxisId:B;return x.cloneElement(b,{key:b.key||"".concat(N,"-").concat(_),xAxis:P[R],yAxis:z[A],viewBox:{x:L.left,y:L.top,width:L.width,height:L.height},clipPathId:C})}),Ce(k,"renderActivePoints",function(b){var N=b.item,_=b.activePoint,T=b.basePoint,C=b.childIndex,O=b.isRange,P=[],z=N.props.key,L=N.item.type.defaultProps!==void 0?ee(ee({},N.item.type.defaultProps),N.item.props):N.item.props,M=L.activeDot,D=L.dataKey,W=ee(ee({index:C,dataKey:D,cx:_.x,cy:_.y,r:4,fill:Xw(N.item),strokeWidth:2,stroke:"#fff",payload:_.payload,value:_.value},Xe(M,!1)),ah(M));return P.push(v.renderActiveDot(M,W,"".concat(z,"-activePoint-").concat(C))),T?P.push(v.renderActiveDot(M,ee(ee({},W),{},{cx:T.x,cy:T.y}),"".concat(z,"-basePoint-").concat(C))):O&&P.push(null),P}),Ce(k,"renderGraphicChild",function(b,N,_){var T=k.filterFormatItem(b,N,_);if(!T)return null;var C=k.getTooltipEventType(),O=k.state,P=O.isTooltipActive,z=O.tooltipAxis,L=O.activeTooltipIndex,M=O.activeLabel,D=k.props.children,W=Jn(D,bn),R=T.props,B=R.points,A=R.isRange,J=R.baseLine,F=T.item.type.defaultProps!==void 0?ee(ee({},T.item.type.defaultProps),T.item.props):T.item.props,$=F.activeDot,ie=F.hide,de=F.activeBar,me=F.activeShape,Te=!!(!ie&&P&&W&&($||de||me)),Q={};C!=="axis"&&W&&W.props.trigger==="click"?Q={onClick:Yd(k.handleItemMouseEnter,b.props.onClick)}:C!=="axis"&&(Q={onMouseLeave:Yd(k.handleItemMouseLeave,b.props.onMouseLeave),onMouseEnter:Yd(k.handleItemMouseEnter,b.props.onMouseEnter)});var X=x.cloneElement(b,ee(ee({},T.props),Q));function ae(Ye){return typeof z.dataKey=="function"?z.dataKey(Ye.payload):null}if(Te)if(L>=0){var ce,H;if(z.dataKey&&!z.allowDuplicatedCategory){var xe=typeof z.dataKey=="function"?ae:"payload.".concat(z.dataKey.toString());ce=vy(B,xe,M),H=A&&J&&vy(J,xe,M)}else ce=B==null?void 0:B[L],H=A&&J&&J[L];if(me||de){var we=b.props.activeIndex!==void 0?b.props.activeIndex:L;return[x.cloneElement(b,ee(ee(ee({},T.props),Q),{},{activeIndex:we})),null,null]}if(!Ze(ce))return[X].concat(pl(k.renderActivePoints({item:T,activePoint:ce,basePoint:H,childIndex:L,isRange:A})))}else{var je,ge=(je=k.getItemByXY(k.state.activeCoordinate))!==null&&je!==void 0?je:{graphicalItem:X},Ie=ge.graphicalItem,fe=Ie.item,nt=fe===void 0?b:fe,Be=Ie.childIndex,Oe=ee(ee(ee({},T.props),Q),{},{activeIndex:Be});return[x.cloneElement(nt,Oe),null,null]}return A?[X,null,null]:[X,null]}),Ce(k,"renderCustomized",function(b,N,_){return x.cloneElement(b,ee(ee({key:"recharts-customized-".concat(_)},k.props),k.state))}),Ce(k,"renderMap",{CartesianGrid:{handler:ef,once:!0},ReferenceArea:{handler:k.renderReferenceElement},ReferenceLine:{handler:ef},ReferenceDot:{handler:k.renderReferenceElement},XAxis:{handler:ef},YAxis:{handler:ef},Brush:{handler:k.renderBrush,once:!0},Bar:{handler:k.renderGraphicChild},Line:{handler:k.renderGraphicChild},Area:{handler:k.renderGraphicChild},Radar:{handler:k.renderGraphicChild},RadialBar:{handler:k.renderGraphicChild},Scatter:{handler:k.renderGraphicChild},Pie:{handler:k.renderGraphicChild},Funnel:{handler:k.renderGraphicChild},Tooltip:{handler:k.renderCursor,once:!0},PolarGrid:{handler:k.renderPolarGrid,once:!0},PolarAngleAxis:{handler:k.renderPolarAxis},PolarRadiusAxis:{handler:k.renderPolarAxis},Customized:{handler:k.renderCustomized}}),k.clipPathId="".concat((w=S.id)!==null&&w!==void 0?w:Yp("recharts"),"-clip"),k.throttleTriggeredAfterMouseMove=XO(k.triggeredAfterMouseMove,(j=S.throttleDelay)!==null&&j!==void 0?j:1e3/60),k.state={},k}return Cie(v,y),Nie(v,[{key:"componentDidMount",value:function(){var w,j;this.addListener(),this.accessibilityManager.setDetails({container:this.container,offset:{left:(w=this.props.margin.left)!==null&&w!==void 0?w:0,top:(j=this.props.margin.top)!==null&&j!==void 0?j:0},coordinateList:this.state.tooltipTicks,mouseHandlerCallback:this.triggeredAfterMouseMove,layout:this.props.layout}),this.displayDefaultTooltip()}},{key:"displayDefaultTooltip",value:function(){var w=this.props,j=w.children,k=w.data,b=w.height,N=w.layout,_=Jn(j,bn);if(_){var T=_.props.defaultIndex;if(!(typeof T!="number"||T<0||T>this.state.tooltipTicks.length-1)){var C=this.state.tooltipTicks[T]&&this.state.tooltipTicks[T].value,O=Db(this.state,k,T,C),P=this.state.tooltipTicks[T].coordinate,z=(this.state.offset.top+b)/2,L=N==="horizontal",M=L?{x:P,y:z}:{y:P,x:z},D=this.state.formattedGraphicalItems.find(function(R){var B=R.item;return B.type.name==="Scatter"});D&&(M=ee(ee({},M),D.props.points[T].tooltipPosition),O=D.props.points[T].tooltipPayload);var W={activeTooltipIndex:T,isTooltipActive:!0,activeLabel:C,activePayload:O,activeCoordinate:M};this.setState(W),this.renderCursor(_),this.accessibilityManager.setIndex(T)}}}},{key:"getSnapshotBeforeUpdate",value:function(w,j){if(!this.props.accessibilityLayer)return null;if(this.state.tooltipTicks!==j.tooltipTicks&&this.accessibilityManager.setDetails({coordinateList:this.state.tooltipTicks}),this.props.layout!==w.layout&&this.accessibilityManager.setDetails({layout:this.props.layout}),this.props.margin!==w.margin){var k,b;this.accessibilityManager.setDetails({offset:{left:(k=this.props.margin.left)!==null&&k!==void 0?k:0,top:(b=this.props.margin.top)!==null&&b!==void 0?b:0}})}return null}},{key:"componentDidUpdate",value:function(w){by([Jn(w.children,bn)],[Jn(this.props.children,bn)])||this.displayDefaultTooltip()}},{key:"componentWillUnmount",value:function(){this.removeListener(),this.throttleTriggeredAfterMouseMove.cancel()}},{key:"getTooltipEventType",value:function(){var w=Jn(this.props.children,bn);if(w&&typeof w.props.shared=="boolean"){var j=w.props.shared?"axis":"item";return l.indexOf(j)>=0?j:s}return s}},{key:"getMouseInfo",value:function(w){if(!this.container)return null;var j=this.container,k=j.getBoundingClientRect(),b=RK(k),N={chartX:Math.round(w.pageX-b.left),chartY:Math.round(w.pageY-b.top)},_=k.width/j.offsetWidth||1,T=this.inRange(N.chartX,N.chartY,_);if(!T)return null;var C=this.state,O=C.xAxisMap,P=C.yAxisMap,z=this.getTooltipEventType(),L=WN(this.state,this.props.data,this.props.layout,T);if(z!=="axis"&&O&&P){var M=si(O).scale,D=si(P).scale,W=M&&M.invert?M.invert(N.chartX):null,R=D&&D.invert?D.invert(N.chartY):null;return ee(ee({},N),{},{xValue:W,yValue:R},L)}return L?ee(ee({},N),L):null}},{key:"inRange",value:function(w,j){var k=arguments.length>2&&arguments[2]!==void 0?arguments[2]:1,b=this.props.layout,N=w/k,_=j/k;if(b==="horizontal"||b==="vertical"){var T=this.state.offset,C=N>=T.left&&N<=T.left+T.width&&_>=T.top&&_<=T.top+T.height;return C?{x:N,y:_}:null}var O=this.state,P=O.angleAxisMap,z=O.radiusAxisMap;if(P&&z){var L=si(P);return C1({x:N,y:_},L)}return null}},{key:"parseEventsOfWrapper",value:function(){var w=this.props.children,j=this.getTooltipEventType(),k=Jn(w,bn),b={};k&&j==="axis"&&(k.props.trigger==="click"?b={onClick:this.handleClick}:b={onMouseEnter:this.handleMouseEnter,onDoubleClick:this.handleDoubleClick,onMouseMove:this.handleMouseMove,onMouseLeave:this.handleMouseLeave,onTouchMove:this.handleTouchMove,onTouchStart:this.handleTouchStart,onTouchEnd:this.handleTouchEnd,onContextMenu:this.handleContextMenu});var N=ah(this.props,this.handleOuterEvent);return ee(ee({},N),b)}},{key:"addListener",value:function(){Rg.on(Mg,this.handleReceiveSyncEvent)}},{key:"removeListener",value:function(){Rg.removeListener(Mg,this.handleReceiveSyncEvent)}},{key:"filterFormatItem",value:function(w,j,k){for(var b=this.state.formattedGraphicalItems,N=0,_=b.length;N<_;N++){var T=b[N];if(T.item===w||T.props.key===w.key||j===_a(T.item.type)&&k===T.childIndex)return T}return null}},{key:"renderClipPath",value:function(){var w=this.clipPathId,j=this.state.offset,k=j.left,b=j.top,N=j.height,_=j.width;return V.createElement("defs",null,V.createElement("clipPath",{id:w},V.createElement("rect",{x:k,y:b,height:N,width:_})))}},{key:"getXScales",value:function(){var w=this.state.xAxisMap;return w?Object.entries(w).reduce(function(j,k){var b=zN(k,2),N=b[0],_=b[1];return ee(ee({},j),{},Ce({},N,_.scale))},{}):null}},{key:"getYScales",value:function(){var w=this.state.yAxisMap;return w?Object.entries(w).reduce(function(j,k){var b=zN(k,2),N=b[0],_=b[1];return ee(ee({},j),{},Ce({},N,_.scale))},{}):null}},{key:"getXScaleByAxisId",value:function(w){var j;return(j=this.state.xAxisMap)===null||j===void 0||(j=j[w])===null||j===void 0?void 0:j.scale}},{key:"getYScaleByAxisId",value:function(w){var j;return(j=this.state.yAxisMap)===null||j===void 0||(j=j[w])===null||j===void 0?void 0:j.scale}},{key:"getItemByXY",value:function(w){var j=this.state,k=j.formattedGraphicalItems,b=j.activeItem;if(k&&k.length)for(var N=0,_=k.length;N<_;N++){var T=k[N],C=T.props,O=T.item,P=O.type.defaultProps!==void 0?ee(ee({},O.type.defaultProps),O.props):O.props,z=_a(O.type);if(z==="Bar"){var L=(C.data||[]).find(function(R){return bee(w,R)});if(L)return{graphicalItem:T,payload:L}}else if(z==="RadialBar"){var M=(C.data||[]).find(function(R){return C1(w,R)});if(M)return{graphicalItem:T,payload:M}}else if(pm(T,b)||mm(T,b)||Mu(T,b)){var D=kte({graphicalItem:T,activeTooltipItem:b,itemData:P.data}),W=P.activeIndex===void 0?D:P.activeIndex;return{graphicalItem:ee(ee({},T),{},{childIndex:W}),payload:Mu(T,b)?P.data[D]:T.props.data[D]}}}return null}},{key:"render",value:function(){var w=this;if(!xS(this))return null;var j=this.props,k=j.children,b=j.className,N=j.width,_=j.height,T=j.style,C=j.compact,O=j.title,P=j.desc,z=FN(j,yie),L=Xe(z,!1);if(C)return V.createElement(NN,{state:this.state,width:this.props.width,height:this.props.height,clipPathId:this.clipPathId},V.createElement(wy,Ao({},L,{width:N,height:_,title:O,desc:P}),this.renderClipPath(),kS(k,this.renderMap)));if(this.props.accessibilityLayer){var M,D;L.tabIndex=(M=this.props.tabIndex)!==null&&M!==void 0?M:0,L.role=(D=this.props.role)!==null&&D!==void 0?D:"application",L.onKeyDown=function(R){w.accessibilityManager.keyboardEvent(R)},L.onFocus=function(){w.accessibilityManager.focus()}}var W=this.parseEventsOfWrapper();return V.createElement(NN,{state:this.state,width:this.props.width,height:this.props.height,clipPathId:this.clipPathId},V.createElement("div",Ao({className:Qe("recharts-wrapper",b),style:ee({position:"relative",cursor:"default",width:N,height:_},T)},W,{ref:function(B){w.container=B}}),V.createElement(wy,Ao({},L,{width:N,height:_,title:O,desc:P,style:Iie}),this.renderClipPath(),kS(k,this.renderMap)),this.renderLegend(),this.renderTooltip()))}}])}(x.Component);Ce(g,"displayName",n),Ce(g,"defaultProps",ee({layout:"horizontal",stackOffset:"none",barCategoryGap:"10%",barGap:4,margin:{top:5,right:5,bottom:5,left:5},reverseStackOrder:!1,syncMethod:"index"},f)),Ce(g,"getDerivedStateFromProps",function(y,v){var S=y.dataKey,w=y.data,j=y.children,k=y.width,b=y.height,N=y.layout,_=y.stackOffset,T=y.margin,C=v.dataStartIndex,O=v.dataEndIndex;if(v.updateId===void 0){var P=HN(y);return ee(ee(ee({},P),{},{updateId:0},p(ee(ee({props:y},P),{},{updateId:0}),v)),{},{prevDataKey:S,prevData:w,prevWidth:k,prevHeight:b,prevLayout:N,prevStackOffset:_,prevMargin:T,prevChildren:j})}if(S!==v.prevDataKey||w!==v.prevData||k!==v.prevWidth||b!==v.prevHeight||N!==v.prevLayout||_!==v.prevStackOffset||!$o(T,v.prevMargin)){var z=HN(y),L={chartX:v.chartX,chartY:v.chartY,isTooltipActive:v.isTooltipActive},M=ee(ee({},WN(v,w,N)),{},{updateId:v.updateId+1}),D=ee(ee(ee({},z),L),M);return ee(ee(ee({},D),p(ee({props:y},D),v)),{},{prevDataKey:S,prevData:w,prevWidth:k,prevHeight:b,prevLayout:N,prevStackOffset:_,prevMargin:T,prevChildren:j})}if(!by(j,v.prevChildren)){var W,R,B,A,J=Jn(j,il),F=J&&(W=(R=J.props)===null||R===void 0?void 0:R.startIndex)!==null&&W!==void 0?W:C,$=J&&(B=(A=J.props)===null||A===void 0?void 0:A.endIndex)!==null&&B!==void 0?B:O,ie=F!==C||$!==O,de=!Ze(w),me=de&&!ie?v.updateId:v.updateId+1;return ee(ee({updateId:me},p(ee(ee({props:y},v),{},{updateId:me,dataStartIndex:F,dataEndIndex:$}),v)),{},{prevChildren:j,dataStartIndex:F,dataEndIndex:$})}return null}),Ce(g,"renderActiveDot",function(y,v,S){var w;return x.isValidElement(y)?w=x.cloneElement(y,v):De(y)?w=y(v):w=V.createElement(mR,v),V.createElement(an,{className:"recharts-active-dot",key:S},w)});var m=x.forwardRef(function(v,S){return V.createElement(g,Ao({},v,{ref:S}))});return m.displayName=g.displayName,m},ds=Gie({chartName:"BarChart",GraphicalChild:yn,defaultTooltipEventType:"axis",validateTooltipEventTypes:["axis","item"],axisComponents:[{axisType:"xAxis",AxisComp:ia},{axisType:"yAxis",AxisComp:sa}],formatAxisMap:Kne});const qie=new Intl.NumberFormat("en-US");function kt(e){return qie.format(e)}function Bb(e){return e==null||e<1e-5?"$0.00":e<.01?"$"+e.toFixed(6):"$"+e.toFixed(4)}function at(e){return e==null?"0":e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":kt(e)}function Kie(e,t){var a,s;const n=[];if(t){const o=t.toolsets.toolsets.filter(l=>l.enabled).reduce((l,c)=>l+c.toolCount,0);n.push({key:"tools",icon:"🔧",value:at(o),label:"Active Tools",tone:"accent"})}const r=((a=t==null?void 0:t.conversations)==null?void 0:a.total)??((s=e==null?void 0:e.conversations)==null?void 0:s.total);return r!==void 0&&n.push({key:"conversations",icon:"💬",value:at(r),label:"Active Conversations",tone:"ok"}),t&&n.push({key:"skills",icon:"🧩",value:at(t.skills.total),label:"Skills Loaded",tone:"warn"}),e&&n.push({key:"cost",icon:"💰",value:Bb(e.cost.totalCost),label:"Total Cost",tone:"danger"}),n}function Bi({tiles:e}){return e.length===0?null:i.jsx("ul",{className:"metric-tiles",children:e.map(t=>i.jsxs("li",{className:`metric-tile metric-tile--${t.tone}`,children:[i.jsx("span",{className:"metric-tile-icon","aria-hidden":"true",children:t.icon}),i.jsxs("span",{children:[i.jsx("span",{className:"metric-tile-value",children:t.value}),i.jsx("span",{className:"metric-tile-label",children:t.label})]})]},t.key))})}function Re({icon:e,title:t,description:n,actions:r}){return i.jsxs("header",{className:"page-header",children:[i.jsxs("div",{className:"page-header-text",children:[i.jsxs("h1",{className:"page-header-title",children:[i.jsx("span",{"aria-hidden":"true",children:e})," ",t]}),n?i.jsx("p",{className:"page-header-description",children:n}):null]}),r?i.jsx("div",{className:"page-header-actions",children:r}):null]})}const Vie=6e4;function o0(e=Vie){const[t,n]=x.useState(null);return x.useEffect(()=>{let r=!1;const a=()=>{fetch("/api/model-counts").then(o=>o.ok?o.json():null).then(o=>{!r&&o&&typeof o.trackedModels=="number"&&n(o)}).catch(()=>{})};a();const s=setInterval(a,e);return()=>{r=!0,clearInterval(s)}},[e]),t}function Vr(){const[e,t]=x.useState(tB);return x.useEffect(()=>nB(t),[]),e}const Yie={local:"var(--accent-green)",groq:"var(--accent-blue)",gemini:"var(--accent-purple)",nim:"var(--accent-cyan)",openrouter:"var(--accent-yellow)"};function qN(e){if(!e)return!1;const t=new Date;return t.setHours(0,0,0,0),e>=t.getTime()}function $g({title:e,children:t,action:n}){return i.jsxs("section",{className:"summary-card",children:[i.jsx("h2",{className:"summary-card-title",children:e}),i.jsx("div",{className:"summary-rows",children:t}),n?i.jsx("div",{className:"summary-card-action",children:n}):null]})}function Yn({value:e,label:t}){return i.jsxs("p",{className:"summary-row",children:[i.jsx("span",{className:"summary-row-value",children:e}),i.jsx("span",{className:"summary-row-label",children:t})]})}function Xie({data:e,onRefresh:t,refreshing:n=!1}){var C,O,P,z,L;const[r,a]=x.useState(null),[s,o]=x.useState(null),l=o0(),c=Vr();if(x.useEffect(()=>{let M=!1;return K.fetchHub().then(D=>{!M&&D&&a(D)}),K.listTasks().then(D=>{!M&&D&&o(D)}),()=>{M=!0}},[c]),!e)return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"📊",title:"System Overview",description:"Cost, memory, benchmarks and routing — read live from the dashboard server."}),i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{children:"Connecting to dashboard..."})]})]});const{cost:u,history:d,benchmarks:f,memory:h,health:p}=e,g=[{icon:"💰",value:Bb(u.totalCost),label:"Total Cost"},{icon:"📞",value:at(u.totalRequests),label:"API Requests"},{icon:"🧠",value:at(h.total),label:"Trajectories"},{icon:"📝",value:at(d.total),label:"Chat Sessions"},{icon:"🏆",value:at(f.totalRuns),label:"Benchmark Runs"},{icon:"📦",value:at(p.vectors),label:"Vector Entries"}],m=Object.entries(u.byProvider||{}).map(([M,D])=>({name:M,value:D})).sort((M,D)=>D.value-M.value),y=Object.entries(h.byFingerprint||{}).map(([M,D])=>({name:M.length>15?M.slice(0,13)+"..":M,value:D})).sort((M,D)=>D.value-M.value).slice(0,8),v=Kie(e,r),S=(s==null?void 0:s.tasks)??[],w=s!==null&&s.status===401,j=S.filter(M=>M.status==="running").length,k=S.filter(M=>qN(M.finishedAt)&&(M.status==="failed"||M.status==="error")).length,b=S.filter(M=>qN(M.finishedAt)&&M.status==="done").length,N=e.modelRegistry,_=((C=r==null?void 0:r.channels)==null?void 0:C.platforms)??[],T=_.filter(M=>M.configured).length;return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"📊",title:"System Overview",description:"Cost, memory, benchmarks and routing — read live from the dashboard server.",actions:t?i.jsx("button",{type:"button",className:"btn-secondary",onClick:t,disabled:n,"aria-busy":n,children:n?"Refreshing…":"⟳ Refresh data"}):null}),i.jsx(Bi,{tiles:v}),i.jsxs("div",{className:"overview-summary",children:[i.jsxs("div",{className:"summary-cards",children:[i.jsx($g,{title:"Task Summary",action:i.jsx(rn,{className:"summary-card-link",to:"/tasks",children:"Open console →"}),children:w?i.jsx("p",{className:"summary-note",children:"Sign in to Admin to see task history."}):s===null?i.jsx("p",{className:"summary-note",children:"Loading task history…"}):i.jsxs(i.Fragment,{children:[i.jsx(Yn,{value:at(j),label:"Running now"}),i.jsx(Yn,{value:at(b),label:"Completed today"}),k>0&&i.jsx(Yn,{value:at(k),label:"Failed today"})]})}),N&&i.jsxs($g,{title:"Models",action:i.jsx(rn,{className:"summary-card-link",to:"/models",children:"Manage →"}),children:[i.jsx(Yn,{value:at(N.routableNow??N.verified),label:"Routable now"}),i.jsx(Yn,{value:at(N.verified),label:"Verified (proven)"}),i.jsx(Yn,{value:at((l==null?void 0:l.trackedModels)??N.total),label:"Tracked models (registry)"}),i.jsx(Yn,{value:at((l==null?void 0:l.trackedProviders)??((O=N.providers)==null?void 0:O.length)??0),label:"Tracked providers (registry)"}),l&&i.jsxs(i.Fragment,{children:[i.jsx(Yn,{value:at(l.listedModels),label:"Listed models (live probe)"}),i.jsx(Yn,{value:at(l.listedProviders),label:"Listed providers (live probe)"})]}),N.parked>0&&i.jsx(Yn,{value:at(N.parked),label:"Quota-parked"})]}),r&&i.jsxs($g,{title:"Gateway Status",action:i.jsx(rn,{className:"summary-card-link",to:"/gateway",children:"Gateway ops →"}),children:[i.jsx(Yn,{value:`${T}/${_.length}`,label:"Platforms configured"}),i.jsx(Yn,{value:at(r.skills.total),label:"Skills loaded"}),i.jsx(Yn,{value:at(r.toolsets.enabled),label:"Toolsets enabled"})]})]}),i.jsxs("aside",{className:"quick-actions","aria-labelledby":"quick-actions-title",children:[i.jsx("h2",{className:"summary-card-title",id:"quick-actions-title",children:"Quick Actions"}),i.jsxs(rn,{className:"quick-action",to:"/tasks",children:[i.jsx("span",{"aria-hidden":"true",children:"🚀"})," Run a CLI command"]}),i.jsxs(rn,{className:"quick-action",to:"/hub",children:[i.jsx("span",{"aria-hidden":"true",children:"🧰"})," Skills & channels"]}),i.jsxs(rn,{className:"quick-action",to:"/models",children:[i.jsx("span",{"aria-hidden":"true",children:"🧠"})," Model registry"]}),i.jsxs(rn,{className:"quick-action",to:"/traces",children:[i.jsx("span",{"aria-hidden":"true",children:"🔍"})," Reasoning traces"]}),i.jsxs(rn,{className:"quick-action",to:"/system",children:[i.jsx("span",{"aria-hidden":"true",children:"⚙️"})," Doctor checks"]})]})]}),i.jsx("h2",{className:"section-subtitle",children:"Key metrics"}),i.jsx("div",{className:"stats-grid",children:g.map(M=>i.jsxs("div",{className:"stat-card",children:[i.jsx("div",{className:"stat-icon",children:M.icon}),i.jsxs("div",{className:"stat-body",children:[i.jsx("div",{className:"stat-value",children:M.value}),i.jsx("div",{className:"stat-label",children:M.label})]})]},M.label))}),i.jsxs("div",{className:"memory-health-card",children:[i.jsx("h2",{className:"section-subtitle",children:"🧠 Memory Health"}),i.jsxs("div",{className:"memory-health-stats",children:[i.jsxs("div",{className:"memory-health-stat",children:[i.jsx("span",{className:"memory-health-value",children:at(h.total)}),i.jsx("span",{className:"memory-health-label",children:"Trajectories"})]}),i.jsxs("div",{className:"memory-health-stat",children:[i.jsx("span",{className:"memory-health-value",children:at(((P=h.facts)==null?void 0:P.total)||0)}),i.jsx("span",{className:"memory-health-label",children:"Facts Learned"})]}),i.jsxs("div",{className:"memory-health-stat",children:[i.jsx("span",{className:"memory-health-value",children:at(((z=h.recall)==null?void 0:z.last7d)||0)}),i.jsx("span",{className:"memory-health-label",children:"Recalls This Week"})]}),i.jsxs("div",{className:"memory-health-stat",children:[i.jsx("span",{className:"memory-health-value",children:p.patterns||0}),i.jsx("span",{className:"memory-health-label",children:"Coding Patterns"})]})]}),i.jsxs("p",{className:"memory-health-status",children:["Memory tier: ",i.jsx("code",{children:h.backend||"local"})," · ","Vector index: ",i.jsx("code",{children:h.vectorBackend||"unknown"}),(L=h.recall)!=null&&L.last7d?` · ${h.recall.last7d} recall(s) this week`:" · no recalls yet"]})]}),i.jsx("h2",{className:"section-subtitle",children:"💰 Cost by Provider"}),i.jsx("div",{className:"chart-container",children:m.length>0?i.jsx(us,{width:"100%",height:260,children:i.jsxs(ds,{data:m,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(oi,{strokeDasharray:"3 3"}),i.jsx(ia,{dataKey:"name",tick:{fontSize:11}}),i.jsx(sa,{tick:{fontSize:11},tickFormatter:M=>"$"+M.toFixed(4)}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"},formatter:M=>[Bb(M),"Cost"]}),i.jsx(yn,{dataKey:"value",radius:[4,4,0,0],children:m.map(M=>i.jsx(uu,{fillOpacity:.8,style:{fill:Yie[M.name]||"var(--accent-blue)"}},M.name))})]})}):i.jsx("div",{className:"empty-state",children:"No cost data yet."})}),i.jsx("h2",{className:"section-subtitle",children:"📊 Trajectories by Project Type"}),i.jsx("div",{className:"chart-container",children:y.length>0?i.jsx(us,{width:"100%",height:260,children:i.jsxs(ds,{data:y,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(oi,{strokeDasharray:"3 3"}),i.jsx(ia,{dataKey:"name",tick:{fontSize:11}}),i.jsx(sa,{tick:{fontSize:11}}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"}}),i.jsx(yn,{dataKey:"value",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-purple)",style:{fill:"var(--accent-purple)"}})]})}):i.jsx("div",{className:"empty-state",children:"No trajectory data yet."})})]})}function Qie(){return i.jsxs("div",{className:"panel",children:[i.jsx(Re,{icon:"❓",title:"Help",description:"What this dashboard is, how to get work done in it, and every keyboard shortcut."}),i.jsxs("section",{className:"help-section",children:[i.jsx("h2",{className:"section-title",children:"Start here"}),i.jsxs("ol",{className:"help-steps",children:[i.jsxs("li",{children:[i.jsx("strong",{children:"Talk to the agent in Chat."})," It is the front door — the other pages are views of what has already happened. ",i.jsx(rn,{to:"/chat",children:"Open Chat"}),"."]}),i.jsxs("li",{children:[i.jsx("strong",{children:"Run a command from Tasks."})," The Command Console executes the same CLI you would type in a terminal, and it can group-browse every command for you."," ",i.jsx(rn,{to:"/tasks",children:"Open Command Console"}),"."]}),i.jsxs("li",{children:[i.jsx("strong",{children:"Sign in for anything that changes something."})," Running a task, editing environment secrets and the Agent Hub toggles all need an admin session. Controls that need one are disabled and say so."," ",i.jsx(rn,{to:"/admin",children:"Go to Admin"}),"."]})]})]}),i.jsxs("section",{className:"help-section",children:[i.jsx("h2",{className:"section-title",children:"How the dashboard is laid out"}),i.jsxs("dl",{className:"help-anatomy",children:[i.jsx("dt",{children:"Top bar"}),i.jsxs("dd",{children:["The cross-cutting views on the left; on the right, ",i.jsx("strong",{children:"Refresh"})," (re-fetches everything the page shows), ",i.jsx("strong",{children:"Shortcuts"})," (the cheatsheet), and ",i.jsx("strong",{children:"Appearance"})," (theme and accessibility)."]}),i.jsx("dt",{children:"Navigation rail"}),i.jsx("dd",{children:"Every remaining destination, grouped by what it is for. The filter box narrows it as you type. Below the width where it becomes a drawer, it opens from the ☰ button."}),i.jsx("dt",{children:"Page body"}),i.jsx("dd",{children:"One page per destination. Each starts with its own title and, where it has one, a short description of what you are looking at."}),i.jsx("dt",{children:"Status footer"}),i.jsx("dd",{children:"Whether the dashboard is connected to the local server, and when it last received data. “Reconnecting” means the live stream dropped and is being retried — the pages keep the last data they had."})]})]}),i.jsxs("section",{className:"help-section",children:[i.jsx("h2",{className:"section-title",children:"Keyboard shortcuts"}),i.jsx("div",{className:"help-shortcuts",children:RT.map(e=>i.jsxs("div",{className:"shortcuts-group",children:[i.jsx("h3",{className:"shortcuts-group-title",children:e.group}),i.jsx("dl",{className:"shortcuts-list",children:e.items.map(t=>i.jsxs("div",{className:"shortcuts-row",children:[i.jsx("dt",{className:"shortcuts-keys",children:t.keys.map(n=>i.jsx("kbd",{className:"shortcuts-key",children:n},n))}),i.jsx("dd",{className:"shortcuts-description",children:t.description})]},t.description))})]},e.group))}),i.jsxs("p",{className:"help-note",children:["Shortcuts are ignored while you are typing, so ",i.jsx("kbd",{className:"shortcuts-key",children:"?"})," in a question stays a question mark. The ",i.jsx("kbd",{className:"shortcuts-key",children:"g"})," chords expire about a second and a half after the prefix, so a stray ",i.jsx("kbd",{className:"shortcuts-key",children:"g"})," cannot navigate somewhere later."]})]}),i.jsxs("section",{className:"help-section",children:[i.jsx("h2",{className:"section-title",children:"Appearance & accessibility"}),i.jsxs("p",{className:"help-body",children:[i.jsx("strong",{children:"Appearance"})," in the top bar offers ",au.length," palettes in light and dark, plus a text size and an accessibility mode. Your choice is remembered in this browser only — nothing is sent anywhere."]}),i.jsxs("dl",{className:"help-anatomy",children:[i.jsx("dt",{children:"Palette"}),i.jsxs("dd",{children:[au.map(e=>rh[e]).join(" · "),". The"," ",rh.contrast," palette is the one to pick when you need maximum legibility."]}),i.jsx("dt",{children:"Mode"}),i.jsxs("dd",{children:[Rp.map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(" or "),". “Reset to system default” goes back to what your operating system asks for."]}),i.jsx("dt",{children:"Text size"}),i.jsx("dd",{children:"Scales the whole interface, not just the body text. Choosing a larger size turns accessibility mode on, because that is what defines it."}),i.jsx("dt",{children:"Accessibility mode"}),i.jsx("dd",{children:"Larger click targets, a thicker focus ring and no motion. Off by default so it never changes the look for anyone who does not need it."})]}),i.jsx("p",{className:"help-note",children:"Focus is always visible: every control draws a ring when reached by keyboard. Opportunistic hover-only effects are never the only cue for a state, and a selected state is carried by a filled shape plus weight rather than a faint tint."})]}),i.jsxs("section",{className:"help-section",children:[i.jsx("h2",{className:"section-title",children:"Where everything lives"}),i.jsxs("dl",{className:"help-anatomy",children:[i.jsx("dt",{children:"Top bar"}),i.jsx("dd",{className:"help-links",children:MT.map(e=>i.jsxs(rn,{to:e.path,children:[i.jsx("span",{"aria-hidden":"true",children:e.icon})," ",e.label]},e.path))})]}),gy.map(e=>i.jsxs("dl",{className:"help-anatomy help-group",children:[i.jsx("dt",{children:e.label}),i.jsx("dd",{className:"help-links",children:e.items.map(t=>i.jsxs(rn,{to:t.path,children:[i.jsx("span",{"aria-hidden":"true",children:t.icon})," ",t.label]},t.path))})]},e.label))]}),i.jsxs("section",{className:"help-section",children:[i.jsx("h2",{className:"section-title",children:"If something looks wrong"}),i.jsxs("dl",{className:"help-anatomy",children:[i.jsx("dt",{children:"A control is disabled"}),i.jsxs("dd",{children:["It needs an admin session. Sign in from ",i.jsx(rn,{to:"/admin",children:"Admin"}),"; the page will say which session it wants."]}),i.jsx("dt",{children:"A task failed"}),i.jsx("dd",{children:"Open it from the Command Console's History — the full output and the exit code are kept per run."}),i.jsx("dt",{children:"The footer says “Reconnecting”"}),i.jsx("dd",{children:"The live stream dropped. The dashboard retries on its own and keeps showing the last data it received; Refresh forces a fresh fetch."}),i.jsx("dt",{children:"A page is empty"}),i.jsxs("dd",{children:["Most pages report “no data yet” rather than a zero, because a zero and an absent source look identical. Check ",i.jsx(rn,{to:"/system",children:"System"})," for the health checks behind it."]})]})]})]})}const KN={planner:"📋","context-gatherer":"📂",writer:"✏️",reviewer:"👁️",tester:"🧪",debugger:"🐛",runner:"▶️",git:"🔀",package:"📦","github-release":"🏷️",security:"🔒",orchestrator:"🎯"},VN={planner:"var(--accent-blue)","context-gatherer":"var(--accent-cyan)",writer:"var(--accent-yellow)",reviewer:"var(--accent-purple)",tester:"var(--accent-green)",debugger:"var(--accent-red)",runner:"var(--accent-blue)",git:"var(--accent-yellow)",package:"var(--accent-yellow)","github-release":"var(--accent-green)",security:"var(--accent-red)",orchestrator:"var(--accent-yellow)"},Lg={planner:"Planner","context-gatherer":"Context",writer:"Writer",reviewer:"Reviewer",tester:"Tester",debugger:"Debugger",runner:"Runner",git:"Git",package:"Package","github-release":"Release",security:"Security",orchestrator:"Orchestrator"},YN={pending:{icon:"⏳",label:"Pending"},running:{icon:"▶️",label:"Running"},completed:{icon:"✅",label:"Done"},failed:{icon:"❌",label:"Failed"}},Zie={pending:"var(--text-muted)",running:"var(--accent-blue)",completed:"var(--accent-green)",failed:"var(--accent-red)"};function Jie(e){if(!e||e.nodes.length===0)return null;const t=e.nodes.map(s=>s.startedAt||0).filter(Boolean),n=e.nodes.map(s=>s.completedAt||0).filter(Boolean),r=t.length>0?Math.min(...t):Date.now(),a=n.length>0?Math.max(...n):Date.now();return{id:`live-${r}`,goal:e.pipeline||"Active execution",startedAt:r,endedAt:n.length>0?a:void 0,success:e.nodes.length>0&&e.nodes.every(s=>s.status==="completed"),totalDurationMs:Math.max(0,a-r),phases:e.nodes.map(s=>({id:s.id,agentType:s.agentType,status:s.status,description:s.description,complexity:s.complexity,summary:s.summary,startedAt:s.startedAt,completedAt:s.completedAt,durationMs:s.startedAt&&s.completedAt?s.completedAt-s.startedAt:void 0}))}}function ese(e,t){const n=[],r=new Set,a=Jie(e);a&&(n.push(a),r.add(a.id));for(const s of(t==null?void 0:t.runs)||[])r.has(s.id)||(n.push(s),r.add(s.id));return n}function Za(e){return e<1e3?`${Math.round(e)}ms`:e<6e4?`${(e/1e3).toFixed(1)}s`:`${Math.floor(e/6e4)}m ${Math.floor(e%6e4/1e3)}s`}function XN(e){return e?new Date(e).toLocaleTimeString("en-US",{hour:"2-digit",minute:"2-digit",second:"2-digit"}):""}function tse(e,t){if(e.length===0)return{laid:[],total:0};const n=e.length,r=e.map(d=>d.durationMs&&d.durationMs>0?d.durationMs:0),a=r.reduce((d,f)=>d+f,0),s=a>0?e.map((d,f)=>r[f]>0?r[f]:a/n):e.map(()=>1),o=s.reduce((d,f)=>d+f,0)||1;let l=0;const c=e.map((d,f)=>{const h=s[f]/o,p=l;return l+=h,{...d,start:p,width:h,dur:s[f]}}),u=t>0?t:o;return{laid:c,total:u}}function nse({runs:e,selectedRunId:t,onSelectRun:n,onScrub:r}){const[a,s]=x.useState(null),o=e.find(N=>N.id===(t??a))??e[0]??null,[l,c]=x.useState(0),[u,d]=x.useState(!1),f=x.useRef(null),h=x.useRef(!1),p=x.useRef(r);x.useEffect(()=>{p.current=r},[r]),x.useEffect(()=>{var N;!o&&e.length>0?s(e[0].id):o&&!e.some(_=>_.id===o.id)&&s(((N=e[0])==null?void 0:N.id)??null)},[e,o]);const{laid:g,total:m}=x.useMemo(()=>tse((o==null?void 0:o.phases)||[],(o==null?void 0:o.totalDurationMs)||0),[o]),y=m>0?Math.min(1,Math.max(0,l/m)):0,v=x.useMemo(()=>{if(m<=0)return null;const N=y*m;return g.find(_=>N>=_.start*m&&N<(_.start+_.width)*m)||null},[g,y,m]);x.useEffect(()=>{var N;(N=p.current)==null||N.call(p,(v==null?void 0:v.id)??null)},[v==null?void 0:v.id]),x.useEffect(()=>{if(!u)return;const N=setInterval(()=>{c(_=>_+m/2e3*50)},50);return()=>clearInterval(N)},[u,m]),x.useEffect(()=>{u&&m>0&&l>=m&&(d(!1),c(0))},[u,m,l]);const S=x.useCallback(N=>{const _=f.current;if(!_||m<=0)return;const T=_.getBoundingClientRect(),C=T.width||1,O=Math.min(1,Math.max(0,(N-T.left)/C));c(O*m)},[m]),w=N=>{h.current=!0,d(!1),S(N.clientX)};if(x.useEffect(()=>{const N=T=>{h.current&&S(T.clientX)},_=()=>{h.current=!1};return window.addEventListener("pointermove",N),window.addEventListener("pointerup",_),()=>{window.removeEventListener("pointermove",N),window.removeEventListener("pointerup",_)}},[S]),!o)return i.jsx("div",{className:"phase-timeline phase-timeline-empty",children:i.jsx("p",{children:"No pipeline runs yet. Run an agent task to see its phase timeline here."})});const j=o.id.startsWith("live-"),k=o.phases.filter(N=>N.status==="completed").length,b=o.phases.filter(N=>N.status==="failed").length;return i.jsxs("div",{className:"phase-timeline",children:[i.jsxs("div",{className:"phase-timeline-header",children:[i.jsx("div",{className:"phase-timeline-runs",children:e.map(N=>i.jsxs("button",{className:`phase-run-chip ${N.id===o.id?"active":""} ${N.id.startsWith("live-")?"live":""}`,onClick:()=>{s(N.id),c(0),d(!1),n==null||n(N.id)},title:N.goal,children:[N.id.startsWith("live-")&&i.jsx("span",{className:"dag-live-dot"}),N.engine&&i.jsx("span",{className:`phase-run-chip-engine phase-run-chip-engine-${N.engine}`,children:N.engine==="loop"?"🔁":"⬡"}),N.goal.length>32?N.goal.slice(0,30)+"…":N.goal,i.jsx("span",{className:"phase-run-chip-time",children:XN(N.startedAt)})]},N.id))}),i.jsxs("div",{className:"phase-timeline-meta",children:[j&&i.jsx("span",{className:"dag-live-badge",children:"LIVE"}),o.engine&&i.jsx("span",{className:`dag-engine-badge dag-engine-${o.engine}`,title:o.engine==="loop"?"Loop turn (per-tool telemetry below)":"Orchestrator pipeline",children:o.engine==="loop"?"🔁 loop":"⬡ pipeline"}),i.jsxs("span",{className:"phase-meta-item",children:[o.phases.length," steps"]}),i.jsxs("span",{className:"phase-meta-item phase-meta-ok",children:["✅ ",k]}),b>0&&i.jsxs("span",{className:"phase-meta-item phase-meta-bad",children:["❌ ",b]}),o.turnTelemetry&&i.jsxs("span",{className:"phase-meta-item",title:`tool calls: ${o.turnTelemetry.toolCallCount}, errored: ${o.turnTelemetry.erroredToolCount}${o.turnTelemetry.bounded?", bounded":""}${o.turnTelemetry.provider?`, ${o.turnTelemetry.provider}${o.turnTelemetry.model?`/${o.turnTelemetry.model}`:""}`:""}`,children:["🔧 ",o.turnTelemetry.toolCallCount,o.turnTelemetry.erroredToolCount>0&&i.jsxs("span",{className:"phase-meta-bad",children:[" (",o.turnTelemetry.erroredToolCount," err)"]})]}),i.jsxs("span",{className:"phase-meta-item",children:["⏱ ",Za(m)]})]})]}),i.jsxs("div",{className:"phase-timeline-controls",children:[i.jsx("button",{className:`phase-play-btn ${u?"paused":""}`,onClick:()=>{u?d(!1):(l>=m&&c(0),d(!0))},"aria-label":u?"Pause scrub":"Play scrub",children:u?"⏸ Pause":"▶ Play"}),i.jsxs("span",{className:"phase-time-label",children:[Za(l)," / ",Za(m)]}),i.jsx("input",{className:"phase-range",type:"range",min:0,max:m||1,step:1,value:Math.min(l,m||1),onChange:N=>{d(!1),c(Number(N.target.value))},"aria-label":"Scrub pipeline timeline"})]}),i.jsxs("div",{className:"phase-track-wrap",children:[i.jsxs("div",{ref:f,className:"phase-track",onPointerDown:w,style:{cursor:"grab"},children:[g.map(N=>{const _=VN[N.agentType]||"var(--accent-blue)",T=Zie[N.status],C=(v==null?void 0:v.id)===N.id;return i.jsxs("button",{className:`phase-block phase-block-${N.status} ${C?"active":""}`,style:{left:`${N.start*100}%`,width:`${Math.max(N.width*100,2)}%`,background:`linear-gradient(180deg, ${_}cc, ${_}66)`,boxShadow:C?`0 0 0 2px ${T}`:void 0},onClick:O=>{O.stopPropagation(),d(!1),c((N.start+N.width/2)*m)},title:`${Lg[N.agentType]||N.agentType}: ${N.description}`,children:[i.jsx("span",{className:"phase-block-icon",children:KN[N.agentType]||"⚙️"}),i.jsx("span",{className:"phase-block-label",children:Lg[N.agentType]||N.agentType})]},N.id)}),i.jsx("div",{className:"phase-caret",style:{left:`${y*100}%`},onPointerDown:N=>{N.stopPropagation(),w(N)},title:`${Za(l)} elapsed`})]}),i.jsxs("div",{className:"phase-ticks",children:[i.jsx("span",{children:"0"}),i.jsx("span",{children:Za(Math.round(m/2))}),i.jsx("span",{children:Za(m)})]})]}),i.jsx("div",{className:"phase-detail",children:v?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"phase-detail-title",children:[i.jsx("span",{className:"phase-detail-icon",children:KN[v.agentType]||"⚙️"}),i.jsx("span",{className:"phase-detail-agent",style:{color:VN[v.agentType]||"var(--accent-blue)"},children:Lg[v.agentType]||v.agentType}),i.jsxs("span",{className:`phase-status-badge phase-status-${v.status}`,children:[YN[v.status].icon," ",YN[v.status].label]})]}),i.jsx("p",{className:"phase-detail-desc",children:v.description}),i.jsxs("div",{className:"phase-detail-meta",children:[i.jsxs("span",{children:["⏱ ",v.durationMs?Za(v.dur):`~${Za(v.dur)}`]}),v.startedAt?i.jsxs("span",{children:["🕐 ",XN(v.startedAt)]}):null,v.complexity?i.jsxs("span",{children:["🎯 ",v.complexity]}):null]}),v.summary&&i.jsx("p",{className:"phase-detail-summary",children:v.summary})]}):i.jsxs("div",{className:"phase-detail-gap",children:[i.jsx("span",{className:"phase-detail-icon",children:"⏳"}),i.jsx("span",{children:"Between steps — waiting for the next agent."})]})})]})}function Dg(e){return e===void 0?"—":`$${e.toFixed(5)}`}function QN(e){if(e===void 0||!Number.isFinite(e)||e<0)return"—";if(e<1e3)return`${Math.round(e)}ms`;const t=e/1e3;if(t<60)return`${t.toFixed(1)}s`;const n=Math.floor(t/60);return n<60?`${n}m ${String(Math.round(t%60)).padStart(2,"0")}s`:`${Math.floor(n/60)}h ${String(n%60).padStart(2,"0")}m`}function Bg(e){return e===void 0?"—":e.toLocaleString("en-US")}function rse({jobs:e}){const t=x.useMemo(()=>e.filter(u=>u.batchStats.length>0),[e]),[n,r]=x.useState(null);if(t.length===0)return null;const a=t.find(u=>u.id===n)??t[0],s=a.batchStats,o=s.filter(u=>u.durationMs!==void 0),l=o.reduce((u,d)=>u+(d.durationMs??0),0),c=o.length>0?l/o.length:void 0;return i.jsxs("div",{className:"dag-timeline-section","data-testid":"batch-economy",children:[i.jsxs("h2",{className:"section-subtitle",children:["📊 Per-batch cost & latency"," ",i.jsx("span",{className:"timeline-subtitle",children:"— measured, not estimated"})]}),t.length>1&&i.jsx("div",{className:"dag-loop-turn-meta",style:{marginBottom:8},children:t.slice(0,5).map(u=>i.jsx("button",{type:"button",className:"dag-loop-turn-chip",onClick:()=>r(u.id),style:{cursor:"pointer",opacity:u.id===a.id?1:.55,fontWeight:u.id===a.id?600:400},children:u.progressLine??u.goal.slice(0,40)},u.id))}),i.jsxs("div",{className:"dag-loop-turn-meta",style:{marginBottom:8},children:[i.jsxs("span",{className:"dag-loop-turn-chip",children:[a.kind==="long-form"?"📖":"🛠️"," ",a.status]}),i.jsxs("span",{className:"dag-loop-turn-chip",children:[a.progress,"% done"]}),i.jsxs("span",{className:"dag-loop-turn-chip",children:[a.batches," batch",a.batches===1?"":"es"]}),i.jsxs("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-dim",children:[Bg(a.tokens)," tokens · ",Dg(a.costUsd)]}),a.stopReason&&i.jsxs("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-dim",children:["stopped: ",a.stopReason]})]}),i.jsx("div",{className:"dag-table-wrapper",children:i.jsxs("table",{className:"dag-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Batch"}),i.jsx("th",{children:"Done"}),i.jsx("th",{children:"Tokens"}),i.jsx("th",{children:"Cost"}),i.jsx("th",{children:"Time"})]})}),i.jsxs("tbody",{children:[s.map(u=>i.jsxs("tr",{children:[i.jsx("td",{children:u.index}),i.jsx("td",{children:`${Math.round(u.progress)}%`}),i.jsx("td",{children:Bg(u.tokens)}),i.jsx("td",{children:Dg(u.costUsd)}),i.jsx("td",{children:QN(u.durationMs)})]},u.index)),s.some(u=>u.error)&&i.jsx("tr",{children:i.jsxs("td",{colSpan:5,style:{opacity:.75},children:["✗ failures:"," ",s.filter(u=>u.error).map(u=>`#${u.index} ${u.error}`).join(" · ")]})}),i.jsxs("tr",{children:[i.jsx("td",{children:i.jsx("strong",{children:"total"})}),i.jsx("td",{children:i.jsx("strong",{children:`${a.progress}%`})}),i.jsx("td",{children:i.jsx("strong",{children:Bg(a.tokens)})}),i.jsx("td",{children:i.jsx("strong",{children:Dg(a.costUsd)})}),i.jsx("td",{children:i.jsx("strong",{children:c===void 0?"—":`~${QN(c)} avg`})})]})]})]})})]})}const ZN={planner:"📋","context-gatherer":"📂",writer:"✏️",reviewer:"👁️",tester:"🧪",debugger:"🐛",runner:"▶️",git:"🔀",package:"📦","github-release":"🏷️",security:"🔒",orchestrator:"🎯"},zg={planner:"var(--accent-blue)","context-gatherer":"var(--accent-cyan)",writer:"var(--accent-yellow)",reviewer:"var(--accent-purple)",tester:"var(--accent-green)",debugger:"var(--accent-red)",runner:"var(--accent-blue)",git:"var(--accent-yellow)",package:"var(--accent-yellow)","github-release":"var(--accent-green)",security:"var(--accent-red)",orchestrator:"var(--accent-yellow)"},ase={pending:{bg:"var(--bg-card)",stroke:"var(--border)",text:"var(--text-muted)"},running:{bg:"color-mix(in srgb, var(--accent-blue) 12%, transparent)",stroke:"var(--accent-blue)",text:"var(--accent-blue)"},completed:{bg:"color-mix(in srgb, var(--accent-green) 12%, transparent)",stroke:"var(--accent-green)",text:"var(--accent-green)"},failed:{bg:"color-mix(in srgb, var(--accent-red) 12%, transparent)",stroke:"var(--accent-red)",text:"var(--accent-red)"}},JN={pending:"⏳ Pending",running:"▶️ Running",completed:"✅ Done",failed:"❌ Failed"},io={trivial:{icon:"🟢",color:"var(--accent-green)"},simple:{icon:"🔵",color:"var(--accent-blue)"},moderate:{icon:"🟡",color:"var(--accent-yellow)"},complex:{icon:"🟠",color:"var(--accent-yellow)"},critical:{icon:"🔴",color:"var(--accent-red)"}},Fg={planner:"Planner","context-gatherer":"Context",writer:"Writer",reviewer:"Reviewer",tester:"Tester",debugger:"Debugger",runner:"Runner",git:"Git",package:"Package","github-release":"Release",security:"Security",orchestrator:"Orchestrator"};function ise(e,t,n=160,r=68,a=40,s=24,o=40){if(e.length===0)return{layoutNodes:[],svgW:400,svgH:200};const l=new Map,c=new Set;function u(y){if(l.has(y))return l.get(y);if(c.has(y))return 0;c.add(y);const v=t.filter(j=>j.to===y);if(v.length===0)return l.set(y,0),0;const w=Math.max(...v.map(j=>u(j.from)))+1;return l.set(y,w),w}for(const y of e)u(y.id);const d=new Map;for(const y of e){const v=l.get(y.id)??0;d.has(v)||d.set(v,[]),d.get(v).push(y)}const f=Math.max(...d.keys()),h=Math.max(...Array.from(d.values()).map(y=>y.length)),p=(f+1)*(n+a)+o*2-a,g=Math.max(h,1)*(r+s)+o*2-s,m=[];for(const y of e){const v=l.get(y.id)??0,S=d.get(v),w=S.indexOf(y),j=S.length,k=j*(r+s)-s,b=g/2-k/2;m.push({...y,x:o+v*(n+a),y:b+w*(r+s),w:n,h:r,step:v,totalInStep:j,indexInStep:w})}return{layoutNodes:m,svgW:p,svgH:g}}function Ug(e,t){if(!e)return"--";const n=(t||Date.now())-e;return n<1e3?`${n}ms`:n<6e4?`${(n/1e3).toFixed(1)}s`:`${Math.floor(n/6e4)}m ${Math.floor(n%6e4/1e3)}s`}function eE(e){return e?new Date(e).toLocaleTimeString("en-US",{minute:"2-digit",second:"2-digit"}):""}function sse({memoryTotal:e}){return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"🔀",title:"Agent Execution DAG"}),i.jsx("p",{className:"section-description",children:"Live visualization of the agent execution pipeline. When an agent task runs, you'll see each step appear here in real time as it moves through planning → context gathering → writing → review → testing."}),i.jsxs("div",{className:"dag-empty",children:[i.jsx("div",{className:"dag-empty-icon",children:"🔀"}),i.jsx("h2",{children:"No Active Pipeline"}),i.jsx("p",{children:"Run an agent task to see the execution pipeline appear here in real time."}),e!==void 0&&e>0&&i.jsxs("p",{className:"dag-empty-hint",children:[i.jsx("code",{children:e})," past executions are stored in memory."]})]})]})}function ose({data:e}){var A,J;const t=e==null?void 0:e.dag,n=(A=e==null?void 0:e.memory)==null?void 0:A.total,[r,a]=x.useState(null),[s,o]=x.useState(null),[l,c]=x.useState(void 0),[u,d]=x.useState(void 0),[f,h]=x.useState(void 0);x.useEffect(()=>K.onDAGEvent($=>{a($),c($.engine),d($.engineExplanation),h($.loopTurn)}),[]);const p=t||r,g=r?l:(t==null?void 0:t.engine)??l,m=r?u:(t==null?void 0:t.engineExplanation)??u,y=r?f:(t==null?void 0:t.loopTurn)??f,v=x.useMemo(()=>ese(p,e==null?void 0:e.pipelineRuns),[p,e==null?void 0:e.pipelineRuns]),S=F=>{o(F)},w=!!(p&&(p.nodes.length>0||p.active)),j=v.length>0,k=!!y,b=((J=e==null?void 0:e.unattendedJobs)==null?void 0:J.jobs)??[],N=b.some(F=>F.batchStats.length>0);if(!w&&!j&&!k&&!N)return i.jsx(sse,{memoryTotal:n});const{nodes:_,edges:T,pipeline:C,active:O}=p??{nodes:[],edges:[],pipeline:null,active:!1},{layoutNodes:P,svgW:z,svgH:L}=ise(_,T),M=_.filter(F=>F.status==="running").length,D=_.filter(F=>F.status==="completed").length,W=_.filter(F=>F.status==="failed").length,R=_.filter(F=>F.status==="pending").length,B=_.length;return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"🔀",title:"Agent Execution DAG"}),j&&i.jsxs("div",{className:"dag-timeline-section",children:[i.jsxs("h2",{className:"section-subtitle",children:["⏱ Run Timeline ",i.jsx("span",{className:"timeline-subtitle",children:"— scrub to replay · click a run to switch"})]}),i.jsx(nse,{runs:v,onScrub:S})]}),i.jsx(rse,{jobs:b}),y&&i.jsxs("div",{className:"dag-loop-turn-card","data-testid":"dag-loop-turn-card",children:[i.jsxs("div",{className:"dag-loop-turn-header",children:[i.jsx("span",{className:"dag-loop-turn-icon",children:"🔁"}),i.jsxs("span",{className:"dag-loop-turn-title",children:["Loop turn — ",y.title||"chat turn"]}),y.active&&i.jsx("span",{className:"dag-loop-turn-live",children:"● recording"})]}),i.jsxs("div",{className:"dag-loop-turn-meta",children:[i.jsxs("span",{className:"dag-loop-turn-chip",children:["🔧 ",y.toolCallCount," tool call",y.toolCallCount===1?"":"s"]}),y.erroredToolCount>0&&i.jsxs("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-error",children:["❌ ",y.erroredToolCount," errored"]}),y.provider&&i.jsxs("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-dim",children:[y.provider,y.model?` · ${y.model}`:""]}),typeof y.startedAt=="number"&&i.jsxs("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-dim",children:["⏱ ",Ug(y.startedAt,y.endedAt)]}),y.bounded&&i.jsx("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-error",children:"⛔ bounded"}),y.generationFailed&&i.jsx("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-error",children:"💀 generation failed"}),y.cancelled&&i.jsx("span",{className:"dag-loop-turn-chip dag-loop-turn-chip-dim",children:"✖ cancelled"})]}),y.toolCalls.length>0&&i.jsx("div",{className:"dag-loop-turn-tools",children:y.toolCalls.slice(-12).map((F,$)=>i.jsxs("span",{className:`dag-loop-tool ${F.ok===!1?"dag-loop-tool-error":""}`,title:F.error||`${F.tool}${F.durationMs!==void 0?` · ${F.durationMs}ms`:""}`,children:[F.ok===!1?"❌":"✓"," ",F.tool]},`${F.tool}-${$}`))})]}),w&&i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:`dag-status-bar ${O?"active":""}`,children:[i.jsxs("div",{className:"dag-pipeline-name",children:[O&&i.jsx("span",{className:"dag-live-dot"}),C||"Execution Pipeline"]}),i.jsxs("div",{className:"dag-pipeline-meta",children:[O&&i.jsx("span",{className:"dag-live-badge",children:"LIVE"}),g&&i.jsx("span",{className:`dag-engine-badge dag-engine-${g}`,title:m||(g==="loop"?"Single agentic loop":"Orchestrator pipeline"),"data-testid":"dag-engine-badge",children:g==="loop"?"🔁 loop engine":"⬡ pipeline engine"}),i.jsxs("span",{className:"dag-step-count",children:[B," steps"]}),M>0&&i.jsxs("span",{className:"dag-running-badge",children:["▶ ",M," running"]}),R>0&&i.jsxs("span",{className:"dag-pending-badge",children:["⏳ ",R," pending"]}),i.jsxs("span",{className:"dag-completed-badge",children:["✅ ",D," done"]}),W>0&&i.jsxs("span",{className:"dag-failed-badge",children:["❌ ",W," failed"]})]})]}),i.jsx("div",{className:"dag-container",children:i.jsxs("svg",{width:z,height:L,viewBox:`0 0 ${z} ${L}`,children:[i.jsxs("defs",{children:[T.map(F=>i.jsx("marker",{id:`arrow-${F.from}-${F.to}`,markerWidth:"8",markerHeight:"6",refX:"8",refY:"3",orient:"auto",children:i.jsx("polygon",{points:"0 0, 8 3, 0 6",style:{fill:"var(--accent-blue)"}})},`arrow-${F.from}-${F.to}`)),i.jsxs("filter",{id:"glow",children:[i.jsx("feGaussianBlur",{stdDeviation:"3",result:"coloredBlur"}),i.jsxs("feMerge",{children:[i.jsx("feMergeNode",{in:"coloredBlur"}),i.jsx("feMergeNode",{in:"SourceGraphic"})]})]})]}),T.map(F=>{const $=P.find(H=>H.id===F.from),ie=P.find(H=>H.id===F.to);if(!$||!ie)return null;const de=$.x+$.w,me=$.y+$.h/2,Te=ie.x,Q=ie.y+ie.h/2,X=(de+Te)/2,ae=ie.status,ce=ae==="failed"?"var(--accent-red)":ae==="running"?"var(--accent-blue)":ae==="completed"?"var(--accent-green)":"var(--border)";return i.jsx("g",{children:i.jsx("path",{d:`M ${de} ${me} C ${X} ${me}, ${X} ${Q}, ${Te} ${Q}`,fill:"none",style:{stroke:ce},strokeWidth:ae==="pending"?1.5:2.5,strokeOpacity:ae==="pending"?.3:.8,markerEnd:`url(#arrow-${F.from}-${F.to})`,className:"dag-edge"})},`edge-${F.from}-${F.to}`)}),P.map(F=>{const $=ase[F.status];zg[F.agentType];const ie=ZN[F.agentType]||"⚙️",de=Fg[F.agentType]||F.agentType,me=s===F.id,Te=F.status==="running";return i.jsxs("g",{onClick:()=>o(me?null:F.id),style:{cursor:"pointer"},className:"dag-node-group",children:[me&&i.jsx("rect",{x:F.x-4,y:F.y-4,width:F.w+8,height:F.h+8,rx:10,ry:10,fill:"none",style:{stroke:"var(--accent-blue)"},strokeWidth:2,strokeOpacity:.5}),i.jsx("rect",{x:F.x,y:F.y,width:F.w,height:F.h,rx:8,ry:8,style:{fill:$.bg,stroke:$.stroke},strokeWidth:Te?2.5:1.5,strokeOpacity:.9,className:Te?"dag-node-running":"",filter:Te?"url(#glow)":void 0}),i.jsxs("text",{x:F.x+10,y:F.y+22,style:{fill:"var(--text-primary)"},fontSize:10,fontWeight:600,children:[ie," ",de]}),i.jsx("text",{x:F.x+F.w-10,y:F.y+22,textAnchor:"end",style:{fill:$.text},fontSize:9,fontWeight:500,children:JN[F.status]}),i.jsx("text",{x:F.x+10,y:F.y+40,style:{fill:"var(--text-secondary)"},fontSize:9,children:F.description.length>28?F.description.slice(0,26)+"..":F.description}),F.complexity&&io[F.complexity]&&i.jsxs("text",{x:F.x+10,y:F.y+54,style:{fill:io[F.complexity].color},fontSize:8,fontWeight:600,children:[io[F.complexity].icon," ",F.complexity]}),i.jsx("text",{x:F.x+10,y:F.y+56,style:{fill:"var(--text-muted)"},fontSize:8,children:Ug(F.startedAt,F.completedAt)}),i.jsx("text",{x:F.x+F.w-10,y:F.y+56,textAnchor:"end",style:{fill:"var(--text-muted)"},fontSize:8,children:eE(F.startedAt||F.completedAt)}),(F.status==="failed"||me)&&F.summary&&i.jsx("foreignObject",{x:Math.max(10,F.x-80),y:F.y+F.h+6,width:F.w+160,height:36,children:i.jsx("div",{className:"dag-node-summary",style:{color:F.status==="failed"?"var(--accent-red)":"var(--text-secondary)",fontSize:"10px",lineHeight:1.4,background:"var(--scrim)",padding:"4px 8px",borderRadius:"4px",border:`1px solid ${F.status==="failed"?"color-mix(in srgb, var(--accent-red) 30%, transparent)":"color-mix(in srgb, var(--border) 50%, transparent)"}`,maxHeight:"32px",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:F.summary})})]},`node-${F.id}`)})]})}),i.jsx("h2",{className:"section-subtitle",children:"Step Details"}),i.jsx("div",{className:"dag-table-wrapper",children:i.jsxs("table",{className:"dag-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Step"}),i.jsx("th",{children:"Agent"}),i.jsx("th",{children:"Complexity"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Duration"}),i.jsx("th",{children:"Time"}),i.jsx("th",{children:"Summary"})]})}),i.jsx("tbody",{children:P.map(F=>i.jsxs("tr",{className:`dag-row dag-row-${F.status}`,children:[i.jsx("td",{className:"dag-cell-step",children:F.step}),i.jsxs("td",{className:"dag-cell-agent",children:[i.jsx("span",{className:"dag-agent-dot",style:{background:zg[F.agentType]||"var(--accent-blue)"}}),Fg[F.agentType]||F.agentType]}),i.jsx("td",{className:"dag-cell-complexity",children:F.complexity&&io[F.complexity]?i.jsxs("span",{style:{color:io[F.complexity].color,fontSize:12},children:[io[F.complexity].icon," ",F.complexity]}):i.jsx("span",{style:{color:"var(--text-muted)",fontSize:12},children:"—"})}),i.jsx("td",{className:`dag-cell-status dag-status-${F.status}`,children:JN[F.status]}),i.jsx("td",{className:"dag-cell-duration",children:Ug(F.startedAt,F.completedAt)}),i.jsx("td",{className:"dag-cell-time",children:eE(F.startedAt||F.completedAt)}),i.jsx("td",{className:"dag-cell-summary",children:F.summary||F.description||"--"})]},F.id))})]})}),i.jsx("h2",{className:"section-subtitle",children:"Agent Types"}),i.jsxs("div",{className:"dag-legend",children:[Object.entries(ZN).map(([F,$])=>i.jsxs("div",{className:"legend-item",children:[i.jsx("span",{className:"legend-dot",style:{background:zg[F]||"var(--accent-blue)"}}),i.jsx("span",{className:"legend-icon",children:$}),i.jsx("span",{className:"legend-label",children:Fg[F]||F})]},F)),i.jsxs("div",{className:"legend-item",children:[i.jsx("span",{className:"legend-dot",style:{background:"transparent",border:"2px dashed var(--accent-blue)"}}),i.jsx("span",{className:"legend-icon",children:"⚡"}),i.jsx("span",{className:"legend-label",children:"Live node"})]})]})]})]})}function Ja(e){return e==null||e<1e-5?"$0.00":e<.01?"$"+e.toFixed(6):"$"+e.toFixed(4)}function so(e){return e==null?"0":e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":kt(e)}function lse(e){return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function cse({data:e}){if(!e)return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"💰",title:"Cost Tracking"}),i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading cost data..."})})]});const{cost:t}=e,n=Object.entries(t.byProvider||{}).sort(([,s],[,o])=>o-s),r=Object.entries(t.byModel||{}).sort(([,s],[,o])=>o-s).slice(0,10),a=n.reduce((s,[,o])=>s+o,0);return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"💰",title:"Cost Tracking"}),i.jsxs("div",{className:"cost-summary",children:[i.jsxs("div",{className:"cost-total",children:[i.jsx("span",{className:"cost-label",children:"Total Spent"}),i.jsx("span",{className:"cost-amount",children:Ja(t.totalCost)})]}),i.jsxs("div",{className:"cost-total",children:[i.jsx("span",{className:"cost-label",children:"Total Tokens"}),i.jsx("span",{className:"cost-amount",children:so(t.totalTokens)})]}),i.jsxs("div",{className:"cost-total",children:[i.jsx("span",{className:"cost-label",children:"Total Requests"}),i.jsx("span",{className:"cost-amount",children:so(t.totalRequests)})]})]}),i.jsxs("div",{className:"cost-summary cost-summary-sub",children:[i.jsxs("div",{className:"cost-total",children:[i.jsx("span",{className:"cost-label",children:"📏 Measured (exact wire tokens)"}),i.jsx("span",{className:"cost-amount",children:Ja(t.measuredCost)}),i.jsxs("span",{className:"cost-label",children:[so(t.measuredCalls)," calls"]})]}),i.jsxs("div",{className:"cost-total",children:[i.jsx("span",{className:"cost-label",children:"📐 Estimated (length-based)"}),i.jsx("span",{className:"cost-amount",children:Ja(t.estimatedCost)}),i.jsxs("span",{className:"cost-label",children:[so(t.estimatedCalls)," calls"]})]}),i.jsxs("div",{className:"cost-total",children:[i.jsx("span",{className:"cost-label",children:"🧾 of which provider-reported (exact billed)"}),i.jsx("span",{className:"cost-amount",children:Ja(t.reportedCost)}),i.jsxs("span",{className:"cost-label",children:[so(t.reportedCalls)," calls"]})]})]}),i.jsx("h2",{className:"section-subtitle",children:"By Provider"}),i.jsx("div",{className:"cost-list",children:n.length===0?i.jsx("div",{className:"empty-state",children:"No costs recorded yet."}):n.map(([s,o])=>{var u;const l=a>0?(o/a*100).toFixed(1):"0",c=(u=t.byProviderReported)==null?void 0:u[s];return i.jsxs("div",{className:"cost-row",children:[i.jsx("span",{className:"cost-row-name",children:s}),i.jsx("div",{className:"cost-row-bar",children:i.jsx("div",{className:"cost-row-fill",style:{width:`${l}%`}})}),i.jsx("span",{className:"cost-row-value",children:Ja(o)}),typeof c=="number"&&i.jsxs("span",{className:"cost-row-reported",title:"Provider-reported (exact billed) cost",children:["🧾 ",Ja(c)]})]},s)})}),i.jsx("h2",{className:"section-subtitle",children:"By Model"}),i.jsx("div",{className:"cost-list",children:r.length===0?i.jsx("div",{className:"empty-state",children:"No model costs recorded yet."}):r.map(([s,o])=>{const l=a>0?(o/a*100).toFixed(1):"0",c=s.length>30?s.slice(0,28)+"..":s;return i.jsxs("div",{className:"cost-row",children:[i.jsx("span",{className:"cost-row-name",children:c}),i.jsx("div",{className:"cost-row-bar",children:i.jsx("div",{className:"cost-row-fill",style:{width:`${l}%`}})}),i.jsx("span",{className:"cost-row-value",children:Ja(o)})]},s)})}),i.jsx("h2",{className:"section-subtitle",children:"Recent Requests"}),i.jsx("div",{className:"request-list",children:!t.recent||t.recent.length===0?i.jsx("div",{className:"empty-state",children:"No requests recorded yet."}):t.recent.slice(0,30).map((s,o)=>i.jsxs("div",{className:"request-row",children:[i.jsx("span",{className:"request-time",children:lse(s.timestamp)}),i.jsx("span",{className:"request-provider",children:s.provider||"--"}),i.jsx("span",{className:"request-model",children:s.model||"--"}),i.jsxs("span",{className:"request-cost",children:[s.reported?"🧾 ":"",Ja(s.costUsd)]}),i.jsxs("span",{className:"request-tokens",children:[so(s.totalTokens)," tok"]})]},o))})]})}function use(e){return e==null?"$0.00":"$"+e.toFixed(6)}function tf(e){return e==null?"0%":(e*100).toFixed(1)+"%"}function dse({data:e}){if(!e)return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"📈",title:"Benchmark Results"}),i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading benchmark data..."})})]});const{benchmarks:t,evals:n}=e,r=t.latest,a=t.runs||[],s=(n==null?void 0:n.runs)||[],o=(n==null?void 0:n.latest)||null,l=s.map(u=>({name:u.model.length>12?u.model.slice(0,10)+"..":u.model,score:Math.round(u.summary.avgCompositeScore*100),completion:Math.round(u.summary.completionRate*100),tests:Math.round(u.summary.testPassRate*100),recovery:Math.round(u.summary.recoveryRate*100),efficiency:Math.round(u.summary.avgTokenEfficiency*100),fullModel:u.model,provider:u.provider})).reverse(),c=a.map(u=>({name:u.model.length>12?u.model.slice(0,10)+"..":u.model,passRate:u.summary.totalTasks>0?Math.round(u.summary.tasksPassed/u.summary.totalTasks*100):0,quality:Math.round(u.summary.avgQualityScore*100),latency:u.summary.medianLatencyMs,cost:u.summary.totalCostUsd,fullModel:u.model,provider:u.provider})).reverse();return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"📈",title:"Benchmark Results"}),i.jsx("div",{className:"benchmark-latest",children:r?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"benchmark-header",children:[i.jsx("strong",{children:"Latest Run:"})," ",r.provider,"/",r.model]}),i.jsxs("div",{className:"benchmark-stats",children:[i.jsxs("div",{className:"benchmark-stat pass",children:[i.jsxs("div",{className:"benchmark-stat-value",children:[r.summary.tasksPassed,"/",r.summary.totalTasks]}),i.jsx("div",{className:"benchmark-stat-label",children:"Passed"})]}),i.jsxs("div",{className:"benchmark-stat quality",children:[i.jsx("div",{className:"benchmark-stat-value",children:tf(r.summary.avgQualityScore)}),i.jsx("div",{className:"benchmark-stat-label",children:"Quality"})]}),i.jsxs("div",{className:"benchmark-stat latency",children:[i.jsxs("div",{className:"benchmark-stat-value",children:[r.summary.medianLatencyMs,"ms"]}),i.jsx("div",{className:"benchmark-stat-label",children:"Latency"})]}),i.jsxs("div",{className:"benchmark-stat fail",children:[i.jsx("div",{className:"benchmark-stat-value",children:use(r.summary.totalCostUsd)}),i.jsx("div",{className:"benchmark-stat-label",children:"Cost"})]})]})]}):i.jsxs("div",{className:"empty-state",children:["No benchmark runs yet. Run ",i.jsx("code",{children:"buff benchmark"})," to start."]})}),c.length>1&&i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"Pass Rate by Model"}),i.jsx("div",{className:"chart-container",children:i.jsx(us,{width:"100%",height:260,children:i.jsxs(ds,{data:c,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(oi,{strokeDasharray:"3 3"}),i.jsx(ia,{dataKey:"name",tick:{fontSize:11}}),i.jsx(sa,{domain:[0,100],tick:{fontSize:11},tickFormatter:u=>u+"%"}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"},formatter:u=>[u+"%","Pass Rate"]}),i.jsx(yn,{dataKey:"passRate",radius:[4,4,0,0],children:c.map((u,d)=>i.jsx(uu,{fillOpacity:.8,style:{fill:u.passRate>=80?"var(--accent-green)":u.passRate>=50?"var(--accent-yellow)":"var(--accent-red)"}},d))})]})})}),i.jsx("h2",{className:"section-subtitle",children:"Latency by Model"}),i.jsx("div",{className:"chart-container",children:i.jsx(us,{width:"100%",height:260,children:i.jsxs(ds,{data:c,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(oi,{strokeDasharray:"3 3"}),i.jsx(ia,{dataKey:"name",tick:{fontSize:11}}),i.jsx(sa,{tick:{fontSize:11},tickFormatter:u=>u+"ms"}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"},formatter:u=>[u+"ms","Latency"]}),i.jsx(yn,{dataKey:"latency",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-yellow)",style:{fill:"var(--accent-yellow)"}})]})})}),i.jsx("h2",{className:"section-subtitle",children:"Cost by Model"}),i.jsx("div",{className:"chart-container",children:i.jsx(us,{width:"100%",height:260,children:i.jsxs(ds,{data:c,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(oi,{strokeDasharray:"3 3"}),i.jsx(ia,{dataKey:"name",tick:{fontSize:11}}),i.jsx(sa,{tick:{fontSize:11},tickFormatter:u=>"$"+u.toFixed(6)}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"},formatter:u=>["$"+u.toFixed(6),"Cost"]}),i.jsx(yn,{dataKey:"cost",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-purple)",style:{fill:"var(--accent-purple)"}})]})})})]}),i.jsx("h2",{className:"section-subtitle",children:"🎯 Agent Evaluation"}),i.jsx("p",{className:"section-hint",style:{color:"var(--text-secondary)",fontSize:12,marginBottom:16},children:"End-to-end coding tasks run through the full agent pipeline — measures if the agent is actually improving."}),i.jsx("div",{className:"benchmark-latest",children:o?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"benchmark-header",children:[i.jsx("strong",{children:"Latest Eval Run:"})," ",o.provider,"/",o.model]}),i.jsxs("div",{className:"benchmark-stats",children:[i.jsxs("div",{className:"benchmark-stat pass",children:[i.jsxs("div",{className:"benchmark-stat-value",children:[o.summary.tasksPassed,"/",o.summary.totalTasks]}),i.jsx("div",{className:"benchmark-stat-label",children:"Tests Passed"})]}),i.jsxs("div",{className:"benchmark-stat quality",children:[i.jsx("div",{className:"benchmark-stat-value",children:tf(o.summary.avgCompositeScore)}),i.jsx("div",{className:"benchmark-stat-label",children:"Composite Score"})]}),i.jsxs("div",{className:"benchmark-stat latency",children:[i.jsx("div",{className:"benchmark-stat-value",children:tf(o.summary.recoveryRate)}),i.jsx("div",{className:"benchmark-stat-label",children:"Recovery Rate"})]}),i.jsxs("div",{className:"benchmark-stat fail",children:[i.jsx("div",{className:"benchmark-stat-value",children:o.summary.totalRollbacks}),i.jsx("div",{className:"benchmark-stat-label",children:"Rollbacks"})]}),i.jsxs("div",{className:"benchmark-stat deps",children:[i.jsx("div",{className:"benchmark-stat-value",children:tf(o.summary.dependencyInstallRate)}),i.jsx("div",{className:"benchmark-stat-label",children:"Deps Installed"})]})]})]}):i.jsxs("div",{className:"empty-state",children:["No eval runs yet. Run ",i.jsx("code",{children:"buff eval run"})," to measure the agent end-to-end."]})}),l.length>1&&i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"Composite Score by Model"}),i.jsx("div",{className:"chart-container",children:i.jsx(us,{width:"100%",height:260,children:i.jsxs(ds,{data:l,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(oi,{strokeDasharray:"3 3"}),i.jsx(ia,{dataKey:"name",tick:{fontSize:11}}),i.jsx(sa,{domain:[0,100],tick:{fontSize:11},tickFormatter:u=>u+"%"}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"},formatter:u=>[u+"%","Composite Score"]}),i.jsx(yn,{dataKey:"score",radius:[4,4,0,0],children:l.map((u,d)=>i.jsx(uu,{fillOpacity:.8,style:{fill:u.score>=80?"var(--accent-green)":u.score>=50?"var(--accent-yellow)":"var(--accent-red)"}},d))})]})})}),i.jsx("h2",{className:"section-subtitle",children:"Metric Breakdown (completion / tests / recovery / token efficiency)"}),i.jsx("div",{className:"chart-container",children:i.jsx(us,{width:"100%",height:260,children:i.jsxs(ds,{data:l,margin:{top:20,right:20,left:10,bottom:40},children:[i.jsx(oi,{strokeDasharray:"3 3"}),i.jsx(ia,{dataKey:"name",tick:{fontSize:11}}),i.jsx(sa,{domain:[0,100],tick:{fontSize:11},tickFormatter:u=>u+"%"}),i.jsx(bn,{contentStyle:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8},labelStyle:{color:"var(--text-primary)"}}),i.jsx(Ss,{}),i.jsx(yn,{dataKey:"completion",name:"Completion",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-green)",style:{fill:"var(--accent-green)"}}),i.jsx(yn,{dataKey:"tests",name:"Tests",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-blue)",style:{fill:"var(--accent-blue)"}}),i.jsx(yn,{dataKey:"recovery",name:"Recovery",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-yellow)",style:{fill:"var(--accent-yellow)"}}),i.jsx(yn,{dataKey:"efficiency",name:"Token Eff.",radius:[4,4,0,0],fillOpacity:.8,fill:"var(--accent-purple)",style:{fill:"var(--accent-purple)"}})]})})})]}),i.jsx("h2",{className:"section-subtitle",children:"Eval Run History"}),i.jsx("div",{className:"benchmark-list",children:s.length===0?i.jsxs("div",{className:"empty-state",children:["No eval runs yet. Run ",i.jsx("code",{children:"buff eval run"})," to start."]}):s.map(u=>{const d=Math.round(u.summary.avgCompositeScore*100),f=d>=80?"high":d>=50?"medium":"low";return i.jsxs("div",{className:"benchmark-item",children:[i.jsx("span",{className:"benchmark-date",children:new Date(u.startedAt).toLocaleDateString("en-US",{month:"short",day:"numeric"})}),i.jsxs("span",{className:"benchmark-model",children:[u.provider,"/",u.model]}),i.jsxs("span",{className:`benchmark-score ${f}`,children:[d,"%"]})]},u.id)})}),i.jsx("h2",{className:"section-subtitle",children:"Run History"}),i.jsx("div",{className:"benchmark-list",children:a.length===0?i.jsxs("div",{className:"empty-state",children:["No benchmark runs yet. Run ",i.jsx("code",{children:"buff benchmark"})," to start."]}):a.map(u=>{const d=u.summary.totalTasks>0?Math.round(u.summary.tasksPassed/u.summary.totalTasks*100):0,f=d>=80?"high":d>=50?"medium":"low";return i.jsxs("div",{className:"benchmark-item",children:[i.jsx("span",{className:"benchmark-date",children:new Date(u.startedAt).toLocaleDateString("en-US",{month:"short",day:"numeric"})}),i.jsxs("span",{className:"benchmark-model",children:[u.provider,"/",u.model]}),i.jsxs("span",{className:`benchmark-score ${f}`,children:[d,"%"]})]},u.id)})})]})}const fse={pass:"✅",warn:"⚠️",fail:"❌"},hse={pass:"PASS",warn:"WARN",fail:"FAIL"};function iM(e){const t={pass:0,warn:0,fail:0};for(const n of e)t[n.status]!==void 0&&(t[n.status]+=1);return t}function sM(e){const t=[];return e.fail>0&&t.push(`${e.fail} failing`),e.warn>0&&t.push(`${e.warn} warning${e.warn===1?"":"s"}`),e.pass>0&&t.push(`${e.pass} passing`),t.length>0?t.join(" · "):"no checks"}function zb({check:e}){return i.jsxs("div",{className:"admin-check-row","data-status":e.status,"data-testid":`check-${e.name}`,children:[i.jsxs("span",{className:`admin-check-badge admin-check-${e.status}`,children:[fse[e.status]," ",hse[e.status]]}),i.jsxs("div",{className:"admin-check-body",children:[i.jsx("div",{className:"admin-check-name",children:e.name}),i.jsx("div",{className:"admin-check-message",children:e.message}),e.detail?i.jsx("div",{className:"admin-check-detail",children:e.detail}):null,e.fix?i.jsxs("div",{className:"admin-check-fix",children:["💡 ",e.fix]}):null]})]})}function tE(e){return`${(e*100).toFixed(1)}%`}function pse(e){return e>=.9?"ok":e>=.7?"warn":"danger"}function dc(e){return e==null?"0":e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":kt(e)}function mse(e){if(!e)return"never";const t=Math.floor((Date.now()-e)/1e3);if(t<60)return`${t}s ago`;const n=Math.floor(t/60);if(n<60)return`${n}m ago`;const r=Math.floor(n/60);return r<24?`${r}h ${n%60}m ago`:`${Math.floor(r/24)}d ago`}function nE({title:e,blurb:t,checks:n,testId:r}){const a=iM(n);return i.jsxs("section",{style:{marginBottom:18},"data-testid":r,children:[i.jsxs("div",{style:{display:"flex",alignItems:"baseline",gap:10,flexWrap:"wrap"},children:[i.jsx("h2",{className:"section-subtitle",style:{margin:0},children:e}),i.jsx("span",{style:{fontSize:12,color:a.fail>0?"var(--accent-red)":a.warn>0?"var(--accent-yellow)":"var(--accent-green)"},"data-testid":`${r}-summary`,children:sM(a)})]}),i.jsx("p",{style:{fontSize:11,color:"var(--text-secondary)",margin:"4px 0 10px"},children:t}),i.jsx("div",{className:"admin-check-list",children:n.length>0?n.map(s=>i.jsx(zb,{check:s},s.name)):i.jsxs("div",{className:"empty-state",children:["No ",e.toLowerCase()," checks returned."]})})]})}function gse({data:e,connected:t,lastUpdated:n}){const[r,a]=x.useState(null),[s,o]=x.useState(null),[l,c]=x.useState(!1),u=x.useCallback(async()=>{c(!0),o(null);const v=await K.fetchAdminChecks();v?a(v):o("Could not reach the dashboard server, or it is older than this page. Run `nuvira dashboard` to start it."),c(!1)},[]);x.useEffect(()=>{u()},[u]);const d=e==null?void 0:e.health,f=(d==null?void 0:d.agentStats)??null,h=[...(r==null?void 0:r.system)??[],...(r==null?void 0:r.enterprise)??[]],p=iM(h),g=((r==null?void 0:r.providers)??[]).filter(v=>v.configured).length,m=((r==null?void 0:r.providers)??[]).length,y=f?Object.entries(f.agents).map(([v,S])=>({agent:v,...S})).sort((v,S)=>S.totalRuns-v.totalRuns||v.agent.localeCompare(S.agent)):[];return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"⚙️",title:"System Health"}),i.jsxs("p",{className:"section-description",style:{fontSize:12,color:"var(--text-secondary)",marginBottom:14},children:["The same checks ",i.jsx("code",{children:"nuvira doctor"})," runs, executed on demand — pass / warn / fail, with the fix for anything that is not passing. The store counters at the bottom are how big the agent's memory files are; they are not a health verdict."]}),i.jsxs("div",{className:"health-grid",style:{marginBottom:18},children:[i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:t?"🟢":"🟠"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"Live Stream"}),i.jsx("div",{className:"health-value","data-testid":"connection-state",children:t?"● Connected":"● Reconnecting…"})]})]}),i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:"⏱️"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"Last Update"}),i.jsx("div",{className:"health-value",children:n})]})]}),i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:"🩺"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"Doctor"}),i.jsx("div",{className:"health-value","data-testid":"doctor-verdict",style:{color:p.fail>0?"var(--accent-red)":p.warn>0?"var(--accent-yellow)":"var(--accent-green)"},children:r?sM(p):l?"running…":"--"})]})]})]}),i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:6},children:[i.jsx("h2",{className:"section-subtitle",style:{margin:0},children:"Doctor Checks"}),i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:l,onClick:()=>void u(),"data-testid":"run-checks",children:l?"⏳ Running…":"↻ Run checks again"}),m>0?i.jsxs("span",{style:{fontSize:11,color:"var(--text-secondary)"},children:[g," of ",m," providers configured — per-provider detail is on the Admin tab"]}):null]}),s?i.jsx("div",{className:"admin-row-msg admin-row-msg-err",style:{marginBottom:12},children:s}):null,!r&&!s?i.jsx("div",{className:"loading-state",children:"Running checks…"}):null,r?i.jsxs(i.Fragment,{children:[i.jsx(nE,{title:"System",blurb:"Runtime, filesystem, configuration and the local model surface.",checks:r.system,testId:"checks-system"}),i.jsx(nE,{title:"Enterprise",blurb:"Governance, audit, RBAC and the controls an operator is accountable for.",checks:r.enterprise,testId:"checks-enterprise"})]}):null,i.jsx("h2",{className:"section-subtitle",children:"Agent Performance"}),f?i.jsxs(i.Fragment,{children:[i.jsx(Bi,{tiles:[{key:"runs",icon:"🩺",value:dc(f.totalRuns),label:"Recorded runs",tone:"accent"},{key:"success-rate",icon:"✅",value:tE(f.overallSuccessRate),label:"Overall success rate",tone:pse(f.overallSuccessRate)}]}),y.length>0?i.jsx("div",{style:{display:"flex",flexDirection:"column",gap:4,marginBottom:18},children:y.map(v=>i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,fontSize:12,padding:"4px 0",borderBottom:"1px solid var(--border-light)"},"data-testid":`agent-stats-${v.agent}`,children:[i.jsx("span",{style:{flex:1,color:"var(--text-primary)"},children:v.agent}),i.jsxs("span",{style:{color:"var(--text-secondary)"},children:[dc(v.totalRuns)," runs"]}),i.jsx("span",{style:{color:v.successRate>=.9?"var(--accent-green)":v.successRate>=.7?"var(--accent-yellow)":"var(--accent-red)"},children:tE(v.successRate)}),i.jsx("span",{style:{color:"var(--text-secondary)",minWidth:78,textAlign:"right"},children:mse(v.lastRun)})]},v.agent))}):i.jsx("p",{style:{fontSize:11,color:"var(--text-secondary)",marginBottom:18},children:"No agent runs recorded yet — this fills in as agents execute."})]}):i.jsx("p",{style:{fontSize:11,color:"var(--text-secondary)",marginBottom:18},children:"No agent-stats file yet. Run a task and the per-agent success rates appear here."}),i.jsx("h2",{className:"section-subtitle",children:"Learning Stores"}),i.jsx("p",{style:{fontSize:11,color:"var(--text-secondary)",margin:"4px 0 10px"},children:"What the agent has learned into disk. Sizes, not verdicts."}),i.jsxs("div",{className:"health-grid",children:[i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:"💾"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"Memory Directory"}),i.jsx("div",{className:"health-path",children:(d==null?void 0:d.memoryDir)||"~/.buff/memory/"})]})]}),i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:"📝"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"Coding Patterns"}),i.jsx("div",{className:"health-value",children:dc(d==null?void 0:d.patterns)})]})]}),i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:"👍"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"User Feedback"}),i.jsxs("div",{className:"health-value",children:[dc(d==null?void 0:d.feedback)," ratings"]})]})]}),i.jsxs("div",{className:"health-card",children:[i.jsx("span",{className:"health-icon",children:"🧠"}),i.jsxs("div",{className:"health-body",children:[i.jsx("div",{className:"health-title",children:"Vector Index"}),i.jsxs("div",{className:"health-value",children:[dc(d==null?void 0:d.vectors)," entries"]})]})]})]}),e?null:i.jsx("p",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:10},children:"Waiting for the first data frame from the dashboard server — the checks above do not depend on it."}),i.jsx("h2",{className:"section-subtitle",children:"Server Info"}),i.jsxs("div",{className:"server-info",children:[i.jsxs("div",{className:"info-row",children:[i.jsx("span",{className:"info-label",children:"Stream"}),i.jsx("span",{className:"info-value",children:t?"● Connected":"● Reconnecting…"})]}),i.jsxs("div",{className:"info-row",children:[i.jsx("span",{className:"info-label",children:"Last Updated"}),i.jsx("span",{className:"info-value",children:n})]}),i.jsxs("div",{className:"info-row",children:[i.jsx("span",{className:"info-label",children:"Checks run at"}),i.jsx("span",{className:"info-value",children:r!=null&&r.serverTime?new Date(r.serverTime).toLocaleString():"--"})]}),i.jsxs("div",{className:"info-row",children:[i.jsx("span",{className:"info-label",children:"Data Directory"}),i.jsx("span",{className:"info-value",children:(d==null?void 0:d.memoryDir)||"~/.buff/memory/"})]})]})]})}const vse=new Set(["local","lmstudio","vllm"]),yse=new Set([]),rp={available:{bg:"var(--ok-soft)",text:"var(--accent-green)",dot:"var(--accent-green)",cardBorder:"var(--accent-green)",cardBg:"var(--ok-soft)"},limited:{bg:"var(--warn-soft)",text:"var(--accent-yellow)",dot:"var(--accent-yellow)",cardBorder:"var(--accent-yellow)",cardBg:"var(--warn-soft)"},unavailable:{bg:"var(--danger-soft)",text:"var(--accent-red)",dot:"var(--accent-red)",cardBorder:"var(--accent-red)",cardBg:"var(--danger-soft)"}},bse=[3,4,5],oM=12e3,rE=[300,700],xse=6e4,wse=5e3;function kse(e){return new Promise(t=>setTimeout(t,e))}async function lM(e,t){const n=new AbortController,r=setTimeout(()=>n.abort(),t);try{return await fetch(e,{signal:n.signal})}finally{clearTimeout(r)}}function cM(e){return e instanceof TypeError||e instanceof Error&&e.name==="AbortError"}async function Sse(e){let t=null,n=!1;for(let r=0;;r++){try{const a=await lM("/api/models",oM);if(!a.ok)t=a.status;else{const s=await ot(a);if(s&&Array.isArray(s.providers))return s;throw new Error("Model health endpoint returned an unexpected response — is the dashboard server up to date?")}}catch(a){if(!cM(a))throw a;n=!0,e==null||e()}if(r>=rE.length)throw new Error(n?"Dashboard server unreachable — is it still running? Retrying automatically…":`Model health endpoint failed (HTTP ${t})`);await kse(rE[r])}}async function jse(e){for(let t=0;;t++)try{const n=await lM("/api/model-registry",oM);return n.ok?await ot(n):null}catch(n){if(!cM(n)||t>=1)return null;e==null||e()}}function Nse(e){return e==="available"?"Available":e==="limited"?"Limited":"Unavailable"}function Ese(e){return e==="available"?"Ready":e==="limited"?"Limited":"Down"}function uM(e){return{local:"💻",groq:"🟢",nim:"🔶",gemini:"🔷",openrouter:"🟣",openai:"🤖",anthropic:"🔮",mistral:"🌀",cohere:"🧠",together:"🟢",deepinfra:"🌐",fireworks:"🎆",perplexity:"❓",azure:"🔵",anyscale:"🔷",lmstudio:"🎨",vllm:"⚡"}[e]||"🔌"}function l0(e){return{local:"Ollama",groq:"Groq",nim:"NVIDIA NIM",gemini:"Gemini",openrouter:"OpenRouter",openai:"OpenAI",anthropic:"Anthropic",mistral:"Mistral",cohere:"Cohere",together:"Together AI",deepinfra:"DeepInfra",fireworks:"Fireworks AI",perplexity:"Perplexity",azure:"Azure OpenAI",anyscale:"Anyscale",lmstudio:"LM Studio",vllm:"vLLM / TGI"}[e]||e}function aE({status:e,label:t}){const n=rp[e];return i.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:6,background:n.bg,color:n.text,padding:"3px 10px",borderRadius:12,fontSize:12,fontWeight:500,border:`1px solid ${n.text}22`},children:[i.jsx("span",{style:{width:8,height:8,borderRadius:"50%",background:n.dot}}),t]})}function _se({onRefresh:e,loading:t}){return i.jsxs("div",{className:"stats-grid mini",style:{marginBottom:16},children:[i.jsx("button",{onClick:e,disabled:t,className:"stat-card",style:{cursor:t?"not-allowed":"pointer",opacity:t?.6:1,border:"1px solid var(--border)",justifyContent:"center",fontSize:13},children:t?"⏳ Testing...":"🔄 Refresh Status"}),i.jsx("div",{className:"stat-card",style:{border:"1px solid var(--border)"},children:i.jsx("div",{style:{fontSize:13,color:"var(--text-secondary)",textAlign:"center",width:"100%"},children:"Tests all configured providers and their API keys in real time"})})]})}function Ase({data:e}){const t=e.totalModels;if(t===0)return null;const n=e.available||0,r=e.limited||0,a=e.unavailable||0;return i.jsxs("div",{style:{marginBottom:16},children:[i.jsxs("div",{style:{background:"var(--bg-primary)",borderRadius:8,overflow:"hidden",height:10,display:"flex",border:"1px solid var(--border-light)"},children:[n>0&&i.jsx("div",{style:{width:`${n/t*100}%`,background:"var(--accent-green)",transition:"width 0.5s"},title:`${n} available`}),r>0&&i.jsx("div",{style:{width:`${r/t*100}%`,background:"var(--accent-yellow)",transition:"width 0.5s"},title:`${r} limited`}),a>0&&i.jsx("div",{style:{width:`${a/t*100}%`,background:"var(--accent-red)",transition:"width 0.5s"},title:`${a} unavailable`})]}),i.jsxs("div",{style:{display:"flex",gap:16,marginTop:6,fontSize:12,color:"var(--text-secondary)"},children:[i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-green)"},children:"●"})," Ready"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-yellow)"},children:"●"})," Limited"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-red)"},children:"●"})," Unavailable"]})]}),typeof e.routable=="number"&&i.jsxs("div",{style:{marginTop:6,fontSize:12,color:"var(--text-secondary)",lineHeight:1.5},children:[i.jsx("strong",{style:{color:"var(--text-primary)"},children:t})," listed by providers ·"," ",i.jsx("strong",{style:{color:e.routable>0?"var(--accent-green)":"var(--accent-yellow)"},children:e.routable})," ","routable right now (verified, un-parked, not stale)",typeof e.registryTotal=="number"&&e.registryTotal>0&&i.jsxs(i.Fragment,{children:[" ","· registry tracks"," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:e.registryVerified??0})," of"," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:e.registryTotal})," verified"]})]})]})}function nf({provider:e}){const[t,n]=x.useState(!1),r=rp[e.overallStatus].text,a={available:e.models.filter(s=>s.status==="available").length,limited:e.models.filter(s=>s.status==="limited").length,unavailable:e.models.filter(s=>s.status==="unavailable").length};return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:`1px solid ${r}44`,borderLeft:`4px solid ${r}`,marginBottom:12,overflow:"hidden"},children:[i.jsxs("div",{onClick:()=>n(!t),style:{padding:"14px 18px",cursor:"pointer",display:"flex",alignItems:"center",gap:14,userSelect:"none"},children:[i.jsx("span",{style:{fontSize:24},children:e.icon}),i.jsxs("div",{style:{flex:1},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:2},children:[i.jsx("span",{style:{fontSize:16,fontWeight:600,color:"var(--text-primary)"},children:e.providerLabel}),i.jsx(aE,{status:e.overallStatus,label:Nse(e.overallStatus)})]}),i.jsxs("div",{style:{fontSize:13,color:"var(--text-secondary)"},children:[e.models.length," model",e.models.length!==1?"s":"",a.available>0&&i.jsxs("span",{style:{color:"var(--accent-green)"},children:[" · ",a.available," ready"]}),a.limited>0&&i.jsxs("span",{style:{color:"var(--accent-yellow)"},children:[" · ",a.limited," limited"]}),a.unavailable>0&&i.jsxs("span",{style:{color:"var(--accent-red)"},children:[" · ",a.unavailable," unavailable"]})]})]}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",textAlign:"right"},children:[i.jsx("div",{style:{marginBottom:2,color:e.apiConfigured?"var(--accent-green)":"var(--accent-red)"},children:e.apiConfigured?"✅ Key set":"❌ No key"}),i.jsx("div",{style:{color:e.apiAccessible?"var(--accent-green)":"var(--accent-red)"},children:e.apiAccessible?"✅ Connected":"❌ Offline"})]}),i.jsx("span",{style:{color:"var(--text-secondary)",fontSize:18,transition:"transform 0.2s",transform:t?"rotate(90deg)":"rotate(0deg)"},children:"▶"})]}),t&&i.jsxs(i.Fragment,{children:[i.jsxs("div",{style:{padding:"10px 18px",background:"var(--bg-primary)",fontSize:13,color:"var(--text-secondary)",display:"flex",justifyContent:"space-between",flexWrap:"wrap",gap:8,borderTop:"1px solid var(--border-light)"},children:[i.jsx("span",{children:e.notes}),e.freeTierInfo&&i.jsxs("span",{style:{color:"var(--accent-yellow)"},children:["🎁 ",e.freeTierInfo]})]}),i.jsx("div",{style:{overflowX:"auto",borderTop:"1px solid var(--border-light)"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:13},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)"},children:[i.jsx("th",{style:{padding:"8px 18px",textAlign:"left",fontWeight:500},children:"Model"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Status"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Quota"}),i.jsx("th",{style:{padding:"8px 18px",textAlign:"left",fontWeight:500},children:"Details"})]})}),i.jsx("tbody",{children:e.models.map((s,o)=>i.jsxs("tr",{style:{borderBottom:o<e.models.length-1?"1px solid var(--border-light)":"none",background:s.status==="unavailable"?"var(--bg-primary)":"transparent"},children:[i.jsxs("td",{style:{padding:"8px 18px",color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:[i.jsx("span",{style:{display:"inline-block",width:8,height:8,borderRadius:"50%",background:rp[s.status].dot,marginRight:8}}),s.name]}),i.jsx("td",{style:{padding:"8px 12px"},children:i.jsx(aE,{status:s.status,label:Ese(s.status)})}),i.jsx("td",{style:{padding:"8px 12px",color:"var(--text-secondary)",fontSize:12,fontFamily:"'SFMono-Regular', Consolas, monospace"},children:s.rateLimitRemaining!==void 0?s.rateLimitTotal?`${s.rateLimitRemaining}/${s.rateLimitTotal}`:`${s.rateLimitRemaining} left`:"—"}),i.jsx("td",{style:{padding:"8px 18px",color:"var(--text-secondary)",fontSize:12},children:s.statusReason})]},s.id))})]})})]})]})}function dM(e){if(e<=0)return"now";const t=Math.floor(e/36e5),n=Math.floor(e%36e5/6e4);return t>0?`${t}h ${n}m`:n>0?`${n}m`:`${Math.ceil(e/1e3)}s`}function Cse(e){return e==="verified"?{text:"var(--accent-green)",bg:"var(--ok-soft)",dot:"var(--accent-green)"}:e==="unavailable"?{text:"var(--accent-red)",bg:"var(--danger-soft)",dot:"var(--accent-red)"}:{text:"var(--text-secondary)",bg:"var(--bg-hover)",dot:"var(--bg-hover)"}}function Tse({rate:e}){const t=Math.round(e*100);return i.jsxs("span",{title:`⏸ flaky mid-stream ${t}% — started streaming, died before finish; the router deprioritizes flaky models (P4 M4.4)`,style:{marginLeft:8,fontSize:10,padding:"1px 6px",borderRadius:8,whiteSpace:"nowrap",background:"var(--purple-soft)",border:"1px solid var(--accent-purple)",color:"var(--accent-purple)"},children:["⏸ flaky ",t,"%"]})}function Ose({tokens:e}){const t=e>=1048576?`${(e/1048576).toFixed(1).replace(/\.0$/,"")}M`:e>=1024?`${(e/1024).toFixed(0)}K`:`${e}`;return i.jsxs("span",{title:`⏳ context window ${kt(e)} tokens — live from the provider's model list (v1.60.x); feeds the router's context preflight`,style:{marginLeft:8,fontSize:10,padding:"1px 6px",borderRadius:8,whiteSpace:"nowrap",background:"var(--info-soft)",border:"1px solid var(--accent-blue)",color:"var(--accent-blue)"},children:["⏳ ",t]})}function Pse({history:e}){if(!e||e.length<2)return null;const t=46,n=14,r=1.5,a=Math.max(.01,...e.map(d=>d.rate)),s=e.map((d,f)=>{const h=r+f/(e.length-1)*(t-r*2),p=n-r-d.rate/a*(n-r*2);return`${h.toFixed(1)},${p.toFixed(1)}`}).join(" "),o=e[0].rate,l=e[e.length-1].rate,c=l<o,u=Math.round(l*100);return i.jsxs("svg",{width:t,height:n,viewBox:`0 0 ${t} ${n}`,style:{marginLeft:8,verticalAlign:"middle",cursor:"default"},"aria-label":"Flakiness trend",children:[i.jsx("title",{children:c?`Flakiness healing — ${u}% now, trending down (clean successes decay the signal)`:`Flakiness climbing — ${u}% now (recent mid-stream interruptions)`}),i.jsx("polyline",{points:s,fill:"none",style:{stroke:"var(--accent-purple)"},strokeWidth:1.5,strokeLinecap:"round",strokeLinejoin:"round",opacity:.9}),i.jsx("circle",{cx:t-r,cy:n-r-l/a*(n-r*2),r:2,style:{fill:c?"var(--accent-green)":"var(--accent-purple)"}})]})}function Rse({entry:e}){const t=Cse(e.status),n=e.remainingTokens>=0?`${kt(e.remainingTokens)} left`:"unlimited";return i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)"},children:[i.jsxs("td",{style:{padding:"8px 12px",color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:[i.jsx("span",{style:{display:"inline-block",width:8,height:8,borderRadius:"50%",background:t.dot,marginRight:8}}),e.model.length>32?e.model.slice(0,29)+"…":e.model,(e.partialRate??0)>0&&i.jsx(Tse,{rate:e.partialRate??0}),e.partialHistory&&e.partialHistory.length>=2&&i.jsx(Pse,{history:e.partialHistory}),e.parked&&i.jsx("span",{style:{marginLeft:8,fontSize:10,padding:"1px 6px",borderRadius:8,background:"var(--danger-soft)",border:"1px solid var(--accent-red)",color:"var(--accent-red)"},children:"⏸ parked"}),e.measuredSamples?i.jsxs("span",{style:{marginLeft:8,fontSize:10,padding:"1px 6px",borderRadius:8,whiteSpace:"nowrap",background:"var(--ok-soft)",border:"1px solid var(--accent-green)",color:"var(--accent-green)"},children:["📏 ",e.measuredInputTokens,"→",e.measuredOutputTokens," tok"]}):i.jsx("span",{style:{marginLeft:8,fontSize:10,padding:"1px 6px",borderRadius:8,whiteSpace:"nowrap",background:"var(--bg-hover)",border:"1px solid var(--border-hover)",color:"var(--text-secondary)"},children:"📐 est"}),e.contextWindowTokens&&i.jsx(Ose,{tokens:e.contextWindowTokens})]}),i.jsx("td",{style:{padding:"8px 12px"},children:i.jsx("span",{style:{display:"inline-flex",alignItems:"center",gap:5,fontSize:11,fontWeight:600,background:t.bg,color:t.text,padding:"2px 8px",borderRadius:6},children:e.status==="verified"?"✓ Verified":e.status==="unavailable"?"✗ Unavailable":"◌ Unverified"})}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12,color:e.remainingTokens>=0&&e.remainingTokens<=100?"var(--accent-yellow)":"var(--text-secondary)"},children:n}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",color:"var(--text-secondary)",fontSize:12,whiteSpace:"nowrap"},children:e.resetsInMs>0?dM(e.resetsInMs):"—"}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",color:"var(--text-secondary)",fontSize:12,fontFamily:"'SFMono-Regular', Consolas, monospace"},children:e.latencyMs!==void 0?`${e.latencyMs}ms`:"—"}),i.jsx("td",{style:{padding:"8px 12px",color:"var(--text-muted)",fontSize:11,maxWidth:180,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.lastError||(e.source?`learned via ${e.source}`:"")})]})}function Mse({provider:e}){const[t,n]=x.useState(!1),r=e.verified>0?"var(--accent-green)":e.unavailable>0?"var(--accent-red)":"var(--border-hover)";return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:`1px solid ${r}44`,borderLeft:`4px solid ${r}`,marginBottom:12,overflow:"hidden"},children:[i.jsxs("div",{onClick:()=>n(!t),style:{padding:"14px 18px",cursor:"pointer",display:"flex",alignItems:"center",gap:14,userSelect:"none"},children:[i.jsx("span",{style:{fontSize:24},children:uM(e.provider)}),i.jsxs("div",{style:{flex:1},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:2},children:[i.jsx("span",{style:{fontSize:16,fontWeight:600,color:"var(--text-primary)"},children:l0(e.provider)}),i.jsx("span",{style:{fontSize:11,padding:"2px 8px",borderRadius:10,background:e.parked>0?"var(--danger-soft)":"var(--ok-soft)",border:`1px solid ${e.parked>0?"var(--accent-red)":"var(--accent-green)"}`,color:e.parked>0?"var(--accent-red)":"var(--accent-green)"},children:e.parked>0?`${e.parked} parked`:"routable"}),(e.flaky??0)>0&&i.jsxs("span",{style:{fontSize:11,padding:"2px 8px",borderRadius:10,background:"var(--purple-soft)",border:"1px solid var(--accent-purple)",color:"var(--accent-purple)"},children:["⏸ ",e.flaky," flaky"]})]}),i.jsxs("div",{style:{fontSize:13,color:"var(--text-secondary)"},children:[e.verified," verified · ",e.unverified," unverified · ",e.unavailable," unavailable"]})]}),i.jsx("span",{style:{color:"var(--text-secondary)",fontSize:18,transition:"transform 0.2s",transform:t?"rotate(90deg)":"rotate(0deg)"},children:"▶"})]}),t&&i.jsx("div",{style:{overflowX:"auto",borderTop:"1px solid var(--border-light)"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:13},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)"},children:[i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Model"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Availability"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"right",fontWeight:500},children:"Tokens left"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"right",fontWeight:500},children:"Resets in"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"right",fontWeight:500},children:"Latency"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Reason / Source"})]})}),i.jsx("tbody",{children:e.models.map(a=>i.jsx(Rse,{entry:a},a.model))})]})})]})}function Ise(e){if(!e)return null;const t=Object.entries(e.consecutive).filter(([,n])=>n>0);return t.length===0?null:i.jsxs("div",{style:{background:"color-mix(in srgb, var(--accent-yellow) 8%, transparent)",border:"1px solid var(--accent-yellow)",borderRadius:10,padding:"10px 14px",marginBottom:14,fontSize:12,color:"var(--accent-yellow)",display:"flex",gap:10,alignItems:"flex-start"},children:[i.jsx("span",{style:{fontSize:15,lineHeight:"18px"},children:"🧹"}),i.jsxs("div",{children:[i.jsx("div",{style:{fontWeight:600,color:"var(--accent-yellow)",marginBottom:2},children:"Key hygiene in progress"}),i.jsx("div",{children:t.map(([n,r])=>i.jsxs("span",{style:{display:"inline-block",marginRight:12},children:[i.jsx("code",{style:{color:"var(--text-primary)"},children:n})," ",r,"/",e.threshold," consecutive auth failures",r>=e.threshold?" — key auto-cleared 🚫":" — key will be auto-cleared at the threshold"]},n))}),i.jsxs("div",{style:{marginTop:4,color:"var(--accent-yellow)"},children:["After ",e.threshold," consecutive 401/403s the invalid key is removed from config; run"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff config set providers.<provider>.apiKey <real-key>"})," to re-enable."]})]})]})}function $se({data:e}){return e.enabled?i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"📦",title:"Model Availability Registry"}),i.jsxs("p",{className:"section-description",children:["The unified sub-ms FAISS/JSON snapshot the Auto router consults on every pick: verified vs unavailable models plus quota telemetry (tokens remaining, reset windows) mirrored from the ledger. Each row's ",i.jsx("strong",{children:"⏳ chip"})," is the LIVE provider-advertised context window (v1.60.x) — the real spec the router's context preflight uses, recorded by the probe from each provider's model list (Ollama /api/tags + /api/show, OpenRouter, Gemini, NIM). State changes during a session are reported to the watch daemon and recorded here immediately."]}),i.jsx(Bi,{tiles:[{key:"tracked-models",icon:"📦",value:String(e.total),label:"Tracked models (registry)",tone:"accent"},{key:"verified",icon:"✅",value:String(e.verified),label:"Verified",tone:"ok"},{key:"unverified",icon:"◌",value:String(e.unverified),label:"Unverified",tone:"accent"},{key:"unavailable",icon:"⛔",value:String(e.unavailable),label:"Unavailable",tone:"danger"},{key:"parked",icon:"⏸",value:String(e.parked),label:"Quota-parked",tone:"warn"},{key:"flaky",icon:"⏸",value:String(e.flaky??0),label:"Flaky mid-stream",tone:"warn"},{key:"deleted-local",icon:"🗑️",value:String(e.deletedLocal??0),label:"Deleted locally",tone:"accent"}]}),Ise(e.keyHygiene),e.providers.map(t=>i.jsx(Mse,{provider:t},t.provider)),i.jsx("div",{style:{textAlign:"center",fontSize:12,color:"var(--text-muted)",marginTop:12},children:"Backend snapshot · auto-refreshes every 60s"})]}):i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px dashed var(--border)",padding:"20px 24px",marginTop:24,textAlign:"center"},children:[i.jsx("div",{style:{fontSize:24,marginBottom:8},children:"📦"}),i.jsx("div",{style:{fontSize:14,fontWeight:600,color:"var(--text-primary)",marginBottom:4},children:"Model Availability Registry"}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-muted)"},children:["No registry data yet — run ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff models refresh"})," or use Auto routing; the registry learns from real usage and probes."]})]})}const Lse={chat:"💬",execute:"⚙️",plan:"🗺️",edit:"✏️",skill:"🧩",learn:"📚",ci:"🔁",doctor:"🩺",probe:"🔭","spot-check":"🧪",telemetry:"📡",usage:"🧮"};function Dse(e){return{chat:"Chat",execute:"Execute",plan:"Plan",edit:"Edit",skill:"Skill",learn:"Learn",ci:"CI Review",doctor:"Doctor Probe",probe:"Probe","spot-check":"Spot-check",telemetry:"Usage mirror"}[e]||e.charAt(0).toUpperCase()+e.slice(1)}function Bse(e){return Lse[e]||"🎯"}function zse(e){return e?new Date(e).toLocaleDateString()+" "+new Date(e).toLocaleTimeString([],{hour:"2-digit",minute:"2-digit"}):"—"}function xs({provider:e,model:t,reason:n,killed:r,transient:a,partial:s,streamedChunks:o}){const l=r===!0,c=a===!0,u=s===!0,d=u?"var(--accent-purple)":c?"var(--accent-yellow)":l?"var(--accent-red)":"var(--accent-green)",f=u?"var(--purple-soft)":c?"var(--warn-soft)":l?"var(--danger-soft)":"var(--ok-soft)";return i.jsxs("span",{title:u?`Mid-stream interruption — started streaming${typeof o=="number"?` ~${o} chunks in`:""}, died before finish (P4 M4.4); router deprioritizes flaky mid-stream providers${n?` · ${n}`:""}`:c?`Transient failure — health decayed, no flip${n?` · ${n}`:""}`:l?`Killed by this action — predictively skipped by routing${n?` · ${n}`:""}`:"Verified by this action — trusted by routing",style:{display:"inline-flex",alignItems:"center",gap:6,background:f,border:`1px solid ${d}`,color:d,padding:"3px 9px",borderRadius:8,fontSize:11,fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap",transition:"transform 0.15s",cursor:"default"},onMouseEnter:h=>{h.currentTarget.style.transform="scale(1.05)"},onMouseLeave:h=>{h.currentTarget.style.transform="scale(1)"},children:[i.jsx("span",{style:{opacity:.85},children:u?"⏸":c?"~":l?"✗":"✓"}),e,"/",t.length>30?t.slice(0,27)+"…":t,(l||u)&&n&&i.jsxs("span",{style:{color:`${d}99`,fontSize:10,fontWeight:400},children:["· ",n]})]})}function Fse(e){const t=new Map;for(const r of e)t.set(`${r.provider}|${r.model}|${r.outcome}`,r);const n={unavailable:0,partial:1,verified:2,error:3};return[...t.values()].sort((r,a)=>n[r.outcome]-n[a.outcome]||a.at-r.at)}function Use(e){for(let t=e.length-1;t>=0;t--){const n=e[t];if(n.verified+n.killed+n.transient+(n.partial||0)>0)return t}return Math.max(0,e.length-1)}function Wse({timeline:e}){const[t,n]=x.useState(()=>Use(e||[])),[r,a]=x.useState(!1),s=x.useRef(null),o=x.useRef(!1),l=(e==null?void 0:e.length)??0,c=Math.max(0,Math.min(t,l-1));x.useEffect(()=>{n(m=>Math.min(m,Math.max(0,l-1)))},[l]);const u=x.useCallback(m=>{const y=s.current;if(!y||l<=0)return;const v=y.getBoundingClientRect(),S=v.width||1,w=Math.min(1,Math.max(0,(m-v.left)/S));n(Math.min(l-1,Math.floor(w*l)))},[l]),d=m=>{o.current=!0,a(!1),u(m.clientX)};if(x.useEffect(()=>{const m=v=>{o.current&&u(v.clientX)},y=()=>{o.current=!1};return window.addEventListener("pointermove",m),window.addEventListener("pointerup",y),()=>{window.removeEventListener("pointermove",m),window.removeEventListener("pointerup",y)}},[u]),x.useEffect(()=>{if(!r||l<=1)return;const m=setInterval(()=>{n(y=>Math.min(l-1,y+1))},300);return()=>clearInterval(m)},[r,l]),x.useEffect(()=>{r&&l>1&&t>=l-1&&(a(!1),n(0))},[r,l,t]),!e||l===0)return null;const f=Math.max(1,...e.map(m=>m.verified+m.killed+m.transient+(m.partial||0))),h=m=>new Date(m).toLocaleDateString([],{month:"short",day:"numeric"}),p=e[c],g=p?Fse(p.events||[]):[];return i.jsxs("div",{style:{marginTop:12,paddingTop:10,borderTop:"1px solid var(--border-light)"},children:[i.jsxs("div",{style:{fontSize:11,fontWeight:600,color:"var(--text-secondary)",marginBottom:8,textTransform:"uppercase",letterSpacing:.4,display:"flex",alignItems:"center",gap:6,flexWrap:"wrap"},children:[i.jsxs("span",{children:["📈 Learned from real usage — last ",l," days"]}),i.jsx("span",{style:{fontWeight:400,color:"var(--text-muted)",letterSpacing:0},children:"— drag across days · click a day · play to sweep"})]}),i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:8},children:[i.jsx("button",{onClick:()=>{r?a(!1):(t>=l-1&&n(0),a(!0))},disabled:l<=1,"aria-label":r?"Pause scrub":"Play scrub",style:{background:"var(--bg-hover)",border:`1px solid ${r?"var(--accent-red)":"var(--border)"}`,color:"var(--text-primary)",padding:"3px 10px",borderRadius:6,cursor:l<=1?"not-allowed":"pointer",fontSize:11,fontWeight:600,transition:"all 0.15s",whiteSpace:"nowrap",opacity:l<=1?.5:1},children:r?"⏸ Pause":"▶ Play"}),i.jsxs("span",{style:{fontSize:11,color:"var(--text-secondary)",whiteSpace:"nowrap"},children:[h(p.day)," · ✓ ",p.verified," · ✗ ",p.killed,p.transient>0?` · ~ ${p.transient}`:"",p.partial>0?` · ⏸ ${p.partial}`:""]}),i.jsx("input",{type:"range",min:0,max:Math.max(0,l-1),step:1,value:c,onChange:m=>{a(!1),n(Number(m.target.value))},"aria-label":"Scrub action timeline",style:{flex:1,accentColor:"var(--accent-blue)",cursor:"pointer",minWidth:80}})]}),i.jsx("div",{ref:s,onPointerDown:d,style:{position:"relative",display:"flex",alignItems:"flex-end",gap:3,height:64,padding:"0 2px",cursor:"grab",userSelect:"none",touchAction:"none"},children:e.map((m,y)=>{const v=m.verified+m.killed+m.transient+(m.partial||0),S=m.verified/f*56,w=m.killed/f*56,j=m.transient/f*56,k=(m.partial||0)/f*56,b=y===c;return i.jsxs("div",{onClick:()=>{a(!1),n(y)},title:`${h(m.day)} — ✓ ${m.verified} verified · ✗ ${m.killed} killed · ~ ${m.transient} transient${(m.partial||0)>0?` · ⏸ ${m.partial} partial`:""}`,style:{flex:1,display:"flex",flexDirection:"column-reverse",alignItems:"center",gap:0,cursor:"pointer"},children:[i.jsxs("div",{style:{position:"relative",width:"100%",borderRadius:3,overflow:b?"visible":"hidden",background:v===0?"var(--bg-hover)":"transparent",height:v===0?4:56,display:"flex",flexDirection:"column-reverse",boxShadow:b?"0 0 0 1.5px var(--accent-blue)":void 0,opacity:v===0?.5:1,transition:"box-shadow 0.15s"},children:[b&&i.jsx("div",{style:{position:"absolute",top:-3,bottom:-3,width:2,left:"50%",transform:"translateX(-50%)",background:"var(--accent-blue)",borderRadius:2,pointerEvents:"none",boxShadow:"0 0 8px color-mix(in srgb, var(--accent-blue) 53%, transparent)",zIndex:1}}),m.verified>0&&i.jsx("div",{style:{height:S,background:"var(--accent-green)",minHeight:3}}),m.killed>0&&i.jsx("div",{style:{height:w,background:"var(--accent-red)",minHeight:3}}),m.transient>0&&i.jsx("div",{style:{height:j,background:"var(--accent-yellow)",minHeight:3}}),m.partial>0&&i.jsx("div",{style:{height:k,background:"var(--accent-purple)",minHeight:3}})]}),i.jsx("div",{style:{fontSize:9,color:b?"var(--accent-blue)":"var(--text-muted)",marginTop:4,whiteSpace:"nowrap",fontWeight:b?700:400},children:h(m.day)})]},m.day)})}),i.jsxs("div",{style:{display:"flex",gap:14,marginTop:6,fontSize:11,color:"var(--text-secondary)"},children:[i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-green)"},children:"■"})," verified"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-red)"},children:"■"})," killed"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-yellow)"},children:"■"})," transient"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-purple)"},children:"■"})," partial"]})]}),i.jsxs("div",{style:{marginTop:10,background:"var(--bg-card)",border:"1px solid var(--border-light)",borderRadius:8,padding:"10px 12px"},children:[i.jsxs("div",{style:{fontSize:12,fontWeight:600,color:"var(--text-primary)",marginBottom:6},children:[h(p.day)," ",i.jsx("span",{style:{color:"var(--text-secondary)",fontWeight:400},children:"— what this action learned that day"})]}),g.length===0?i.jsx("div",{style:{fontSize:12,color:"var(--text-muted)"},children:"No learning recorded that day — nothing verified, killed, or partial."}):i.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:g.map(m=>m.outcome==="unavailable"?i.jsx(xs,{provider:m.provider,model:m.model,reason:m.errorType,killed:!0},`${m.provider}|${m.model}|${m.outcome}`):m.outcome==="verified"?i.jsx(xs,{provider:m.provider,model:m.model},`${m.provider}|${m.model}|${m.outcome}`):m.outcome==="partial"?i.jsx(xs,{provider:m.provider,model:m.model,reason:m.errorType,partial:!0,streamedChunks:m.streamedChunks},`${m.provider}|${m.model}|${m.outcome}`):i.jsx(xs,{provider:m.provider,model:m.model,reason:m.errorType,transient:!0},`${m.provider}|${m.model}|${m.outcome}`))})]})]})}function Hse({entry:e}){var a,s;const[t,n]=x.useState(!0),r=(e.partial||0)>0?"var(--accent-purple)":e.killed>0?"var(--accent-red)":e.verified>0?"var(--accent-green)":"var(--accent-yellow)";return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:`1px solid ${r}33`,borderLeft:`4px solid ${r}`,marginBottom:12,overflow:"hidden"},children:[i.jsxs("div",{onClick:()=>n(!t),style:{padding:"12px 16px",cursor:"pointer",display:"flex",alignItems:"center",gap:12,userSelect:"none"},children:[i.jsx("span",{style:{fontSize:20},children:Bse(e.action)}),i.jsxs("div",{style:{flex:1},children:[i.jsx("div",{style:{fontSize:14,fontWeight:600,color:"var(--text-primary)",marginBottom:2},children:Dse(e.action)}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",display:"flex",gap:14,flexWrap:"wrap"},children:[i.jsxs("span",{children:[i.jsxs("span",{style:{color:"var(--accent-green)"},children:["✓ ",e.verified]})," verified"]}),i.jsxs("span",{children:[i.jsxs("span",{style:{color:"var(--accent-red)"},children:["✗ ",e.killed]})," killed"]}),e.transient>0&&i.jsxs("span",{children:[i.jsxs("span",{style:{color:"var(--accent-yellow)"},children:["~ ",e.transient]})," transient"]}),(e.partial||0)>0&&i.jsxs("span",{children:[i.jsxs("span",{style:{color:"var(--accent-purple)"},children:["⏸ ",e.partial]})," partial"]})]})]}),i.jsx("span",{style:{color:"var(--text-secondary)",fontSize:16,transition:"transform 0.2s",transform:t?"rotate(90deg)":"rotate(0deg)"},children:"▶"})]}),t&&i.jsxs("div",{style:{padding:"12px 16px",borderTop:"1px solid var(--border-light)",background:"var(--bg-primary)"},children:[e.killedModels.length>0&&i.jsxs(i.Fragment,{children:[i.jsx("div",{style:{fontSize:11,fontWeight:600,color:"var(--accent-red)",marginBottom:6,textTransform:"uppercase",letterSpacing:.4},children:"⛔ Killed — skipped predictively by routing"}),i.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6,marginBottom:14},children:e.killedModels.map(o=>i.jsx(xs,{provider:o.provider,model:o.model,reason:o.reason,killed:!0},`${o.provider}|${o.model}`))})]}),e.verifiedModels.length>0&&i.jsxs(i.Fragment,{children:[i.jsx("div",{style:{fontSize:11,fontWeight:600,color:"var(--accent-green)",marginBottom:6,textTransform:"uppercase",letterSpacing:.4},children:"✅ Verified — trusted by routing"}),i.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:e.verifiedModels.map(o=>i.jsx(xs,{provider:o.provider,model:o.model},`${o.provider}|${o.model}`))})]}),(((a=e.partialModels)==null?void 0:a.length)||0)>0&&i.jsxs(i.Fragment,{children:[i.jsx("div",{style:{fontSize:11,fontWeight:600,color:"var(--accent-purple)",marginBottom:6,textTransform:"uppercase",letterSpacing:.4},children:"⏸ Partial — mid-stream interruption (flaky provider, deprioritized)"}),i.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:6,marginBottom:14},children:e.partialModels.map(o=>i.jsx(xs,{provider:o.provider,model:o.model,reason:o.reason,partial:!0,streamedChunks:o.streamedChunks},`${o.provider}|${o.model}`))})]}),e.killedModels.length===0&&e.verifiedModels.length===0&&(((s=e.partialModels)==null?void 0:s.length)||0)===0&&i.jsx("div",{style:{fontSize:12,color:"var(--text-muted)"},children:"Only transient failures — health decayed, no model flipped."}),i.jsx(Wse,{timeline:e.timeline})]})]})}function Gse({registry:e}){const t=e.actionTelemetry;if(!t)return null;if(!t.enabled)return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px dashed var(--border)",padding:"18px 24px",marginTop:24,textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,marginBottom:6},children:"🎓"}),i.jsx("div",{style:{fontSize:13,fontWeight:600,color:"var(--text-primary)",marginBottom:4},children:"Learned from real usage — per action"}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-muted)",lineHeight:1.5},children:["No per-action telemetry yet. As you use ",i.jsx("strong",{style:{color:"var(--text-secondary)"},children:"chat"}),","," ",i.jsx("strong",{style:{color:"var(--text-secondary)"},children:"execute"}),", ",i.jsx("strong",{style:{color:"var(--text-secondary)"},children:"plan"}),", and ",i.jsx("strong",{style:{color:"var(--text-secondary)"},children:"edit"}),", each action's verified / killed provider × model combos appear here — showing exactly what routing learned from real usage."]})]});const n=[{key:"telemetry-events",icon:"📊",value:String(t.total),label:"Telemetry events",tone:"accent"},{key:"actions-learning",icon:"🎯",value:String(t.actions.length),label:"Actions learning",tone:"accent"},{key:"last-update",icon:"⏱️",value:zse(t.updatedAt),label:"Last update",tone:"accent"}];return t.synthetic>0&&n.push({key:"synthetic",icon:"🧪",value:String(t.synthetic),label:"Test-origin, excluded",tone:"warn"}),i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"🎓 Learned from real usage — per action"}),i.jsxs("p",{className:"section-description",children:["Every LLM call writes through to the health store with its action tag. This panel shows which provider × model each action ",i.jsx("span",{style:{color:"var(--accent-green)"},children:"verified"})," (routable) or"," ",i.jsx("span",{style:{color:"var(--accent-red)"},children:"killed"})," (predictively skipped) — the exact feed that turns “fail gemini → fail nim → local” into “straight to local”."]}),i.jsx(Bi,{tiles:n}),t.actions.map(r=>i.jsx(Hse,{entry:r},r.action)),i.jsx("div",{style:{textAlign:"center",fontSize:12,color:"var(--text-muted)",marginTop:12},children:"All actions share one health store — a provider killed by any action is skipped by all others"})]})}function rf({icon:e,title:t,count:n}){return n===0?null:i.jsxs("h3",{style:{fontSize:15,fontWeight:600,color:"var(--text-primary)",margin:"24px 0 12px 0",display:"flex",alignItems:"center",gap:8},children:[i.jsx("span",{children:e})," ",t,i.jsx("span",{style:{fontSize:12,color:"var(--text-secondary)",fontWeight:400,background:"var(--bg-card)",padding:"1px 8px",borderRadius:8},children:n})]})}function qse({value:e,onChange:t,totalCount:n}){return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,marginBottom:14},children:[i.jsxs("div",{style:{flex:1,position:"relative",display:"flex",alignItems:"center",background:"var(--bg-card)",borderRadius:8,border:"1px solid var(--border)",transition:"border-color 0.2s"},children:[i.jsx("span",{style:{position:"absolute",left:12,fontSize:14,color:"var(--text-muted)",pointerEvents:"none"},children:"🔍"}),i.jsx("input",{type:"text",value:e,onChange:r=>t(r.target.value),placeholder:"Search models by name or provider...",style:{width:"100%",padding:"10px 12px 10px 36px",background:"transparent",border:"none",color:"var(--text-primary)",fontSize:13,outline:"none",fontFamily:"inherit"},onFocus:r=>{r.currentTarget.parentElement.style.borderColor="var(--accent-blue)"},onBlur:r=>{r.currentTarget.parentElement.style.borderColor="var(--border)"}}),e&&i.jsx("button",{onClick:()=>t(""),style:{background:"none",border:"none",color:"var(--text-muted)",cursor:"pointer",padding:"8px 12px",fontSize:14,lineHeight:1},children:"✕"})]}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",whiteSpace:"nowrap"},children:[n," model",n!==1?"s":""]})]})}function Kse({value:e,onChange:t}){return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,fontSize:12,color:"var(--text-secondary)",marginBottom:14},children:[i.jsx("span",{children:"Columns:"}),bse.map(n=>i.jsx("button",{onClick:()=>t(n),style:{padding:"4px 12px",borderRadius:6,background:e===n?"var(--accent-blue)":"var(--bg-hover)",color:e===n?"var(--text-on-accent)":"var(--text-secondary)",border:`1px solid ${e===n?"var(--accent-blue)":"var(--border)"}`,cursor:"pointer",fontSize:12,fontWeight:e===n?600:400,transition:"all 0.15s"},children:n},n))]})}function Vse({model:e,provider:t}){const n=rp[e.status];return i.jsx("td",{style:{padding:10,verticalAlign:"top"},children:i.jsxs("div",{style:{background:n.cardBg,border:`1px solid ${n.cardBorder}44`,borderRadius:10,padding:14,display:"flex",flexDirection:"column",gap:8,height:"100%",transition:"all 0.2s ease",position:"relative",overflow:"hidden",cursor:"default"},onMouseEnter:r=>{r.currentTarget.style.borderColor=n.cardBorder,r.currentTarget.style.boxShadow=`0 2px 10px ${n.cardBorder}22`},onMouseLeave:r=>{r.currentTarget.style.borderColor=`${n.cardBorder}44`,r.currentTarget.style.boxShadow="none"},children:[i.jsx("div",{style:{position:"absolute",top:0,left:0,right:0,height:3,background:n.cardBorder,opacity:.6}}),i.jsx("div",{style:{fontSize:13,fontWeight:600,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",paddingTop:2},children:e.name.length>28?e.name.slice(0,25)+"…":e.name}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)"},children:[uM(t)," ",l0(t)]}),i.jsxs("div",{style:{display:"inline-flex",alignItems:"center",gap:5,background:n.bg,color:n.text,padding:"3px 8px",borderRadius:6,fontSize:11,fontWeight:600,alignSelf:"flex-start"},children:[i.jsx("span",{style:{width:7,height:7,borderRadius:"50%",background:n.dot}}),e.status==="available"?"Available":e.status==="limited"?"Limited":"Unavailable"]}),e.routable===!1&&i.jsx("div",{style:{fontSize:10,color:"var(--accent-yellow)",lineHeight:1.3,marginTop:2},children:e.registryStatus==="unavailable"?e.registryDead?"✗ Not served here — this id does not exist on the endpoint":"✗ Your key cannot use this model (auth / entitlement / access)":e.registryStatus==="verified"?"◌ Parked or gone stale — not routable now":e.registryStatus==="unverified"?"◌ Listed but never verified — the router cannot pick it":"◌ Not in the registry — never probed"}),e.routable===!1&&e.registryError&&i.jsx("div",{style:{fontSize:10,color:"var(--text-muted)",lineHeight:1.3,marginTop:1},children:e.registryError.length>60?e.registryError.slice(0,57)+"…":e.registryError}),e.entitlement&&e.entitlement.tier!=="unknown"&&i.jsx("div",{title:e.entitlement.basis,style:{fontSize:10,lineHeight:1.3,marginTop:2,color:e.entitlement.tier==="free"?"var(--accent-green)":"var(--text-secondary)"},children:e.entitlement.tier==="free"?"🎁 free":"💸 metered"}),e.status!=="available"&&e.statusReason&&i.jsx("div",{style:{fontSize:10,color:"var(--text-muted)",lineHeight:1.3,marginTop:2},children:e.statusReason.length>45?e.statusReason.slice(0,42)+"…":e.statusReason}),e.parked&&e.resetsInMs!==void 0&&e.resetsInMs>0&&i.jsxs("div",{style:{fontSize:10,color:"var(--accent-yellow)",lineHeight:1.3,marginTop:4,padding:"3px 6px",borderRadius:4,background:"var(--warn-soft)",border:"1px solid color-mix(in srgb, var(--accent-yellow) 27%, transparent)"},children:["⏳ Resets in ",dM(e.resetsInMs)]})]})})}function Yse({providers:e,colsPerRow:t,searchQuery:n}){const r=[];for(const l of e)for(const c of l.models)r.push({model:c,provider:l.provider});if(r.length===0)return null;let a=r;if(n.trim()){const l=n.toLowerCase().trim();a=r.filter(({model:c,provider:u})=>c.name.toLowerCase().includes(l)||l0(u).toLowerCase().includes(l)||u.toLowerCase().includes(l))}const s={available:0,limited:1,unavailable:2};a.sort((l,c)=>s[l.model.status]-s[c.model.status]);const o=[];for(let l=0;l<a.length;l+=t)o.push(a.slice(l,l+t));return i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"📋 Model Health Overview"}),i.jsx("p",{className:"section-description",children:"All models across all providers, color-coded by health status. Each cell shows: Model · Provider · Health."}),i.jsx("div",{style:{overflowX:"auto"},children:i.jsx("table",{style:{width:"100%",borderCollapse:"separate",borderSpacing:10,tableLayout:"fixed"},children:i.jsx("tbody",{children:o.length>0?o.map((l,c)=>i.jsxs("tr",{children:[l.map(({model:u,provider:d})=>i.jsx(Vse,{model:u,provider:d},`${d}-${u.id}`)),l.length<t&&Array.from({length:t-l.length}).map((u,d)=>i.jsx("td",{style:{padding:10}},`empty-${d}`))]},c)):i.jsx("tr",{children:i.jsxs("td",{colSpan:t,style:{textAlign:"center",padding:40,color:"var(--text-muted)",fontSize:13},children:['No models match your search "',n,'"']})})})})}),n.trim()&&a.length>0&&i.jsxs("div",{style:{textAlign:"right",fontSize:11,color:"var(--text-muted)",marginTop:4},children:["Showing ",a.length," of ",r.length," models"]})]})}function Xse(){return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px dashed var(--border)",padding:"20px 24px",marginTop:24,textAlign:"center"},children:[i.jsx("div",{style:{fontSize:24,marginBottom:8},children:"🎙️"}),i.jsx("div",{style:{fontSize:14,fontWeight:600,color:"var(--text-primary)",marginBottom:4},children:"Speech / TTS Provider"}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-muted)"},children:["Speech/TTS provider support coming soon."," ",i.jsx("a",{href:"https://github.com/imdheerajKube/agent-nuvira-documentation/issues/new",target:"_blank",rel:"noopener noreferrer",style:{color:"var(--accent-blue)",textDecoration:"none",cursor:"pointer"},onMouseEnter:e=>{e.currentTarget.style.textDecoration="underline"},onMouseLeave:e=>{e.currentTarget.style.textDecoration="none"},children:"Request a provider"})]})]})}function Qse(){return i.jsxs("div",{style:{background:"var(--bg-primary)",borderRadius:10,padding:14,marginBottom:20,border:"1px solid var(--border-light)",fontSize:13,color:"var(--text-secondary)",display:"flex",flexWrap:"wrap",gap:20},children:[i.jsxs("div",{children:[i.jsx("div",{style:{fontWeight:600,color:"var(--text-primary)",marginBottom:6},children:"Color Coding"}),i.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:4},children:[i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-green)"},children:"●"})," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:"Green"})," — Working with rate limit available"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-yellow)"},children:"●"})," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:"Amber"})," — Slow / low rate limit / needs action"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-red)"},children:"●"})," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:"Red"})," — API key missing / payment needed / unreachable"]})]})]}),i.jsxs("div",{children:[i.jsx("div",{style:{fontWeight:600,color:"var(--text-primary)",marginBottom:6},children:"Provider Sections"}),i.jsxs("div",{style:{display:"flex",flexDirection:"column",gap:3,fontSize:12},children:[i.jsxs("span",{children:["✅ ",i.jsx("strong",{children:"Cloud"})," — Online providers with active API keys"]}),i.jsxs("span",{children:["🏠 ",i.jsx("strong",{children:"Local"})," — Locally running inference servers"]}),i.jsxs("span",{children:["⛔ ",i.jsx("strong",{children:"Unavailable"})," — Missing keys or unreachable endpoints"]}),i.jsxs("span",{children:["🎙️ ",i.jsx("strong",{children:"Speech"})," — Text-to-speech / speech-to-text providers (coming)"]})]})]})]})}function Zse(){const[e,t]=x.useState(null);if(x.useEffect(()=>{let r=!0;return K.fetchAcceptance().then(a=>{r&&t(a)}),()=>{r=!1}},[]),!e)return null;const n=Object.entries(e.byPair);return i.jsxs("div",{style:{background:"var(--bg-card)",border:"1px solid var(--border-light)",borderRadius:12,padding:"14px 18px",marginBottom:16},children:[i.jsx("h2",{style:{fontSize:15,fontWeight:600,color:"var(--text-primary)",margin:"0 0 6px 0"},children:"⭐ Acceptance (read-only)"}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:6},children:[e.labelled," labelled turn",e.labelled===1?"":"s"," — 👍 ",e.accepted," / 👎 ",e.rejected,Object.keys(e.bySource).length>0?` · by source: ${Object.entries(e.bySource).map(([r,a])=>`${r} ${a}`).join(", ")}`:""]}),n.length>0&&i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:6},children:n.map(([r,a])=>{const s=a.accepted+a.rejected;return i.jsxs("div",{children:[r,": 👍 ",a.accepted," / 👎 ",a.rejected," (",Math.round(100*a.accepted/s),"%, n=",s,")"]},r)})}),i.jsx("div",{style:{fontSize:12,color:e.fit.ok?"var(--accent-green)":"var(--text-secondary)"},children:e.fit.ok?`fit TRAINED — P(accepted | features) n=${e.fit.n} (${e.fit.positives}👍/${e.fit.negatives}👎)`:`fit NOT trained — ${e.fit.reason??"insufficient labels"} · rate a turn with \`nuvira rate good|bad\``})]})}function Jse(){const[e,t]=x.useState(null),[n,r]=x.useState(null),[a,s]=x.useState(null);x.useEffect(()=>{let u=!0;return Promise.all([K.fetchGates(),K.fetchConsent(),K.fetchSessionGrants()]).then(([d,f,h])=>{u&&(t(d),r(f),s(h))}),()=>{u=!1}},[]);async function o(u){await K.revokeSessionGrant(u)&&s(f=>(f??[]).filter(h=>h.sessionId!==u))}if(!e&&!n&&!a)return null;const l={fontSize:15,fontWeight:600,color:"var(--text-primary)",margin:"0 0 6px 0"},c={fontSize:12,color:"var(--text-secondary)"};return i.jsxs("div",{style:{background:"var(--bg-card)",border:"1px solid var(--border-light)",borderRadius:12,padding:"14px 18px",marginBottom:16},children:[i.jsx("h2",{style:l,children:"🛡️ Gates & Consent"}),e&&i.jsxs("div",{style:{...c,marginBottom:8},children:["harness friction — ",e.traces," trace",e.traces===1?"":"s"," · ",e.events," gate/refusal events · per turn mean ",e.perTurn.mean," (median ",e.perTurn.median,", p90 ",e.perTurn.p90,", max ",e.perTurn.max,") · narration ",e.narration.turns,e.byGate.length>0?i.jsxs("div",{style:{marginTop:4},children:["top gates: ",e.byGate.slice(0,5).map(u=>`${u.key} ${u.count}`).join(" · ")]}):null]}),a&&i.jsx("div",{style:{...c,marginBottom:8},children:a.length===0?i.jsx("span",{children:"No session grants are live — every state change still asks."}):a.map(u=>i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginTop:2},children:[i.jsxs("span",{children:[i.jsx("strong",{children:u.sessionId})," — allowed ",u.categories.join(", ")]}),i.jsx("button",{type:"button",onClick:()=>o(u.sessionId),style:{fontSize:11,padding:"1px 8px",borderRadius:6,border:"1px solid var(--border-light)",background:"transparent",color:"var(--text-secondary)",cursor:"pointer"},children:"End"})]},u.sessionId))}),n&&i.jsx("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fit, minmax(240px, 1fr))",gap:12},children:[n.denied,n.grantable,n.decided].map(u=>i.jsxs("div",{children:[i.jsx("div",{style:{fontSize:12,fontWeight:600,color:"var(--text-primary)"},children:u.title}),i.jsx("div",{style:{...c,marginBottom:4},children:u.note}),u.examples.map(d=>i.jsxs("div",{style:c,children:["• ",d.action," ",i.jsxs("span",{style:{opacity:.7},children:["(",d.evidence,")"]})]},d.action))]},u.title))})]})}function eoe(){var w;const[e,t]=x.useState(null),[n,r]=x.useState(null),[a,s]=x.useState(!0),[o,l]=x.useState(null),[c,u]=x.useState(4),[d,f]=x.useState(""),h=o0(),p=x.useRef(!0),g=x.useRef(null),m=x.useRef(!1);function y(){g.current&&clearTimeout(g.current),g.current=setTimeout(()=>{p.current&&v()},wse)}async function v(){s(!0),l(null),m.current=!1;try{const[j,k]=await Promise.all([Sse(()=>{m.current=!0}),jse(()=>{m.current=!0})]);if(!p.current)return;t(j),r(k),m.current&&y()}catch(j){if(!p.current)return;l(j instanceof Error&&j.message?j.message:"Failed to fetch model status"),m.current&&y()}finally{p.current&&s(!1)}}x.useEffect(()=>{p.current=!0,v();const j=setInterval(v,xse);return()=>{p.current=!1,clearInterval(j),g.current&&clearTimeout(g.current)}},[]);function S(j){const k=[],b=[],N=[],_=[],T={available:0,limited:1,unavailable:2};for(const C of j.providers)yse.has(C.provider)?N.push(C):vse.has(C.provider)?b.push(C):C.overallStatus==="available"?k.push(C):_.push(C);return k.sort((C,O)=>T[C.overallStatus]-T[O.overallStatus]),b.sort((C,O)=>T[C.overallStatus]-T[O.overallStatus]),N.sort((C,O)=>T[C.overallStatus]-T[O.overallStatus]),_.sort((C,O)=>T[C.overallStatus]-T[O.overallStatus]),{available:k,local:b,speech:N,unavailable:_}}return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"🧠",title:"Model Provider Status",description:"Real-time health check of all AI providers and their available models. Providers are grouped into sections: Available cloud → Local → Unavailable."}),i.jsx(_se,{onRefresh:v,loading:a}),i.jsx(Qse,{}),i.jsx(Zse,{}),i.jsx(Jse,{}),a&&!e&&i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{children:"Testing provider connections…"})]}),o&&i.jsxs("div",{className:"empty-state",style:{color:"var(--accent-red)",border:"1px solid color-mix(in srgb, var(--accent-red) 27%, transparent)",borderRadius:10,padding:16,marginBottom:16},children:["⚠️ ",o]}),e&&i.jsxs(i.Fragment,{children:[i.jsx(Bi,{tiles:[{key:"listed-models",icon:"🧠",value:String(e.totalModels),label:"Listed models (live probe)",tone:"accent"},{key:"tracked-models",icon:"📦",value:String((h==null?void 0:h.trackedModels)??(n==null?void 0:n.total)??0),label:"Tracked models (registry)",tone:"accent"},{key:"available",icon:"✅",value:String(e.available),label:"Available",tone:"ok"},{key:"limited",icon:"🟡",value:String(e.limited),label:"Limited",tone:"warn"},{key:"unavailable",icon:"🔴",value:String(e.unavailable),label:"Unavailable",tone:"danger"},{key:"listed-providers",icon:"🔌",value:String(e.providers.length),label:"Listed providers (live probe)",tone:"accent"},{key:"tracked-providers",icon:"🗂️",value:String((h==null?void 0:h.trackedProviders)??((w=n==null?void 0:n.providers)==null?void 0:w.length)??0),label:"Tracked providers (registry)",tone:"accent"}]}),i.jsx(Ase,{data:e}),(()=>{const{available:j,local:k,speech:b,unavailable:N}=S(e);return i.jsxs(i.Fragment,{children:[i.jsx(rf,{icon:"✅",title:"Available Cloud Providers",count:j.length}),j.map(_=>i.jsx(nf,{provider:_},_.provider)),i.jsx(rf,{icon:"🏠",title:"Local Providers",count:k.length}),k.map(_=>i.jsx(nf,{provider:_},_.provider)),i.jsx(rf,{icon:"⛔",title:"Unavailable Providers",count:N.length}),N.map(_=>i.jsx(nf,{provider:_},_.provider)),i.jsx(rf,{icon:"🎙️",title:"Speech / TTS Providers",count:b.length}),b.map(_=>i.jsx(nf,{provider:_},_.provider))]})})(),i.jsx(qse,{value:d,onChange:f,totalCount:e.providers.reduce((j,k)=>j+k.models.length,0)}),i.jsx(Kse,{value:c,onChange:u}),i.jsx(Yse,{providers:e.providers,colsPerRow:c,searchQuery:d}),n&&i.jsx($se,{data:n}),n&&i.jsx(Gse,{registry:n}),e&&!n&&i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px dashed var(--border)",padding:"14px 20px",marginTop:24,fontSize:12,color:"var(--text-secondary)",lineHeight:1.6},children:["📦 Registry & telemetry sections are hidden — this dashboard server did not return model-registry data (it may be an"," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:"older version"}),"). Restart the dashboard from the latest install to see them."]}),i.jsx(Xse,{}),i.jsxs("div",{style:{textAlign:"center",fontSize:12,color:"var(--text-muted)",marginTop:16},children:["Last checked: ",new Date(e.lastChecked).toLocaleTimeString()," · ","Auto-refreshes every 60s"]})]})]})}const toe={local:"💻",groq:"🟢",nim:"🔶",gemini:"🔷",openrouter:"🟣"},noe={local:"Ollama (Local)",groq:"Groq",nim:"NVIDIA NIM",gemini:"Gemini",openrouter:"OpenRouter"},roe={trivial:"🟢",simple:"🔵",moderate:"🟡",complex:"🟠",critical:"🔴"},fM={trivial:"🟢 trivial",simple:"🔵 simple",moderate:"🟡 moderate",complex:"🟠 complex",critical:"🔴 critical"},aoe={chat:"💬 chat",orchestrator:"🔀 orchestrator",explain:"🔍 explain",benchmark:"📈 benchmark",eval:"🎯 eval"},ts=[{key:"request",icon:"🎯",title:"Request"},{key:"candidates",icon:"⚖️",title:"Candidates"},{key:"exclusions",icon:"🚫",title:"Exclusions"},{key:"pick",icon:"✅",title:"Pick"}],ioe=2400;function Wg(e){return toe[e]||"🔌"}function iE(e){return noe[e]||e}function c0(e){return e&&aoe[e]||e||"unknown"}function soe(e){const t=Date.now()-e;return t<6e4?"just now":t<36e5?`${Math.floor(t/6e4)}m ago`:t<864e5?`${Math.floor(t/36e5)}h ago`:`${Math.floor(t/864e5)}d ago`}function sE(e){const t=Math.ceil(e/6e4);return t>=60?`${Math.floor(t/60)}h ${t%60}m`:`${t}m`}const ooe=8;function oE(e,t){const n=t.quota,r=n==null?void 0:n.entries.find(s=>s.provider===e);return r!=null&&r.parked?r.resetsInMs>0?`quota exhausted — auto re-enables in ${sE(r.resetsInMs)}`:"quota exhausted — parked":r&&r.cooldownRemaining>0?`circuit-breaker cooldown — ${sE(r.cooldownRemaining)} remaining`:t.providers.some(s=>s.provider===e)?"ranked below the candidate cutoff for this complexity":"not scored for this complexity (no benchmark quality data)"}function loe(e){var s,o,l;const t=new Set;for(const c of e.providers)t.add(c.provider);if(e.usage)for(const c of Object.keys(e.usage.byProvider))t.add(c);if(e.bestModels)for(const c of e.bestModels)t.add(c.model.split("/")[0]);if(e.quota)for(const c of e.quota.entries)t.add(c.provider);const n=new Map(e.preference.map(c=>[c.complexity,c])),r=[],a=[...e.history??[]].sort((c,u)=>(u.timestamp??0)-(c.timestamp??0));for(const c of a.slice(0,ooe)){const u=n.get(c.complexity),d=(s=u==null?void 0:u.providers)!=null&&s.length?u.providers.map(g=>({provider:g.provider,score:g.score,reason:g.reason})):[{provider:c.provider,score:c.score,reason:"actual pick recorded"}];d.some(g=>g.provider===c.provider)||d.push({provider:c.provider,score:c.score,reason:"actual pick recorded"});const f=new Set(d.map(g=>g.provider)),h=[...t].filter(g=>!f.has(g)).map(g=>({provider:g,reason:oE(g,e)})),p=(o=d.find(g=>g.provider===c.provider))==null?void 0:o.reason;r.push({id:c.id,label:`${c0(c.source)} · ${c.complexity} · ${(c.task||c.agentType).slice(0,26)}`,real:!0,complexity:c.complexity,task:c.task||c.agentType,agentType:c.agentType,source:c.source,timestamp:c.timestamp,winner:`${c.provider}/${c.model}`,winnerScore:c.score,winnerReason:p,candidates:d,exclusions:h})}if(r.length===0)for(const c of e.preference){const u=c.winner.split("/"),d=c.providers.map(g=>({provider:g.provider,score:g.score,reason:g.reason})),f=new Set(d.map(g=>g.provider)),h=[...t].filter(g=>!f.has(g)).map(g=>({provider:g,reason:oE(g,e)})),p=u[0];r.push({id:`profile-${c.complexity}`,label:`${fM[c.complexity]||c.complexity} — what the router would pick`,real:!1,complexity:c.complexity,task:p?`A ${c.complexity} task (auto-routed)`:`A ${c.complexity} task`,agentType:"chat",winner:c.winner,winnerScore:c.score,winnerReason:(l=d.find(g=>g.provider===p))==null?void 0:l.reason,candidates:d,exclusions:h})}return r}function coe(e,t){switch(e){case"request":return`A ${t.complexity} task arrives${t.source?` from ${c0(t.source)}`:""} and must be routed.`;case"candidates":return`${t.candidates.length} provider${t.candidates.length!==1?"s":""} are scored against the ${t.complexity} weight profile.`;case"exclusions":return t.exclusions.length>0?`${t.exclusions.length} provider${t.exclusions.length!==1?"s":""} known to the system are skipped before scoring.`:"Every known provider was scored — nothing was skipped.";case"pick":return t.winnerReason?`The top score wins: ${t.winner.split("/")[0]} ranked first — ${t.winnerReason}.`:`The top score wins: ${t.winner}.`}}function uoe({value:e,color:t}){const n=Math.min(100,Math.max(0,e*100));return i.jsx("div",{style:{flex:1,background:"var(--bg-primary)",borderRadius:4,height:6,overflow:"hidden",border:"1px solid var(--border-light)"},children:i.jsx("div",{style:{width:`${n}%`,background:t,height:"100%",transition:"width 0.4s ease"}})})}function doe({icon:e,title:t,narration:n}){return i.jsxs("div",{style:{display:"flex",alignItems:"flex-start",gap:10,marginBottom:14},children:[i.jsx("span",{style:{fontSize:20,lineHeight:"24px"},children:e}),i.jsxs("div",{children:[i.jsx("div",{style:{fontSize:14,fontWeight:600,color:"var(--text-primary)"},children:t}),i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginTop:2},children:n})]})]})}function foe({routing:e}){const t=x.useMemo(()=>loe(e),[e]),[n,r]=x.useState(""),[a,s]=x.useState(0),[o,l]=x.useState(!1);if(x.useEffect(()=>{t.length!==0&&(t.some(p=>p.id===n)||(r(t[0].id),s(0)))},[t,n]),x.useEffect(()=>{if(!o||t.length===0)return;const p=setInterval(()=>{s(g=>(g+1)%ts.length)},ioe);return()=>clearInterval(p)},[o,t.length]),t.length===0)return null;const c=t.find(p=>p.id===n)??t[0],u=ts[a],d=()=>{s(p=>(p+ts.length-1)%ts.length),l(!1)},f=()=>{s(p=>(p+1)%ts.length),l(!1)},h=()=>l(p=>!p);return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px solid var(--border-light)",padding:"18px 20px",marginBottom:16},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:4},children:[i.jsx("span",{style:{fontSize:20},children:"🎬"}),i.jsx("h3",{style:{fontSize:15,fontWeight:600,color:"var(--text-primary)",margin:0},children:"Why did the router pick this?"}),c.real&&i.jsx("span",{style:{fontSize:11,padding:"1px 8px",borderRadius:10,background:"var(--ok-soft)",border:"1px solid var(--accent-green)",color:"var(--accent-green)"},children:"✓ real decision"})]}),i.jsx("p",{style:{fontSize:12,color:"var(--text-secondary)",margin:"2px 0 12px 0"},children:"Narrated step-by-step replay of a routing decision — request, candidates, exclusions, and the pick. Scrubbable, or hit play."}),i.jsx("select",{"aria-label":"Routing decision to replay",value:n,onChange:p=>{r(p.target.value),s(0),l(!1)},style:{width:"100%",marginBottom:16,padding:"8px 10px",background:"var(--bg-primary)",color:"var(--text-primary)",fontSize:12,border:"1px solid var(--border)",borderRadius:8,outline:"none"},children:t.map(p=>i.jsxs("option",{value:p.id,style:{background:"var(--bg-primary)",color:"var(--text-primary)"},children:[p.real?"● ":"○ ",p.label]},p.id))}),i.jsx(doe,{icon:u.icon,title:`${a+1}. ${u.title}${a>0?` — ${c.complexity}`:""}`,narration:coe(u.key,c)}),u.key==="request"&&i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"14px 16px"},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,flexWrap:"wrap",marginBottom:8},children:[i.jsxs("span",{style:{fontSize:12,padding:"2px 10px",borderRadius:12,background:"var(--bg-card)",border:"1px solid var(--border)",color:"var(--text-primary)"},children:[roe[c.complexity]||"•"," ",fM[c.complexity]||c.complexity]}),i.jsxs("span",{style:{fontSize:12,padding:"2px 10px",borderRadius:12,background:"var(--bg-card)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:["🤖 ",c.agentType]}),c.source&&i.jsx("span",{style:{fontSize:12,padding:"2px 10px",borderRadius:12,background:"var(--bg-card)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:c0(c.source)}),c.timestamp&&i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",marginLeft:"auto"},children:soe(c.timestamp)})]}),i.jsx("div",{style:{fontSize:13,color:"var(--text-primary)"},children:c.task})]}),u.key==="candidates"&&i.jsxs("div",{children:[c.candidates.map((p,g)=>{const m=p.provider===c.winner.split("/")[0];return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"8px 12px",background:m?"var(--ok-soft)":"var(--bg-primary)",border:`1px solid ${m?"var(--accent-green)":"var(--border-light)"}`,borderRadius:8,marginBottom:6},children:[i.jsxs("span",{style:{width:18,fontSize:11,color:"var(--text-muted)",textAlign:"right"},children:[g+1,"."]}),i.jsxs("span",{style:{width:104,color:m?"var(--accent-green)":"var(--text-primary)",fontWeight:m?600:400,whiteSpace:"nowrap",fontSize:12},children:[Wg(p.provider)," ",iE(p.provider).split(" ")[0],m&&" 👑"]}),i.jsx(uoe,{value:p.score,color:m?"var(--accent-green)":"var(--accent-blue)"}),i.jsx("span",{style:{width:44,textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11,color:"var(--text-secondary)"},children:p.score.toFixed(3)})]},p.provider)}),c.candidates.length>0&&i.jsxs("div",{style:{marginTop:10},children:[i.jsx("div",{style:{fontSize:11,color:"var(--text-muted)",marginBottom:4},children:"Why each ranked where it did"}),c.candidates.map(p=>i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:3},children:[i.jsx("span",{style:{color:"var(--text-primary)"},children:p.provider}),": ",p.reason||"scored"]},p.provider))]})]}),u.key==="exclusions"&&(c.exclusions.length>0?i.jsx("div",{children:c.exclusions.map(p=>i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"8px 12px",background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:8,marginBottom:6},children:[i.jsx("span",{style:{fontSize:13},children:"🚫"}),i.jsxs("span",{style:{width:110,color:"var(--text-primary)",whiteSpace:"nowrap",fontSize:12},children:[Wg(p.provider)," ",iE(p.provider).split(" ")[0]]}),i.jsx("span",{style:{flex:1,fontSize:12,color:"var(--text-secondary)"},children:p.reason})]},p.provider))}):i.jsx("div",{style:{background:"var(--bg-primary)",border:"1px dashed var(--border)",borderRadius:10,padding:"14px 16px",color:"var(--text-secondary)",fontSize:13},children:"✅ No exclusions — every provider known to the system was scored for this decision."})),u.key==="pick"&&i.jsxs("div",{style:{background:"var(--ok-soft)",border:"1px solid var(--accent-green)",borderRadius:10,padding:"16px 18px"},children:[i.jsx("div",{style:{fontSize:12,color:"var(--accent-green)",fontWeight:600,marginBottom:6},children:"🏆 ROUTER PICK"}),i.jsxs("div",{style:{fontSize:16,fontWeight:700,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace",marginBottom:4},children:[Wg(c.winner.split("/")[0])," ",c.winner]}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:10},children:["composite score ",i.jsx("span",{style:{fontFamily:"'SFMono-Regular', Consolas, monospace",color:"var(--accent-green)"},children:c.winnerScore.toFixed(3)}),!c.real&&" · profile preview"]}),c.winnerReason&&i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",borderTop:"1px solid color-mix(in srgb, var(--accent-green) 33%, transparent)",paddingTop:8},children:[i.jsx("span",{style:{color:"var(--text-primary)"},children:"Why:"})," ",c.winnerReason]})]}),i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,marginTop:16},children:[i.jsx("button",{onClick:d,"aria-label":"Previous step",style:Hg,children:"◀"}),i.jsx("button",{onClick:h,"aria-label":o?"Pause playback":"Play playback",style:{...Hg,minWidth:84,color:o?"var(--accent-yellow)":"var(--accent-green)"},children:o?"⏸ Pause":"▶ Play"}),i.jsx("button",{onClick:f,"aria-label":"Next step",style:Hg,children:"▶"}),i.jsx("div",{style:{display:"flex",gap:6,marginLeft:8},children:ts.map((p,g)=>i.jsx("button",{"aria-label":`Go to step ${g+1}: ${p.title}`,onClick:()=>{s(g),l(!1)},style:{width:22,height:22,borderRadius:11,border:"none",cursor:"pointer",fontSize:10,lineHeight:"22px",padding:0,background:g===a?"var(--accent-blue)":"var(--bg-hover)",color:g===a?"var(--bg-primary)":"var(--text-secondary)"},title:p.title,children:p.icon},p.key))}),i.jsxs("span",{style:{marginLeft:"auto",fontSize:11,color:"var(--text-muted)"},children:["step ",a+1,"/",ts.length]})]})]})}const Hg={background:"var(--bg-hover)",color:"var(--text-primary)",border:"1px solid var(--border)",borderRadius:8,padding:"6px 12px",fontSize:13,cursor:"pointer",transition:"background 0.15s"},hoe={local:"💻",groq:"🟢",nim:"🔶",gemini:"🔷",openrouter:"🟣"},poe={local:"Ollama (Local)",groq:"Groq",nim:"NVIDIA NIM",gemini:"Gemini",openrouter:"OpenRouter"},hM={trivial:"🟢",simple:"🔵",moderate:"🟡",complex:"🟠",critical:"🔴"};function Hr(e){return hoe[e]||"🔌"}function Ni(e){return poe[e]||e}function ap(e,t=1){return`${(e*100).toFixed(t)}%`}function moe(e){return`$${e.toFixed(6)}`}function ir({icon:e,title:t,subtitle:n,children:r}){return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px solid var(--border-light)",padding:"18px 20px",marginBottom:16},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:4},children:[i.jsx("span",{style:{fontSize:20},children:e}),i.jsx("h3",{style:{fontSize:15,fontWeight:600,color:"var(--text-primary)",margin:0},children:t})]}),n&&i.jsx("p",{style:{fontSize:12,color:"var(--text-secondary)",margin:"2px 0 12px 0"},children:n}),!n&&i.jsx("div",{style:{height:6}}),r]})}function u0({value:e,color:t}){const n=Math.min(100,Math.max(0,e*100));return i.jsx("div",{style:{flex:1,background:"var(--bg-primary)",borderRadius:4,height:6,overflow:"hidden",border:"1px solid var(--border-light)"},children:i.jsx("div",{style:{width:`${n}%`,background:t,height:"100%",transition:"width 0.4s ease"}})})}function hi(e,t,n="var(--text-secondary)"){return{fontSize:10,padding:"1px 7px",borderRadius:9,background:e,border:`1px solid ${t}`,color:n,fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap"}}function goe(){return i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px dashed var(--border)",borderRadius:10,padding:"18px 20px",color:"var(--text-secondary)",fontSize:13,textAlign:"center"},children:["📊 No routing data yet — run ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff benchmark"})," to populate provider quality scores, or use Auto routing (",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff model switch auto"}),") to build per-agent best-model stats over time."]})}const voe={chat:"💬 chat",orchestrator:"🔀 orchestrator",explain:"🔍 explain",benchmark:"📈 benchmark",eval:"🎯 eval"},yoe={trivial:"🟢 trivial",simple:"🔵 simple",moderate:"🟡 moderate",complex:"🟠 complex",critical:"🔴 critical"};function pM(e){return voe[e]||e}function mM(e){const t=Date.now()-e;return t<6e4?"just now":t<36e5?`${Math.floor(t/6e4)}m ago`:t<864e5?`${Math.floor(t/36e5)}h ago`:`${Math.floor(t/864e5)}d ago`}function lE(e){if(e<=0)return"now";const t=Math.floor(e/36e5),n=Math.floor(e%36e5/6e4);return t>0?`${t}h ${n}m`:n>0?`${n}m`:`${Math.ceil(e/1e3)}s`}function boe({label:e,value:t,total:n,color:r}){const a=n>0?t/n*100:0;return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:5},children:[i.jsx("span",{style:{width:110,color:"var(--text-primary)",whiteSpace:"nowrap",fontSize:12},children:e}),i.jsx("div",{style:{flex:1,background:"var(--bg-primary)",borderRadius:4,height:6,overflow:"hidden",border:"1px solid var(--border-light)"},children:i.jsx("div",{style:{width:`${Math.min(100,a)}%`,background:r,height:"100%",transition:"width 0.4s ease"}})}),i.jsx("span",{style:{width:34,textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11,color:"var(--text-secondary)"},children:t})]})}function xoe({usage:e}){if(!e.total)return null;const t=e.total,n=Object.entries(e.byProvider).sort((a,s)=>s[1]-a[1]).slice(0,6),r=Object.entries(e.byModel).sort((a,s)=>s[1]-a[1]).slice(0,5);return i.jsxs(ir,{icon:"🧮",title:"Routing Usage — actual picks over time",subtitle:"Recorded from live chat, orchestrator runs, explain snapshots, benchmark --routing, and eval --routing",children:[i.jsxs("div",{style:{display:"flex",gap:20,flexWrap:"wrap",marginBottom:14},children:[i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:e.total}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"total decisions"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:e.last24h>0?"var(--accent-green)":"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:e.last24h}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"last 24h"})]})]}),i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:6},children:"By provider"}),n.map(([a,s])=>i.jsx(boe,{label:`${Hr(a)} ${Ni(a).split(" ")[0]}`,value:s,total:t,color:"var(--accent-blue)"},a)),Object.keys(e.bySource).length>0&&i.jsx("div",{style:{marginTop:12,display:"flex",gap:6,flexWrap:"wrap"},children:Object.entries(e.bySource).sort((a,s)=>s[1]-a[1]).map(([a,s])=>i.jsxs("span",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:20,padding:"3px 10px",fontSize:11,color:"var(--text-primary)"},children:[pM(a)," · ",s]},a))}),r.length>0&&i.jsxs("div",{style:{marginTop:14},children:[i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:6},children:"Most-picked models"}),r.map(([a,s])=>i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:5},children:[i.jsx("span",{style:{flex:1,color:"var(--text-primary)",fontSize:12,fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},title:a,children:a.length>42?a.slice(0,39)+"…":a}),i.jsx("span",{style:{width:34,textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11,color:"var(--text-secondary)"},children:s})]},a))]})]})}function woe({history:e}){return e.length?i.jsx(ir,{icon:"🕓",title:"Audit Trail — routing decision timeline",subtitle:"Every explain snapshot (and routing-mode pick) persisted for transparency",children:i.jsx("div",{style:{maxHeight:320,overflowY:"auto",paddingRight:4},children:e.map(t=>i.jsxs("div",{style:{display:"flex",gap:10,padding:"8px 4px",borderBottom:"1px solid var(--border-light)"},children:[i.jsx("div",{style:{width:52,flexShrink:0,fontSize:11,color:"var(--text-muted)",paddingTop:2},children:mM(t.timestamp)}),i.jsxs("div",{style:{flex:1,minWidth:0},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,flexWrap:"wrap"},children:[i.jsx("span",{style:{fontSize:11,padding:"1px 8px",borderRadius:10,background:"var(--bg-primary)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:pM(t.source)}),i.jsxs("span",{style:{fontSize:12,fontWeight:600,color:"var(--accent-green)",fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},title:`${t.provider}/${t.model}`,children:[Hr(t.provider)," ",t.provider,"/",t.model.length>26?t.model.slice(0,23)+"…":t.model]}),t.complexity&&i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)"},children:yoe[t.complexity]||t.complexity}),t.agenticCapable===!1&&i.jsx("span",{style:hi("var(--danger-soft)","var(--accent-red)"),title:t.overrideReason?`override: ${t.overrideReason}`:void 0,children:"⚠️ weak model"}),t.fallbackFrom&&i.jsxs("span",{style:hi("var(--bg-tertiary)","var(--border-hover)"),children:["↩ from ",t.fallbackFrom]})]}),i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginTop:3,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:t.task,children:t.task||t.agentType})]})]},t.id))})}):null}function koe({routing:e}){return e.preference.length?i.jsx(ir,{icon:"🤖",title:"Auto Router — What the agent would pick",subtitle:"Complexity-weighted scoring across reasoning, speed, cost, privacy, and reliability (real provider pricing)",children:i.jsx("div",{style:{overflowX:"auto"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:13},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)"},children:[i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Complexity"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Winner"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Score"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"All providers"})]})}),i.jsx("tbody",{children:e.preference.map(t=>i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)"},children:[i.jsxs("td",{style:{padding:"10px 12px",color:"var(--text-primary)",whiteSpace:"nowrap"},children:[hM[t.complexity]||"•"," ",t.complexity]}),i.jsx("td",{style:{padding:"10px 12px",whiteSpace:"nowrap"},children:i.jsxs("span",{style:{color:"var(--accent-green)",fontWeight:600},children:[Hr(t.winner.split("/")[0])," ",t.winner]})}),i.jsx("td",{style:{padding:"10px 12px",fontFamily:"'SFMono-Regular', Consolas, monospace",color:"var(--text-secondary)"},children:t.score.toFixed(3)}),i.jsx("td",{style:{padding:"10px 12px",minWidth:300},children:t.providers.map((n,r)=>i.jsxs("div",{style:{marginBottom:5},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[i.jsxs("span",{style:{width:16,fontSize:11,color:"var(--text-muted)",textAlign:"right"},children:[r+1,"."]}),i.jsxs("span",{style:{width:90,color:"var(--text-primary)",whiteSpace:"nowrap",fontSize:12},children:[Hr(n.provider)," ",Ni(n.provider).split(" ")[0]]}),i.jsx(u0,{value:n.score,color:r===0?"var(--accent-green)":"var(--accent-blue)"}),i.jsx("span",{style:{width:40,textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11,color:"var(--text-secondary)"},children:n.score.toFixed(2)})]}),(n.capabilityFit!==void 0||n.costSource||n.contextUtilization!==void 0)&&i.jsxs("div",{style:{display:"flex",gap:6,flexWrap:"wrap",paddingLeft:16,marginTop:2},children:[n.capabilityFit!==void 0&&i.jsxs("span",{style:hi("var(--bg-tertiary)","var(--border-hover)"),children:["🎯 fit ",n.capabilityFit,"%"]}),n.costSource==="measured"&&n.costBasis?i.jsxs("span",{style:hi("var(--ok-soft)","var(--accent-green)","var(--accent-green)"),children:["📏 measured ",kt(n.costBasis.inputTokens),"→",kt(n.costBasis.outputTokens)," tok"]}):i.jsx("span",{style:hi("var(--bg-tertiary)","var(--border-hover)"),children:"📐 estimated"}),n.contextUtilization!==void 0&&n.contextWindowTokens!==void 0&&i.jsxs("span",{style:hi("var(--bg-tertiary)","var(--accent-blue)","var(--accent-blue)"),children:["⏳ ctx ",n.contextUtilization,"% (",kt(n.contextWindowTokens)," tok)"]})]})]},n.provider))})]},t.complexity))})]})})}):null}function Soe({routing:e}){return e.providers.length?i.jsx(ir,{icon:"📈",title:"Provider Benchmark Quality",subtitle:"Measured from your own `buff benchmark` runs — blended into Auto routing decisions",children:i.jsx("div",{style:{overflowX:"auto"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:13},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)"},children:[i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Provider"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Runs"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Avg Quality"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Pass Rate"}),i.jsx("th",{style:{padding:"8px 12px",textAlign:"left",fontWeight:500},children:"Total Cost"})]})}),i.jsx("tbody",{children:e.providers.map(t=>i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)"},children:[i.jsxs("td",{style:{padding:"10px 12px",color:"var(--text-primary)",whiteSpace:"nowrap"},children:[Hr(t.provider)," ",Ni(t.provider)]}),i.jsx("td",{style:{padding:"10px 12px",color:"var(--text-secondary)"},children:t.runs}),i.jsx("td",{style:{padding:"10px 12px"},children:i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[i.jsx(u0,{value:t.avgQuality,color:"var(--accent-blue)"}),i.jsx("span",{style:{fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12,color:"var(--text-secondary)",width:44,textAlign:"right"},children:ap(t.avgQuality)})]})}),i.jsx("td",{style:{padding:"10px 12px",color:t.passRate>=.8?"var(--accent-green)":"var(--accent-yellow)"},children:ap(t.passRate)}),i.jsx("td",{style:{padding:"10px 12px",fontFamily:"'SFMono-Regular', Consolas, monospace",color:"var(--text-secondary)"},children:moe(t.totalCostUsd)})]},t.provider))})]})})}):null}const cE=["trivial","simple","moderate","complex","critical"];function joe(e){return e>=.7?"var(--accent-green)":e>=.45?"var(--accent-yellow)":"var(--accent-red)"}function Noe({bandit:e}){const t=Object.keys(e.priors).sort();if(!e.enabled||t.length===0)return null;const n=e.learningHistory.slice(-15).reverse();return i.jsxs(ir,{icon:"🎰",title:"Bandit Learning — Thompson-sampling priors",subtitle:"Beta(α, β) per provider × complexity bucket, learned from real task outcomes (routing.bandit = true). Higher expected win rate = more successful history.",children:[i.jsx("div",{style:{overflowX:"auto"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:12},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)"},children:[i.jsx("th",{style:{padding:"8px 10px",textAlign:"left",fontWeight:500},children:"Provider"}),cE.map(r=>i.jsxs("th",{style:{padding:"8px 10px",textAlign:"center",fontWeight:500},children:[hM[r]||"•"," ",r]},r))]})}),i.jsx("tbody",{children:t.map(r=>i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)"},children:[i.jsxs("td",{style:{padding:"8px 10px",color:"var(--text-primary)",whiteSpace:"nowrap"},children:[Hr(r)," ",Ni(r).split(" ")[0]]}),cE.map(a=>{var o;const s=(o=e.priors[r])==null?void 0:o[a];return!s||s.alpha===0&&s.beta===0?i.jsx("td",{style:{padding:"8px 10px",textAlign:"center",color:"var(--text-muted)"},children:"·"},a):i.jsxs("td",{style:{padding:"8px 10px",textAlign:"center"},children:[i.jsxs("div",{style:{fontSize:13,fontWeight:600,color:joe(s.expectedWinRate),fontFamily:"'SFMono-Regular', Consolas, monospace"},children:[(s.expectedWinRate*100).toFixed(0),"%"]}),i.jsxs("div",{style:{fontSize:10,color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:["α",s.alpha," β",s.beta]})]},a)})]},r))})]})}),n.length>0&&i.jsxs("div",{style:{marginTop:16},children:[i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:8},children:"Recent learning history"}),i.jsx("div",{style:{maxHeight:180,overflowY:"auto",paddingRight:4},children:n.map((r,a)=>{const s=r.outcome==="success"?"✅":r.outcome==="escalated"?"🔄":"❌",o=new Date(r.timestamp).toLocaleTimeString();return i.jsxs("div",{style:{display:"flex",gap:8,alignItems:"center",padding:"5px 4px",borderBottom:"1px solid var(--border-light)"},children:[i.jsx("span",{children:s}),i.jsx("span",{style:{color:"var(--text-primary)",fontSize:12,width:110,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},title:r.provider,children:r.provider}),i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",width:80},children:r.complexity}),i.jsxs("span",{style:{fontSize:11,color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:["reward ",r.reward.toFixed(2)]}),i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",marginLeft:"auto"},children:o})]},a)})})]}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)",marginTop:12},children:["Cold-start Beta(1,1) behaves like the heuristic router until outcomes accumulate. Enable learning with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff config set routing.bandit true"}),"."]})]})}function Eoe(e,t=1){return`${e>0?"+":""}${(e*100).toFixed(t)}%`}function _oe({state:e}){const t={pass:{bg:"var(--ok-soft)",border:"var(--accent-green)",color:"var(--accent-green)",label:"✓ pass"},fail:{bg:"var(--danger-soft)",border:"var(--accent-red)",color:"var(--accent-red)",label:"✗ fail"},neutral:{bg:"var(--bg-tertiary)",border:"var(--border-hover)",color:"var(--text-secondary)",label:"○ neutral"}}[e];return i.jsx("span",{style:{fontSize:11,padding:"1px 8px",borderRadius:10,background:t.bg,border:`1px solid ${t.border}`,color:t.color},children:t.label})}function Aoe({promotion:e}){if(!e.decisionCount)return null;const t=e.promoted?{icon:"🎖️",label:"Promoted — the bandit beats the heuristic",color:"var(--accent-green)"}:e.sufficient?{icon:"⚠️",label:"Not promoted — the bandit is not (yet) better",color:"var(--accent-yellow)"}:{icon:"⏳",label:"Collecting data — need more diverged decisions",color:"var(--accent-blue)"},n=e.minDecisions>0?Math.min(100,Math.round(e.divergedCount/e.minDecisions*100)):0,r=[{key:"quality",label:"Quality ↑",delta:e.qualityDelta,state:e.criteria.quality?"pass":"fail",note:"needs > +2%"},{key:"cost",label:"Cost ↓",delta:e.costDelta,state:e.criteria.cost?"pass":"fail",note:"regression < +1%"},{key:"latency",label:"Latency ↓",delta:e.latencyDelta,state:e.latencyMeasured?e.criteria.latency?"pass":"fail":"neutral",note:e.latencyMeasured?"regression < +5%":"no latency measurements yet"}];return i.jsxs(ir,{icon:"🎖️",title:"Promotion Gate — is the bandit better than the heuristic?",subtitle:"A/B verdict from real trajectories (router-promotion.jsonl): quality must improve >2% while cost and latency don't regress (ruflo ADR-150)",children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12,marginBottom:14},children:[i.jsx("span",{style:{fontSize:22},children:t.icon}),i.jsx("span",{style:{fontSize:14,fontWeight:600,color:t.color},children:t.label})]}),i.jsxs("div",{style:{marginBottom:14},children:[i.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontSize:11,color:"var(--text-secondary)",marginBottom:5},children:[i.jsxs("span",{children:[e.divergedCount," diverged decisions"]}),i.jsxs("span",{children:["need ",e.minDecisions," for a verdict"]})]}),i.jsx("div",{style:{background:"var(--bg-primary)",borderRadius:4,height:8,overflow:"hidden",border:"1px solid var(--border-light)"},children:i.jsx("div",{style:{width:`${n}%`,background:e.sufficient?"var(--accent-green)":"var(--accent-blue)",height:"100%",transition:"width 0.4s ease"}})}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)",marginTop:4},children:[e.decisionCount," total decisions logged"]})]}),r.map(a=>i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"7px 0",borderBottom:"1px solid var(--border-light)"},children:[i.jsx("span",{style:{width:70,fontSize:12,color:"var(--text-primary)"},children:a.label}),i.jsx("span",{style:{width:92,fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12,color:"var(--text-secondary)"},children:Eoe(a.delta)}),i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",flex:1},children:a.note}),i.jsx(_oe,{state:a.state})]},a.key)),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)",marginTop:12},children:["Run auto-routed tasks with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"routing.bandit true"})," to accumulate A/B decisions. The gate does not disable the bandit — it tells you whether it's actually winning."]})]})}function Coe({ml:e}){if(!e.enabled||e.recordCount===0)return null;const t=e.providers.filter(r=>r.trusted),n=e.providers.filter(r=>!r.trusted);return i.jsxs(ir,{icon:"🧠",title:"ML Router — learned from similar tasks",subtitle:"Task-feature kNN (ruflo neural-router analog): outcomes of the most similar PAST tasks nudge each provider's score. Win rate is similarity-weighted; factor = 1 + 0.5 × (winRate − 0.5), trusted only after 5 similar-task samples.",children:[i.jsxs("div",{style:{display:"flex",gap:20,flexWrap:"wrap",marginBottom:14},children:[i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:kt(e.recordCount)}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"learned tasks"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--accent-green)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--accent-green)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:t.length}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"trusted providers"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--accent-yellow)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--accent-yellow)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:n.length}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"still learning"})]})]}),i.jsx("div",{style:{display:"flex",flexDirection:"column",gap:8},children:e.providers.map(r=>i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"10px 14px"},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:6},children:[i.jsx("span",{children:Hr(r.provider)}),i.jsx("span",{style:{fontSize:13,fontWeight:600,color:"var(--text-primary)"},children:Ni(r.provider)}),r.trusted?i.jsxs("span",{style:hi("color-mix(in srgb, var(--accent-green) 15%, transparent)","var(--accent-green)","var(--accent-green)"),children:["trusted · ",r.samples," samples"]}):i.jsxs("span",{style:hi("color-mix(in srgb, var(--accent-yellow) 15%, transparent)","var(--accent-yellow)","var(--accent-yellow)"),children:[r.samples,"/5 samples"]}),r.model&&i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",fontFamily:"'SFMono-Regular', Consolas, monospace",marginLeft:"auto"},children:r.model.length>30?r.model.slice(0,27)+"…":r.model})]}),i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:12},children:[i.jsxs("div",{style:{width:70,fontSize:11,color:"var(--text-secondary)"},children:["win ",ap(r.winRate,0)]}),i.jsx(u0,{value:r.winRate,color:r.winRate>=.5?"var(--accent-green)":"var(--accent-red)"}),i.jsxs("div",{style:{width:74,fontSize:11,color:"var(--text-secondary)",textAlign:"right"},children:["factor ",i.jsxs("span",{style:{color:r.trusted&&r.factor!==1?"var(--accent-blue)":"var(--text-muted)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:[r.factor.toFixed(2),"×"]})]})]})]},r.provider))}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)",marginTop:12},children:["Enabled with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff config set routing.mlRouter true"})," — the factor only adjusts scores when the provider has ≥ 5 similar-task wins (cold start is neutral)."]})]})}function Toe({routing:e}){return e.bestModels.length?i.jsx(ir,{icon:"🏆",title:"Best Model per Agent (from your runs)",subtitle:"Success-rate-ranked models from agent-stats — the Auto router boosts the proven winner",children:i.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:10},children:e.bestModels.map(t=>i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 14px",minWidth:200,flex:"1 1 200px",transition:"border-color 0.2s, box-shadow 0.2s"},onMouseEnter:n=>{n.currentTarget.style.borderColor="var(--accent-green)",n.currentTarget.style.boxShadow="0 2px 10px color-mix(in srgb, var(--accent-green) 13%, transparent)"},onMouseLeave:n=>{n.currentTarget.style.borderColor="var(--border-light)",n.currentTarget.style.boxShadow="none"},children:[i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:4},children:[Hr(t.model.split("/")[0])," ",t.agentType]}),i.jsx("div",{style:{fontSize:13,fontWeight:600,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},title:t.model,children:t.model.length>34?t.model.slice(0,31)+"…":t.model}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)",marginTop:6},children:[i.jsxs("span",{style:{color:t.successRate>=.8?"var(--accent-green)":"var(--accent-yellow)"},children:[ap(t.successRate,0)," success"]})," · ",t.runs," run",t.runs!==1?"s":""]})]},`${t.agentType}-${t.model}`))})}):null}function Ooe({retrieval:e}){var l,c;if(!e.enabled&&e.repoChunks===0)return null;const t=e.totalSavedTokens??0,n=e.avgPctReduced??0,r=e.lastCall,a=e.totalCalls??0,s=e.totalRetrievals??0,o=e.totalFailovers??0;return i.jsxs(ir,{icon:"🧠",title:"Vector Retrieval — token savings",subtitle:"Large contexts are chunked, embedded locally (bge-small-en-v1.5), and reduced to the top-k relevant chunks before the LLM — saving tokens so free quotas stretch further. Complements the quota ledger: retrieval saves, the ledger manages.",children:[i.jsxs("div",{style:{display:"flex",gap:20,flexWrap:"wrap",marginBottom:14},children:[i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--accent-green)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--accent-green)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:kt(t)}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"tokens saved"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsxs("div",{style:{fontSize:22,fontWeight:700,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:[n.toFixed(1),"%"]}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"avg context reduction"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--accent-yellow)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--accent-yellow)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:kt(e.repoChunks)}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"repo chunks indexed"})]})]}),i.jsxs("div",{style:{display:"flex",gap:20,flexWrap:"wrap",fontSize:12,color:"var(--text-secondary)",marginBottom:14},children:[i.jsxs("span",{children:["📞 ",a," context calls · 🧠 ",s," retrievals used · ⚠️ ",o," failovers (full-context fallback)"]}),e.dimensions>0&&i.jsxs("span",{children:["· ",e.dimensions,"-dim embeddings"]})]}),r&&r.used!==!1&&((l=r.hits)==null?void 0:l.length)>0&&i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 16px",marginBottom:12},children:[i.jsxs("div",{style:{fontSize:12,fontWeight:600,color:"var(--text-primary)",marginBottom:8},children:["Latest retrieval — ",kt(r.originalTokens)," → ",kt(r.reducedTokens)," tokens",i.jsxs("span",{style:{color:"var(--accent-green)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:[" (−",(c=r.pctReduced)==null?void 0:c.toFixed(0),"%)"]})]}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)"},children:r.hits.slice(0,5).map(u=>i.jsxs("div",{style:{marginTop:3},children:[i.jsx("span",{style:{color:"var(--accent-blue)"},children:"▸"})," ",u.filePath," ",i.jsxs("span",{style:{fontFamily:"'SFMono-Regular', Consolas, monospace"},children:["(sim ",u.similarity.toFixed(3),")"]})]},u.filePath))})]}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)"},children:["Pre-index your repo with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff retrieval index <dir>"}),", query it with"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:'buff retrieval query "<question>"'}),", and see the same stats with"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff retrieval stats"}),"."]})]})}function Poe({quota:e}){var c;if((!e.enabled||e.entries.length===0)&&(((c=e.events)==null?void 0:c.length)??0)===0)return null;const t=e.entries.reduce((u,d)=>u+d.tokensConsumed,0),n=e.entries.reduce((u,d)=>u+d.requests,0),r=e.entries.filter(u=>u.parked).length,a=e.freeTokens??t-(e.paidTokens??0),s=e.paidTokens??0,o=e.estimatedSavedUsd??0,l=t>0?a/t*100:0;return i.jsxs(ir,{icon:"📒",title:"Quota Ledger — free-tier usage & auto re-enable",subtitle:"Tokens/requests per provider × model with reset windows. Exhausted providers are parked (excluded from Auto routing) and re-enable when the window rolls.",children:[i.jsxs("div",{style:{display:"flex",gap:20,flexWrap:"wrap",marginBottom:14},children:[i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:kt(t)}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"tokens tracked"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:"var(--text-primary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:n}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"requests"})]}),i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 18px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:22,fontWeight:700,color:r>0?"var(--accent-yellow)":"var(--accent-green)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:r}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"parked"})]})]}),i.jsxs("div",{style:{display:"flex",gap:20,flexWrap:"wrap",marginBottom:16},children:[i.jsxs("div",{style:{flex:"1 1 200px",background:"var(--bg-primary)",borderRadius:10,padding:"12px 16px",border:"1px solid var(--accent-green)"},children:[i.jsx("div",{style:{fontSize:20,fontWeight:700,color:"var(--accent-green)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:kt(a)}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:["tokens on free/local · ",l.toFixed(0),"% of usage"]}),i.jsxs("div",{style:{fontSize:12,color:"var(--accent-green)",marginTop:4,fontFamily:"'SFMono-Regular', Consolas, monospace"},children:["💰 est. $",o.toFixed(4)," saved"]})]}),i.jsxs("div",{style:{flex:"1 1 200px",background:"var(--bg-primary)",borderRadius:10,padding:"12px 16px",border:"1px solid var(--accent-yellow)"},children:[i.jsx("div",{style:{fontSize:20,fontWeight:700,color:s>0?"var(--accent-yellow)":"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:kt(s)}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginTop:2},children:"tokens on paid providers (spend triggered)"}),i.jsxs("div",{style:{fontSize:12,color:s>0?"var(--accent-yellow)":"var(--text-secondary)",marginTop:4},children:[e.paidRequests??0," paid request",e.paidRequests===1?"":"s"]})]})]}),i.jsx("div",{style:{overflowX:"auto"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:12},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)"},children:[i.jsx("th",{style:{padding:"8px 10px",textAlign:"left",fontWeight:500},children:"Provider / Model"}),i.jsx("th",{style:{padding:"8px 10px",textAlign:"right",fontWeight:500},children:"Tokens"}),i.jsx("th",{style:{padding:"8px 10px",textAlign:"right",fontWeight:500},children:"Requests"}),i.jsx("th",{style:{padding:"8px 10px",textAlign:"right",fontWeight:500},children:"Resets in"}),i.jsx("th",{style:{padding:"8px 10px",textAlign:"center",fontWeight:500},children:"State"})]})}),i.jsx("tbody",{children:e.entries.map(u=>i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)"},children:[i.jsxs("td",{style:{padding:"8px 10px",whiteSpace:"nowrap"},children:[i.jsxs("span",{style:{color:"var(--text-primary)"},children:[Hr(u.provider)," ",Ni(u.provider).split(" ")[0]]}),i.jsxs("span",{style:{color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:[" / ",u.model.length>24?u.model.slice(0,21)+"…":u.model]})]}),i.jsx("td",{style:{padding:"8px 10px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",color:"var(--text-secondary)"},children:kt(u.tokensConsumed)}),i.jsx("td",{style:{padding:"8px 10px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",color:"var(--text-secondary)"},children:u.requests}),i.jsx("td",{style:{padding:"8px 10px",textAlign:"right",color:"var(--text-secondary)",whiteSpace:"nowrap"},children:lE(u.resetsInMs)}),i.jsx("td",{style:{padding:"8px 10px",textAlign:"center"},children:u.parked?i.jsx("span",{style:{fontSize:11,padding:"1px 8px",borderRadius:10,background:"var(--danger-soft)",border:"1px solid var(--accent-red)",color:"var(--accent-red)"},children:"⏸ parked"}):i.jsx("span",{style:{fontSize:11,padding:"1px 8px",borderRadius:10,background:"var(--ok-soft)",border:"1px solid var(--accent-green)",color:"var(--accent-green)"},children:"✓ available"})})]},`${u.provider}|${u.model}`))})]})}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-muted)",marginTop:12},children:["Configure limits with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff config set routing.quota.gemini.requestsPerWindow 1500"}),"; the ledger always tracks usage but only parks when limits are set."]}),e.parkedAccounts&&e.parkedAccounts.length>0&&i.jsxs("div",{style:{marginTop:18},children:[i.jsx("div",{style:{fontSize:13,fontWeight:600,color:"var(--text-primary)",marginBottom:10},children:"🔑 Parked Accounts — multi-account key rotation"}),i.jsx("div",{style:{fontSize:11,color:"var(--text-secondary)",marginBottom:8},children:"Accounts skipped predictively by the failover walk (rate-limit / auth). Fingerprints only — raw keys are never stored."}),i.jsx("div",{style:{maxHeight:180,overflowY:"auto",background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"8px 0"},children:e.parkedAccounts.map((u,d)=>{const f=u.reason==="auth"?"auth":u.reason==="rate-limit"?"rate-limit":u.reason||"cooldown",h=u.reason==="rate-limit"?"var(--accent-yellow)":"var(--accent-red)";return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"6px 14px",borderBottom:d<e.parkedAccounts.length-1?"1px solid var(--bg-card)":"none"},children:[i.jsx("span",{style:{fontSize:13},children:"🔒"}),i.jsxs("span",{style:{width:90,flexShrink:0,fontSize:12,color:"var(--text-primary)"},children:[Hr(u.provider)," ",Ni(u.provider).split(" ")[0]]}),i.jsxs("span",{style:{fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11,color:"var(--text-secondary)"},title:u.accountId,children:["#",u.accountId.slice(0,8)]}),i.jsx("span",{style:{fontSize:11,padding:"1px 8px",borderRadius:10,background:"var(--bg-card)",border:`1px solid ${h}`,color:h,textAlign:"center"},children:f}),i.jsx("span",{style:{flex:1}}),i.jsxs("span",{style:{fontSize:11,color:"var(--text-muted)",whiteSpace:"nowrap"},children:["re-admits in ",lE(u.remainingMs)]})]},`${u.provider}-${u.accountId}-${d}`)})})]}),e.events&&e.events.length>0&&i.jsxs("div",{style:{marginTop:18},children:[i.jsx("div",{style:{fontSize:13,fontWeight:600,color:"var(--text-primary)",marginBottom:10},children:"🛟 Failover Timeline — quota management & mid-session swaps"}),i.jsx("div",{style:{maxHeight:220,overflowY:"auto",background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"8px 0"},children:e.events.map((u,d)=>{const f=u.type==="parked"?"⏸":u.type==="re-enabled"?"🔁":u.type==="released"?"✅":"⚡",h=u.type==="parked"?"var(--accent-red)":u.type==="re-enabled"||u.type==="released"?"var(--accent-green)":"var(--accent-yellow)",p=u.type==="parked"?"parked":u.type==="re-enabled"?"re-enabled":u.type==="released"?"released":"failover";return i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,padding:"6px 14px",borderBottom:d<e.events.length-1?"1px solid var(--bg-card)":"none"},children:[i.jsx("span",{style:{fontSize:13},children:f}),i.jsx("span",{style:{width:80,flexShrink:0,fontSize:11,padding:"1px 8px",borderRadius:10,background:"var(--bg-card)",border:`1px solid ${h}`,color:h,textAlign:"center"},children:p}),i.jsxs("span",{style:{flex:1,fontSize:12,color:"var(--text-primary)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:[Hr(u.provider)," ",Ni(u.provider)]}),u.reason&&i.jsx("span",{style:{fontSize:11,color:"var(--text-secondary)"},children:u.reason}),i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",whiteSpace:"nowrap"},children:mM(u.timestamp)})]},`${u.timestamp}-${d}`)})})]})]})}function Af({ok:e,children:t}){return i.jsx("span",{style:{display:"inline-flex",alignItems:"center",gap:5,fontSize:11,padding:"3px 9px",borderRadius:8,background:e===!1?"var(--danger-soft)":"var(--ok-soft)",border:`1px solid ${e===!1?"var(--accent-red)":"var(--accent-green)"}`,color:e===!1?"var(--accent-red)":"var(--accent-green)",whiteSpace:"nowrap"},children:t})}function Roe({governance:e}){var r,a,s,o,l;if(!e.enabled)return i.jsx(ir,{icon:"⚖️",title:"Admin Governance Policy",subtitle:"Hard-constraint rules the Auto router enforces on every pick",children:i.jsxs("div",{style:{fontSize:13,color:"var(--text-secondary)"},children:[i.jsx("span",{style:{color:"var(--accent-green)"},children:"Fully permissive"})," — no governance rules active; any provider × model is eligible.",i.jsxs("div",{style:{marginTop:6,fontSize:12,color:"var(--text-muted)"},children:["Add rules with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff admin allow <provider>"})," ·"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff admin deny <provider>"})," ·"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff admin max-cost <usd>"})]})]})});const t=[];(r=e.allowProviders)!=null&&r.length&&t.push({label:"allow providers",items:e.allowProviders}),(a=e.denyProviders)!=null&&a.length&&t.push({label:"deny providers",items:e.denyProviders,deny:!0}),(s=e.allowModels)!=null&&s.length&&t.push({label:"allow models",items:e.allowModels}),(o=e.denyModels)!=null&&o.length&&t.push({label:"deny models",items:e.denyModels,deny:!0});const n=[];return e.maxCostUsd!==void 0&&n.push(`max cost $${e.maxCostUsd}`),e.minPrivacyForPii!==void 0&&e.minPrivacyForPii<1&&n.push(`PII min privacy ${e.minPrivacyForPii}`),(l=e.piiPatterns)!=null&&l.length&&n.push(`PII guard (${e.piiPatterns.length} patterns)`),e.allowUnblock===!1&&n.push("unblock admin-hard"),i.jsxs(ir,{icon:"⚖️",title:"Admin Governance Policy",subtitle:"Hard-constraint rules — violating providers are eliminated, never just scored lower",children:[i.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:6,marginBottom:10},children:[t.map(c=>i.jsxs(Af,{ok:!c.deny,children:[c.deny?"⛔":"✅"," ",c.label,": ",c.items.join(", ")]},c.label)),n.map(c=>i.jsx(Af,{children:c},c)),t.length===0&&n.length===0&&i.jsx(Af,{ok:!1,children:"policy configured but no rules active"})]}),i.jsxs("div",{style:{fontSize:12,color:"var(--text-muted)"},children:["Managed via ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff admin"})," — the same policy the CLI’s"," ",i.jsx("code",{children:"model explain"})," surfaces as governance-blocked."]})]})}function Moe({rbac:e}){const t=n=>n==="admin"?"var(--accent-yellow)":n==="operator"?"var(--accent-green)":"var(--text-secondary)";return i.jsxs(ir,{icon:"🔐",title:"RBAC Identity",subtitle:"Who may write policy — role file ~/.buff/rbac.json",children:[i.jsxs("div",{style:{fontSize:13,marginBottom:10},children:[i.jsx("span",{style:{color:"var(--text-secondary)"},children:"You are "}),i.jsx("code",{style:{color:"var(--accent-blue)"},children:e.identity}),i.jsx("span",{style:{color:"var(--text-secondary)"},children:" as "}),e.role?i.jsx("span",{style:{color:t(e.role),fontWeight:600},children:e.role}):i.jsx("span",{style:{color:"var(--text-secondary)"},children:"unassigned"})]}),e.legacy?i.jsxs("div",{style:{fontSize:12,color:"var(--text-muted)"},children:[i.jsx("span",{style:{color:"var(--accent-green)"},children:"Legacy single-user mode"})," — no roles assigned; policy writes are open to every user. Assign roles with"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff admin role add <you> admin"}),"."]}):i.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:[e.users.map(n=>i.jsxs(Af,{ok:n.role!=="viewer",children:[n.user," · ",n.role,n.via==="oidc"?" (oidc)":""]},n.user)),i.jsxs("div",{style:{width:"100%",fontSize:12,color:"var(--text-muted)",marginTop:4},children:["Policy ",i.jsx("em",{children:"writes"})," require ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"admin"}),"; reads are open to every role."]})]})]})}function Ioe({data:e}){var p,g,m,y,v,S,w,j,k,b;const t=e==null?void 0:e.routing,n=t&&(t.preference.length>0||t.providers.length>0||t.bestModels.length>0),r=!!((p=t==null?void 0:t.usage)!=null&&p.total),a=!!((g=t==null?void 0:t.history)!=null&&g.length),s=!!t&&(((m=t.history)==null?void 0:m.length)??0)>0||!!((y=t==null?void 0:t.preference)!=null&&y.length),o=!!((v=t==null?void 0:t.bandit)!=null&&v.enabled),l=!!((S=t==null?void 0:t.promotion)!=null&&S.decisionCount),c=!!((w=t==null?void 0:t.ml)!=null&&w.enabled)&&(t.ml.recordCount??0)>0,u=!!((j=t==null?void 0:t.quota)!=null&&j.enabled),d=!!((k=t==null?void 0:t.retrieval)!=null&&k.enabled)||!!((b=t==null?void 0:t.retrieval)!=null&&b.repoChunks),f=!!(t!=null&&t.governance),h=!!(t!=null&&t.rbac);return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"🤖",title:"Auto Routing Insights"}),i.jsxs("p",{className:"section-description",children:["Which providers and models the Auto router prefers — from real pricing, benchmark quality, per-agent success stats, and the Thompson-sampling bandit. Run"," ",i.jsx("code",{children:"buff benchmark"})," and use Auto routing to build this up over time."]}),!n&&!r&&!a&&!o&&!l&&!c&&!u&&!d&&!f&&!h?i.jsx(goe,{}):i.jsxs(i.Fragment,{children:[s&&t&&i.jsx(foe,{routing:t}),f&&t.governance&&i.jsx(Roe,{governance:t.governance}),(t==null?void 0:t.rbac)&&i.jsx(Moe,{rbac:t.rbac}),r&&i.jsx(xoe,{usage:t.usage}),a&&i.jsx(woe,{history:t.history}),o&&i.jsx(Noe,{bandit:t.bandit}),l&&i.jsx(Aoe,{promotion:t.promotion}),c&&t.ml&&i.jsx(Coe,{ml:t.ml}),u&&i.jsx(Poe,{quota:t.quota}),d&&i.jsx(Ooe,{retrieval:t.retrieval}),i.jsx(koe,{routing:t}),i.jsx(Soe,{routing:t}),i.jsx(Toe,{routing:t})]}),t&&t.providers.length===0&&t.bestModels.length===0&&t.preference.length>0&&i.jsx("div",{style:{fontSize:12,color:"var(--text-muted)",marginTop:4},children:"Auto-router preference is always available (static profiles + real pricing); quality metrics appear once you run benchmarks and agent tasks."})]})}const uE={chat:"💬",execute:"⚙️",plan:"🗺️",edit:"✏️",skill:"🧩",learn:"📚",ci:"🔁",doctor:"🩺",probe:"🔭","spot-check":"🧪",telemetry:"📡",usage:"🧮","ide-chat":"💬","ide-inline":"✍️","ide-execute":"⚙️"};function $oe(e){return new Date(e).toLocaleString([],{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function af(e){return e!==void 0?`${e}ms`:"—"}function Loe(e){return e===0?"var(--accent-green)":e<.2?"var(--accent-yellow)":"var(--accent-red)"}function Doe(e){return e===0?"ok":e<.2?"warn":"danger"}function Boe({data:e}){const t=e.rows,n=t.reduce((d,f)=>d+f.requests,0),r=t.reduce((d,f)=>d+Math.round(f.errorRate*f.requests),0),a=t.reduce((d,f)=>d+(f.costUsd??0),0),s=t.flatMap(d=>d.latency?[d.latency.avg]:[]),o=s.length>0?Math.round(s.reduce((d,f)=>d+f,0)/s.length):void 0,l=new Set(t.map(d=>d.action)).size,c=n>0?r/n:0,u=[{key:"requests",icon:"📨",value:kt(n),label:"Requests",tone:"accent"},{key:"groups",icon:"🎯",value:String(t.length),label:"provider × model × action groups",tone:"accent"},{key:"latency",icon:"⚡",value:o!==void 0?`${o}ms`:"—",label:`Avg latency${o!==void 0?` (${s.length} groups)`:" (no samples)"}`,tone:o!==void 0?"ok":"accent"},{key:"error-rate",icon:"📛",value:n>0?`${(c*100).toFixed(1)}%`:"—",label:`Overall error rate (${kt(r)} failures)`,tone:Doe(c)},{key:"cost",icon:"💰",value:a>0?`$${a.toFixed(4)}`:"—",label:`Measured cost${l>0?` · ${l} actions`:""}`,tone:"warn"}];return i.jsx(Bi,{tiles:u})}function zoe({data:e}){const[t,n]=x.useState(""),[r,a]=x.useState("all"),s=e==null?void 0:e.requests,o=x.useMemo(()=>{if(!s)return[];const u=t.trim().toLowerCase();return s.rows.filter(d=>r!=="all"&&d.action!==r?!1:u?`${d.provider} ${d.model} ${d.action}`.toLowerCase().includes(u):!0)},[s,t,r]),l=i.jsx(Re,{icon:"📨",title:"Requests — per provider × model × action",description:"Aggregated from the same action-telemetry log as the Models panel — every Auto-routed call, grouped by action × provider × model. Latency percentiles appear once ≥3 samples exist; cost when the caller reported usage."});if(!e)return i.jsxs(i.Fragment,{children:[l,i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading requests..."})})]});if(!s||!s.enabled||s.rows.length===0)return i.jsxs(i.Fragment,{children:[l,i.jsxs("div",{className:"empty-state",style:{padding:"40px 24px",textAlign:"center"},children:[i.jsx("div",{style:{fontSize:28,marginBottom:10},children:"📨"}),i.jsxs("p",{className:"section-description",style:{maxWidth:560,margin:"0 auto"},children:["No request telemetry yet. As you use ",i.jsx("strong",{children:"chat"}),", ",i.jsx("strong",{children:"execute"}),","," ",i.jsx("strong",{children:"plan"})," and ",i.jsx("strong",{children:"edit"})," under Auto routing, every call writes to the action-telemetry log and this panel aggregates it: request counts, p50/p95/p99 latency, error rate and measured cost — the same feed that drives the Models panel."]})]})]});const c=[...new Set(s.rows.map(u=>u.action))].sort();return i.jsxs(i.Fragment,{children:[l,i.jsx(Boe,{data:s}),i.jsxs("div",{style:{display:"flex",gap:12,marginBottom:14,flexWrap:"wrap",alignItems:"center"},children:[i.jsxs("select",{value:r,onChange:u=>a(u.target.value),"aria-label":"Filter by action",style:{background:"var(--bg-card)",color:"var(--text-primary)",border:"1px solid var(--border)",borderRadius:8,padding:"8px 10px",fontSize:13,cursor:"pointer"},children:[i.jsx("option",{value:"all",children:"All actions"}),c.map(u=>i.jsxs("option",{value:u,children:[uE[u]||"🎯"," ",u]},u))]}),i.jsxs("div",{style:{flex:1,minWidth:220,position:"relative"},children:[i.jsx("span",{style:{position:"absolute",left:10,top:8,color:"var(--text-muted)",fontSize:13},children:"🔍"}),i.jsx("input",{type:"text",value:t,onChange:u=>n(u.target.value),placeholder:"Search provider, model or action...",style:{width:"100%",padding:"8px 12px 8px 32px",background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8,color:"var(--text-primary)",fontSize:13,outline:"none"}})]}),i.jsxs("span",{style:{fontSize:12,color:"var(--text-secondary)",whiteSpace:"nowrap"},children:[o.length," of ",s.rows.length," groups"]})]}),i.jsx("div",{style:{overflowX:"auto"},children:i.jsxs("table",{style:{width:"100%",borderCollapse:"collapse",fontSize:13},children:[i.jsx("thead",{children:i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)",color:"var(--text-secondary)",textAlign:"left"},children:[i.jsx("th",{style:{padding:"8px 12px",fontWeight:500},children:"Action"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500},children:"Provider"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500},children:"Model"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"Requests"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"Error rate"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"Latency avg"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"p50"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"p95"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"p99"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"Measured cost"}),i.jsx("th",{style:{padding:"8px 12px",fontWeight:500,textAlign:"right"},children:"Last seen"})]})}),i.jsx("tbody",{children:o.length===0?i.jsx("tr",{children:i.jsx("td",{colSpan:11,style:{padding:28,textAlign:"center",color:"var(--text-muted)"},children:"No request groups match your filter."})}):o.map(u=>{var d;return i.jsxs("tr",{style:{borderBottom:"1px solid var(--border-light)"},children:[i.jsx("td",{style:{padding:"8px 12px",whiteSpace:"nowrap"},children:i.jsxs("span",{style:{fontSize:11,padding:"2px 8px",borderRadius:8,background:"var(--bg-hover)",color:"var(--text-secondary)",border:"1px solid var(--border)"},children:[uE[u.action]||"🎯"," ",u.action]})}),i.jsx("td",{style:{padding:"8px 12px",color:"var(--text-primary)",whiteSpace:"nowrap"},children:u.provider}),i.jsxs("td",{style:{padding:"8px 12px",color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12,maxWidth:260,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},title:u.callIds.length>0?`Correlation ids: ${u.callIds.join(", ")}`:void 0,children:[u.model.length>42?u.model.slice(0,39)+"…":u.model,u.callIds.length>0&&i.jsxs("span",{style:{color:"var(--text-muted)",marginLeft:6},title:u.callIds.join(", "),children:["🔗",u.callIds.length]})]}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:u.requests}),i.jsxs("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12,color:Loe(u.errorRate)},children:[(u.errorRate*100).toFixed(1),"%",(u.partials??0)>0&&i.jsxs("span",{title:`⏸ ${u.partials} mid-stream interruption(s) — started streaming, died before finish; the router deprioritizes flaky providers (P4 M4.4)`,style:{display:"inline-flex",alignItems:"center",gap:3,marginLeft:6,fontSize:10,padding:"1px 6px",borderRadius:8,whiteSpace:"nowrap",background:"var(--purple-soft)",border:"1px solid var(--accent-purple)",color:"var(--accent-purple)"},children:["⏸ ",u.partials]})]}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:af((d=u.latency)==null?void 0:d.avg)}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:u.latency&&u.latency.samples>=3?af(u.latency.p50):"—"}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:u.latency&&u.latency.samples>=3?af(u.latency.p95):"—"}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12},children:u.latency&&u.latency.samples>=3?af(u.latency.p99):"—"}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:12,color:u.costUsd?"var(--accent-yellow)":"var(--text-muted)"},children:u.costUsd!==void 0?`$${u.costUsd.toFixed(4)}`:"—"}),i.jsx("td",{style:{padding:"8px 12px",textAlign:"right",color:"var(--text-muted)",fontSize:11,whiteSpace:"nowrap"},children:$oe(u.lastAt)})]},`${u.action}|${u.provider}|${u.model}`)})})]})}),i.jsx("div",{style:{textAlign:"center",fontSize:12,color:"var(--text-muted)",marginTop:12},children:"Auto-refreshes with the dashboard feed · percentile columns need ≥3 latency samples per group"})]})}const Foe={local:"💻",groq:"🟢",nim:"🔶",gemini:"🔷",openrouter:"🟣"},Uoe={planner:"🗺️",writer:"✍️",reviewer:"🔎",tester:"🧪",debugger:"🐛",runner:"🏃","context-gatherer":"📂",memory:"🧠","self-improver":"📈"};function Woe(e){return Foe[e]||"🔌"}function Hoe(e){return Uoe[e]||"🤖"}function gM(e){const t=Date.now()-e;return t<6e4?"just now":t<36e5?`${Math.floor(t/6e4)}m ago`:t<864e5?`${Math.floor(t/36e5)}h ago`:`${new Date(e).toLocaleDateString()}`}function d0(e){return e===void 0?"—":e<1e3?`${e}ms`:e<6e4?`${(e/1e3).toFixed(1)}s`:`${Math.floor(e/6e4)}m ${Math.floor(e%6e4/1e3)}s`}function Ic(e){return e==null?"0":e>=1e6?`${(e/1e6).toFixed(1)}M`:e>=1e3?`${(e/1e3).toFixed(1)}K`:String(e)}function Goe(e){var n,r;if(!e)return null;const t={bg:"var(--bg-primary)",border:"var(--border)"};return e.unverifiedClaim?{text:"⚠️ unverified claim — said it acted, but no tool ran",color:"var(--accent-yellow)",bg:"var(--warn-soft)",border:"var(--accent-yellow)"}:e.unfulfilledPromise?{text:"⚠️ unfulfilled promise — announced an action it never performed",color:"var(--accent-yellow)",bg:"var(--warn-soft)",border:"var(--accent-yellow)"}:e.unverifiedBuildClaim?{text:"⚠️ unverified build claim — a build failed but the reply reported success",color:"var(--accent-yellow)",bg:"var(--warn-soft)",border:"var(--accent-yellow)"}:e.unverifiedEditClaim?{text:"⚠️ unverified edit claim — asserted a fix, but nothing verified it",color:"var(--accent-yellow)",bg:"var(--warn-soft)",border:"var(--accent-yellow)"}:e.unverifiedEdit?{text:`⚠️ unverified edit — ${((n=e.tools)==null?void 0:n.length)??0} tool(s), no test/typecheck/browser run`,color:"var(--accent-yellow)",bg:"var(--warn-soft)",border:"var(--accent-yellow)"}:e.kind==="acted"?{text:e.delivered?"✅ action performed — message sent":`🔧 acted — ${((r=e.tools)==null?void 0:r.length)??0} tool(s)`,color:"var(--accent-green)",bg:"var(--ok-soft)",border:"var(--accent-green)"}:e.kind==="answered"?{text:"💬 answered — no action taken",color:"var(--text-secondary)",...t}:e.kind==="incomplete"?{text:"⏳ incomplete — ended with work still outstanding",color:"var(--accent-yellow)",bg:"var(--warn-soft)",border:"var(--accent-yellow)"}:e.kind==="cancelled"?{text:"⏹ cancelled",color:"var(--text-secondary)",...t}:{text:"❌ generation failed",color:"var(--accent-red)",bg:"var(--danger-soft)",border:"var(--accent-red)"}}function dE(e){const t=e.filter(n=>n.verdict==="CONFIRMED"&&f0(n).length>0).length;return`${e.length} finding${e.length===1?"":"s"}: ${t} confirmed, ${e.length-t} plausible`}function f0(e){return(e.evidence??[]).filter(t=>typeof(t==null?void 0:t.ref)=="string"&&t.ref.trim().length>0)}function qoe({finding:e}){const t=f0(e),n=e.verdict==="CONFIRMED"&&t.length>0;return i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderLeft:`3px solid ${n?"var(--accent-green)":"var(--accent-yellow)"}`,borderRadius:8,padding:"8px 12px",marginBottom:8},children:[i.jsxs("div",{style:{display:"flex",alignItems:"baseline",gap:8},children:[i.jsx("span",{style:{fontSize:13},children:n?"✅":"🔎"}),i.jsx("span",{style:{flex:1,fontSize:12.5,fontWeight:600,color:"var(--text-primary)"},children:e.claim}),i.jsx("span",{style:{fontSize:9.5,fontWeight:700,letterSpacing:"0.04em",padding:"1px 7px",borderRadius:10,border:"1px solid",color:n?"var(--accent-green)":"var(--accent-yellow)",background:n?"var(--ok-soft)":"var(--warn-soft)",borderColor:n?"var(--accent-green)":"var(--accent-yellow)"},children:n?"CONFIRMED":"PLAUSIBLE"})]}),e.outcome?i.jsx("div",{style:{marginTop:3,fontSize:11.5,color:"var(--text-secondary)"},children:e.outcome}):null,t.length>0?i.jsx("ul",{style:{listStyle:"none",margin:"5px 0 0",padding:0},children:t.map((r,a)=>i.jsxs("li",{style:{fontSize:11,color:"var(--text-secondary)",marginBottom:3},children:[i.jsx("span",{style:{fontSize:9.5,textTransform:"uppercase",letterSpacing:"0.04em",color:"var(--accent-blue)",marginRight:5},children:r.kind}),i.jsx("span",{style:{color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:r.ref}),r.detail?i.jsxs("span",{style:{marginLeft:5},children:["(",r.detail,")"]}):null]},a))}):i.jsx("div",{style:{marginTop:5,fontSize:11,color:"var(--accent-yellow)"},children:"no evidence — reported as PLAUSIBLE, not verified"}),e.source?i.jsxs("div",{style:{marginTop:4,fontSize:10,color:"var(--text-muted)"},children:["source: ",e.source]}):null]})}function ip({icon:e,title:t,subtitle:n,children:r}){return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:12,border:"1px solid var(--border-light)",padding:"18px 20px",marginBottom:16},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:4},children:[i.jsx("span",{style:{fontSize:20},children:e}),i.jsx("h2",{style:{fontSize:15,fontWeight:600,color:"var(--text-primary)",margin:0},children:t})]}),n&&i.jsx("p",{style:{fontSize:12,color:"var(--text-secondary)",margin:"2px 0 12px 0"},children:n}),!n&&i.jsx("div",{style:{height:6}}),r]})}function Koe(){return i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px dashed var(--border)",borderRadius:10,padding:"18px 20px",color:"var(--text-secondary)",fontSize:13,textAlign:"center"},children:["🔍 No reasoning traces yet — every LLM call in a ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff execute"})," pipeline is recorded to ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"reasoning-traces.json"}),". Run a pipeline, then replay it here or with ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff trace replay <id>"}),"."]})}function Voe(){const[e,t]=x.useState(null),[n,r]=x.useState(!1),[a,s]=x.useState(null),o=x.useCallback(()=>{K.fetchAcceptance().then(u=>{u?(t(u),r(!1)):r(!0)})},[]);x.useEffect(()=>{o()},[o]);const l=x.useCallback(async u=>{if(u){s("Importing…");try{const d=await u.text(),f=await K.importAcceptance(d);if(!f||!f.ok){s(f!=null&&f.error?`Import failed: ${f.error}`:"Import failed.");return}s(`Imported ${f.imported??0}: ${f.added??0} new, ${f.updated??0} present (store ${f.total??0}).`),o()}catch{s("Import failed.")}}},[o]);if(n&&!e)return null;const c=e?Object.entries(e.byPair):[];return i.jsx(ip,{icon:"⭐",title:"Acceptance (read-only)",subtitle:"The one label the harness cannot derive: whether YOU wanted the turn. Rate it with the 👍/👎 control on a trace below, run `nuvira rate good|bad`, or let the behavioural tier infer it. Nothing routes on this.",children:e===null?i.jsx("div",{style:{color:"var(--text-secondary)",fontSize:13},children:"Loading…"}):i.jsxs(i.Fragment,{children:[i.jsxs("div",{style:{fontSize:13,color:"var(--text-primary)",marginBottom:6},children:[e.labelled," labelled turn",e.labelled===1?"":"s"," — 👍 ",e.accepted," / 👎 ",e.rejected]}),Object.keys(e.bySource).length>0&&i.jsxs("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:6},children:["by source: ",Object.entries(e.bySource).map(([u,d])=>`${u} ${d}`).join(", ")]}),c.length>0&&i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:6},children:c.map(([u,d])=>{const f=d.accepted+d.rejected;return i.jsxs("div",{children:[u,": 👍 ",d.accepted," / 👎 ",d.rejected," (",Math.round(100*d.accepted/f),"%, n=",f,")"]},u)})}),i.jsx("div",{style:{fontSize:12,color:e.fit.ok?"var(--accent-green)":"var(--text-secondary)"},children:e.fit.ok?`fit TRAINED — P(accepted | features) n=${e.fit.n} (${e.fit.positives}👍/${e.fit.negatives}👎)`:`fit NOT trained — ${e.fit.reason??"insufficient labels"}`}),i.jsxs("div",{style:{display:"flex",gap:12,alignItems:"center",flexWrap:"wrap",marginTop:10},children:[i.jsx("span",{style:{fontSize:12,color:"var(--text-secondary)"},children:"Ship / join:"}),i.jsx("a",{href:K.acceptanceExportUrl("json"),download:!0,style:{fontSize:12,color:"var(--accent-blue)"},children:"Export JSON"}),i.jsx("a",{href:K.acceptanceExportUrl("csv"),download:!0,style:{fontSize:12,color:"var(--accent-blue)"},children:"Export CSV"}),i.jsxs("label",{style:{fontSize:12,color:"var(--accent-blue)",cursor:"pointer"},children:["Import…",i.jsx("input",{type:"file",accept:".json,.csv,application/json,text/csv",style:{display:"none"},onChange:u=>{var d;l((d=u.target.files)==null?void 0:d[0]),u.currentTarget.value=""}})]}),a&&i.jsx("span",{style:{fontSize:12,color:"var(--text-secondary)"},children:a})]})]})})}function Yoe({step:e}){const[t,n]=x.useState(!1),r=e.success?"var(--accent-green)":"var(--accent-red)",a=e.success?"ok":"failed";return i.jsxs("div",{style:{background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:8,marginBottom:8,overflow:"hidden"},children:[i.jsxs("button",{onClick:()=>n(!t),style:{width:"100%",background:"none",border:"none",cursor:"pointer",padding:"10px 14px",textAlign:"left",display:"flex",alignItems:"center",gap:10,color:"inherit"},children:[i.jsx("span",{style:{width:26,fontSize:16},children:Hoe(e.agentType)}),i.jsx("span",{style:{width:130,fontSize:12,fontWeight:600,color:"var(--text-primary)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},title:e.agentType,children:e.agentType}),i.jsxs("span",{style:{flex:1,fontSize:12,color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},title:`${e.provider}/${e.model}`,children:[Woe(e.provider)," ",e.provider,"/",e.model]}),i.jsx("span",{style:{width:70,fontSize:11,color:"var(--text-muted)",textAlign:"right"},children:d0(e.latencyMs)}),i.jsxs("span",{style:{width:86,fontSize:11,color:"var(--text-muted)",fontFamily:"'SFMono-Regular', Consolas, monospace",textAlign:"right"},children:[Ic(e.inputTokens),"→",Ic(e.outputTokens)," tok"]}),i.jsx("span",{style:{width:46,fontSize:11,color:r,textAlign:"right"},children:a}),i.jsx("span",{style:{width:22,fontSize:11,textAlign:"right"},children:e.escalated?i.jsx("span",{title:"Repair escalated to a stronger routed model (v1.60.4)",children:"🚀"}):""}),i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)"},children:t?"▾":"▸"})]}),t&&i.jsxs("div",{style:{padding:"0 14px 12px 50px",fontSize:12},children:[e.taskId&&i.jsxs("div",{style:{color:"var(--text-muted)",marginBottom:4},children:["Task: ",i.jsx("span",{style:{color:"var(--text-secondary)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:e.taskId})]}),e.description&&i.jsx("div",{style:{color:"var(--text-secondary)",marginBottom:6},children:e.description}),e.routing&&i.jsxs("div",{style:{marginBottom:6},children:[i.jsxs("span",{style:{fontSize:10,padding:"1px 8px",borderRadius:10,background:e.escalated?"var(--warn-soft)":"var(--bg-tertiary)",border:e.escalated?"1px solid var(--accent-yellow)":"1px solid var(--accent-blue)",color:e.escalated?"var(--accent-yellow)":"var(--accent-blue)"},children:[e.escalated?"🚀 escalated auto → ":"🤖 auto → ",e.routing.provider,"/",e.routing.model," · score ",e.routing.score.toFixed(3)," · ",e.routing.complexity]}),e.escalated&&i.jsx("div",{style:{color:"var(--accent-yellow)",marginTop:4,fontSize:11},children:"Repair escalated to a stronger routed model (next complexity level)."}),e.routing.explanation&&i.jsx("div",{style:{color:"var(--text-muted)",marginTop:4,fontSize:11},children:e.routing.explanation}),e.routing.agenticCapable===!1&&i.jsxs("div",{style:{color:"var(--accent-red)",marginTop:4,fontSize:11,fontWeight:600},children:["⚠️ not agentic-capable",e.routing.overrideReason?` (${e.routing.overrideReason})`:""," — a software ask on this model may fabricate results"]})]}),e.layers&&i.jsxs("div",{style:{marginBottom:6,fontSize:11,color:"var(--text-muted)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:[i.jsx("span",{style:{color:"var(--accent-blue)"},children:"sys"})," ",e.layers.systemChars,"c/#",e.layers.systemDigest," ·"," ",i.jsx("span",{style:{color:"var(--accent-green)"},children:"ctx"})," ",e.layers.contextChars,"c/#",e.layers.contextDigest," ·"," ",i.jsx("span",{style:{color:"var(--accent-yellow)"},children:"vol"})," ",e.layers.volatileChars,"c/#",e.layers.volatileDigest,i.jsxs("div",{style:{color:"var(--text-muted)",marginTop:2},children:["a constant ",i.jsx("span",{style:{color:"var(--accent-blue)"},children:"sys"})," digest across steps ⇒ the stable layer is prompt-cacheable"]})]}),e.error&&i.jsxs("div",{style:{color:"var(--accent-red)",marginBottom:6},children:["⚠️ ",e.error.slice(0,300)]}),i.jsxs("div",{style:{color:"var(--text-muted)",margin:"6px 0 3px 0"},children:["Prompt ",i.jsxs("span",{style:{fontFamily:"'SFMono-Regular', Consolas, monospace"},children:["#",e.promptDigest]})," · ",e.promptPreview.length,"+ chars:"]}),i.jsx("pre",{style:{background:"var(--bg-card)",border:"1px solid var(--border-light)",borderRadius:6,padding:8,margin:0,color:"var(--text-secondary)",whiteSpace:"pre-wrap",wordBreak:"break-word",maxHeight:180,overflowY:"auto",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11},children:e.promptPreview.slice(0,900)}),i.jsxs("div",{style:{color:"var(--text-muted)",margin:"8px 0 3px 0"},children:["Response (",Ic(e.responseLength)," chars):"]}),i.jsx("pre",{style:{background:"var(--bg-card)",border:"1px solid var(--border-light)",borderRadius:6,padding:8,margin:0,color:"var(--text-secondary)",whiteSpace:"pre-wrap",wordBreak:"break-word",maxHeight:240,overflowY:"auto",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11},children:e.responsePreview.slice(0,1200)})]})]})}function Xoe({trace:e}){var h;const[t,n]=x.useState(e.steps??null),[r,a]=x.useState(!1),[s,o]=x.useState(((h=e.userVerdict)==null?void 0:h.verdict)??null),[l,c]=x.useState(!1),u=x.useCallback(async p=>{c(!0),await K.rateTrace(e.id,p)&&o(p),c(!1)},[e.id]);x.useEffect(()=>{if(e.steps){n(e.steps);return}let p=!1;return K.fetchTraceDetail(e.id).then(g=>{p||(g!=null&&g.steps?n(g.steps):a(!0))}),()=>{p=!0}},[e.id,e.steps]);const d=e.success===!0?"✅":e.success===!1?"❌":"⏳",f=e.success===!0?"success":e.success===!1?"failed":"in progress";return i.jsxs(ip,{icon:d,title:`${e.id} — ${f}`,subtitle:e.goal,children:[i.jsxs("div",{style:{display:"flex",gap:8,flexWrap:"wrap",marginBottom:12},children:[i.jsxs("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:"var(--bg-primary)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:["🕓 ",gM(e.startedAt)]}),(()=>{const p=Goe(e.outcome);return p?i.jsx("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:p.bg,border:`1px solid ${p.border}`,color:p.color},children:p.text}):null})(),i.jsxs("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:"var(--bg-primary)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:["⏱ ",d0(e.durationMs)]}),i.jsxs("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:"var(--bg-primary)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:["🔢 ",(t==null?void 0:t.length)??"?"," call(s)"]}),i.jsxs("span",{style:{display:"inline-flex",gap:6,alignItems:"center",marginLeft:4},children:[i.jsx("span",{style:{fontSize:11,color:"var(--text-secondary)"},children:"Was this what you wanted?"}),["accepted","rejected"].map(p=>i.jsx("button",{type:"button",disabled:l,"aria-pressed":s===p,onClick:()=>void u(p),style:{fontSize:11,padding:"2px 10px",borderRadius:12,cursor:l?"default":"pointer",background:s===p?"var(--accent, var(--bg-hover))":"var(--bg-primary)",border:`1px solid ${s===p?"var(--accent, var(--border))":"var(--border)"}`,color:s===p?"var(--text-inverse, var(--text-primary))":"var(--text-secondary)",fontWeight:s===p?600:400},children:p==="accepted"?"👍 Yes":"👎 No"},p)),s?i.jsx("span",{style:{fontSize:11,color:"var(--text-secondary)"},children:"recorded"}):i.jsx("span",{style:{fontSize:11,color:"var(--text-secondary)"},children:"not rated"})]}),t&&t.some(p=>p.escalated)&&i.jsxs("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:"var(--warn-soft)",border:"1px solid var(--accent-yellow)",color:"var(--accent-yellow)"},children:["🚀 ",t.filter(p=>p.escalated).length," escalated repair(s)"]}),e.totalTokens!==void 0&&i.jsxs("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:"var(--bg-primary)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:["🧮 ",Ic(e.totalTokens)," tok"]}),e.findings&&e.findings.length>0&&i.jsx("span",{style:{fontSize:11,padding:"2px 10px",borderRadius:12,background:"var(--bg-primary)",border:"1px solid var(--border)",color:"var(--text-secondary)"},children:`🔎 ${dE(e.findings)}`})]}),e.findings&&e.findings.length>0?i.jsxs("div",{style:{marginBottom:12},children:[i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:6},children:`🔎 Findings — ${dE(e.findings)}`}),e.findings.map((p,g)=>i.jsx(qoe,{finding:p},`finding-${g}`))]}):null,e.turnReport?i.jsxs("div",{style:{marginBottom:12},children:[i.jsx("div",{style:{fontSize:12,color:"var(--text-secondary)",marginBottom:6},children:`📋 Turn report — ${e.turnReport.summary??e.turnReport.verification}`}),i.jsxs("div",{style:{fontSize:11,marginBottom:6},children:[i.jsx("span",{style:{textTransform:"uppercase",letterSpacing:"0.04em",fontSize:10,border:"1px solid currentColor",borderRadius:12,padding:"1px 8px",color:e.turnReport.verification==="verified"?"var(--accent-green)":e.turnReport.verification==="unverified"?"var(--accent-yellow)":e.turnReport.verification==="blocked"?"var(--accent-red)":"var(--text-secondary)"},children:e.turnReport.verification}),e.turnReport.changedPaths.length>0?i.jsx("span",{style:{marginLeft:8,color:"var(--text-secondary)"},children:`${e.turnReport.changedPaths.length} file(s) changed`}):null]}),e.turnReport.steps.length>0?i.jsx("ul",{style:{margin:0,padding:0,listStyle:"none",display:"flex",flexDirection:"column",gap:3},children:e.turnReport.steps.map(p=>i.jsxs("li",{style:{fontSize:12},children:[i.jsx("span",{"aria-hidden":"true",children:p.status==="done"?"✅":p.status==="running"?"🔄":p.status==="blocked"?"⛔":"⬜"})," ",p.description,p.evidence?i.jsxs("span",{style:{color:"var(--accent-yellow)",fontSize:11},children:[" (",p.evidence,")"]}):null]},p.id))}):null]}):null,e.systemPrompt&&i.jsxs("details",{style:{marginBottom:12},children:[i.jsxs("summary",{style:{cursor:"pointer",fontSize:12,color:"var(--accent-blue)"},children:["🧬 System prompt — stable layer (",e.systemPromptChars??e.systemPrompt.length," chars)"]}),i.jsx("pre",{style:{background:"var(--bg-card)",border:"1px solid var(--border-light)",borderRadius:6,padding:10,margin:"8px 0 0 0",color:"var(--text-secondary)",whiteSpace:"pre-wrap",wordBreak:"break-word",maxHeight:320,overflowY:"auto",fontFamily:"'SFMono-Regular', Consolas, monospace",fontSize:11},children:e.systemPrompt})]}),r&&i.jsx("div",{style:{color:"var(--accent-red)",fontSize:12,marginBottom:10},children:"Could not load trace steps (trace may have been deleted)."}),t===null&&!r&&i.jsx("div",{style:{color:"var(--text-secondary)",fontSize:12},children:"Loading steps…"}),t&&t.length===0&&i.jsx("div",{style:{color:"var(--text-secondary)",fontSize:12},children:"No LLM calls recorded in this trace."}),t&&t.map(p=>i.jsx(Yoe,{step:p},p.seq))]})}function Qoe({traces:e}){const[t,n]=x.useState(null);return t?i.jsxs(i.Fragment,{children:[i.jsx("button",{onClick:()=>n(null),style:{background:"var(--bg-hover)",border:"1px solid var(--border)",color:"var(--text-primary)",borderRadius:8,padding:"6px 14px",fontSize:12,cursor:"pointer",marginBottom:12},children:"← Back to traces"}),i.jsx(Xoe,{trace:t})]}):i.jsx("div",{children:e.map(r=>{const a=r.success===!0?"✅":r.success===!1?"❌":"⏳",s=r.steps?[...new Set(r.steps.map(o=>o.agentType))].join(", "):"";return i.jsxs("button",{onClick:()=>n(r),style:{width:"100%",background:"var(--bg-primary)",border:"1px solid var(--border-light)",borderRadius:10,padding:"12px 16px",marginBottom:8,cursor:"pointer",textAlign:"left",color:"inherit",transition:"border-color 0.2s, box-shadow 0.2s"},onMouseEnter:o=>{o.currentTarget.style.borderColor="var(--accent-blue)",o.currentTarget.style.boxShadow="0 2px 10px color-mix(in srgb, var(--accent-blue) 13%, transparent)"},onMouseLeave:o=>{o.currentTarget.style.borderColor="var(--border-light)",o.currentTarget.style.boxShadow="none"},children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:4},children:[i.jsx("span",{children:a}),i.jsx("span",{style:{fontSize:11,color:"var(--accent-blue)",fontFamily:"'SFMono-Regular', Consolas, monospace"},children:r.id}),i.jsx("span",{style:{fontSize:11,color:"var(--text-muted)",marginLeft:"auto"},children:gM(r.startedAt)})]}),i.jsx("div",{style:{fontSize:13,color:"var(--text-primary)",marginBottom:6},children:r.goal}),i.jsxs("div",{style:{display:"flex",gap:10,flexWrap:"wrap",fontSize:11,color:"var(--text-secondary)"},children:[i.jsxs("span",{children:["🔢 ",r.stepCount??0," call(s)"]}),i.jsxs("span",{children:["⏱ ",d0(r.durationMs)]}),r.failedSteps?i.jsxs("span",{style:{color:"var(--accent-red)"},children:["❌ ",r.failedSteps," failed"]}):i.jsx("span",{style:{color:"var(--accent-green)"},children:"✓ all ok"}),r.totalTokens!==void 0&&i.jsxs("span",{children:["🧮 ",Ic(r.totalTokens)," tok"]}),r.findings&&r.findings.length>0&&i.jsx("span",{style:{color:"var(--accent-yellow)"},children:`🔎 ${r.findings.filter(o=>o.verdict==="CONFIRMED"&&f0(o).length>0).length}/${r.findings.length} confirmed`}),s&&i.jsxs("span",{children:["🤖 ",s.slice(0,60)]})]})]},r.id)})})}function Zoe(){const[e,t]=x.useState(null),[n,r]=x.useState(!1),a=x.useCallback(()=>{K.fetchTraces().then(s=>{s?(t(s),r(!1)):r(!0)})},[]);return x.useEffect(()=>{a();const s=setInterval(a,15e3);return()=>clearInterval(s)},[a]),i.jsxs("div",{className:"panel",children:[i.jsx(Re,{icon:"🔍",title:"Reasoning Traces",description:"Every LLM call in each pipeline — agent × model × prompt digest × response × tokens × latency × routing snapshot (assessment P0)."}),i.jsx(Voe,{}),e===null&&!n&&i.jsx(ip,{icon:"⏳",title:"Loading…",children:i.jsx("div",{style:{color:"var(--text-secondary)",fontSize:13},children:"Fetching reasoning traces…"})}),n&&e===null&&i.jsx(ip,{icon:"⚠️",title:"Could not reach the dashboard server",children:i.jsxs("div",{style:{color:"var(--text-secondary)",fontSize:13},children:["The traces endpoint is unavailable right now — retrying automatically. Run"," ",i.jsx("code",{style:{color:"var(--accent-blue)"},children:"buff trace list"})," in the terminal to inspect traces directly."]})}),e!==null&&e.length===0&&i.jsx(Koe,{}),e!==null&&e.length>0&&i.jsx(Qoe,{traces:e})]})}function Gg(e){if(e.trim()==="")return null;const t=Number(e);return Number.isFinite(t)&&t>=0?t:null}function Joe({authed:e,role:t}){const[n,r]=x.useState(null),[a,s]=x.useState({}),[o,l]=x.useState(""),[c,u]=x.useState(!1),[d,f]=x.useState(null),[h,p]=x.useState(null),g=e&&(t==="admin"||t==="operator"),m=e&&t==="admin",y=x.useCallback(async()=>{var N,_,T;const k=await K.fetchAdminQuota();if(!k){p("Could not load budget config.");return}p(null),r(k);const b={};for(const C of k.providers){const O=k.quota[C]||{};b[C]={provider:C,tokens:((N=O.tokensPerWindow)==null?void 0:N.toString())??"",requests:((_=O.requestsPerWindow)==null?void 0:_.toString())??"",windowMs:((T=O.windowMs)==null?void 0:T.toString())??""}}s(b),l(k.costUsd===null?"":String(k.costUsd))},[]);x.useEffect(()=>{y()},[y]);const v=(k,b,N)=>{s(_=>({..._,[k]:{..._[k]||{provider:k},[b]:N}}))},S=async()=>{u(!0),f(null);const k={};for(const _ of Object.values(a)){const T={},C=Gg(_.tokens),O=Gg(_.requests),P=Gg(_.windowMs);C!==null&&(T.tokensPerWindow=C),O!==null&&(T.requestsPerWindow=O),P!==null&&(T.windowMs=P),k[_.provider]=Object.keys(T).length>0?T:null}const b={quota:k};if(m)if(o.trim()!==""){const _=Number(o);if(!Number.isFinite(_)||_<0){f({ok:!1,text:"Cost cap must be a non-negative number."}),u(!1);return}b.costUsd=_}else b.costUsd=null;const N=await K.saveAdminQuota(b);u(!1),N.ok?(f({ok:!0,text:"Budget saved — the quota ledger + auto-router will enforce it."}),y()):f({ok:!1,text:N.error||"Save failed."})},w=k=>{const b=n==null?void 0:n.quota[k];return!!b&&(b.tokensPerWindow!==void 0||b.requestsPerWindow!==void 0||b.windowMs!==void 0)},j=k=>"admin-input";return i.jsxs("div",{className:"admin-quota-panel",children:[i.jsx("h2",{className:"section-subtitle",children:"💰 Daily Budget (routing.quota — your plan, your say)"}),i.jsxs("p",{className:"admin-quota-note",children:["Free-tier providers enforce tokens-per-day caps the API doesn't advertise — only you know your plan's allowance. Declare it here and the agent paces around it (parks the provider at the cap, auto-resumes at window rollover) instead of exhausting your budget mid-task. Unset = current behavior. Same config as ",i.jsx("code",{children:"buff model quota set"}),"."]}),h?i.jsx("div",{className:"admin-error",children:h}):null,n?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"admin-quota-table",children:[i.jsxs("div",{className:"admin-quota-row admin-quota-head",children:[i.jsx("span",{children:"Provider"}),i.jsx("span",{children:"Tokens / window"}),i.jsx("span",{children:"Requests / window"}),i.jsx("span",{children:"Window (ms)"}),i.jsx("span",{children:"Status"})]}),n.providers.map(k=>{var b,N,_;return i.jsxs("div",{className:"admin-quota-row",children:[i.jsx("span",{className:"admin-provider-type",children:k}),i.jsx("input",{className:j(!g),type:"number",min:0,placeholder:"unset",disabled:!g,value:((b=a[k])==null?void 0:b.tokens)??"",onChange:T=>v(k,"tokens",T.target.value)}),i.jsx("input",{className:j(!g),type:"number",min:0,placeholder:"unset",disabled:!g,value:((N=a[k])==null?void 0:N.requests)??"",onChange:T=>v(k,"requests",T.target.value)}),i.jsx("input",{className:j(!g),type:"number",min:0,placeholder:"86400000 (24h)",disabled:!g,value:((_=a[k])==null?void 0:_.windowMs)??"",onChange:T=>v(k,"windowMs",T.target.value)}),i.jsx("span",{className:`admin-role-badge ${w(k)?"admin-role-admin":"admin-role-viewer"}`,children:w(k)?"declared":"unset"})]},k)})]}),i.jsxs("div",{className:"admin-quota-row admin-quota-cost",children:[i.jsx("span",{className:"admin-provider-type",children:"Max cost / call (USD, admin)"}),i.jsx("input",{className:j(!m),type:"number",min:0,step:.01,placeholder:"unset",disabled:!m,value:o,onChange:k=>l(k.target.value)}),i.jsx("span",{className:"admin-quota-cost-hint",children:"governance.maxCostUsd — hard admin cap"})]}),g||m?i.jsxs("div",{className:"admin-quota-actions",children:[i.jsx("button",{className:"admin-mini-btn",onClick:()=>void S(),disabled:c,children:c?"⏳ Saving…":"💾 Save budget"}),d?i.jsx("span",{className:d.ok?"admin-quota-ok":"admin-quota-err",children:d.text}):null]}):i.jsxs("div",{className:"admin-readonly-note",children:["🔒 Read-only for ",i.jsx("code",{children:t})," — budget limits need ",i.jsx("code",{children:"admin"})," or"," ",i.jsx("code",{children:"operator"}),"; the cost cap needs ",i.jsx("code",{children:"admin"}),"."]})]}):i.jsx("div",{className:"empty-state",children:"Loading budget…"})]})}const ele=["image","video","search","vision","speech"],tle={image:"🖼️ Image generation",video:"🎬 Video generation",search:"🔎 Web search & page reading",vision:"👁️ Vision / interpretation",speech:"🔊 Speech (TTS / STT)"};function nle({authed:e,role:t}){const[n,r]=x.useState([]),[a,s]=x.useState({}),[o,l]=x.useState(null),[c,u]=x.useState({}),[d,f]=x.useState(null),h=e&&t==="admin",p=x.useCallback(async()=>{const k=await K.fetchAdminServices();if(!k){f("Could not load service configuration — is the dashboard server up to date?");return}f(null),r(k.services)},[]);x.useEffect(()=>{p()},[p]);const g=(k,b)=>`${k}:${b}`,m=(k,b,N)=>{s(_=>({..._,[g(k,b)]:N}))},y=async k=>{const b={};for(const _ of k.envVars){const T=a[g(k.id,_.varName)];T!==void 0&&T.trim()!==""&&(b[_.varName]=T.trim())}if(Object.keys(b).length===0){u(_=>({..._,[k.id]:"ℹ️ Type a value to save."}));return}l(k.id),u(_=>({..._,[k.id]:""}));const N=await K.saveService(k.id,b);if(N.ok&&N.service){const _=N.service;r(T=>T.map(C=>C.id===k.id?_:C)),s(T=>{const C={...T};for(const O of k.envVars)delete C[g(k.id,O.varName)];return C}),u(T=>({...T,[k.id]:"✅ Saved — the agent will use it on the next call."}))}else u(_=>({..._,[k.id]:`❌ ${N.error||"Save failed."}`}));l(null)},v=async k=>{l(k.id),u(N=>({...N,[k.id]:"⏳ Testing…"}));const b=await K.testService(k.id);u(N=>({...N,[k.id]:b.ok?`✅ ${b.detail||"Reachable"}`:`❌ ${b.error||b.detail||"Unreachable"}`})),l(null)},S=async k=>{if(!window.confirm(`Remove ${k.label}'s stored key(s)? The agent will fall back to another configured backend.`))return;l(k.id);const b=await K.removeService(k.id);if(b.ok&&b.service){const N=b.service;r(_=>_.map(T=>T.id===k.id?N:T)),s(_=>{const T={..._};for(const C of k.envVars)delete T[g(k.id,C.varName)];return T}),u(_=>{var T;return{..._,[k.id]:`🗑️ Removed ${((T=b.removed)==null?void 0:T.join(", "))||"key(s)"}.`}})}else u(N=>({...N,[k.id]:`❌ ${b.error||"Remove failed."}`}));l(null)},w=ele.map(k=>({cap:k,services:n.filter(b=>b.capability===k)})).filter(k=>k.services.length>0),j=n.filter(k=>k.configured).length;return i.jsxs("div",{className:"service-providers-panel",children:[i.jsx("h2",{className:"section-subtitle",children:"🔌 Service Provider API Keys (image · video · search · vision · speech)"}),i.jsxs("p",{className:"admin-subtitle",children:["These are the third-party services the agent calls directly — separate from the LLM providers above. Each row maps to a real environment variable the tool path reads; keys are written to the credential env file and picked up by the agent on the next call.",n.length>0?` ${j} of ${n.length} services ready.`:""]}),h?null:i.jsxs("div",{className:"admin-readonly-note",children:["🔒 Read-only — configuring service keys requires the ",i.jsx("code",{children:"admin"})," role (credential.write). Secret values are shown redacted."]}),d?i.jsx("div",{className:"admin-error",children:d}):null,n.length===0&&!d?i.jsx("div",{className:"empty-state",children:"Loading service configuration…"}):null,w.map(k=>i.jsxs("section",{className:"service-providers-group",children:[i.jsx("h3",{className:"process-env-group-title",children:tle[k.cap]??k.cap}),i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Service"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Configuration"}),i.jsx("th",{children:"Actions"})]})}),i.jsx("tbody",{children:k.services.map(b=>i.jsxs("tr",{children:[i.jsxs("td",{className:"admin-provider-type",children:[b.icon," ",b.label,i.jsx("div",{className:"admin-provider-sub",children:b.id}),i.jsx("div",{className:"admin-hint",children:b.description}),b.sharedNote?i.jsxs("div",{className:"admin-hint",children:["🔗 ",b.sharedNote]}):null,b.docsUrl?i.jsx("div",{className:"admin-hint",children:i.jsx("a",{href:b.docsUrl,target:"_blank",rel:"noreferrer",children:"Get a key ↗"})}):null]}),i.jsxs("td",{children:[i.jsx("span",{className:`admin-check-badge ${b.configured?"admin-check-pass":"admin-check-warn"}`,children:b.configured?"✅ Ready":"⚠️ Not set"}),b.keyless?i.jsx("div",{className:"admin-hint",children:"no key needed"}):null,b.free?i.jsx("div",{className:"admin-hint",children:"free"}):null]}),i.jsx("td",{children:b.envVars.length===0?i.jsx("div",{className:"admin-hint",children:"Nothing to configure — works out of the box."}):b.envVars.map(N=>{const _=g(b.id,N.varName),T=a[_]??"",C=!N.secret&&N.set?N.value:"";return i.jsxs("div",{className:"service-env-row",children:[i.jsxs("label",{className:"service-env-label",htmlFor:_,children:[i.jsx("code",{children:N.varName}),i.jsx("span",{className:"admin-hint",children:N.prompt})]}),h?i.jsx("input",{id:_,className:"admin-input",type:N.secret?"password":"text","aria-label":`${b.id} ${N.varName}`,placeholder:N.set?N.secret?"•••••• set — type to replace":C:"not set",value:T,onChange:O=>m(b.id,N.varName,O.target.value),autoComplete:"new-password"}):i.jsx("div",{className:"admin-hint",children:N.set?N.value:"—"})]},N.varName)})}),i.jsxs("td",{children:[b.envVars.length===0?i.jsx("div",{className:"admin-hint",children:"always available"}):h?i.jsxs("div",{className:"admin-row-actions",children:[i.jsx("button",{className:"admin-mini-btn",disabled:o===b.id,onClick:()=>void y(b),children:"💾 Save"}),i.jsx("button",{className:"admin-mini-btn",disabled:o===b.id,title:"Probes the SAVED configuration — save first to test a new key",onClick:()=>void v(b),children:"🔌 Test"}),i.jsx("button",{className:"admin-mini-btn admin-mini-danger",disabled:o===b.id,onClick:()=>void S(b),children:"🗑 Remove"})]}):i.jsx("div",{className:"admin-hint",children:"read-only"}),c[b.id]?i.jsx("div",{className:"admin-row-msg",children:c[b.id]}):null]})]},b.id))})]})})]},k.cap))]})}const rle={env:"Environment",config:"Config",vault:"Vault",local:"Local (no key)",none:"Not configured"};function ale(){const[e,t]=x.useState(null),[n,r]=x.useState(!0),[a,s]=x.useState(null),[o,l]=x.useState(null),[c,u]=x.useState(!1),[d,f]=x.useState(!1),[h,p]=x.useState(""),[g,m]=x.useState(""),[y,v]=x.useState(null),[S,w]=x.useState(null),[j,k]=x.useState(""),b=Vr(),[N,_]=x.useState(""),[T,C]=x.useState(""),[O,P]=x.useState(null),[z,L]=x.useState(!1),[M,D]=x.useState([]),[W,R]=x.useState(null),[B,A]=x.useState(""),[J,F]=x.useState(""),[$,ie]=x.useState("viewer"),[de,me]=x.useState(null),[Te,Q]=x.useState(""),[X,ae]=x.useState(null),[ce,H]=x.useState(!1),[xe,we]=x.useState(null),[je,ge]=x.useState(null),[Ie,fe]=x.useState(null),[nt,Be]=x.useState([]),[Oe,Ye]=x.useState({}),[rt,gt]=x.useState(null),[Lt,q]=x.useState({}),[Z,se]=x.useState(""),[he,Ne]=x.useState(null),[$e,Dt]=x.useState(null),[Ae,En]=x.useState(null),[In,ut]=x.useState(null),[qt,Rt]=x.useState(!1),Cr=x.useCallback(async()=>{r(!0),s(null);const G=await K.fetchAdminChecks();t(G),G||s("Could not reach the dashboard server, or the server is older than this panel. Run `buff dashboard` to start it."),r(!1)},[]),Tr=x.useCallback(async()=>{const G=await K.fetchAdminCatalog();G&&G.length>0&&Be(G)},[]),lr=x.useCallback(async()=>{const G=await K.fetchAdminUsers();G.ok&&G.users&&D(G.users)},[]),cr=x.useCallback(async()=>{const G=await K.fetchAdminWorkspace();G&&(me(G),Q(G.configured??""))},[]),Bt=x.useCallback(async()=>{const G=await K.fetchAdminCache();G&&we(G)},[]),qn=x.useCallback(async()=>{En(await K.fetchOmniRouteStatus())},[]),Kn=async G=>{fe(G??"__none__"),ge(null);const ne=await K.clearAdminCache(G);ne.ok?(ge(`✅ Cleared ${ne.removed??0} cached answer(s) for ${G??"the no-workspace bucket"}.`),Bt()):ne.unauthorized?(hn(),ge(`❌ ${ne.error||"Session expired — log in again."}`)):ge(`❌ ${ne.error||"Could not clear the cache."}`),fe(null)},Wa=async G=>{G.preventDefault(),H(!0),ae(null);const ne=await K.saveAdminWorkspace(Te.trim());ne.ok&&ne.workspace?(me(ne.workspace),Q(ne.workspace.configured??""),ae(ne.workspace.effective?`✅ Unattached chat turns now run in ${ne.workspace.effective}`:"✅ Cleared — unattached project asks will ask you to attach a folder.")):ne.unauthorized?(hn(),ae(`❌ ${ne.error||"Session expired — log in again."}`)):ae(`❌ ${ne.error||"Could not save the workspace."}`),H(!1)};x.useEffect(()=>{let G=!0;return K.fetchAdminAuthStatus().then(ne=>{if(G){if(!ne){s("Could not reach the dashboard server, or the server is older than this panel. Run `buff dashboard` to start it."),r(!1);return}l({configured:ne.configured,authenticated:ne.authenticated}),u(ne.authenticated),v(ne.role??null),w(ne.user??null),f(ne.mustChangePassword===!0),ne.authenticated?(Cr(),Tr(),lr(),cr(),Bt(),qn()):r(!1)}}),()=>{G=!1}},[Cr,Tr,lr,cr,Bt,qn,b]);const Kt=y==="admin",ur=y==="admin"||y==="operator",hn=()=>{u(!1),l(G=>G&&{...G,authenticated:!1}),P("Session expired — log in again.")},Ha=async G=>{G.preventDefault(),L(!0),P(null);const ne=await K.adminLogin(j,N);ne.ok?(u(!0),l({configured:!0,authenticated:!0}),v(ne.role??"admin"),w(ne.user??null),k(""),_(""),K.fetchAdminAuthStatus().then(Ee=>{Ee&&f(Ee.mustChangePassword===!0)}),Cr(),Tr(),lr(),cr(),Bt()):P(ne.error||"Login failed."),L(!1)},pn=async G=>{if(G.preventDefault(),L(!0),P(null),N.length<8){P("Password must be at least 8 characters."),L(!1);return}if(N!==T){P("Passwords do not match."),L(!1);return}const ne=await K.adminSetup(j,N);ne.ok?(u(!0),l({configured:!0,authenticated:!0}),v(ne.role??"admin"),w(ne.user??null),k(""),_(""),C(""),Cr(),Tr(),lr()):P(ne.error||"Setup failed."),L(!1)},ga=async()=>{await K.adminLogout(),u(!1),l(G=>G&&{...G,authenticated:!1}),v(null),w(null),t(null),Ye({}),q({}),D([])},qe=async()=>{if(!window.confirm("Stop the running gateway? Channels will stop responding until you restart it with `buff gateway start`."))return;Dt("gateway"),Ne(null);const G=await K.shutdown("gateway");Dt(null),G.ok?Ne(G.stopped?"✅ Gateway stopped.":`ℹ️ ${G.reason||"No running gateway found — nothing to stop."}`):(Ne(`❌ ${G.error||"Stop failed."}`),G.unauthorized&&hn())},Fi=async G=>{if(G==="stop"&&!window.confirm("Stop the OmniRoute gateway? Anything routing through it will fail until it is started again."))return;Rt(!0),ut(null);const ne=await K.controlOmniRoute(G);ne.status&&En(ne.status),ne.ok?ut(`✅ ${ne.detail??(G==="stop"?"OmniRoute stopped.":"OmniRoute started.")}`):ne.unauthorized?(hn(),ut(`❌ ${ne.error||"Session expired — log in again."}`)):ut(`❌ ${ne.detail??ne.reason??ne.error??"OmniRoute control failed."}`),Rt(!1)},Yr=async()=>{window.confirm("Shut down the dashboard? This page will disconnect and the server will exit. Restart with `buff dashboard`.")&&(Dt("dashboard"),Ne("🛑 Shutting down the dashboard — this page will disconnect…"),await K.shutdown("dashboard"),Dt(null),Ne("ℹ️ The dashboard server did not stop (see the server terminal). You can also stop it with `buff dashboard stop`."))},Ga=async G=>{if(G.preventDefault(),R(null),J.length<8){R("Password must be at least 8 characters.");return}const ne=await K.addAdminUser(B,J,$);ne.ok?(A(""),F(""),R("✅ User added"),lr()):(R(`❌ ${ne.error||"Failed to add user"}`),ne.unauthorized&&hn())},dr=async G=>{if(!window.confirm(`Remove dashboard user '${G}'?`))return;R(null);const ne=await K.removeAdminUser(G);ne.ok?(R(`✅ Removed ${G}`),lr()):(R(`❌ ${ne.error||"Failed to remove user"}`),ne.unauthorized&&hn())},qa=(G,ne,Ee)=>{Ye(Se=>({...Se,[G]:{...Se[G]||{},[ne]:Ee}}))},Ka=async G=>{gt(G),q({});const ne=Oe[G]||{},Ee=await K.saveProvider(G,ne);Ee.ok?(t(Se=>{if(!Se)return Se;const $n=Se.providers.some(Le=>Le.type===G)?Se.providers.map(Le=>Le.type===G&&Ee.provider?Ee.provider:Le):Ee.provider?[...Se.providers,Ee.provider]:Se.providers;return{...Se,providers:$n}}),Ye(Se=>{const zt={...Se};return delete zt[G],zt}),q(Se=>({...Se,[G]:"✅ Saved"}))):(q(Se=>({...Se,[G]:`❌ ${Ee.error||"Save failed"}`})),Ee.unauthorized&&hn()),gt(null)},Ui=async G=>{if(!window.confirm(`Remove ${G}'s API key and configuration? This cannot be undone.`))return;gt(G),q({});const ne=await K.deleteProvider(G);ne.ok?ne.envSourced?(t(Ee=>Ee&&{...Ee,providers:Ee.providers.map(Se=>Se.type===G&&ne.provider||Se)}),q(Ee=>({...Ee,[G]:`⚠️ Key comes from ${ne.envVar?`$${ne.envVar}`:"an env var"} — unset it there to remove it (config can't override the env).`}))):(t(Ee=>Ee&&{...Ee,providers:Ee.providers.filter(Se=>Se.type!==G)}),Ye(Ee=>{const Se={...Ee};return delete Se[G],Se})):(q(Ee=>({...Ee,[G]:`❌ ${ne.error||"Remove failed"}`})),ne.unauthorized&&hn()),gt(null)},Ys=async(G,ne)=>{gt(G),q({});const Ee=await K.saveProvider(G,{enabled:ne});Ee.ok?(t(Se=>{if(!Se)return Se;const $n=Se.providers.some(Le=>Le.type===G)?Se.providers.map(Le=>Le.type===G&&Ee.provider?Ee.provider:Le):Ee.provider?[...Se.providers,Ee.provider]:Se.providers;return{...Se,providers:$n}}),q(Se=>({...Se,[G]:ne?"✅ Routing ON":"⏸ Routing OFF (pin only)"}))):(q(Se=>({...Se,[G]:`❌ ${Ee.error||"Toggle failed"}`})),Ee.unauthorized&&hn()),gt(null)},Va=async G=>{gt(G);const ne=await K.testProvider(G);q(Ee=>{var Se;return{...Ee,[G]:ne.ok?`✅ Connected — ${((Se=ne.models)==null?void 0:Se.length)??0} model(s) reachable`:`❌ ${ne.error||"Connection failed"}`}}),gt(null)},Wi=()=>{Z&&(Ye(G=>({...G,[Z]:{}})),se(""))};if(a&&!o)return i.jsxs("div",{className:"admin-header",children:[i.jsx(Re,{icon:"🛠️",title:"Admin"}),i.jsx("div",{className:"admin-error",children:a})]});if(!o||!c&&n)return i.jsxs("div",{className:"admin-header",children:[i.jsx(Re,{icon:"🛠️",title:"Admin"}),i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{children:"Loading…"})]})]});if(!c){const G=!o.configured;return i.jsxs("div",{className:"admin-header",children:[i.jsx(Re,{icon:"🛠️",title:`Admin — ${G?"Set up access":"Log in"}`}),i.jsx("p",{className:"admin-subtitle",children:G?"Create the admin user-id and password that gate the dashboard write surface (API-key/provider configuration). The CLI keeps working exactly as before — this only guards the GUI.":"The write surface (API-key/provider configuration) is gated by the admin credentials. Read-only checks stay open."}),i.jsxs("form",{className:"admin-gate-form",onSubmit:G?pn:Ha,children:[i.jsxs("label",{children:[i.jsx("span",{children:"Username"}),i.jsx("input",{type:"text",value:j,onChange:ne=>k(ne.target.value),autoComplete:"username",placeholder:"admin"})]}),i.jsxs("label",{children:[i.jsx("span",{children:"Password"}),i.jsx("input",{type:"password",value:N,onChange:ne=>_(ne.target.value),autoComplete:G?"new-password":"current-password",placeholder:"••••••••"})]}),G?i.jsxs("label",{children:[i.jsx("span",{children:"Confirm password"}),i.jsx("input",{type:"password",value:T,onChange:ne=>C(ne.target.value),autoComplete:"new-password",placeholder:"••••••••"})]}):null,O?i.jsx("div",{className:"admin-error",children:O}):null,i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:z||!j||!N,children:z?"⏳ …":G?"🔐 Create admin":"🔐 Log in"}),G?i.jsxs("p",{className:"admin-hint",children:["Automation alternative: set ",i.jsx("code",{children:"NUVIRA_DASHBOARD_ADMIN_USER"})," and"," ",i.jsx("code",{children:"NUVIRA_DASHBOARD_ADMIN_PASSWORD"})," in the dashboard's environment."]}):null]})]})}if(d){const G=h.length>0&&h.length<8,ne=g.length>0&&g!==h,Ee=async Se=>{if(Se.preventDefault(),G||ne||!h)return;L(!0),P(null);const zt=await K.changeAdminPassword(N,h);zt.ok?(f(!1),_(""),p(""),m(""),Cr(),Tr(),lr()):P(zt.error||"Could not change the password."),L(!1)};return i.jsxs("div",{className:"admin-header",children:[i.jsx(Re,{icon:"🔐",title:"Set your own password"}),i.jsxs("p",{className:"admin-subtitle",children:["This dashboard is running on its ",i.jsx("strong",{children:"published default password"}),", so anyone who can reach this port can sign in. Until you replace it, the agent will refuse to save anything — API keys, provider settings, users."]}),i.jsxs("form",{className:"admin-gate-form",onSubmit:Ee,children:[i.jsxs("label",{children:[i.jsx("span",{children:"Current password"}),i.jsx("input",{type:"password",value:N,onChange:Se=>_(Se.target.value),autoComplete:"current-password",placeholder:"admin"})]}),i.jsxs("label",{children:[i.jsx("span",{children:"New password"}),i.jsx("input",{type:"password",value:h,onChange:Se=>p(Se.target.value),autoComplete:"new-password",placeholder:"at least 8 characters"})]}),G?i.jsx("div",{className:"admin-error",children:"Use at least 8 characters."}):null,i.jsxs("label",{children:[i.jsx("span",{children:"Confirm new password"}),i.jsx("input",{type:"password",value:g,onChange:Se=>m(Se.target.value),autoComplete:"new-password",placeholder:"repeat it"})]}),ne?i.jsx("div",{className:"admin-error",children:"The two passwords do not match."}):null,O?i.jsx("div",{className:"admin-error",children:O}):null,i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:z||!N||!h||G||ne,children:z?"⏳ …":"🔐 Save new password"})]})]})}const Hi=(e==null?void 0:e.system.filter(G=>G.status==="pass").length)??0,_n=(e==null?void 0:e.system.filter(G=>G.status==="warn").length)??0,Xs=(e==null?void 0:e.system.filter(G=>G.status==="fail").length)??0,Ya=(e==null?void 0:e.enterprise.filter(G=>G.status==="pass").length)??0,Gi=(e==null?void 0:e.enterprise.filter(G=>G.status==="warn").length)??0,ld=(e==null?void 0:e.enterprise.filter(G=>G.status==="fail").length)??0,qi=(e==null?void 0:e.providers)??[],Ki=Object.keys(Oe).filter(G=>!qi.some(ne=>ne.type===G)),fr=[...qi,...Ki.map(G=>({type:G,configured:!1,keySource:"none",keyMasked:null}))],va=G=>{const ne=nt.find(Ee=>Ee.id===G);return ne||{label:G}};return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"admin-header",children:[i.jsx(Re,{icon:"🛠️",title:i.jsxs(i.Fragment,{children:["Admin — Command Runner & Configuration",S?i.jsxs("span",{className:`admin-role-badge admin-role-${y||"viewer"}`,children:[" ",S," · ",y||"viewer"]}):null]})}),i.jsxs("div",{className:"admin-header-actions",children:[i.jsx("button",{className:"admin-refresh-btn",onClick:()=>void Cr(),disabled:n,children:n?"⏳ Running checks…":"🔄 Refresh (run all commands)"}),Kt||y==="operator"?i.jsx("button",{className:"admin-logout-btn",onClick:()=>void qe(),disabled:$e!==null,title:"Stop the running gateway (buff gateway stop)",children:$e==="gateway"?"⏳ Stopping…":"⏻ Stop gateway"}):null,Kt?i.jsx("button",{className:"admin-logout-btn",onClick:()=>void Yr(),disabled:$e!==null,title:"Shut down this dashboard server (buff dashboard stop)",children:$e==="dashboard"?"⏳ Stopping…":"🛑 Stop dashboard"}):null,i.jsx("button",{className:"admin-logout-btn",onClick:()=>void ga(),children:"🚪 Log out"})]})]}),he?i.jsx("div",{className:"admin-error",children:he}):null,Kt?null:i.jsxs("div",{className:"admin-readonly-note",children:["🔒 Your role (",i.jsx("code",{children:y||"viewer"}),") is read-only here — provider configuration and user management require the ",i.jsx("code",{children:"admin"})," role. The CLI enforces the same governance policy (rbac.json)."]}),i.jsx("p",{className:"admin-subtitle",children:"The dashboard executes the same state commands as the CLI — no command needed. Provider keys are masked here and every write goes through the same config the CLI uses."}),a?i.jsx("div",{className:"admin-error",children:a}):null,e?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card admin-summary-pass",children:[i.jsx("div",{className:"admin-summary-value",children:Hi+Ya}),i.jsx("div",{className:"admin-summary-label",children:"✅ Passing"})]}),i.jsxs("div",{className:"admin-summary-card admin-summary-warn",children:[i.jsx("div",{className:"admin-summary-value",children:_n+Gi}),i.jsx("div",{className:"admin-summary-label",children:"⚠️ Warnings"})]}),i.jsxs("div",{className:"admin-summary-card admin-summary-fail",children:[i.jsx("div",{className:"admin-summary-value",children:Xs+ld}),i.jsx("div",{className:"admin-summary-label",children:"❌ Failing"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:fr.length}),i.jsx("div",{className:"admin-summary-label",children:"Providers"})]})]}),Kt?i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"👥 Dashboard Users (role.manage)"}),i.jsxs("div",{className:"admin-users-list",children:[M.map(G=>i.jsxs("div",{className:"admin-user-row",children:[i.jsx("span",{className:"admin-user-name",children:G.user}),i.jsx("span",{className:`admin-role-badge admin-role-${G.role}`,children:G.role}),i.jsxs("span",{className:"admin-user-since",children:["since ",new Date(G.createdAt).toLocaleDateString()]}),G.user!==S?i.jsx("button",{className:"admin-mini-btn admin-mini-danger",onClick:()=>void dr(G.user),children:"🗑 Remove user"}):i.jsx("span",{className:"admin-hint",children:"you"})]},G.user)),M.length===0?i.jsx("div",{className:"empty-state",children:"No dashboard users yet."}):null]}),i.jsxs("form",{className:"admin-gate-form admin-user-form",onSubmit:Ga,children:[i.jsxs("label",{children:[i.jsx("span",{children:"Username"}),i.jsx("input",{type:"text",value:B,onChange:G=>A(G.target.value),autoComplete:"off"})]}),i.jsxs("label",{children:[i.jsx("span",{children:"Password (min 8 chars)"}),i.jsx("input",{type:"password",value:J,onChange:G=>F(G.target.value),autoComplete:"new-password"})]}),i.jsxs("label",{children:[i.jsx("span",{children:"Role"}),i.jsxs("select",{value:$,onChange:G=>ie(G.target.value),children:[i.jsx("option",{value:"viewer",children:"viewer — read-only"}),i.jsx("option",{value:"operator",children:"operator — read-only in the dashboard today"}),i.jsx("option",{value:"admin",children:"admin — full control"})]})]}),W?i.jsx("div",{className:"admin-row-msg",children:W}):null,i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:!B||!J,children:"➕ Add user"})]})]}):null,Kt||y==="operator"?i.jsxs("div",{className:"admin-omniroute",children:[i.jsxs("h2",{className:"section-subtitle",children:["🔀 External gateway: OmniRoute (port ",(Ae==null?void 0:Ae.port)??20128,")"]}),i.jsxs("p",{className:"admin-hint",children:["OmniRoute is a separate local process nuvira does not embed. The provider row below decides whether agent-nuvira ",i.jsx("em",{children:"routes"})," to it; this controls whether the gateway itself is up. A 401 from its API still counts as running."]}),i.jsxs("div",{className:"admin-omniroute-row",children:[i.jsx("span",{className:`admin-check-badge ${Ae!=null&&Ae.reachable?"admin-check-pass":"admin-check-warn"}`,children:Ae===null?"… checking":Ae.reachable?"✅ Reachable":Ae.running?"⚠️ Process up, not answering":"❌ Not running"}),i.jsxs("span",{className:"admin-hint",children:[(Ae==null?void 0:Ae.detail)??"Probing…"," · ",(Ae==null?void 0:Ae.baseUrl)??"http://127.0.0.1:20128/v1",(Ae==null?void 0:Ae.pid)!=null?` · PID ${Ae.pid}`:""]}),i.jsx("button",{className:"admin-mini-btn",disabled:qt,onClick:()=>void Fi("start"),title:"Run `omniroute` in the background and wait until it answers",children:"▶ Start"}),i.jsx("button",{className:"admin-mini-btn admin-mini-danger",disabled:qt||!(Ae!=null&&Ae.running),onClick:()=>void Fi("stop"),title:"SIGTERM the running OmniRoute gateway",children:"⏹ Stop"}),i.jsx("button",{className:"admin-mini-btn",disabled:qt,onClick:()=>void qn(),children:"⟳ Recheck"})]}),In?i.jsx("div",{className:"admin-row-msg",children:In}):null]}):null,i.jsx("h2",{className:"section-subtitle",children:"🔑 Provider Configuration (keys masked)"}),i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Provider"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Key"}),i.jsx("th",{children:"Base URL"}),i.jsx("th",{children:"Model"}),i.jsx("th",{children:"Actions"})]})}),i.jsxs("tbody",{children:[fr.map(G=>{const ne=va(G.type),Ee=Oe[G.type]||{},Se=G.type==="bedrock";return i.jsxs("tr",{children:[i.jsxs("td",{className:"admin-provider-type",children:[ne.icon?`${ne.icon} `:"",ne.label,i.jsxs("div",{className:"admin-provider-sub",children:[G.type," · ",rle[G.keySource]||G.keySource]}),G.keySource==="env"?i.jsxs("div",{className:"admin-hint",children:["comes from ",ne.envVar||"env var"," — change it there, config can't override it"]}):G.keySource==="vault"?i.jsx("div",{className:"admin-hint",children:"stored in the OS keyring (vault)"}):null,ne.description?i.jsx("div",{className:"admin-provider-desc",children:ne.description}):null,ne.setup?i.jsxs("div",{className:"admin-provider-setup",children:[i.jsx("strong",{children:"Setup:"})," ",ne.setup]}):null]}),i.jsxs("td",{children:[i.jsx("span",{className:`admin-check-badge ${G.configured?"admin-check-pass":"admin-check-warn"}`,children:G.configured?"✅ Configured":"⚠️ Not configured"}),G.enabled===!1?i.jsx("span",{className:"admin-check-badge admin-check-warn",title:"Kept out of automatic routing; an explicit --provider pin still reaches it",children:"⏸ Off (pin only)"}):null]}),i.jsx("td",{children:Se?i.jsxs("div",{className:"admin-hint",children:["Configured on the ",i.jsx("a",{href:"/bedrock",children:"AWS Bedrock page"})," — region, auth (bearer / IAM), and model-access approval live there, not here."]}):ne.keyless?i.jsx("div",{className:"admin-hint",children:"No key needed (probed)"}):Kt?i.jsx("input",{className:"admin-input admin-key-input",type:"password","aria-label":`${G.type} API key`,placeholder:G.keyMasked||"set a new key…",value:Ee.apiKey??"",onChange:zt=>qa(G.type,"apiKey",zt.target.value),autoComplete:"new-password"}):i.jsx("div",{className:"admin-hint",children:G.keyMasked||"—"})}),i.jsx("td",{children:Kt?i.jsx("input",{className:"admin-input",type:"text","aria-label":`${G.type} base URL`,placeholder:G.baseUrl||"default endpoint",value:Ee.baseUrl??"",onChange:zt=>qa(G.type,"baseUrl",zt.target.value)}):i.jsx("div",{className:"admin-hint",children:G.baseUrl?G.baseUrl.replace(/^https?:\/\/(?:[^@/]*@)?/,""):"default endpoint"})}),i.jsx("td",{children:Kt?i.jsx("input",{className:"admin-input",type:"text","aria-label":`${G.type} model`,placeholder:G.model||"default model",value:Ee.model??"",onChange:zt=>qa(G.type,"model",zt.target.value)}):i.jsx("div",{className:"admin-hint",children:G.model||"default model"})}),i.jsx("td",{children:Kt?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"admin-row-actions",children:[i.jsx("button",{className:"admin-mini-btn",disabled:rt===G.type,title:"Include this provider in automatic routing, or keep it off and pin it explicitly",onClick:()=>void Ys(G.type,G.enabled===!1),children:G.enabled===!1?"▶ Turn on":"⏸ Turn off"}),i.jsx("button",{className:"admin-mini-btn",disabled:rt===G.type,onClick:()=>void Ka(G.type),children:"💾 Save"}),i.jsx("button",{className:"admin-mini-btn",disabled:rt===G.type,title:"Tests the SAVED configuration — save first to test a new key",onClick:()=>void Va(G.type),children:"🔌 Test"}),i.jsx("button",{className:"admin-mini-btn admin-mini-danger",disabled:rt===G.type,onClick:()=>void Ui(G.type),children:"🗑 Remove"})]}),Lt[G.type]?i.jsx("div",{className:"admin-row-msg",children:Lt[G.type]}):null]}):i.jsx("div",{className:"admin-hint",children:"read-only"})})]},G.type)}),fr.length===0?i.jsx("tr",{children:i.jsx("td",{colSpan:6,className:"admin-empty-cell",children:"No providers configured yet."})}):null]})]})}),Kt&&nt.length>0?i.jsxs("div",{className:"admin-add-provider",children:[i.jsxs("select",{className:"admin-input",value:Z,onChange:G=>se(G.target.value),children:[i.jsx("option",{value:"",children:"Add a provider…"}),nt.filter(G=>!fr.some(ne=>ne.type===G.id)).map(G=>i.jsxs("option",{value:G.id,children:[G.icon?`${G.icon} `:"",G.label," (",G.id,")"]},G.id))]}),i.jsx("button",{className:"admin-mini-btn",disabled:!Z,onClick:Wi,children:"➕ Add"})]}):null,i.jsx("h2",{className:"section-subtitle",children:"📁 Workspace (chat turns with no attached folder)"}),i.jsx("p",{className:"admin-hint",children:"A chat turn runs against a directory. An attached folder always wins; with none attached, this is where the turn lands. Leave it empty and an ask that needs a project — an assessment, a file, an image — asks you to attach a folder instead of scanning the server's own working directory."}),i.jsxs("form",{className:"admin-gate-form",onSubmit:Wa,children:[i.jsxs("label",{children:[i.jsx("span",{children:"Working directory"}),i.jsx("input",{type:"text",value:Te,onChange:G=>Q(G.target.value),placeholder:"/Users/you/Documents/my-project",disabled:ce||!c||!ur})]}),de?i.jsxs("p",{className:"admin-hint",children:[de.effective?i.jsxs(i.Fragment,{children:["Effective: ",i.jsx("code",{children:de.effective})]}):i.jsxs(i.Fragment,{children:["Not set — unattached project asks will ask for a folder (server cwd: ",i.jsx("code",{children:de.processCwd}),")"]}),de.configured&&!de.configuredValid?" ⚠️ The saved path no longer exists and is being ignored.":""]}):null,X?i.jsx("div",{className:"admin-row-msg",children:X}):null,ur?i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:ce||!c,children:ce?"⏳ Saving…":"💾 Save workspace"}):i.jsx("span",{className:"admin-hint",children:"🔒 Changing the workspace requires admin or operator."})]}),i.jsx("h2",{className:"section-subtitle",children:"🧠 Response Cache (answers by workspace)"}),i.jsx("p",{className:"admin-hint",children:"The cache is keyed by the folder an answer was produced in. If a project has changed and an ask replays an old answer, clear that project — every other project keeps its cached answers."}),je?i.jsx("div",{className:"admin-row-msg",children:je}):null,xe&&xe.workspaces.length>0?i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Workspace"}),i.jsx("th",{children:"Answers"}),i.jsx("th",{children:"Newest"}),i.jsx("th",{children:"Models"}),i.jsx("th",{children:"Sample"}),i.jsx("th",{})]})}),i.jsx("tbody",{children:xe.workspaces.map(G=>{var ne;return i.jsxs("tr",{children:[i.jsx("td",{className:"admin-provider-type",children:G.scope?i.jsx("code",{children:G.scope}):i.jsx("em",{children:"no workspace attached"})}),i.jsx("td",{children:G.count}),i.jsx("td",{className:"admin-hint",children:new Date(G.newestAt).toLocaleString()}),i.jsxs("td",{className:"admin-hint",children:[G.models.slice(0,2).join(", "),G.models.length>2?` +${G.models.length-2}`:""]}),i.jsx("td",{className:"admin-hint",children:((ne=G.samples[0])==null?void 0:ne.prompt)??""}),i.jsx("td",{children:i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:Ie!==null||!ur,onClick:()=>void Kn(G.scope),children:Ie===(G.scope??"__none__")?"⏳ …":"🗑 Clear"})})]},G.scope??"__none__")})})]})}):i.jsx("div",{className:"empty-state",children:"No cached answers — every turn reached a model."}),xe&&xe.total>0?i.jsxs("p",{className:"admin-hint",children:[xe.total," cached answer",xe.total===1?"":"s"," across"," ",xe.workspaces.length," workspace",xe.workspaces.length===1?"":"s","."]}):null,i.jsx(nle,{authed:c,role:y||"viewer"}),i.jsx(Joe,{authed:c,role:y||"viewer"}),i.jsx("h2",{className:"section-subtitle",children:"⚙️ System Checks (buff doctor)"}),i.jsx("div",{className:"admin-check-list",children:e.system.map(G=>i.jsx(zb,{check:G},G.name))}),i.jsx("h2",{className:"section-subtitle",children:"🏥 Enterprise Self-Check (doctor --enterprise)"}),i.jsx("div",{className:"admin-check-list",children:e.enterprise.length>0?e.enterprise.map(G=>i.jsx(zb,{check:G},G.name)):i.jsx("div",{className:"empty-state",children:"No enterprise checks returned."})})]}):n?i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{children:"Running all state checks…"})]}):null]})}function vM(e){return String(e??"").replace(/\d{3,}/g,t=>t.slice(0,2)+"***")}const ile={idle:"Not paired",pairing:"⏳ Pairing…",paired:"✅ Paired",failed:"❌ Pairing failed",cancelled:"⏹ Cancelled",error:"💥 Pairing error"};function sle({authed:e,canWrite:t,sessionExpired:n,reveal:r=!1}){const[a,s]=x.useState(null),[o,l]=x.useState({}),[c,u]=x.useState(""),[d,f]=x.useState(!1),[h,p]=x.useState(null),g=x.useRef(null),m=x.useCallback(async()=>{const b=await K.getWhatsAppStatus();b&&(s(b.status),l(b.contacts??{}))},[]);x.useEffect(()=>{if(m(),!e||typeof EventSource>"u")return;const b=K.subscribeWhatsApp({onQr:N=>s(_=>_&&{..._,qr:N,state:"pairing"}),onCode:N=>s(_=>_&&{..._,pairingCode:N}),onStatus:N=>{s(N),(N.state==="paired"||N.state==="failed"||N.state==="error"||N.state==="cancelled")&&f(!1)}});return g.current=b,()=>{b(),g.current=null}},[e,m]);const y=async b=>{f(!0),p(null);const N=await b();if(!N.ok&&N.error&&/Not authenticated|Session expired/i.test(N.error)){n(),f(!1);return}N.ok?(p({kind:"ok",text:"Done."}),await m()):p({kind:"err",text:N.error||"Action failed."}),f(!1)},v=b=>{p(null),y(()=>K.startWhatsAppPair(b?c.trim():void 0)).then(()=>u(""))},S=()=>{p(null),y(()=>K.cancelWhatsAppPair())},w=()=>{window.confirm("Remove the paired WhatsApp session from this machine? You will need to scan a QR to pair again.")&&(p(null),y(()=>K.unpairWhatsApp()))},j=(a==null?void 0:a.state)??"idle",k=j==="pairing";return i.jsxs("div",{className:"wa-panel",children:[i.jsxs("div",{className:"wa-panel-head",children:[i.jsx("span",{className:"wa-panel-title",children:"🟢 WhatsApp bridge"}),a?i.jsx("span",{className:`wa-badge ${a.paired?"wa-badge-paired":k?"wa-badge-pairing":""}`,children:ile[j]}):i.jsx("span",{className:"admin-hint",children:"loading…"})]}),i.jsxs("p",{className:"admin-hint",children:["The personal Baileys bridge (no Meta Business account) — pair once, and the gateway can send & receive WhatsApp. Session: ",i.jsx("code",{children:(a==null?void 0:a.sessionDir)??"~/.buff/whatsapp/session"}),". Same engine as"," ",i.jsx("code",{children:"buff whatsapp pair"}),"."]}),k?i.jsxs("div",{className:"wa-pairing",children:[a!=null&&a.qr?i.jsxs("div",{className:"wa-qr-box",children:[i.jsx("img",{className:"wa-qr-img",src:a.qr,alt:"WhatsApp pairing QR code"}),i.jsxs("p",{className:"admin-hint",children:["Open WhatsApp on the phone → ",i.jsx("strong",{children:"Linked devices → Link a device → scan"}),". The QR refreshes automatically while this window is open."]})]}):a!=null&&a.phone?i.jsxs("div",{className:"wa-code-box",children:[i.jsxs("p",{className:"admin-hint",children:["On the phone with ",i.jsx("strong",{children:a.phone}),": WhatsApp → Linked devices → Link a device →"," ",i.jsx("strong",{children:"“Link with phone number instead”"})," → enter:"]}),i.jsx("div",{className:"wa-code",children:a.pairingCode??"… waiting for code"})]}):i.jsx("div",{className:"wa-code-box",children:i.jsx("p",{className:"admin-hint",children:"Waiting for WhatsApp to hand over a QR… (it usually appears within a few seconds)"})}),a!=null&&a.phone?null:i.jsxs("div",{className:"admin-hint",children:["Tip: on a phone, “Link with phone number instead” needs the number format"," ",i.jsx("code",{children:"918844433322"})," (country code included) — enter it below instead of scanning."]}),a!=null&&a.error?i.jsx("div",{className:"admin-row-msg admin-row-msg-err",children:a.error}):null,t&&e?i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:S,disabled:d,children:d?"⏳…":"⏹ Cancel pairing"}):null]}):i.jsxs("div",{className:"wa-actions",children:[t&&e?a!=null&&a.paired?i.jsxs("div",{className:"wa-action-row",children:[i.jsx("button",{className:"admin-refresh-btn wa-unpair-btn",type:"button",onClick:w,disabled:d,children:d?"⏳…":"🗑 Unpair (remove session)"}),i.jsx("span",{className:"admin-hint",children:"Removes creds.json — you will need to scan a QR again."})]}):i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"wa-action-row",children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>v(!1),disabled:d,children:d?"⏳…":"🔳 Pair with a QR"}),i.jsx("span",{className:"admin-hint",children:"Scans from the phone you want to link."})]}),i.jsxs("div",{className:"wa-action-row wa-phone-row",children:[i.jsx("input",{type:"text",className:"wa-phone-input",value:c,onChange:b=>u(b.target.value),placeholder:"or pair with a number — e.g. 918844433322",disabled:d,maxLength:16}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>v(!0),disabled:d||!c.trim(),children:"Pair by number"})]})]}):null,j==="failed"||j==="error"||j==="cancelled"?i.jsx("div",{className:"admin-row-msg admin-row-msg-err",children:(a==null?void 0:a.error)||(j==="cancelled"?"Pairing cancelled.":"Pairing failed — try again.")}):null,e?t?null:i.jsx("div",{className:"admin-row-msg",children:"Your role can view pairing status but not change it (requires admin or operator)."}):i.jsx("div",{className:"admin-row-msg",children:"Log in (admin or operator) to pair, cancel, or unpair."}),h?i.jsx("div",{className:`admin-row-msg${h.kind==="ok"?"":" admin-row-msg-err"}`,children:h.text}):null]}),i.jsxs("div",{className:"wa-contacts",children:[i.jsxs("div",{className:"wa-contacts-head",children:[i.jsx("span",{className:"wa-panel-title",children:"📇 Send-by-name contacts"}),i.jsxs("span",{className:"admin-hint",children:[Object.keys(o).length," mapped"]})]}),i.jsxs("p",{className:"admin-hint",children:["These names are for ",i.jsx("strong",{children:"sending messages by name"})," (e.g."," ",i.jsx("code",{children:'buff gateway send whatsapp:Name "…"'}),") — they do"," ",i.jsx("strong",{children:"NOT"})," let these numbers trigger the agent."]}),i.jsx("div",{className:"hub-alias-list",children:Object.keys(o).length===0?i.jsxs("span",{className:"admin-hint",children:["(none — add one with ",i.jsx("code",{children:"buff whatsapp contact add <Name> <number>"}),")"]}):Object.entries(o).map(([b,N])=>i.jsxs("div",{className:"hub-alias-row",children:[i.jsx("span",{className:"hub-chip",children:b}),i.jsxs("span",{className:"admin-hint",children:["→ ",r?N:vM(N)]})]},b))}),i.jsxs("p",{className:"admin-hint",style:{marginTop:8},children:["To let a number ",i.jsx("strong",{children:"trigger the agent"})," (respond to its messages), add it to the"," ",i.jsx("strong",{children:"verified list"})," in the ",i.jsx("strong",{children:"Permissions tab above"}),", or run"," ",i.jsx("code",{children:"buff config gateway allow whatsapp user <number>"}),"."]})]})]})}function ole({canWrite:e,sessionExpired:t,mode:n="grid"}){const[r,a]=x.useState(null),[s,o]=x.useState(null),[l,c]=x.useState(null),[u,d]=x.useState(null),[f,h]=x.useState(null),[p,g]=x.useState(0),[m,y]=x.useState({}),[v,S]=x.useState(!1),[w,j]=x.useState(null),k=x.useRef(!0),b=x.useCallback(async()=>{const z=await K.getPlatformConfigs();k.current&&a(z)},[t]);x.useEffect(()=>(b(),()=>{k.current=!1}),[b]);const N=async(z,L)=>{c(z),d(null);const M=await K.setPlatformConfig(z,L);if(k.current){if(c(null),M.unauthorized||M.forbidden){t(M.error);return}d({kind:M.ok?"ok":"err",text:M.ok?"Saved — transport active.":M.error||"Save failed."}),M.ok&&(o(null),b())}},_=async z=>{if(!window.confirm(`Remove ${z} transport config? Tokens will be deleted from ~/.buff/.env.`))return;c(z),d(null);const L=await K.removePlatformConfig(z);if(k.current){if(c(null),L.unauthorized||L.forbidden){t(L.error);return}d({kind:L.ok?"ok":"err",text:L.ok?"Removed.":L.error||"Remove failed."}),L.ok&&b()}},T={telegram:{steps:["Open Telegram and search for @BotFather","Send /newbot to BotFather and follow the prompts",'Give your bot a name (e.g. "My Agent Bot")','Give your bot a username (must end with "bot", e.g. "my_agent_bot")',"BotFather will give you a token — paste it in the field below","Open your bot in Telegram and send it a message (e.g. /start)"],postSetup:["Start the gateway: buff gateway start (or from the Gateway tab)","Open your bot in Telegram and send a message — the agent replies!"]},discord:{steps:["Go to https://discord.com/developers/applications",'Click "New Application" → give it a name → Create','Go to "Bot" in the left sidebar → click "Add Bot"','Under "Token", click "Copy" to copy the bot token','Enable "Message Content Intent" under Privileged Gateway Intents',"Invite the bot to your server with the OAuth2 URL generator"],postSetup:["Start the gateway: buff gateway start","Mention the bot in a Discord channel or send it a DM","The agent will reply automatically!"]},slack:{steps:["Go to https://api.slack.com/apps",'Click "Create New App" → "From scratch"',"Add Bot Token Scopes: chat:write, im:read, im:write","Install the app to your workspace","Copy the Bot User OAuth Token (starts with xoxb-)"],postSetup:["Start the gateway: buff gateway start","DM the bot or mention it in a channel","The agent will reply automatically!"]},email:{steps:["You need an SMTP relay (Gmail, SendGrid, Mailgun, etc.)","For Gmail: use smtp.gmail.com:587 with an App Password","For SendGrid/Mailgun: get SMTP credentials from their dashboard"],postSetup:["Start the gateway: buff gateway start","Send an email to the configured address","The agent will reply via email!"]}},C=z=>{e&&(h(z),g(0),y(Object.fromEntries(z.envVars.map(L=>[L.varName,L.value]))),j(null))},O=async()=>{if(!f||!e)return;S(!0),j(null);const z=await K.setPlatformConfig(f.platform,m);if(S(!1),z.unauthorized||z.forbidden){t(z.error);return}z.ok?(j({kind:"ok",text:"✅ Token saved! The transport is now active."}),b()):j({kind:"err",text:z.error||"Save failed."})};if(r===null)return i.jsx("div",{className:"empty-state",children:"Loading platform transports…"});const P=f?T[f.platform]:null;return n==="table"?i.jsxs(i.Fragment,{children:[f&&P?i.jsx("div",{className:"wizard-overlay",onClick:()=>h(null),children:i.jsxs("div",{className:"wizard-modal",onClick:z=>z.stopPropagation(),children:[i.jsxs("div",{className:"wizard-header",children:[i.jsx("span",{className:"wizard-icon",children:"🚀"}),i.jsxs("span",{className:"wizard-title",children:["Getting Started: ",f.label]}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>h(null),children:"✕"})]}),i.jsx("div",{className:"wizard-body",children:p===0?i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"📋 Steps to create your bot:"}),i.jsx("ol",{className:"wizard-steps",children:P.steps.map((z,L)=>i.jsx("li",{children:z},L))}),i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>g(1),children:"I have my token →"}),f.setupUrl?i.jsx("a",{href:f.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn platform-docs-link",children:"📖 Docs"}):null]})]}):i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"🔑 Paste your token:"}),f.envVars.map(z=>i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:z.prompt}),i.jsx("input",{type:z.secret?"password":"text",value:m[z.varName]??"",onChange:L=>y(M=>({...M,[z.varName]:L.target.value})),placeholder:z.secret?"••••••••":"value",autoComplete:"off",spellCheck:!1,autoFocus:!0})]},z.varName)),w?i.jsx("div",{className:`admin-row-msg${w.kind==="ok"?"":" admin-row-msg-err"}`,children:w.text}):null,i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>g(0),children:"← Back"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void O(),disabled:v||!e,children:v?"⏳ Saving…":"💾 Save token"})]}),(w==null?void 0:w.kind)==="ok"?i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"📋 Next steps:"}),i.jsx("ol",{className:"wizard-steps",children:P.postSetup.map((z,L)=>i.jsx("li",{children:z},L))})]}):null]})})]})}):null,u?i.jsx("div",{className:`admin-row-msg${u.kind==="ok"?"":" admin-row-msg-err"}`,children:u.text}):null,i.jsx("div",{className:"platform-config-table-wrapper",children:i.jsxs("table",{className:"platform-config-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Platform"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Configuration"}),i.jsx("th",{children:"CLI Command"})]})}),i.jsx("tbody",{children:r.map(z=>i.jsxs(V.Fragment,{children:[i.jsxs("tr",{className:`platform-config-row ${z.configured?"configured":""}`,children:[i.jsxs("td",{className:"platform-config-name",children:[i.jsx("span",{className:"hub-platform-label",children:z.label}),i.jsx("span",{className:"hub-card-id",children:z.platform})]}),i.jsxs("td",{children:[i.jsx("span",{className:`status-dot ${z.configured?"connected":"reconnecting"}`}),i.jsx("span",{className:"platform-config-status-text",children:z.configured?"Active":"Not configured"})]}),i.jsxs("td",{className:"platform-config-actions",children:[z.configured?null:i.jsx("button",{type:"button",className:"wizard-start-btn",onClick:()=>C(z),disabled:!e,children:"🚀 Getting Started"}),z.setupUrl?i.jsx("a",{href:z.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn platform-docs-link",children:"📖 Docs"}):null,i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>o(s===z.platform?null:z.platform),disabled:!e,children:s===z.platform?"▴ Close":z.configured?"✎ Edit":"⚙ Configure"}),z.configured?i.jsx("button",{type:"button",className:"admin-mini-btn contact-delete-btn",onClick:()=>void _(z.platform),disabled:!e,children:"🗑️"}):null]}),i.jsx("td",{className:"platform-config-cli",children:i.jsxs("code",{children:["buff gateway setup ",z.platform]})})]}),s===z.platform?i.jsx("tr",{className:"platform-config-expanded",children:i.jsx("td",{colSpan:4,children:i.jsxs("div",{className:"platform-config-form",children:[z.envVars.map(L=>i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:L.prompt}),i.jsx("input",{type:L.secret?"password":"text",value:L.value,readOnly:!0,className:"platform-config-readonly",placeholder:L.secret?"••••••••":"value"})]},L.varName)),i.jsxs("p",{className:"admin-hint",children:["Tokens are in ",i.jsx("code",{children:"~/.buff/.env"})," — edit there or use the wizard above."]})]})})}):null]},z.platform))})]})})]}):i.jsxs(i.Fragment,{children:[f&&P?i.jsx("div",{className:"wizard-overlay",onClick:()=>h(null),children:i.jsxs("div",{className:"wizard-modal",onClick:z=>z.stopPropagation(),children:[i.jsxs("div",{className:"wizard-header",children:[i.jsx("span",{className:"wizard-icon",children:"🚀"}),i.jsxs("span",{className:"wizard-title",children:["Getting Started: ",f.label]}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>h(null),children:"✕"})]}),i.jsx("div",{className:"wizard-body",children:p===0?i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"📋 Steps to create your bot:"}),i.jsx("ol",{className:"wizard-steps",children:P.steps.map((z,L)=>i.jsx("li",{children:z},L))}),i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>g(1),children:"I have my token →"}),f.setupUrl?i.jsx("a",{href:f.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn platform-docs-link",children:"📖 Open docs in new tab"}):null]})]}):i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"🔑 Paste your token:"}),f.envVars.map(z=>i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:z.prompt}),i.jsx("input",{type:z.secret?"password":"text",value:m[z.varName]??"",onChange:L=>y(M=>({...M,[z.varName]:L.target.value})),placeholder:z.secret?"••••••••":"value",autoComplete:"off",spellCheck:!1,autoFocus:!0})]},z.varName)),w?i.jsx("div",{className:`admin-row-msg${w.kind==="ok"?"":" admin-row-msg-err"}`,children:w.text}):null,i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>g(0),children:"← Back"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void O(),disabled:v||!e,children:v?"⏳ Saving…":"💾 Save token"})]}),(w==null?void 0:w.kind)==="ok"?i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"📋 Next steps:"}),i.jsx("ol",{className:"wizard-steps",children:P.postSetup.map((z,L)=>i.jsx("li",{children:z},L))})]}):null]})})]})}):null,i.jsxs("div",{className:"platform-config",children:[i.jsx("h2",{className:"section-subtitle",children:"⚙️ Platform transports (buff config gateway)"}),u?i.jsx("div",{className:`admin-row-msg${u.kind==="ok"?"":" admin-row-msg-err"}`,children:u.text}):null,i.jsx("div",{className:"hub-platform-grid",children:r.map(z=>i.jsx(lle,{entry:z,canWrite:e,busy:l===z.platform,expanded:s===z.platform,onToggle:()=>o(s===z.platform?null:z.platform),onSave:L=>void N(z.platform,L),onRemove:()=>void _(z.platform),onStartWizard:()=>C(z)},z.platform))}),i.jsxs("p",{className:"admin-hint",children:["Tokens are written to ",i.jsx("code",{children:"~/.buff/.env"})," (loaded by both the CLI and this dashboard at startup) — no env vars to hand-export. The WhatsApp personal bridge is configured separately above via QR/code pairing."]})]})]})}function lle(e){const{entry:t,canWrite:n,busy:r,expanded:a,onToggle:s,onSave:o,onRemove:l,onStartWizard:c}=e,[u,d]=x.useState(()=>Object.fromEntries(t.envVars.map(h=>[h.varName,h.value]))),f=(h,p)=>{d(g=>({...g,[h]:p}))};return i.jsxs("div",{className:`hub-platform${t.configured?" configured":""}`,children:[i.jsxs("div",{className:"hub-platform-head",children:[i.jsx("span",{className:`status-dot ${t.configured?"connected":"reconnecting"}`}),i.jsx("span",{className:"hub-platform-label",children:t.label}),i.jsx("span",{className:"hub-card-id",children:t.platform}),t.configured?null:i.jsx("button",{type:"button",className:"wizard-start-btn",onClick:c,disabled:!n,title:"Step-by-step setup wizard",children:"🚀 Getting Started"}),t.setupUrl?i.jsx("a",{href:t.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn platform-docs-link",title:"Setup documentation",children:"📖 Docs"}):null,i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:s,disabled:!n,children:a?"▴ Collapse":t.configured?"✎ Edit":"⚙ Configure"})]}),!a&&t.setupHint&&!t.configured?i.jsx("div",{className:"platform-setup-hint",children:t.setupHint}):null,a?i.jsxs("div",{className:"platform-config-form",children:[t.setupHint?i.jsx("div",{className:"platform-setup-hint",children:t.setupHint}):null,t.envVars.map(h=>i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:h.prompt}),i.jsx("input",{type:h.secret?"password":"text",value:u[h.varName]??"",onChange:p=>f(h.varName,p.target.value),placeholder:h.secret?"••••••••":"value",autoComplete:"off",spellCheck:!1,maxLength:512})]},h.varName)),i.jsxs("div",{className:"platform-config-actions",children:[i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>o(u),disabled:r||!n,children:r?"⏳ Saving…":"💾 Save"}),t.configured?i.jsx("button",{type:"button",className:"hub-remove-btn",onClick:l,disabled:r||!n,children:"🗑 Remove"}):null]})]}):i.jsx("div",{className:"hub-platform-env",children:t.envVars.map(h=>i.jsxs("div",{children:[i.jsx("code",{children:h.varName})," ",h.set?"✓ set":"— unset"]},h.varName))})]})}const cle=[{id:"tools",label:"Tools",icon:"🧰"},{id:"channels",label:"Channels",icon:"📡"},{id:"conversations",label:"Conversations",icon:"💬"},{id:"artifacts",label:"Artifacts",icon:"📦"},{id:"skills",label:"Skills",icon:"🧠"},{id:"subagents",label:"Subagents",icon:"🤖"}],ule={pending:"⏳ pending",sent:"✅ sent",failed:"❌ failed"},dle=5e3,fle={spawning:"⏳ spawning",running:"▶ running",completed:"✅ completed",failed:"❌ failed",timeout:"⏰ timed out",killed:"⛔ killed"};function hle(e){const t=typeof document<"u"?document.documentElement:null,n=(r,a)=>!t||typeof getComputedStyle!="function"?a:getComputedStyle(t).getPropertyValue(r).trim()||a;return{canvas:n("--bg-primary","Canvas"),text:n("--text-primary","CanvasText"),muted:n("--text-muted","GrayText"),userBubble:n("--accent-blue","Highlight"),onUserBubble:n("--text-on-accent","HighlightText"),agentBubble:n("--bg-card","ButtonFace")}}function oo(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function ple(e,t,n=new Date){const r=oo(e.displayName),a=oo(e.platform),s=e.messages.map(o=>{const l=o.role==="user",c=l?"user":"assistant",u=oo(l?e.displayName:"Agent");return`<div class="msg msg-${c}">
|
|
135
|
+
<div class="bubble bubble-${c}">${oo(o.content)}</div>
|
|
136
|
+
<div class="timestamp">${u} · ${oo(new Date(o.ts).toLocaleString())}</div>
|
|
137
|
+
</div>`}).join(`
|
|
138
|
+
`);return`<!DOCTYPE html>
|
|
139
|
+
<html lang="en">
|
|
140
|
+
<head>
|
|
141
|
+
<meta charset="utf-8">
|
|
142
|
+
<title>Conversation with ${r}</title>
|
|
143
|
+
<style>
|
|
144
|
+
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif; max-width: 700px; margin: 40px auto; padding: 0 20px; background: ${t.canvas}; color: ${t.text}; line-height: 1.6; }
|
|
145
|
+
h1 { font-size: 20px; margin-bottom: 4px; }
|
|
146
|
+
.meta { color: ${t.muted}; font-size: 13px; margin-bottom: 20px; }
|
|
147
|
+
.msg { margin-bottom: 16px; }
|
|
148
|
+
.msg-user { text-align: right; }
|
|
149
|
+
.msg-assistant { text-align: left; }
|
|
150
|
+
.bubble { display: inline-block; max-width: 80%; padding: 10px 14px; border-radius: 12px; font-size: 14px; white-space: pre-wrap; word-break: break-word; text-align: left; }
|
|
151
|
+
.bubble-user { background: ${t.userBubble}; color: ${t.onUserBubble}; border-bottom-right-radius: 4px; }
|
|
152
|
+
.bubble-assistant { background: ${t.agentBubble}; color: ${t.text}; border-bottom-left-radius: 4px; }
|
|
153
|
+
.timestamp { font-size: 11px; color: ${t.muted}; margin-top: 2px; }
|
|
154
|
+
@media print { body { margin: 0; } }
|
|
155
|
+
</style>
|
|
156
|
+
</head>
|
|
157
|
+
<body>
|
|
158
|
+
<h1>Conversation with ${r}</h1>
|
|
159
|
+
<div class="meta">Platform: ${a} · ${e.messageCount} messages · Exported: ${oo(n.toLocaleString())}</div>
|
|
160
|
+
${s}
|
|
161
|
+
</body>
|
|
162
|
+
</html>`}function mle(){var yd,Bl,bd,Zr,zl,xd,wd,kd,Fl,Ul,Wl,Hl,Gl,ql,I;const[e,t]=x.useState("tools"),[n,r]=x.useState(null),[a,s]=x.useState(!0),[o,l]=x.useState(null),[c,u]=x.useState(!1),[d,f]=x.useState(null),[h,p]=x.useState(!1),[g,m]=x.useState(null),[y,v]=x.useState(null),[S,w]=x.useState(""),j=Vr(),[k,b]=x.useState(""),[N,_]=x.useState(null),[T,C]=x.useState(!1),[O,P]=x.useState(null),[z,L]=x.useState(null),[M,D]=x.useState({}),[W,R]=x.useState(""),[B,A]=x.useState(""),[J,F]=x.useState(!1),[$,ie]=x.useState(null),[de,me]=x.useState(!1),[Te,Q]=x.useState({}),[X,ae]=x.useState(!1),[ce,H]=x.useState(null),[xe,we]=x.useState({}),[je,ge]=x.useState({}),[Ie,fe]=x.useState({}),[nt,Be]=x.useState(!1),[Oe,Ye]=x.useState(null),[rt,gt]=x.useState(""),[Lt,q]=x.useState(null),[Z,se]=x.useState(!1),[he,Ne]=x.useState(new Map),[$e,Dt]=x.useState(new Set),[Ae,En]=x.useState(!1),[In,ut]=x.useState([]),[qt,Rt]=x.useState(""),[Cr,Tr]=x.useState(null),[lr,cr]=x.useState(""),[Bt,qn]=x.useState([]),[Kn,Wa]=x.useState(0),[Kt,ur]=x.useState(0),[hn,Ha]=x.useState(!0),[pn,ga]=x.useState(!1),[qe,Fi]=x.useState(!1),Yr=20,Ga=x.useRef(null),dr=x.useCallback(async(E=!1)=>{if(pn)return;const U=E?0:Kt;ga(!0);try{const Y=await K.fetchGatewayConversations({offset:U,limit:Yr,q:rt||void 0});Y.ok&&Y.conversations&&(qn(te=>E?Y.conversations:[...te,...Y.conversations]),Wa(Y.total??0),ur(U+Y.conversations.length),Ha(Y.hasMore??!1))}catch{}ga(!1)},[pn,Kt,rt]);x.useEffect(()=>{e==="conversations"&&!qe&&!pn&&(Fi(!0),dr(!0))},[e,qe,pn,dr]),x.useEffect(()=>{const E=Ga.current;if(!E)return;const U=new IntersectionObserver(Y=>{var te;(te=Y[0])!=null&&te.isIntersecting&&hn&&!pn&&dr(!1)},{threshold:.1});return U.observe(E),()=>U.disconnect()},[hn,pn,dr]),x.useEffect(()=>{const E=setTimeout(()=>{e==="conversations"&&qe&&(qn([]),ur(0),Ha(!0),dr(!0))},300);return()=>clearTimeout(E)},[rt]),x.useEffect(()=>K.onTypingEvent(U=>{Ne(Y=>{const te=new Map(Y),re=`${U.platform}:${U.channelId}`;return U.typing?te.set(re,{platform:U.platform,channelId:U.channelId,startedAt:Date.now()}):te.delete(re),te})}),[]);const qa=x.useCallback((E,U)=>{U.stopPropagation(),Dt(Y=>{const te=new Set(Y);return te.has(E)?te.delete(E):te.add(E),te})},[]),Ka=x.useCallback(()=>{Dt(E=>E.size===Bt.length?new Set:new Set(Bt.map(U=>U.key)))},[Bt]),Ui=x.useCallback(async()=>{if($e.size!==0){En(!0);try{await K.exportGatewayConversations([...$e])}catch{}En(!1)}},[$e]);x.useEffect(()=>{e==="conversations"&&K.getAllConversationTags().then(E=>{E.ok&&E.tags&&ut(E.tags)})},[e]);const Ys=x.useCallback(async(E,U)=>{if(!U.trim())return;(await K.addConversationTag(E,U.trim())).ok&&(qn(te=>te.map(re=>re.key===E?{...re,tags:[...re.tags??[],U.trim().toLowerCase()]}:re)),ut(te=>te.includes(U.trim().toLowerCase())?te:[...te,U.trim().toLowerCase()].sort())),Tr(null),cr("")},[]),Va=x.useCallback(async(E,U)=>{(await K.removeConversationTag(E,U)).ok&&qn(te=>te.map(re=>re.key===E?{...re,tags:(re.tags??[]).filter(ke=>ke!==U)}:re))},[]),Wi=x.useCallback((E,U)=>{U.stopPropagation();const Y=E.contactName||E.channelId,te=[`Conversation with ${Y} (${E.platform})`,`Exported: ${new Date().toLocaleString()}`,`Messages: ${E.messageCount}`,"─".repeat(50),""];if(E.messages)for(const Je of E.messages){const pe=Je.role==="user"?Y:"Agent",He=new Date(Je.ts).toLocaleString();te.push(`[${He}] ${pe}:`),te.push(Je.content),te.push("")}const re=new Blob([te.join(`
|
|
163
|
+
`)],{type:"text/plain;charset=utf-8"}),ke=URL.createObjectURL(re),Pe=document.createElement("a");Pe.href=ke,Pe.download=`conversation-${E.platform}-${E.channelId.replace(/[^\w]/g,"_")}-${new Date().toISOString().slice(0,10)}.txt`,document.body.appendChild(Pe),Pe.click(),document.body.removeChild(Pe),URL.revokeObjectURL(ke)},[]),Hi=x.useCallback((E,U)=>{U.stopPropagation();const Y=E.contactName||E.channelId,te=E.messages??[],re=ple({displayName:Y,platform:E.platform,messageCount:E.messageCount,messages:te},hle()),ke=window.open("","_blank");ke&&(ke.document.write(re),ke.document.close(),setTimeout(()=>ke.print(),300))},[]);x.useEffect(()=>{var U;const E=(U=n==null?void 0:n.conversations)==null?void 0:U.recent;!E||E.length===0||qe&&(Kt>Yr||rt||qn(Y=>{const te=new Set(Y.map(pe=>pe.key)),re=E.map(pe=>({...pe})),ke=new Map(Y.map(pe=>[pe.key,pe]));for(const pe of re)ke.has(pe.key)&&ke.set(pe.key,pe);const Je=[...re.filter(pe=>!te.has(pe.key)),...ke.values()];return Je.sort((pe,He)=>He.lastActiveAt-pe.lastActiveAt),Je}))},[(yd=n==null?void 0:n.conversations)==null?void 0:yd.recent]);const[_n,Xs]=x.useState(""),[Ya,Gi]=x.useState([]),[ld,qi]=x.useState(!1),[Ki,fr]=x.useState(!1),[va,G]=x.useState(null),[ne,Ee]=x.useState(null),[Se,zt]=x.useState({}),[$n,Le]=x.useState([]),[Xr,Or]=x.useState([]),[Mt,Xa]=x.useState(""),Vn=E=>nt?String(E??""):vM(E),$l=E=>{const U=E.match(/^(\d+)@/);if(!U)return"";const Y=U[1];return Y.length===12&&Y.startsWith("91")?`+${Y.slice(0,2)} ${Y.slice(2,7)} ${Y.slice(7)}`:Y.length===10?`+91 ${Y.slice(0,5)} ${Y.slice(5)}`:`+${Y}`},Qs=E=>{const U=$l(E.channelId),Y=Vn(E.channelId);return E.contactName?{name:E.contactName,phone:U||Y}:{name:U||Y,phone:""}},Vi=x.useCallback(E=>{var U,Y;r(E),(U=E==null?void 0:E.channels)!=null&&U.statusRecipients&&Or(E.channels.statusRecipients),(Y=E==null?void 0:E.channels)!=null&&Y.contacts&&Le(E.channels.contacts),E||l("Could not reach the dashboard server, or the server is older than this panel. Run `buff dashboard` to start it."),s(!1)},[]),Qr=x.useCallback(async()=>{u(!0),l(null),Vi(await K.fetchHub()),u(!1)},[Vi]);x.useEffect(()=>{Qr(),K.fetchAdminAuthStatus().then(E=>{E&&(f({configured:E.configured,authenticated:E.authenticated}),p(E.authenticated),m(E.role??null),v(E.user??null))})},[Qr,j]);const Zs=((Bl=n==null?void 0:n.subagents)==null?void 0:Bl.running)??0;x.useEffect(()=>{if(Zs===0)return;const E=setInterval(()=>{K.fetchHub().then(U=>{U&&Vi(U)})},dle);return()=>clearInterval(E)},[Zs,Vi]);const Et=h&&(g==="admin"||g==="operator"),cd=x.useRef(!1);x.useEffect(()=>{Et&&!cd.current&&(cd.current=!0,Be(!0))},[Et]);const ud=async E=>{E==null||E.preventDefault();const U=_n.trim();if(!U)return;fr(!0),G(null);const Y=await K.marketplaceSearch(U);Gi(Y),qi(!0),fr(!1)},Cm=async E=>{if(!h){G({kind:"err",text:"🔐 Log in (or set up admin access) to install skills."});return}if(!Et){G({kind:"err",text:"Your role cannot install skills — admin or operator only."});return}Ee(E),G(null);const U=await K.marketplaceInstall(E);U.ok?(G({kind:"ok",text:`✅ Installed ${E} (quarantine checked) — it appears in the Skills list and loads via the skill tool next turn.`}),Qr()):G({kind:"err",text:U.quarantined?`⛔ ${U.error||"checksum mismatch — quarantined"}`:`❌ ${U.error||"Install failed."}`}),Ee(null)},Tm=async E=>{if(!h){G({kind:"err",text:"🔐 Log in (or set up admin access) to uninstall skills."});return}if(!Et){G({kind:"err",text:"Your role cannot uninstall skills — admin or operator only."});return}Ee(E),G(null);const U=await K.marketplaceUninstall(E);U.ok?(G({kind:"ok",text:`🗑️ Uninstalled ${E} — removed from .agents/skills/ and provenance.`}),Qr()):G({kind:"err",text:`❌ ${U.error||"Uninstall failed."}`}),Ee(null)},Yi=()=>{p(!1),f(E=>E&&{...E,authenticated:!1}),_("Session expired — log in again to toggle capabilities.")},dd=async E=>{E.preventDefault(),C(!0),_(null);const U=await K.adminLogin(S,k);if(U.ok){p(!0),f({configured:!0,authenticated:!0}),m(U.role??"admin"),v(U.user??null),w(""),b("");const Y=O;P(null),Y&&await Qi(Y.kind,Y.name,Y.enabled)}else _(U.error||"Login failed.");C(!1)},Om=async E=>{if(E.preventDefault(),C(!0),_(null),k.length<8){_("Password must be at least 8 characters."),C(!1);return}const U=await K.adminSetup(S,k);if(U.ok){p(!0),f({configured:!0,authenticated:!0}),m(U.role??"admin"),v(U.user??null),w(""),b("");const Y=O;P(null),Y&&await Qi(Y.kind,Y.name,Y.enabled)}else _(U.error||"Setup failed.");C(!1)},Xi=async()=>{await K.adminLogout(),p(!1),f(E=>E&&{...E,authenticated:!1}),m(null),v(null)},Qi=async(E,U,Y)=>{L(U);const te=E==="skill"?await K.setSkillEnabled(U,Y):await K.setToolsetEnabled(U,Y);te.ok?(D(re=>({...re,[U]:`✅ ${Y?"Enabled":"Disabled"} — live for new agent runs`})),Qr()):te.unauthorized?Yi():(D(re=>({...re,[U]:`❌ ${te.error||"Toggle failed"}`})),te.forbidden&&_(te.error||"Your role cannot change capabilities.")),L(null)},Pr=(E,U)=>{if(!h){P({kind:"toolset",name:E,enabled:U});return}Qi("toolset",E,U)},Zi=(E,U)=>{if(!h){P({kind:"skill",name:E,enabled:U});return}Qi("skill",E,U)},Ll=async E=>{if(E.preventDefault(),!h){ie({kind:"err",text:"🔐 Log in (or set up admin access) to send test messages."});return}if(!Et){ie({kind:"err",text:"🔒 Your role cannot send channel messages — requires the admin or operator role."});return}F(!0),ie(null);const U=await K.sendChannelMessage(W.trim(),B);U.ok?(ie({kind:"ok",text:`✅ Sent to ${W.trim()} (${U.platform}:${Vn(U.channelId??"")})`}),A("")):U.unauthorized?(Yi(),ie({kind:"err",text:U.error||"Session expired — log in again."})):ie({kind:"err",text:U.error||"Send failed."}),F(!1)},Js=(E,U)=>{var te,re;return(((re=(te=n==null?void 0:n.channels)==null?void 0:te.policies)==null?void 0:re[E])??{})[U]??[]},fd=E=>E==="user"?"allowedUsers":E==="group"?"allowedGroups":"outboundSenders",It=(E,U,Y)=>{const te=Y.trim();te&&Q(re=>{var He;const ke={...re[E]??{}},Pe=fd(U),pe=[...((He=re[E])==null?void 0:He[Pe])??Js(E,Pe)];return pe.includes(te)||pe.push(te),ke[Pe]=pe,{...re,[E]:ke}})},Dl=(E,U,Y)=>{Q(te=>{var He;const re=fd(U),ke=Js(E,re),Je=(((He=te[E])==null?void 0:He[re])??ke).filter(be=>be!==Y);if(Je.length===0&&ke.length===0){const be={...te[E]??{}};delete be[re];const Ue={...te};return Object.keys(be).length===0?delete Ue[E]:Ue[E]=be,Ue}const pe={...te[E]??{}};return pe[re]=Je,{...te,[E]:pe}})},hd=(E,U)=>{const Y=E.trim().toLowerCase(),te=U.trim().toLowerCase();if(Y==="*"||te==="*"||Y===te)return!0;const re=Y.replace(/\D+/g,""),ke=te.replace(/\D+/g,"");return re.length>0&&re===ke},Pm=E=>{const U=(Se[E]??"").trim(),Y=(xe[E]??"").trim();Y&&(It(E,"user",Y),U&&Le(te=>[...te.filter(ke=>!(ke.platform===E&&(hd(ke.id,Y)||ke.name.toLowerCase()===U.toLowerCase()))),{name:U,platform:E,id:Y,addedAt:Date.now()}]),we(te=>({...te,[E]:""})),zt(te=>({...te,[E]:""})))},pd=(E,U)=>{Dl(E,"user",U),Le(Y=>Y.filter(te=>!(te.platform===E&&hd(te.id,U))))},Ji=(E,U)=>{Q(Y=>{const te={...Y[E]??{}};return U==="silentDrop"?te.silentDrop=te.silentDrop===!1:te[U]?delete te[U]:te[U]=!0,{...Y,[E]:te}})},md=Object.keys(Te).length>0||$n.length!==(((Zr=(bd=n==null?void 0:n.channels)==null?void 0:bd.contacts)==null?void 0:Zr.length)??0)||$n.some((E,U)=>{var Y,te;return!((te=(Y=n==null?void 0:n.channels)==null?void 0:Y.contacts)!=null&&te[U])||E.platform!==n.channels.contacts[U].platform||E.id!==n.channels.contacts[U].id||E.name!==n.channels.contacts[U].name})||Xr.length!==(((xd=(zl=n==null?void 0:n.channels)==null?void 0:zl.statusRecipients)==null?void 0:xd.length)??0)||Xr.some((E,U)=>{var Y,te;return E!==((te=(Y=n==null?void 0:n.channels)==null?void 0:Y.statusRecipients)==null?void 0:te[U])}),gd=async()=>{var U;if(!h){H({kind:"err",text:"🔐 Log in (or set up admin access) to change permissions."});return}if(!Et){H({kind:"err",text:"🔒 Your role cannot change permissions — requires the admin or operator role."});return}ae(!0),H(null);const E=await K.saveGatewayPolicies(Te,Xr,$n);if(E.ok){const Y=(U=E.contactErrors)!=null&&U.length?`
|
|
164
|
+
⚠️ Some contacts were rejected: ${E.contactErrors.join("; ")}`:"";H({kind:Y?"warn":"ok",text:`✅ Permissions + saved contacts + status recipients saved — the running gateway applies them immediately.${Y}`}),Q({}),Qr()}else E.unauthorized?(Yi(),H({kind:"err",text:E.error||"Session expired — log in again."})):H({kind:"err",text:E.error||"Failed to save permissions."});ae(!1)};if(a)return i.jsxs("div",{className:"admin-header",children:[i.jsx(Re,{icon:"🧰",title:"Agent Hub"}),i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{children:"Loading hub…"})]})]});const vd=!h&&O!==null;return i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"admin-header",children:[i.jsx(Re,{icon:"🧰",title:i.jsxs(i.Fragment,{children:["Agent Hub",y?i.jsxs("span",{className:`admin-role-badge admin-role-${g||"viewer"}`,children:[" ",y," · ",g||"viewer"]}):null]})}),i.jsxs("div",{className:"admin-header-actions",children:[i.jsxs("label",{className:"hub-reveal-toggle",children:[i.jsx("input",{type:"checkbox",checked:nt,onChange:E=>Be(E.target.checked),disabled:!Et}),"Show full ids"]}),Et?null:i.jsx("span",{className:"admin-hint",children:"🔒 admins/operators only"}),i.jsx("button",{className:"admin-refresh-btn",onClick:()=>void Qr(),disabled:c,children:c?"⏳ Refreshing…":"🔄 Refresh"}),h?i.jsx("button",{className:"admin-logout-btn",onClick:()=>void Xi(),children:"🚪 Log out"}):null]})]}),i.jsxs("p",{className:"admin-subtitle",children:["Capabilities, messaging, artifacts and skills in one place — a single 4-view management page. Toggles persist to ",i.jsx("code",{children:"buffconfig"})," and are honored by the runtime immediately (never cosmetic)."]}),o?i.jsx("div",{className:"admin-error",children:o}):null,vd?i.jsxs("div",{className:"admin-header",children:[i.jsx("h2",{className:"section-subtitle",children:d!=null&&d.configured?`🔐 Log in to ${O.enabled?"enable":"disable"} '${O.name}'`:`🔐 Set up admin access to ${O.enabled?"enable":"disable"} '${O.name}'`}),i.jsxs("form",{className:"admin-gate-form",onSubmit:d!=null&&d.configured?dd:Om,children:[i.jsxs("label",{children:[i.jsx("span",{children:"Username"}),i.jsx("input",{type:"text",value:S,onChange:E=>w(E.target.value),autoComplete:"username",placeholder:"admin"})]}),i.jsxs("label",{children:[i.jsx("span",{children:"Password"}),i.jsx("input",{type:"password",value:k,onChange:E=>b(E.target.value),autoComplete:d!=null&&d.configured?"current-password":"new-password",placeholder:"••••••••"})]}),N?i.jsx("div",{className:"admin-error",children:N}):null,i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:T||!S||!k,children:T?"⏳ …":d!=null&&d.configured?"🔐 Log in & apply":"🔐 Create admin & apply"}),d!=null&&d.configured?null:i.jsxs("p",{className:"admin-hint",children:["The first user is always an admin. Automation alternative: set"," ",i.jsx("code",{children:"BUFF_DASHBOARD_ADMIN_USER"})," / ",i.jsx("code",{children:"BUFF_DASHBOARD_ADMIN_PASSWORD"}),"."]})]})]}):null,!vd&&!Et&&h?i.jsxs("div",{className:"admin-readonly-note",children:["🔒 Your role (",i.jsx("code",{children:g||"viewer"}),") can view but not change capabilities — toggles require the ",i.jsx("code",{children:"admin"})," or ",i.jsx("code",{children:"operator"})," role."]}):null,i.jsx("div",{className:"hub-tabs",role:"tablist",children:cle.map(E=>{var Y,te,re;const U=E.id==="tools"?n?`${n.toolsets.enabled}/${n.toolsets.toolsets.length}`:"":E.id==="channels"?n?String(n.channels.delivery.total):"":E.id==="conversations"?n?String(((Y=n.conversations)==null?void 0:Y.total)??0):"":E.id==="artifacts"?n?String(n.artifacts.totalSessions):"":E.id==="subagents"?n?`${((te=n.subagents)==null?void 0:te.running)??0}/${((re=n.subagents)==null?void 0:re.total)??0}`:"":n?`${n.skills.enabled}/${n.skills.total}`:"";return i.jsxs("button",{role:"tab","aria-selected":e===E.id,className:`hub-tab${e===E.id?" active":""}`,onClick:()=>t(E.id),children:[E.icon," ",E.label,U?i.jsx("span",{className:"hub-tab-count",children:U}):null]},E.id)})}),e==="tools"&&n?i.jsxs("div",{role:"tabpanel",children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.toolsets.enabled}),i.jsx("div",{className:"admin-summary-label",children:"Enabled toolsets"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.toolsets.disabled}),i.jsx("div",{className:"admin-summary-label",children:"Disabled toolsets"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.toolsets.totalTools}),i.jsx("div",{className:"admin-summary-label",children:"Registered tools"})]})]}),i.jsx("div",{className:"hub-toolset-grid",children:n.toolsets.toolsets.map(E=>i.jsxs("div",{className:`hub-card${E.enabled?"":" hub-card-disabled"}`,children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("div",{className:"hub-card-title",children:[i.jsx("span",{className:"hub-card-name",children:E.label}),i.jsx("span",{className:"hub-card-id",children:E.name})]}),i.jsx("button",{role:"switch","aria-checked":E.enabled,"aria-label":`${E.enabled?"Disable":"Enable"} ${E.label}`,className:`hub-switch${E.enabled?" on":""}`,disabled:z===E.name||O!==null||h&&!Et,onClick:()=>Pr(E.name,!E.enabled),children:i.jsx("span",{className:"hub-switch-knob"})})]}),i.jsx("p",{className:"hub-card-desc",children:E.description}),i.jsx("div",{className:"hub-card-tools",children:E.tools.length>0?E.tools.map(U=>i.jsx("span",{className:"hub-chip",children:U},U)):i.jsx("span",{className:"admin-hint",children:"gates dynamic MCP tools (no static names)"})}),M[E.name]?i.jsx("div",{className:"admin-row-msg",children:M[E.name]}):null,E.enabled?null:i.jsx("div",{className:"hub-card-note",children:"⛔ Removed from the model schema — calls return an explicit error"})]},E.name))})]}):null,e==="channels"&&n?i.jsxs("div",{role:"tabpanel",children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.channels.delivery.pending}),i.jsx("div",{className:"admin-summary-label",children:"⏳ Queued for retry"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.channels.delivery.sent}),i.jsx("div",{className:"admin-summary-label",children:"✅ Delivered"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.channels.delivery.failed}),i.jsx("div",{className:"admin-summary-label",children:"❌ Failed (max retries)"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.channels.aliases.length}),i.jsx("div",{className:"admin-summary-label",children:"Channel aliases"})]})]}),i.jsx("h2",{className:"section-subtitle",children:"📮 Delivery ledger (guaranteed delivery)"}),n.channels.delivery.recent.length>0?i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Target"}),i.jsx("th",{children:"Platform"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Attempts"}),i.jsx("th",{children:"Next retry"}),i.jsx("th",{children:"Message"})]})}),i.jsx("tbody",{children:n.channels.delivery.recent.map(E=>i.jsxs("tr",{children:[i.jsx("td",{className:"admin-provider-type",children:Vn(E.target)}),i.jsx("td",{children:E.platform}),i.jsx("td",{children:i.jsx("span",{className:`admin-check-badge admin-check-${E.status==="sent"?"pass":E.status==="failed"?"fail":"warn"}`,children:ule[E.status]||E.status})}),i.jsxs("td",{children:[E.attempts,"/5"]}),i.jsx("td",{children:E.status==="pending"?`${Math.max(0,Math.round((E.nextAttemptAt-Date.now())/1e3))}s`:"—"}),i.jsx("td",{className:"admin-hint",children:E.lastError?`⚠️ ${E.lastError}`:(E.text||"").slice(0,60)})]},E.id))})]})}):i.jsx("div",{className:"empty-state",children:"Delivery ledger is empty — every gateway send has gone through."}),i.jsx("h2",{className:"section-subtitle",children:"📥 Inbox (received messages)"}),n.channels.inbox.recent.length>0?i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Platform"}),i.jsx("th",{children:"From"}),i.jsx("th",{children:"Message"}),i.jsx("th",{children:"Handled"}),i.jsx("th",{children:"When"})]})}),i.jsx("tbody",{children:n.channels.inbox.recent.map(E=>i.jsxs("tr",{children:[i.jsxs("td",{className:"admin-provider-type",children:[E.platform,E.isGroup?i.jsx("span",{className:"hub-chip",children:"group"}):null]}),i.jsx("td",{children:Vn(E.from||E.senderId||E.channelId)}),i.jsx("td",{className:"admin-hint",children:(E.text||"").slice(0,60)}),i.jsxs("td",{children:[i.jsx("span",{className:`admin-check-badge admin-check-${E.handled==="pipeline"?"pass":E.handled==="refused"?"fail":"warn"}`,children:E.handled}),E.reply?i.jsx("div",{className:"admin-hint",children:E.reply.slice(0,E.handled==="attachment_failed"?160:40)}):null]}),i.jsx("td",{className:"admin-hint",children:new Date(E.at).toLocaleString()})]},E.id))})]})}):i.jsx("div",{className:"empty-state",children:"Inbox is empty — messages the gateway receives will appear here."}),i.jsxs("p",{className:"admin-hint",children:[n.channels.inbox.total," received · ",n.channels.inbox.pipeline," triggered the pipeline ·"," ",n.channels.inbox.help," got the help line · ",n.channels.inbox.refused," refused by policy ·"," ",n.channels.inbox.duplicate??0," duplicate re-deliveries ignored ·"," ",n.channels.inbox.attachmentFailed??0," attachment(s) could not be read."]}),i.jsx("h2",{className:"section-subtitle",children:"🔌 Platform transports"}),i.jsx(ole,{canWrite:Et,sessionExpired:Yi,mode:"table"}),i.jsx("h2",{className:"section-subtitle",children:"🔗 Channel aliases (buff gateway status)"}),n.channels.aliases.length>0?i.jsx("div",{className:"hub-alias-list",children:n.channels.aliases.map(E=>i.jsxs("div",{className:"hub-alias-row",children:[i.jsx("span",{className:"hub-chip",children:E.alias}),i.jsxs("span",{className:"admin-hint",children:["→ ",E.platform,":",Vn(E.channelId)]})]},E.alias))}):i.jsxs("div",{className:"empty-state",children:["No aliases yet — register one with ",i.jsx("code",{children:"buff gateway alias <name> <platform> <channelId>"}),"."]}),md?i.jsxs("div",{className:"hub-unsaved-banner",role:"status",children:[i.jsxs("span",{children:["⚠️ ",i.jsx("strong",{children:"Unsaved changes"})," — what you see below is a ",i.jsx("em",{children:"draft"}),". Press"," ",i.jsx("strong",{children:"💾 Save permissions"})," to apply it to the gateway; leaving the page discards it."]}),i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:X,onClick:()=>void gd(),children:X?"⏳ Saving…":"💾 Save permissions"})]}):null,i.jsx("div",{style:{cursor:"pointer",userSelect:"none",display:"flex",alignItems:"center",gap:8,marginBottom:8},onClick:()=>me(!de),children:i.jsxs("h2",{className:"section-subtitle",style:{margin:0},children:[de?"▼":"▶"," 🔐 Permissions — who can TRIGGER the agent"]})}),i.jsxs("p",{className:"admin-hint",style:{marginBottom:de?10:0},children:["This list controls ",i.jsx("strong",{children:"who may trigger the agent"})," when they message you on each platform (WhatsApp, Telegram, email, …). Click to ",de?"collapse":"expand"," and manage permissions."]}),de?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"admin-hint",style:{marginBottom:10},children:["⚠ ",i.jsx("strong",{children:"Not the same as send-by-name contacts:"})," a WhatsApp contact name (from"," ",i.jsx("code",{children:"buff whatsapp contact add"}),", shown in the WhatsApp bridge panel below) only lets"," ",i.jsx("em",{children:"you"})," send ",i.jsx("em",{children:"to"})," it by name — it does ",i.jsx("strong",{children:"not"})," let that number trigger the agent. Add the number here (or ",i.jsx("code",{children:"buff config gateway allow <platform> user <id>"}),") to grant inbound access."]}),i.jsx("div",{className:"hub-permissions",children:n.channels.platforms.map(E=>{const U={...n.channels.policies[E.platform]??{},...Te[E.platform]??{}},Y=U.allowedUsers??[],te=U.allowedGroups??[];return i.jsxs("div",{className:"hub-card",children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsx("span",{className:"hub-chip",children:E.label}),i.jsx("span",{className:"hub-card-id",children:E.platform}),U.disabled?i.jsx("span",{className:"hub-chip",children:"disabled"}):null]}),i.jsx("div",{className:"admin-hint",style:{margin:"4px 0 8px"},children:"Allowed users — who may trigger the agent"}),i.jsxs("div",{className:"hub-alias-list",children:[Y.length===0?i.jsxs("span",{className:"admin-hint",children:["(blank — no one may trigger; add ",i.jsx("code",{children:"Allow-All"})," to allow everyone)"]}):null,Y.map(re=>{var Pe,Je,pe,He;const ke=(((Pe=Te[E.platform])==null?void 0:Pe.allowedUsers)??[]).includes(re)&&!(((He=(pe=(Je=n==null?void 0:n.channels)==null?void 0:Je.policies)==null?void 0:pe[E.platform])==null?void 0:He.allowedUsers)??[]).includes(re);return i.jsxs("div",{className:"hub-alias-row",children:[i.jsxs("span",{className:`hub-chip${ke?" hub-chip-pending":""}`,title:ke?"Not saved yet — press 💾 Save permissions":void 0,children:[Vn(re),ke?" · unsaved":""]}),i.jsx("button",{className:"admin-refresh-btn",disabled:X,onClick:()=>pd(E.platform,re),children:"✕"})]},`u-${re}`)})]}),i.jsxs("div",{className:"hub-send-form",style:{margin:"6px 0 10px"},children:[i.jsx("input",{type:"text",value:Se[E.platform]??"",onChange:re=>zt(ke=>({...ke,[E.platform]:re.target.value})),placeholder:"Name (optional)",disabled:X}),i.jsx("input",{type:"text",value:xe[E.platform]??"",onChange:re=>we(ke=>({...ke,[E.platform]:re.target.value})),placeholder:"Contact no / sender id, or Allow-All",disabled:X}),i.jsx("button",{className:"admin-refresh-btn",disabled:X||!(xe[E.platform]??"").trim(),onClick:()=>Pm(E.platform),children:"+ User"})]}),i.jsx("div",{className:"admin-hint",style:{margin:"4px 0 8px"},children:"Allowed groups"}),i.jsxs("div",{className:"hub-alias-list",children:[te.length===0?i.jsx("span",{className:"admin-hint",children:"(none — any group may trigger)"}):null,te.map(re=>{var Pe,Je,pe,He;const ke=(((Pe=Te[E.platform])==null?void 0:Pe.allowedGroups)??[]).includes(re)&&!(((He=(pe=(Je=n==null?void 0:n.channels)==null?void 0:Je.policies)==null?void 0:pe[E.platform])==null?void 0:He.allowedGroups)??[]).includes(re);return i.jsxs("div",{className:"hub-alias-row",children:[i.jsxs("span",{className:`hub-chip${ke?" hub-chip-pending":""}`,title:ke?"Not saved yet — press 💾 Save permissions":void 0,children:[re,ke?" · unsaved":""]}),i.jsx("button",{className:"admin-refresh-btn",disabled:X,onClick:()=>Dl(E.platform,"group",re),children:"✕"})]},`g-${re}`)})]}),i.jsxs("div",{className:"hub-send-form",style:{margin:"6px 0 10px"},children:[i.jsx("input",{type:"text",value:je[E.platform]??"",onChange:re=>ge(ke=>({...ke,[E.platform]:re.target.value})),placeholder:"group id, e.g. 1203630283471234@g.us",disabled:X}),i.jsx("button",{className:"admin-refresh-btn",disabled:X||!(je[E.platform]??"").trim(),onClick:()=>{It(E.platform,"group",je[E.platform]??""),ge(re=>({...re,[E.platform]:""}))},children:"+ Group"})]}),i.jsx("div",{className:"admin-hint",style:{margin:"12px 0 4px"},children:"Send authority — who may tell the agent to send to OTHER people"}),i.jsx("div",{className:"admin-hint",style:{margin:"0 0 6px",opacity:.8},children:(U.outboundSenders??[]).length===0?"Open — anyone above who can trigger the agent can also direct outbound sends. Add senders to restrict it.":"Restricted to the senders below (Allow-All = everyone)."}),i.jsx("div",{className:"hub-alias-list",children:(U.outboundSenders??[]).map(re=>{var Pe,Je,pe,He;const ke=(((Pe=Te[E.platform])==null?void 0:Pe.outboundSenders)??[]).includes(re)&&!(((He=(pe=(Je=n==null?void 0:n.channels)==null?void 0:Je.policies)==null?void 0:pe[E.platform])==null?void 0:He.outboundSenders)??[]).includes(re);return i.jsxs("div",{className:"hub-alias-row",children:[i.jsxs("span",{className:`hub-chip${ke?" hub-chip-pending":""}`,title:ke?"Not saved yet — press 💾 Save permissions":void 0,children:[Vn(re),ke?" · unsaved":""]}),i.jsx("button",{className:"admin-refresh-btn",disabled:X,onClick:()=>Dl(E.platform,"send",re),children:"✕"})]},`s-${re}`)})}),i.jsxs("div",{className:"hub-send-form",style:{margin:"6px 0 10px"},children:[i.jsx("input",{type:"text",value:Ie[E.platform]??"",onChange:re=>fe(ke=>({...ke,[E.platform]:re.target.value})),placeholder:"sender id, or Allow-All",disabled:X}),i.jsx("button",{className:"admin-refresh-btn",disabled:X||!(Ie[E.platform]??"").trim(),onClick:()=>{It(E.platform,"send",Ie[E.platform]??""),fe(re=>({...re,[E.platform]:""}))},children:"+ Sender"})]}),i.jsxs("div",{className:"hub-send-form",style:{margin:"6px 0 0"},children:[i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6,marginRight:12},children:[i.jsx("input",{type:"checkbox",checked:U.silentDrop!==!1,disabled:X,onChange:()=>Ji(E.platform,"silentDrop")}),i.jsx("span",{className:"admin-hint",children:"Silent (no reply to unapproved) — default"})]}),i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6,marginRight:12},children:[i.jsx("input",{type:"checkbox",checked:!!U.requireMention,disabled:X,onChange:()=>Ji(E.platform,"requireMention")}),i.jsx("span",{className:"admin-hint",children:"Groups: mention only"})]}),i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6,marginRight:12},children:[i.jsx("input",{type:"checkbox",checked:!!U.disabled,disabled:X,onChange:()=>Ji(E.platform,"disabled")}),i.jsx("span",{className:"admin-hint",children:"Disabled (off)"})]}),i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6},children:[i.jsx("input",{type:"checkbox",checked:!!U.requireApprovedTarget,disabled:X,onChange:()=>Ji(E.platform,"requireApprovedTarget")}),i.jsx("span",{className:"admin-hint",children:"Require approved recipients for sends"})]})]})]},E.platform)})})]}):null,i.jsx("h2",{className:"section-subtitle",style:{marginTop:22},children:"📇 Telegram User Onboarding"}),i.jsxs("div",{className:"onboarding-summary",children:[i.jsx("p",{className:"admin-hint",style:{marginBottom:12},children:"Users who message your bot are auto-registered here. Approve them to enable outbound messaging."}),(()=>{const E=$n.filter(te=>te.status==="pending").length,U=$n.filter(te=>te.status==="approved").length,Y=$n.filter(te=>te.status==="rejected").length;return i.jsxs("div",{className:"onboarding-stats",children:[i.jsxs("span",{className:"onboarding-stat pending",children:["⏳ ",E," pending"]}),i.jsxs("span",{className:"onboarding-stat approved",children:["✅ ",U," approved"]}),i.jsxs("span",{className:"onboarding-stat rejected",children:["🚫 ",Y," rejected"]})]})})(),i.jsxs("div",{className:"onboarding-steps",children:[i.jsxs("div",{className:"onboarding-step",children:[i.jsx("span",{className:"onboarding-step-num",children:"1"}),i.jsxs("span",{children:["User sends any message to ",i.jsx("code",{children:"@agent_nuvira_bot"})]})]}),i.jsxs("div",{className:"onboarding-step",children:[i.jsx("span",{className:"onboarding-step-num",children:"2"}),i.jsxs("span",{children:["Bot auto-registers them as ",i.jsx("strong",{children:"⏳ pending"})]})]}),i.jsxs("div",{className:"onboarding-step",children:[i.jsx("span",{className:"onboarding-step-num",children:"3"}),i.jsx("span",{children:"Admin approves → they can receive outbound messages"})]})]}),i.jsx("a",{href:"/contacts",className:"admin-refresh-btn",style:{marginTop:12,display:"inline-block",textDecoration:"none"},children:"📋 Go to Contacts tab to manage →"})]}),i.jsx("h2",{className:"section-subtitle",style:{marginTop:22},children:"📊 Status recipients"}),i.jsxs("p",{className:"admin-hint",children:["Contacts/groups that ALWAYS receive the pipeline completion summary, whoever triggered it. Use a contact name, number, or ",i.jsx("code",{children:"platform:channelId"})," — e.g."," ",i.jsx("code",{children:"whatsapp:Name"}),", ",i.jsx("code",{children:"whatsapp:+91***"}),", ",i.jsx("code",{children:"telegram:123456"}),","," ",i.jsx("code",{children:"slack:ops"}),"."]}),Xr.length>0?i.jsx("div",{className:"hub-alias-list",children:Xr.map(E=>{var U,Y;return i.jsxs("div",{className:"hub-alias-row",children:[i.jsx("span",{className:"hub-chip",children:"📊"}),i.jsx("span",{className:"admin-hint",children:((Y=(U=n==null?void 0:n.channels)==null?void 0:U.statusRecipientDisplay)==null?void 0:Y[E])??E}),i.jsx("button",{className:"admin-refresh-btn",disabled:X,onClick:()=>Or(te=>te.filter(re=>re!==E)),children:"✕"})]},E)})}):i.jsx("div",{className:"empty-state",style:{padding:"14px"},children:"No status recipients — add one below."}),i.jsxs("div",{className:"hub-send-form",children:[i.jsx("input",{type:"text",value:Mt,onChange:E=>Xa(E.target.value),placeholder:"whatsapp:Name or whatsapp:+91***",disabled:X,maxLength:128}),i.jsx("button",{className:"admin-refresh-btn",disabled:X||!Mt.trim()||Xr.includes(Mt.trim()),onClick:()=>{Or(E=>[...E,Mt.trim()]),Xa("")},children:"+ Add"})]}),i.jsxs("div",{className:"hub-send-form",style:{marginTop:10},children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:X,onClick:()=>void gd(),children:X?"⏳ Saving…":"💾 Save permissions"}),Object.keys(Te).length>0?i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:X,onClick:()=>Q({}),children:"Discard draft"}):null]}),ce?i.jsx("div",{className:`admin-row-msg${ce.kind==="err"?" admin-row-msg-err":""}`,children:ce.text}):null,i.jsx("h2",{className:"section-subtitle",children:"📤 Test a channel (buff gateway send)"}),i.jsxs("form",{className:"hub-send-form",onSubmit:E=>void Ll(E),children:[i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:"Target — an alias or platform:channelId"}),i.jsx("input",{type:"text",value:W,onChange:E=>R(E.target.value),placeholder:"ops or slack:C0123 or email:team@example.com",disabled:J,maxLength:128})]}),i.jsxs("label",{className:"hub-send-message",children:[i.jsx("span",{className:"admin-hint",children:"Message"}),i.jsx("input",{type:"text",value:B,onChange:E=>A(E.target.value),placeholder:"nightly build done 🎉",disabled:J,maxLength:4e3})]}),i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:J||!W.trim()||!B,children:J?"⏳ Sending…":"📤 Send test message"})]}),$?i.jsx("div",{className:`admin-row-msg${$.kind==="ok"?"":" admin-row-msg-err"}`,children:$.text}):null,i.jsxs("p",{className:"admin-hint",children:["Sends through the same gateway the CLI uses — the dashboard process must have the platform's env token set (e.g. ",i.jsx("code",{children:"BUFF_SMTP_HOST"}),"). Requires admin or operator."]}),i.jsx("h2",{className:"section-subtitle",children:"🟢 WhatsApp bridge (buff whatsapp pair)"}),i.jsx(sle,{authed:h,canWrite:Et,sessionExpired:Yi,reveal:nt})]}):null,e==="conversations"&&n?i.jsxs("div",{role:"tabpanel",children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:((wd=n.conversations)==null?void 0:wd.total)??0}),i.jsx("div",{className:"admin-summary-label",children:"Stored conversations"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:Bt.filter(E=>Date.now()-E.lastActiveAt<864e5).length}),i.jsx("div",{className:"admin-summary-label",children:"Active today"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:Bt.filter(E=>E.platform==="whatsapp").length}),i.jsx("div",{className:"admin-summary-label",children:"WhatsApp"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:Bt.filter(E=>E.platform==="telegram").length}),i.jsx("div",{className:"admin-summary-label",children:"Telegram"})]})]}),((kd=n.conversations)==null?void 0:kd.analytics)&&n.conversations.analytics.totalConversations>0&&i.jsxs(i.Fragment,{children:[i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>se(!Z),style:{marginBottom:12},children:Z?"📊 Hide Analytics":"📊 Show Analytics"}),Z?i.jsxs("div",{className:"hub-session-list",style:{marginBottom:16},children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.conversations.analytics.totalMessages}),i.jsx("div",{className:"admin-summary-label",children:"Total messages"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.conversations.analytics.avgMessagesPerConversation}),i.jsx("div",{className:"admin-summary-label",children:"Avg msgs/conversation"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.conversations.analytics.avgUserMessageLength}),i.jsx("div",{className:"admin-summary-label",children:"Avg user msg length"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.conversations.analytics.avgAssistantMessageLength}),i.jsx("div",{className:"admin-summary-label",children:"Avg assistant msg length"})]})]}),i.jsxs("div",{className:"hub-card",style:{marginTop:12},children:[i.jsx("div",{className:"hub-card-top",children:i.jsx("div",{className:"hub-card-title",children:i.jsx("span",{className:"hub-card-name",children:"🏆 Most Active Contacts"})})}),i.jsx("div",{style:{marginTop:8},children:n.conversations.analytics.topContacts.map((E,U)=>{var re;const Y=((re=n.conversations.analytics.topContacts[0])==null?void 0:re.messageCount)||1,te=Math.round(E.messageCount/Y*100);return i.jsxs("div",{style:{display:"flex",alignItems:"center",marginBottom:6,fontSize:13},children:[i.jsx("span",{style:{width:24,textAlign:"center",fontWeight:600,color:U<3?"var(--accent-yellow)":"var(--muted)"},children:U===0?"🥇":U===1?"🥈":U===2?"🥉":`${U+1}.`}),i.jsxs("span",{style:{flex:1,marginLeft:8},children:[E.platform==="whatsapp"?"📱":"✈️"," ",E.name]}),i.jsx("span",{style:{width:60,textAlign:"right",fontWeight:600},children:E.messageCount}),i.jsx("div",{style:{width:100,height:8,background:"var(--border)",borderRadius:4,marginLeft:8},children:i.jsx("div",{style:{width:`${te}%`,height:"100%",background:"var(--accent-blue)",borderRadius:4}})})]},U)})})]}),i.jsxs("div",{className:"hub-card",style:{marginTop:12},children:[i.jsx("div",{className:"hub-card-top",children:i.jsx("div",{className:"hub-card-title",children:i.jsx("span",{className:"hub-card-name",children:"🕐 Peak Hours"})})}),i.jsx("div",{style:{display:"flex",alignItems:"flex-end",height:80,marginTop:8,gap:2},children:n.conversations.analytics.hourlyDistribution.map(({hour:E,count:U})=>{const Y=Math.max(...n.conversations.analytics.hourlyDistribution.map(re=>re.count),1),te=Math.round(U/Y*70);return i.jsx("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"center"},children:i.jsx("div",{style:{width:"100%",height:te,background:E>=9&&E<=21?"var(--accent-blue)":"var(--text-muted)",borderRadius:2},title:`${E}:00 — ${U} messages`})},E)})}),i.jsx("div",{style:{display:"flex",fontSize:10,color:"var(--muted)",marginTop:4},children:[0,6,12,18,23].map(E=>i.jsxs("span",{style:{flex:1,textAlign:E===0?"left":E===23?"right":"center"},children:[E,":00"]},E))})]}),i.jsxs("div",{className:"hub-card",style:{marginTop:12},children:[i.jsx("div",{className:"hub-card-top",children:i.jsx("div",{className:"hub-card-title",children:i.jsx("span",{className:"hub-card-name",children:"📱 Platform Breakdown"})})}),i.jsx("div",{style:{marginTop:8},children:n.conversations.analytics.platformBreakdown.map(E=>i.jsxs("div",{style:{display:"flex",alignItems:"center",marginBottom:6,fontSize:13},children:[i.jsx("span",{className:"hub-chip",style:{width:80,textAlign:"center"},children:E.platform}),i.jsxs("span",{style:{marginLeft:8,flex:1},children:[E.conversations," conversations"]}),i.jsxs("span",{style:{fontWeight:600},children:[E.messages," msgs"]})]},E.platform))})]}),i.jsxs("div",{className:"hub-card",style:{marginTop:12},children:[i.jsx("div",{className:"hub-card-top",children:i.jsx("div",{className:"hub-card-title",children:i.jsx("span",{className:"hub-card-name",children:"📈 Daily Volume (14 days)"})})}),i.jsx("div",{style:{display:"flex",alignItems:"flex-end",height:60,marginTop:8,gap:2},children:n.conversations.analytics.dailyVolume.map(({date:E,count:U})=>{const Y=Math.max(...n.conversations.analytics.dailyVolume.map(re=>re.count),1),te=Math.round(U/Y*50);return i.jsx("div",{style:{flex:1,display:"flex",flexDirection:"column",alignItems:"center"},children:i.jsx("div",{style:{width:"100%",height:te,background:"var(--accent-green)",borderRadius:2},title:`${E}: ${U} messages`})},E)})}),i.jsxs("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"var(--muted)",marginTop:4},children:[i.jsx("span",{children:(Fl=n.conversations.analytics.dailyVolume[0])==null?void 0:Fl.date}),i.jsx("span",{children:(Ul=n.conversations.analytics.dailyVolume[n.conversations.analytics.dailyVolume.length-1])==null?void 0:Ul.date})]})]})]}):null]}),i.jsx("h2",{className:"section-subtitle",children:"💬 Per-contact chat history"}),i.jsx("p",{className:"admin-hint",children:"Conversation history is stored per-contact and survives gateway restarts. Messages older than 7 days are auto-pruned. Click a conversation to expand the full chat thread."}),Bt.length>0||pn?i.jsxs(i.Fragment,{children:[In.length>0&&i.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:4,marginBottom:8},children:[i.jsx("span",{className:"admin-hint",style:{marginRight:4},children:"Filter by tag:"}),In.map(E=>i.jsxs("button",{type:"button",onClick:()=>Rt(qt===E?"":E),style:{padding:"2px 10px",borderRadius:12,fontSize:11,cursor:"pointer",border:`1px solid ${qt===E?"var(--accent-blue)":"var(--border)"}`,background:qt===E?"color-mix(in srgb, var(--accent-blue) 13%, transparent)":"transparent",color:qt===E?"var(--accent-blue)":"var(--muted)"},children:["🏷️ ",E]},E))]}),i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8,marginBottom:12,flexWrap:"wrap"},children:[i.jsx("input",{type:"text",value:rt,onChange:E=>gt(E.target.value),placeholder:"🔍 Search by contact name, phone number, or message content…",style:{flex:1,minWidth:200}}),i.jsxs("span",{className:"admin-hint",children:[Kn," conversation",Kn===1?"":"s",rt?` matching "${rt}"`:""]}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:Ka,style:{fontSize:12,padding:"4px 10px"},children:$e.size===Bt.length?"☑ Deselect All":"☐ Select All"}),$e.size>0&&i.jsx("button",{type:"button",className:"admin-refresh-btn",disabled:Ae,onClick:()=>void Ui(),style:{fontSize:12,padding:"4px 10px",background:"var(--accent-blue)",color:"var(--text-on-accent)",border:"none"},children:Ae?"⏳ Exporting…":`📦 Export ${$e.size} as ZIP`})]}),i.jsxs("div",{className:"hub-session-list",children:[Bt.filter(E=>!qt||(E.tags??[]).includes(qt)).map(E=>{const U=Date.now()-E.lastActiveAt,Y=U<6e4?"just now":U<36e5?`${Math.round(U/6e4)}m ago`:U<864e5?`${Math.round(U/36e5)}h ago`:`${Math.round(U/864e5)}d ago`,te=Oe===E.key,{name:re,phone:ke}=Qs(E),Pe=async pe=>{if(pe.stopPropagation(),!h||!Et){H({kind:"err",text:"🔐 Log in (admin/operator) to clear conversations."});return}q(E.key);try{await K.clearGatewayConversation(E.key),Qr()}catch{}q(null)},Je=$e.has(E.key);return i.jsxs("div",{className:"hub-card",style:{cursor:"pointer",borderLeft:`3px solid ${E.platform==="whatsapp"?"#25d366":E.platform==="telegram"?"#0088cc":"var(--text-muted)"}`,opacity:$e.size>0&&!Je?.5:1,transition:"opacity 0.2s"},onClick:()=>Ye(te?null:E.key),children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:8},children:[i.jsx("input",{type:"checkbox",checked:Je,onClick:pe=>qa(E.key,pe),onChange:()=>{},style:{cursor:"pointer",width:16,height:16}}),i.jsxs("div",{className:"hub-card-title",children:[i.jsxs("span",{className:"hub-card-name",children:[E.platform==="whatsapp"?"📱":E.platform==="telegram"?"✈️":"💬"," ",re]}),i.jsxs("span",{className:"hub-card-id",children:[ke&&i.jsx("span",{style:{color:"var(--text-secondary, var(--text-secondary))",marginRight:6},children:ke}),E.platform," · ",Y]})]})]}),i.jsxs("div",{className:"hub-card-actions",style:{gap:6},children:[i.jsxs("span",{className:"hub-chip",children:[E.messageCount," msgs"]}),te&&E.messages&&E.messages.length>0&&i.jsxs(i.Fragment,{children:[i.jsx("button",{type:"button",className:"hub-mini-btn",onClick:pe=>Wi(E,pe),title:"Export as text file",children:"📄"}),i.jsx("button",{type:"button",className:"hub-mini-btn",onClick:pe=>Hi(E,pe),title:"Export as PDF (opens print dialog)",children:"📑"})]}),i.jsx("button",{type:"button",className:"hub-mini-btn",disabled:Lt===E.key,onClick:Pe,title:"Clear conversation history",style:{color:"var(--accent-red)"},children:"🗑️"}),i.jsx("span",{style:{fontSize:18,transition:"transform 0.2s",transform:te?"rotate(180deg)":"none"},children:"▼"})]})]}),i.jsxs("p",{className:"hub-card-desc",style:{fontStyle:"italic",color:"var(--text-muted, var(--text-muted))"},children:[i.jsx("span",{style:{color:"var(--text-primary, var(--text-primary))",fontWeight:500},children:"Last message:"})," ",E.lastUserMessage.slice(0,120),E.lastUserMessage.length>120?"…":""]}),i.jsxs("div",{style:{display:"flex",flexWrap:"wrap",gap:4,marginTop:4},children:[(E.tags??[]).map(pe=>i.jsxs("span",{style:{display:"inline-flex",alignItems:"center",gap:2,padding:"2px 8px",borderRadius:12,fontSize:11,background:"color-mix(in srgb, var(--accent-blue) 13%, transparent)",color:"var(--accent-blue)",border:"1px solid color-mix(in srgb, var(--accent-blue) 25%, transparent)"},children:["🏷️ ",pe,i.jsx("button",{type:"button",onClick:He=>{He.stopPropagation(),Va(E.key,pe)},style:{background:"none",border:"none",color:"var(--accent-blue)",cursor:"pointer",padding:0,fontSize:12,lineHeight:1},children:"×"})]},pe)),Cr===E.key?i.jsx("span",{style:{display:"inline-flex",alignItems:"center",gap:2},children:i.jsx("input",{type:"text",value:lr,onChange:pe=>cr(pe.target.value),onKeyDown:pe=>{pe.key==="Enter"&&Ys(E.key,lr),pe.key==="Escape"&&(Tr(null),cr(""))},placeholder:"tag name",autoFocus:!0,onClick:pe=>pe.stopPropagation(),style:{width:80,padding:"1px 6px",fontSize:11,borderRadius:8,border:"1px solid var(--border)"}})}):i.jsx("button",{type:"button",onClick:pe=>{pe.stopPropagation(),Tr(E.key),cr("")},style:{display:"inline-flex",alignItems:"center",gap:2,padding:"2px 8px",borderRadius:12,fontSize:11,background:"var(--border)",color:"var(--muted)",border:"none",cursor:"pointer"},children:"+ tag"})]}),te&&E.messages&&E.messages.length>0?i.jsxs("div",{className:"conversation-thread",style:{marginTop:10,borderTop:"1px solid var(--border)",paddingTop:10,maxHeight:400,overflowY:"auto"},children:[E.messages.map((pe,He)=>i.jsxs("div",{style:{marginBottom:8,display:"flex",flexDirection:"column",alignItems:pe.role==="user"?"flex-end":"flex-start"},children:[i.jsxs("div",{style:{maxWidth:"80%",padding:"8px 12px",borderRadius:12,backgroundColor:pe.role==="user"?"var(--accent-blue)":"var(--bg-card, var(--bg-card))",color:pe.role==="user"?"var(--text-on-accent)":"var(--text-primary, var(--text-primary))",fontSize:13,lineHeight:1.5,whiteSpace:"pre-wrap",wordBreak:"break-word"},children:[pe.content.slice(0,500),pe.content.length>500?"…":""]}),i.jsxs("span",{style:{fontSize:10,color:"var(--muted)",marginTop:2,padding:"0 4px"},children:[pe.role==="user"?"👤":"🤖"," ",new Date(pe.ts).toLocaleString()]})]},He)),he.has(E.key)&&i.jsxs("div",{style:{marginBottom:8,display:"flex",flexDirection:"column",alignItems:"flex-start"},children:[i.jsxs("div",{style:{padding:"8px 16px",borderRadius:12,backgroundColor:"var(--bg-card, var(--bg-card))",fontSize:13,display:"flex",alignItems:"center",gap:4},children:[i.jsx("span",{style:{animation:"typingBlink 1.4s infinite ease-in-out"},children:"●"}),i.jsx("span",{style:{animation:"typingBlink 1.4s infinite ease-in-out 0.2s"},children:"●"}),i.jsx("span",{style:{animation:"typingBlink 1.4s infinite ease-in-out 0.4s"},children:"●"})]}),i.jsx("span",{style:{fontSize:10,color:"var(--muted)",marginTop:2,padding:"0 4px"},children:"🤖 typing…"})]})]}):te?i.jsx("p",{className:"admin-hint",style:{marginTop:8},children:"No message details available."}):null]},E.key)}),hn&&!pn&&i.jsx("div",{ref:Ga,style:{height:1}}),pn&&i.jsxs("div",{className:"loading-state",style:{padding:12},children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("span",{className:"admin-hint",style:{marginLeft:8},children:"Loading more conversations…"})]}),!pn&&!hn&&Bt.length>0&&i.jsxs("p",{className:"admin-hint",style:{textAlign:"center",padding:12},children:["All ",Kn," conversation",Kn===1?"":"s"," loaded."]})]})]}):pn?i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{className:"admin-hint",children:"Loading conversations…"})]}):i.jsx("div",{className:"empty-state",children:"No conversations stored yet. Conversations are created when users message the agent via WhatsApp/Telegram/etc."})]}):null,e==="artifacts"&&n?i.jsxs("div",{role:"tabpanel",children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.artifacts.totalSessions}),i.jsx("div",{className:"admin-summary-label",children:"Sessions"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.artifacts.totalArtifacts}),i.jsx("div",{className:"admin-summary-label",children:"Artifacts"})]})]}),n.artifacts.sessions.length>0?i.jsx("div",{className:"hub-session-list",children:n.artifacts.sessions.map(E=>i.jsxs("div",{className:"hub-card",children:[i.jsx("div",{className:"hub-card-top",children:i.jsxs("div",{className:"hub-card-title",children:[i.jsx("span",{className:"hub-card-name",children:E.sessionId}),i.jsxs("span",{className:"hub-card-id",children:[E.count," artifact",E.count===1?"":"s"," · ",new Date(E.latestAt).toLocaleString()]})]})}),E.recent.length>0?i.jsx("ul",{className:"hub-artifact-list",children:E.recent.map((U,Y)=>i.jsxs("li",{children:[i.jsx("span",{className:"hub-chip",children:U.kind}),i.jsx("span",{className:"hub-artifact-title",children:U.title||"(untitled)"}),U.preview?i.jsx("div",{className:"hub-artifact-preview",children:U.preview}):null]},Y))}):i.jsx("div",{className:"admin-hint",children:"No artifact details."})]},E.sessionId))}):i.jsx("div",{className:"empty-state",children:"No artifacts yet — tools that return a deliverable payload land here per session."})]}):null,e==="skills"&&n?i.jsxs("div",{role:"tabpanel",children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.skills.enabled}),i.jsx("div",{className:"admin-summary-label",children:"Enabled skills"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.skills.disabled}),i.jsx("div",{className:"admin-summary-label",children:"Disabled skills"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:n.skills.hub.length}),i.jsx("div",{className:"admin-summary-label",children:"Hub skills (SKILL.md)"})]})]}),i.jsx("h2",{className:"section-subtitle",children:"📚 Compiled skills (SkillStore — matched at plan time)"}),n.skills.compiled.length>0?i.jsx("div",{className:"hub-session-list",children:n.skills.compiled.map(E=>i.jsxs("div",{className:`hub-card${E.enabled?"":" hub-card-disabled"}`,children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("div",{className:"hub-card-title",children:[i.jsx("span",{className:"hub-card-name",children:E.name}),i.jsxs("span",{className:"hub-card-id",children:[E.id,E.version?` · v${E.version}`:""]})]}),i.jsxs("div",{className:"hub-card-actions",children:[E.bundled===!0?i.jsx("span",{className:"hub-chip hub-chip-bundled",children:"🧠 bundled"}):i.jsx("span",{className:"hub-chip",children:"community"}),i.jsx("button",{role:"switch","aria-checked":E.enabled,"aria-label":`${E.enabled?"Disable":"Enable"} ${E.name}`,className:`hub-switch${E.enabled?" on":""}`,disabled:z===E.id||O!==null||h&&!Et,onClick:()=>Zi(E.id,!E.enabled),children:i.jsx("span",{className:"hub-switch-knob"})})]})]}),i.jsx("p",{className:"hub-card-desc",children:E.description}),i.jsxs("div",{className:"hub-card-tools",children:[typeof E.usageCount=="number"?i.jsxs("span",{className:"hub-chip",children:[E.usageCount," uses"]}):null,E.enabled?null:i.jsx("span",{className:"hub-chip",children:"disabled"})]}),M[E.id]?i.jsx("div",{className:"admin-row-msg",children:M[E.id]}):null,E.enabled?null:i.jsx("div",{className:"hub-card-note",children:"⛔ Excluded from skill matching — not injected into the planner"})]},`c-${E.id}`))}):i.jsx("div",{className:"empty-state",children:"No compiled skills."}),i.jsx("h2",{className:"section-subtitle",children:"🌍 Hub skills (installed SKILL.md)"}),n.skills.hub.length>0?i.jsx("div",{className:"hub-session-list",children:n.skills.hub.map(E=>i.jsxs("div",{className:`hub-card${E.enabled?"":" hub-card-disabled"}`,children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("div",{className:"hub-card-title",children:[i.jsx("span",{className:"hub-card-name",children:E.name}),i.jsx("span",{className:"hub-card-id",children:E.id})]}),i.jsxs("div",{className:"hub-card-actions",children:[i.jsx("button",{type:"button",className:"hub-mini-btn",disabled:ne===E.id||h&&!Et,onClick:()=>void Tm(E.id),children:"🗑 Uninstall"}),i.jsx("button",{role:"switch","aria-checked":E.enabled,"aria-label":`${E.enabled?"Disable":"Enable"} ${E.name}`,className:`hub-switch${E.enabled?" on":""}`,disabled:z===E.id||O!==null||h&&!Et,onClick:()=>Zi(E.id,!E.enabled),children:i.jsx("span",{className:"hub-switch-knob"})})]})]}),i.jsx("p",{className:"hub-card-desc",children:E.description}),i.jsxs("div",{className:"hub-card-tools",children:[i.jsx("span",{className:"hub-chip",children:"SKILL.md"}),E.enabled?null:i.jsx("span",{className:"hub-chip",children:"disabled"})]}),M[E.id]?i.jsx("div",{className:"admin-row-msg",children:M[E.id]}):null,E.enabled?null:i.jsx("div",{className:"hub-card-note",children:"⛔ Excluded from skill matching — not injected into the planner"})]},`h-${E.id}`))}):i.jsxs("div",{className:"empty-state",children:["No hub skills installed — search the marketplace below or run ",i.jsx("code",{children:"buff skills install <name>"}),"."]}),i.jsx("h2",{className:"section-subtitle",children:"🛒 Marketplace (community skills)"}),i.jsxs("form",{className:"hub-market-search",onSubmit:ud,children:[i.jsx("input",{type:"text",value:_n,onChange:E=>Xs(E.target.value),placeholder:"Search community skills (e.g. code-assist, deploy, testing)…"}),i.jsx("button",{type:"submit",className:"admin-refresh-btn",disabled:Ki,children:Ki?"Searching…":"🔎 Search"})]}),va?i.jsx("div",{className:`admin-row-msg${va.kind==="err"?" admin-row-msg-err":""}`,children:va.text}):null,ld&&!Ki?Ya.length>0?i.jsx("div",{className:"hub-session-list",children:Ya.map(E=>i.jsxs("div",{className:"hub-card",children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("div",{className:"hub-card-title",children:[i.jsx("span",{className:"hub-card-name",children:E.name}),i.jsxs("span",{className:"hub-card-id",children:["v",E.version," · ",E.sourceKind]})]}),i.jsx("button",{type:"button",className:"admin-refresh-btn",disabled:ne===E.name||h&&!Et,onClick:()=>void Cm(E.name),children:ne===E.name?"Installing…":"⬇ Install"})]}),i.jsx("p",{className:"hub-card-desc",children:E.description}),i.jsxs("div",{className:"hub-card-tools",children:[i.jsx("span",{className:"hub-chip",children:E.author}),E.tags.slice(0,3).map(U=>i.jsx("span",{className:"hub-chip",children:U},U))]})]},`m-${E.name}`))}):i.jsxs("div",{className:"empty-state",children:['No skills match "',_n,'" — try a broader term, or add a registry to ',i.jsx("code",{children:"skills.registries"})," in config."]}):null]}):null,e==="subagents"&&n?i.jsxs("div",{role:"tabpanel",children:[i.jsxs("div",{className:"admin-summary-grid",children:[i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:((Wl=n.subagents)==null?void 0:Wl.total)??0}),i.jsx("div",{className:"admin-summary-label",children:"Runs recorded"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:((Hl=n.subagents)==null?void 0:Hl.running)??0}),i.jsx("div",{className:"admin-summary-label",children:"Running now"})]}),i.jsxs("div",{className:"admin-summary-card",children:[i.jsx("div",{className:"admin-summary-value",children:((Gl=n.subagents)==null?void 0:Gl.failed)??0}),i.jsx("div",{className:"admin-summary-label",children:"Failed"})]})]}),i.jsxs("p",{className:"admin-hint",children:["Each run is a separate child process. A transport of ",i.jsx("code",{children:"json"})," means the provider has no native tool protocol and the shared JSON fallback carried the tool calls; a refusal code means the run stopped deliberately instead of returning an answer."]}),(((ql=n.subagents)==null?void 0:ql.recent)??[]).length>0?i.jsx("div",{className:"hub-session-list",children:(((I=n.subagents)==null?void 0:I.recent)??[]).map(E=>i.jsxs("div",{className:"hub-card",children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("div",{className:"hub-card-title",children:[i.jsx("span",{className:"hub-card-name",children:E.goal||"(no goal recorded)"}),i.jsxs("span",{className:"hub-card-id",children:[E.id.slice(0,8),E.startedAt?` · ${new Date(E.startedAt).toLocaleString()}`:""]})]}),i.jsx("div",{className:"hub-card-actions",children:i.jsx("span",{className:"hub-chip",children:fle[E.status]??E.status})})]}),i.jsxs("div",{className:"hub-card-tools",children:[i.jsxs("span",{className:"hub-chip",children:["🔌 ",E.provider??"provider unknown",E.model?` · ${E.model}`:""]}),i.jsxs("span",{className:"hub-chip",children:["🛠 ",E.transport??"transport unknown"," transport"]}),i.jsxs("span",{className:"hub-chip",children:[E.llmCalls," model call",E.llmCalls===1?"":"s"]}),i.jsxs("span",{className:"hub-chip",children:[E.toolCalls," tool call",E.toolCalls===1?"":"s"]}),typeof E.durationMs=="number"?i.jsxs("span",{className:"hub-chip",children:[(E.durationMs/1e3).toFixed(1),"s"]}):null]}),E.refusalCode?i.jsxs("div",{className:"hub-card-note",children:["⛔ Refused before answering — code ",i.jsx("code",{children:E.refusalCode})]}):null,E.error?i.jsx("div",{className:"admin-row-msg admin-row-msg-err",children:E.error}):null,E.resultPreview?i.jsx("div",{className:"hub-artifact-preview",children:E.resultPreview}):null]},E.id))}):i.jsxs("div",{className:"empty-state",children:["No subagent runs recorded yet — a run shows up here once the agent spawns one (the ",i.jsx("code",{children:"subagent"})," tool), and only if it actually started."]})]}):null]})}const gle=289,vle=57,yle=[{name:"admin",description:"Admin governance policy for Auto routing (P6 M6.5) — allow/deny providers & models, hard cost cap, PII privacy, unblock control",commands:[{name:"admin policy",description:"Show the current governance policy + enforcement status",flags:["--json"]},{name:"admin allow",description:"Add providers to the allow-list (empty = all providers allowed)",flags:[]},{name:"admin deny",description:"Add providers to the deny-list (wins over the allow-list)",flags:[]},{name:"admin allow-model",description:"Add models to the allow-list — a provider survives only if one of its candidate models is listed",flags:[]},{name:"admin deny-model",description:"Add models to the deny-list (wins over the allow-list)",flags:[]},{name:"admin max-cost",description:"Set the admin hard max cost per call (USD); joins routing.maxCostUsd (stricter wins)",flags:[]},{name:"admin pii-min",description:"Set the minimum privacy score (0-1) required when a task matches a PII pattern (default 1.0 = local-only)",flags:[]},{name:"admin unblock",description:"Control whether `nuvira models unblock` may override REGISTRY-learned blocks (false = admin-hard)",flags:[]},{name:"admin clear",description:"Remove one governance rule (the policy becomes permissive on that field)",flags:[]},{name:"admin role",description:"Manage RBAC roles over the admin surface (P6 M6.1 — requires admin role)",flags:[]},{name:"admin role add",description:"Assign a role to a user (first assignment exits legacy single-user mode)",flags:[]},{name:"admin role remove",description:"Remove a user's role assignment (if none remain, legacy permissive mode resumes)",flags:[]},{name:"admin role list",description:"List all role assignments",flags:[]},{name:"admin whoami",description:"Show the current identity and its effective RBAC permissions",flags:[]},{name:"admin cron",description:"Scheduled tool invocations (J2 — cron/jobs.py)",flags:[]},{name:"admin cron add",description:'Add a cron job: nuvira admin cron add nightly-build "0 3 * * *" build',flags:["--args <args>","--channel <channel>","--dry-run"]},{name:"admin cron list",description:"List cron jobs with schedule + next run",flags:[]},{name:"admin cron remove",description:"Remove a cron job",flags:[]},{name:"admin cron run",description:"Run a cron job NOW (invoke its tool immediately)",flags:[]}]},{name:"chat",description:"Start an interactive chat session with AI",commands:[]},{name:"edit",description:"Edit a file using AI assistance",commands:[]},{name:"plan",description:"Generate an implementation plan for a codebase task",commands:[]},{name:"config",description:"Manage Nuvira configuration",commands:[{name:"config set",description:"Set a configuration value",flags:[]},{name:"config get",description:"Get a configuration value",flags:[]},{name:"config list",description:"List all providers and their status",flags:[]},{name:"config init",description:"Initialize configuration interactively",flags:[]},{name:"config vault",description:"Secret vault management (Phase A1)",flags:[]},{name:"config vault status",description:"Show the active vault tier and migration state",flags:[]},{name:"config vault log",description:"Show recent vault access-log entries (K3 tamper-evident audit)",flags:["--limit <limit>"]},{name:"config vault migrate-keys",description:"Move plaintext provider API keys from buffconfig.json into the vault",flags:[]},{name:"config gateway",description:"Manage gateway platform transports (tokens written to ~/.nuvira/.env)",flags:[]},{name:"config gateway list",description:"Show every platform transport and its env-var status",flags:[]},{name:"config gateway set",description:"Configure a platform transport (interactive wizard, or --set VAR=value)",flags:["--set <set>"]},{name:"config gateway remove",description:"Remove a platform transport from the env file",flags:["--yes"]},{name:"config gateway allow",description:"Allow a user/group to trigger the agent on a platform (written to gateway.policies in config)",flags:[]},{name:"config gateway disallow",description:"Remove a user/group from the allowed list of a platform",flags:[]},{name:"config gateway reply",description:"Set how unapproved senders are handled on a platform: polite (⛔ message) or silent (no reply)",flags:[]},{name:"config gateway send-authority",description:"Manage who may command the agent to send to OTHER people (gateway_send). Outbound-only gate — separate from `allow` (who may trigger).",flags:[]},{name:"config gateway notify",description:"Manage status recipients — contacts/groups that ALWAYS get pipeline completion summaries",flags:[]},{name:"config gateway ask-user-wait",description:"Ask-and-wait for clarifying questions on messaging channels: when a turn asks the sender a question, hold it for their reply instead of assuming option 1",flags:[]},{name:"config service",description:"Manage third-party service keys (image/video/search/vision/speech) in ~/.nuvira/.env",flags:[]},{name:"config service list",description:"Show every service backend and its env-var status",flags:[]},{name:"config service set",description:"Set a service key: config service set <serviceId> <ENV_VAR> <value> (or --set VAR=value)",flags:["--set <set>"]},{name:"config service unset",description:"Remove a service key (all vars, or one with [varName]) from the env file",flags:["--yes"]},{name:"config limit",description:"Show or change the size limits for document extraction and attachments",flags:[]},{name:"config limit list",description:"Show the effective extraction and attachment limits",flags:[]},{name:"config limit set",description:"Set a limit: config limit set <extract-max-chars|attachment-max-kb> <value>",flags:[]},{name:"config limit unset",description:"Restore a limit to its default",flags:[]},{name:"config capability",description:"Show or change the capability mode (balanced | max)",flags:[]},{name:"config capability show",description:"Show the effective capability mode",flags:[]},{name:"config capability set",description:"Set the capability mode: config capability set <balanced|max>",flags:[]},{name:"config capability unset",description:"Restore the default capability mode (balanced)",flags:[]},{name:"config catalog-feed",description:"Show or change the OpenRouter catalogue feed (cost/ecosystem priors only)",flags:[]},{name:"config catalog-feed show",description:"Show whether the catalogue feed is on, and how old its snapshot is",flags:[]},{name:"config catalog-feed set",description:"Enable or disable: config catalog-feed set <on|off>",flags:[]},{name:"config catalog-feed unset",description:"Remove the setting, restoring the default (off)",flags:[]},{name:"config catalog-feed refresh",description:"Fetch a fresh catalogue snapshot now (never runs during a turn)",flags:[]}]},{name:"cache",description:"Manage inference cache",commands:[{name:"cache stats",description:"Show cache statistics",flags:[]},{name:"cache clear",description:"Clear cached responses — all of them, or one workspace (project folder)",flags:["--unscoped"]}]},{name:"models",description:"List available models from inference providers",commands:[{name:"models refresh",description:"Probe providers and spot-check models, updating the Model Availability Registry",flags:["--json","--no-spot-check"]},{name:"models status",description:"Show the Model Availability Registry (verified / unavailable / quota-parked models)",flags:["--json","--verbose"]},{name:"models unblock",description:"Manually release a registry-blocked provider (escape hatch) and re-probe it against the live API",flags:["--json","--no-spot-check"]},{name:"models excluded",description:"Show which providers routing is currently skipping, and why (failure cooldowns, registry blocks, governance policy)",flags:["--json"]},{name:"models staleness",description:"Show model staleness: last probe time, days since verification, and removal risk",flags:["--json"]},{name:"models watch",description:"Run the model-registry maintenance daemon: probe + spot-check on a schedule",flags:["--interval <interval>","--no-spot-check"]}]},{name:"execute",description:"Run a multi-agent pipeline to accomplish a goal",commands:[]},{name:"run",description:"Execute a shell command and show output (lightweight alternative to the full pipeline)",commands:[]},{name:"workflow",description:"Run, manage, and share workflow templates",commands:[{name:"workflow list",description:"Show available workflow templates (built-in + installed)",flags:[]},{name:"workflow run",description:"Run a workflow template",flags:["--dry-run","--model <model>","--provider <provider>","--verbose"]},{name:"workflow search",description:"Search the GitHub workflow template registry",flags:["--refresh"]},{name:"workflow install",description:"Install a workflow template from the GitHub registry",flags:[]},{name:"workflow publish",description:"Prepare a local workflow template for publishing to the registry",flags:[]},{name:"workflow info",description:"Show detailed information about a registry template",flags:[]},{name:"workflow upgrade",description:"Check for and apply template upgrades from the registry",flags:[]}]},{name:"whatsapp",description:"WhatsApp bridge (Baileys) — pair a personal number via QR and check status (I8)",commands:[{name:"whatsapp pair",description:"Pair WhatsApp (personal number — no Meta Business account, no paid API)",flags:["--phone <phone>","--timeout <timeout>"]},{name:"whatsapp status",description:"Show bridge session path + pairing state",flags:[]},{name:"whatsapp contacts",description:"List resolvable contacts (mapping file + learned) — connects briefly to learn names from live traffic",flags:["--timeout <timeout>"]},{name:"whatsapp contact",description:'Manage the WhatsApp contact-name mapping (send by name: nuvira gateway send whatsapp:<Name> "message")',flags:[]},{name:"whatsapp contact add",description:"Map a display name to a number (E.164, no +): nuvira whatsapp contact add Name 919876543210",flags:[]},{name:"whatsapp contact remove",description:"Remove a mapped contact name",flags:[]}]},{name:"plugins",description:"Manage provider plugins, agent plugins, and workflow templates",commands:[{name:"plugins list",description:"List all discovered plugins and workflows",flags:[]},{name:"plugins scan",description:"Force re-scan all plugin directories",flags:[]}]},{name:"learn",description:"Self-improvement system — agent stats, patterns, and optimization",commands:[{name:"learn stats",description:"Show per-agent performance statistics",flags:[]},{name:"learn patterns",description:"Show extracted coding patterns",flags:["--extract","--model <model>","--provider <provider>"]},{name:"learn lessons",description:"Show failure lessons — what past runs learned from mistakes",flags:["--extract","--model <model>","--provider <provider>"]},{name:"learn optimize",description:"Generate optimized model-to-agent routing recommendations",flags:[]},{name:"learn status",description:"Show overall self-improvement status",flags:[]},{name:"learn clear",description:"Reset all learning data (stats, patterns, memory)",flags:["--force"]},{name:"learn compare",description:"Compare benchmark results between two models",flags:["--all","--last"]},{name:"learn feedback",description:"Rate a trajectory or view feedback statistics",flags:["--comment <comment>","--rating <rating>","--stats","--trajectory <trajectory>"]},{name:"learn quality",description:"Show pattern quality and decay metrics",flags:["--details"]},{name:"learn gc",description:"Garbage-collect low-quality patterns",flags:["--dry-run"]}]},{name:"init",description:"Scaffold a new project from a template",commands:[]},{name:"stats",description:"View usage statistics and cost tracking",commands:[{name:"stats cost",description:"Show API cost tracking details",flags:["--clear"]},{name:"stats history",description:"Show conversation history statistics",flags:[]}]},{name:"history",description:"Browse and search conversation history",commands:[{name:"history list",description:"Show all saved conversations",flags:["--limit <limit>"]},{name:"history search",description:"Search conversations by keyword or semantic similarity",flags:["--limit <limit>","--semantic"]},{name:"history show",description:"Show a specific conversation",flags:[]},{name:"history clear",description:"Clear all conversation history",flags:[]},{name:"history prune",description:"Remove conversations older than the retention period",flags:["--days <days>"]},{name:"history reindex",description:"Rebuild the semantic search index for all past conversations (embeds each session for vector search)",flags:[]}]},{name:"skill",description:"Manage and run compiled skills — reusable execution plans derived from past trajectories",commands:[{name:"skill list",description:"List all compiled skills",flags:["--quality <quality>"]},{name:"skill show",description:"Show detailed skill definition",flags:[]},{name:"skill run",description:"Run a skill — resolves parameters and invokes the multi-agent pipeline",flags:["--auto-route","--dry-run","--memory","--model <model>","--params <params>","--provider <provider>","--verbose"]},{name:"skill compile",description:"Force skill compilation from stored trajectories",flags:["--model <model>","--provider <provider>"]},{name:"skill search",description:"Search skills by name, tag, or description",flags:[]},{name:"skill gc",description:"Garbage-collect low-quality skills",flags:["--dry-run"]},{name:"skill quality",description:"Show skill quality and decay metrics",flags:["--details"]},{name:"skill clear",description:"Remove all compiled skills",flags:["--force"]}]},{name:"skills",description:"Skills hub — search, install, update, and audit community skills (J3)",commands:[{name:"skills search",description:"Search all configured skill registries (I7 P1 multi-source)",flags:["--refresh","--source <source>"]},{name:"skills install",description:"Install a skill from the configured registries into <project>/.agents/skills/ (sandboxed, checksummed)",flags:["--project <project>","--source <source>"]},{name:"skills uninstall",description:"Uninstall a skill: removes .agents/skills/<name> and its provenance record",flags:["--project <project>"]},{name:"skills update",description:"Update installed skills to newer registry versions (checksum-verified)",flags:["--project <project>"]},{name:"skills bundle",description:"P6b — skill bundles: group skills under one id and load them together (Hermes parity)",flags:["--create","--delete","--description <description>","--name <name>","--skills <skills>"]},{name:"skills list",description:"List installed skills with provenance (origin: registry vs local)",flags:["--origin <origin>","--project <project>"]}]},{name:"gateway",description:"Multi-channel gateway — talk to the agent from Telegram/Discord/Slack/WhatsApp/Email/Signal (J1)",commands:[{name:"gateway status",description:"Show configured adapters and reachable channels",flags:[]},{name:"gateway send",description:"Send a message to a channel alias or platform:channelId",flags:[]},{name:"gateway send-media",description:"Send a media file (image/video/audio/document) — type from the file extension; WhatsApp/Telegram/Discord",flags:["--caption <caption>"]},{name:"gateway alias",description:"Manage channel aliases",flags:[]},{name:"gateway alias add",description:"Register an alias: nuvira gateway alias add ops slack C0123",flags:[]},{name:"gateway alias remove",description:"Remove an alias",flags:[]},{name:"gateway contact",description:"Manage contacts for outbound messaging (name → platform:id resolution)",flags:[]},{name:"gateway contact list",description:"List all contacts with status, platform, and ID",flags:["--pending","--platform <platform>"]},{name:"gateway contact approve",description:"Approve a contact for outbound messaging",flags:["--platform <platform>"]},{name:"gateway contact reject",description:"Reject a contact (block outbound messages)",flags:["--platform <platform>"]},{name:"gateway contact delete",description:"Delete a contact permanently",flags:["--platform <platform>"]},{name:"gateway contact add",description:"Manually add a contact (e.g. nuvira gateway contact add Anuj telegram 616825477)",flags:["--phone <phone>"]},{name:"gateway delivery",description:"Show the delivery ledger (failed sends awaiting retry) and optionally drain it",flags:["--flush"]},{name:"gateway logs",description:"Show the structured gateway log (send failures, refused senders, pipeline outcomes)",flags:["--event <event>","--limit <limit>","--path"]},{name:"gateway history",description:"Manage per-contact conversation history (gateway chat memory)",flags:[]},{name:"gateway history list",description:"List all stored conversations with last message preview",flags:["--platform <platform>"]},{name:"gateway history show",description:"Show conversation history for a contact (e.g. nuvira gateway history show whatsapp:918800663237)",flags:["--limit <limit>"]},{name:"gateway history clear",description:"Clear conversation history for a contact",flags:[]},{name:"gateway history prune",description:"Remove conversations older than 7 days",flags:[]},{name:"gateway start",description:"Run all configured adapters in the foreground (Ctrl-C to stop; --supervise auto-restarts on crash)",flags:["--host <host>","--no-events","--port <port>","--supervise"]},{name:"gateway stop",description:"Stop a running gateway gracefully (SIGTERM — from any terminal)",flags:["--port <port>"]},{name:"gateway setup",description:"Interactive setup wizard for a messaging platform (e.g. nuvira gateway setup telegram)",flags:[]}]},{name:"omniroute",description:"Start / stop / inspect the external OmniRoute AI gateway (default port 20128)",commands:[{name:"omniroute status",description:"Probe the OmniRoute gateway and report whether it is reachable",flags:[]},{name:"omniroute start",description:"Start the OmniRoute gateway in the background and wait for it to answer",flags:[]},{name:"omniroute stop",description:"Stop the running OmniRoute gateway",flags:[]}]},{name:"model",description:"Manage inference providers and models — switch, list, inspect, and recommend",commands:[{name:"model list",description:"List all providers and their configuration status",flags:["--all","--json"]},{name:"model switch",description:"Switch active provider/model (interactive or via argument). Use `auto` for smart routing",flags:["--model <model>","--provider <provider>"]},{name:"model info",description:"Show current active provider and model configuration",flags:["--verbose"]},{name:"model recommend",description:"Show model routing recommendations",flags:[]},{name:"model explain",description:"Explain Auto model routing — why a provider/model would be picked for a task",flags:["--agent <agent>","--context-tokens <context_tokens>","--exclude-provider <exclude_provider>","--json","--since <since>"]},{name:"model health",description:"Quick health check for the currently active provider",flags:["--provider <provider>","--verbose"]},{name:"model bandit",description:"Show learning-router bandit state (Thompson-sampling priors per provider × complexity bucket). Action: reset",flags:["--json"]},{name:"model ml",description:"Show the ML task-similarity router state (learned outcomes per provider, kNN over task features). Action: reset",flags:["--json"]},{name:"model quota",description:"Show the central quota ledger (tokens/requests per provider × model, reset windows, parked state). Actions: reset | set <provider> | clear <provider>",flags:["--cost-usd <cost_usd>","--json","--requests <requests>","--tokens <tokens>","--window-ms <window_ms>"]}]},{name:"benchmark",description:"Run standardized model benchmarks against coding tasks",commands:[{name:"benchmark run",description:"Run the benchmark suite",flags:["--budget <budget>","--format <format>","--model <model>","--provider <provider>","--routing","--tasks <tasks>"]},{name:"benchmark list",description:"List available benchmark tasks",flags:[]},{name:"benchmark results",description:"Show previous benchmark results",flags:["--compare","--format <format>","--last"]},{name:"benchmark clear",description:"Clear all benchmark data",flags:[]}]},{name:"eval",description:"Run the Agent-Nuvira evaluation framework — measures if the agent is actually improving",commands:[{name:"eval run",description:"Run the evaluation suite",flags:["--budget <budget>","--engine <engine>","--format <format>","--keep-workspaces","--model <model>","--pace","--provider <provider>","--routing","--suite <suite>","--tasks <tasks>"]},{name:"eval parity",description:"Measure the capability gap: run the hard tasks under balanced AND max, then compare",flags:["--engine <engine>","--model <model>","--provider <provider>","--tasks <tasks>"]},{name:"eval verify-seeds",description:"Prove every seeded bug is genuinely broken (and genuinely fixable) — no provider needed",flags:["--tasks <tasks>"]},{name:"eval list",description:"List available eval tasks",flags:[]},{name:"eval results",description:"Show previous eval runs",flags:["--compare","--format <format>","--last"]},{name:"eval score",description:"Show the evaluation scoring rules",flags:[]},{name:"eval clear",description:"Clear all eval data",flags:[]}]},{name:"sandbox",description:"Manage Docker sandbox isolation for code execution",commands:[{name:"sandbox status",description:"Check Docker availability and sandbox status",flags:[]},{name:"sandbox config",description:"Show or update sandbox configuration",flags:["--cpu <cpu>","--disable","--disk <disk>","--enable","--image <image>","--memory <memory>","--network","--timeout <timeout>"]},{name:"sandbox images",description:"List available pre-defined sandbox images",flags:[]},{name:"sandbox run",description:"Run a command inside a new sandbox container",flags:["--cpu <cpu>","--image <image>","--memory <memory>","--network","--project <project>","--timeout <timeout>"]},{name:"sandbox cleanup",description:"Destroy all active sandbox containers",flags:[]}]},{name:"doctor",description:"Run diagnostic checks on all provider configurations and system health",commands:[]},{name:"memory",description:"Manage agent memory store — compression, pruning, and optimization",commands:[{name:"memory stats",description:"Show memory store statistics",flags:[]},{name:"memory optimize",description:"Run automatic memory compression and pruning",flags:["--aggressive","--dry-run"]},{name:"memory prune",description:"Prune old or low-quality trajectories",flags:["--max-age <max_age>","--max-count <max_count>","--min-score <min_score>","--verbose"]},{name:"memory summarize",description:"Summarize old trajectories by merging similar ones",flags:["--retention <retention>","--verbose"]},{name:"memory info",description:"Show detailed compression analysis",flags:[]},{name:"memory backend",description:"Show the active vector-search backend and why it was chosen",flags:["--check"]},{name:"memory list",description:"List all memory entries (facts, preferences, lessons, observations)",flags:["--limit <limit>","--type <type>"]},{name:"memory search",description:"Search memory entries by content",flags:["--limit <limit>","--type <type>"]},{name:"memory add",description:"Add a memory entry",flags:["--tags <tags>","--type <type>"]},{name:"memory delete",description:"Delete a memory entry by ID",flags:[]},{name:"memory export",description:"Export all memories to a JSON file",flags:["--output <output>"]},{name:"memory import",description:"Import memories from a JSON file",flags:["--merge"]},{name:"memory facts",description:"Fact & preference memory (project-scoped, cross-session)",flags:[]},{name:"memory facts list",description:"List facts, optionally for a project (git slug or cwd:<hash>)",flags:["--project <project>"]},{name:"memory facts add",description:"Manually store a fact for the current project",flags:["--project <project>","--tags <tags>"]},{name:"memory facts stats",description:"Show fact-store statistics",flags:[]},{name:"memory clear",description:"Clear all stored trajectories and reset memory",flags:["--force"]}]},{name:"dashboard",description:"Launch the web-based dashboard for visualizing agent execution and system status",commands:[{name:"dashboard stop",description:"Stop a running dashboard gracefully (SIGTERM — from any terminal)",flags:["--port <port>"]}]},{name:"agent",description:"Scaffold and manage custom agent-nuvira agents",commands:[{name:"agent create",description:"Create a new custom agent project from a template",flags:["--agent-name <agent_name>","--description <description>","--dir <dir>"]},{name:"agent list",description:"List all discovered custom agent plugins",flags:[]},{name:"agent info",description:"Show details about a discovered agent plugin",flags:[]}]},{name:"federation",description:"Connect to and manage remote agent instances",commands:[{name:"federation status",description:"Show federation connection status and configuration",flags:[]},{name:"federation start",description:"Start the federation server (listens for incoming connections)",flags:["--auth <auth>","--daemon","--host <host>","--oidc-public-key <oidc_public_key>","--port <port>","--secret <secret>"]},{name:"federation connect",description:"Connect to a remote federation server",flags:["--port <port>","--secret <secret>"]},{name:"federation disconnect",description:"Disconnect from the remote federation server",flags:[]},{name:"federation run",description:"Run a task on the remote federation server",flags:["--agent <agent>","--model <model>","--no-stream","--provider <provider>","--timeout <timeout>"]},{name:"federation health",description:"Check the health of the remote federation server",flags:[]},{name:"federation config",description:"Show or update federation configuration",flags:["--set-port <set_port>","--set-secret <set_secret>","--show"]},{name:"federation a2a",description:"A2A (Agent-to-Agent) protocol — discover and connect to external A2A-compliant agents",flags:[]},{name:"federation a2a discover",description:"Discover an A2A-compliant agent and fetch its AgentCard",flags:[]},{name:"federation a2a start",description:"Start the A2A server (listens for incoming A2A connections)",flags:["--host <host>","--port <port>"]},{name:"federation a2a status",description:"Check the health and status of a remote A2A agent",flags:[]},{name:"federation a2a run",description:"Delegate a task to a remote A2A-compliant agent",flags:["--agent <agent>","--skill <skill>","--timeout <timeout>"]}]},{name:"team",description:"Team collaboration — shared config, git-synced memory, and review workflow",commands:[{name:"team init",description:"Initialize team configuration in the working directory",flags:["--branch <branch>","--repo <repo>"]},{name:"team join",description:"Clone and join an existing team repository",flags:[]},{name:"team sync",description:"Sync team memory with remote (pull latest + push local changes)",flags:[]},{name:"team status",description:"Show team configuration and memory status",flags:[]},{name:"team share",description:"Share local trajectories and patterns with the team",flags:[]},{name:"team review",description:"Manage review bundles — agent PR → review → merge workflow",flags:[]},{name:"team review list",description:"List all review bundles",flags:["--limit <limit>"]},{name:"team review show",description:"Show a specific review bundle with full details",flags:[]},{name:"team review approve",description:"Approve a review bundle (sets status to approved)",flags:["--message <message>"]},{name:"team review request-changes",description:"Request changes on a review bundle",flags:[]},{name:"team review reject",description:"Reject a review bundle",flags:[]},{name:"team review merge",description:"Merge an approved review into the working directory",flags:[]},{name:"team review create",description:"Create a review bundle from specified files",flags:["--files <files>","--model <model>","--provider <provider>"]}]},{name:"sdk",description:"Create and manage custom agents with the Agent-Nuvira SDK",commands:[{name:"sdk scaffold",description:"Generate a new custom agent project",flags:["--agent-type <agent_type>","--template <template>"]},{name:"sdk templates",description:"List available scaffold templates",flags:[]},{name:"sdk info",description:"Show SDK package info and version",flags:[]},{name:"sdk register",description:"Register a custom agent with the orchestrator",flags:["--icon <icon>","--orchestrator-path <orchestrator_path>"]},{name:"sdk unregister",description:"Remove a custom agent from the orchestrator",flags:["--orchestrator-path <orchestrator_path>"]}]},{name:"provider",description:"List and check health of all inference providers",commands:[{name:"provider list",description:"Show all providers with color-coded status table",flags:["--all"]},{name:"provider health",description:"Show detailed health checks for one or all providers",flags:["--verbose","--watch"]}]},{name:"security",description:"Scan code, prompts, or files for security issues",commands:[{name:"security scan",description:"Scan for PII, injection attempts, or dangerous code patterns",flags:["--code","--file <file>","--generated","--json","--pii","--prompt","--stdin","--strict"]}]},{name:"audit",description:"Verify and export the tamper-evident (hash-chained) audit trail (P6 M6.3)",commands:[{name:"audit verify",description:"Verify hash-chain integrity of audit stores (tamper detection)",flags:["--file <file>","--json"]},{name:"audit export",description:"Export an audit store as SIEM-friendly CEF lines",flags:["--file <file>","--out <out>"]}]},{name:"sbom",description:"Generate and verify the CycloneDX software bill of materials (P6 M6.6)",commands:[]},{name:"feedback",description:"Record, view, and manage user feedback on agent outputs",commands:[{name:"feedback record",description:"Record feedback for a trajectory (interactive)",flags:["--comment <comment>","--negative","--neutral","--positive"]},{name:"feedback list",description:"Show recent feedback entries",flags:["--limit <limit>","--trajectory <trajectory>"]},{name:"feedback stats",description:"Show aggregated feedback statistics",flags:[]},{name:"feedback clear",description:"Clear all feedback data",flags:[]}]},{name:"nlu",description:"NLU request understanding — debug intent/entity/action resolution",commands:[{name:"nlu debug",description:"Debug how a request is understood (rule path + optional LLM verify)",flags:["--llm"]},{name:"nlu learnings",description:"Show the routing corrections learned from CONFIRMED misreadings (the agent improving itself)",flags:["--forget <forget>","--json"]}]},{name:"intent",description:"Plain-English → CLI routing — resolve an ask into the exact `nuvira` command(s) to run",commands:[{name:"intent resolve",description:'Resolve a plain-English ask (e.g. "stop the dashboard", "add Rahul to whatsapp") into CLI commands',flags:["--json","--semantic"]},{name:"intent eval",description:"Score deterministic vs semantic matching over a labeled ask corpus (novel phrasings included)",flags:["--json"]}]},{name:"code-map",description:"Project symbol map — functions, classes, methods with line numbers (AST engine)",commands:[]},{name:"tools",description:"Inspect the agent tool registry (pipeline + experience tools)",commands:[{name:"tools list",description:"List every registered tool (the H1 tool-calling surface)",flags:[]},{name:"tools show",description:"Show a tool's description and input schema",flags:[]},{name:"tools toolsets",description:"List toolset groups (capability gating) with enabled state; enable/disable a group",flags:["--disable <disable>","--enable <enable>"]}]},{name:"parity",description:"Surface-parity harness — prove the same experience on chat, execute, dashboard, gateway and subagents",commands:[{name:"parity surfaces",description:"Compare the surface registry against the real import graph",flags:[]},{name:"parity debt",description:"Check the anti-silo debt ratchet (observed surface debt must equal the frozen list)",flags:[]},{name:"parity matrix",description:"Show every capability × surface and any unproven `supported` claim",flags:[]},{name:"parity faults",description:"List the declared faults the harness can inject, and what each one proves",flags:[]},{name:"parity run",description:"Drive all five surfaces through the real harness and report the verdict",flags:[]}]},{name:"session",description:"Project-scoped session continuity (debug surface — `continue` is the primary path)",commands:[{name:"session list",description:"List recent sessions, optionally filtered by project + time range",flags:["--limit <limit>","--project <project>","--since <since>"]},{name:"session summarize",description:"Show summary + metadata for one session (transcript: nuvira history show)",flags:[]},{name:"session resume",description:"Run D1 auto-recall for a project and print the recall card",flags:["--project <project>","--since <since>"]}]},{name:"marketplace",description:"Browse and install community plugins and workflow templates",commands:[{name:"marketplace browse",description:"Browse all available marketplace items",flags:["--plugins","--refresh","--workflows"]},{name:"marketplace search",description:"Search across plugins and workflow templates",flags:[]},{name:"marketplace install",description:"Install a workflow template from the registry",flags:[]},{name:"marketplace info",description:"Show detailed information about a marketplace item",flags:[]}]},{name:"mcp",description:"Manage MCP (Model Context Protocol) server connections",commands:[{name:"mcp list",description:"List all discovered MCP servers and their tools",flags:[]},{name:"mcp connect",description:"Connect to an MCP server",flags:["--all"]},{name:"mcp call",description:"Call a tool on an MCP server",flags:["--args <args>","--server <server>"]},{name:"mcp info",description:"Show detailed information for an MCP server",flags:[]},{name:"mcp refresh",description:"Re-discover and reconnect to all MCP servers",flags:[]},{name:"mcp catalog",description:"List the curated MCP server catalog (vetted, exact-version pins)",flags:["--search <search>"]},{name:"mcp install",description:"Install a vetted MCP server from the catalog (writes ~/.nuvira/mcp/<name>.json)",flags:["--env <env>"]},{name:"mcp uninstall",description:"Remove an installed MCP server config",flags:[]},{name:"mcp serve",description:"Expose the agent's H1 tools as an MCP server over stdio (MCP clients / IDEs / other agents can connect)",flags:["--with <with>"]}]},{name:"ci",description:"Headless CI/CD mode — structured JSON output and exit codes for pipelines",commands:[{name:"ci execute",description:"Execute a goal and emit JSON result (exit 0 = success, 1 = failure)",flags:["--context-limit <context_limit>","--context-prune <context_prune>","--github-annotations","--memory","--model <model>","--planner-model <planner_model>","--provider <provider>","--reviewer-model <reviewer_model>","--sandbox","--timeout <timeout>","--writer-model <writer_model>"]},{name:"ci check",description:"Run a gate check (exit 0 = pass, 1 = fail) — minimal output, ideal for workflow gates",flags:["--model <model>","--provider <provider>","--verbose"]},{name:"ci review",description:"Review one or more files and emit JSON findings",flags:["--context <context>","--format <format>","--model <model>","--provider <provider>"]}]},{name:"publish",description:"Autonomous publish workflow — version, build, publish to npm & GitHub",commands:[]},{name:"credentials",description:"Store GitHub/npm release credentials so the agent can release without re-entering them",commands:[{name:"credentials status",description:"Show which release credentials are available, and where each came from",flags:[]},{name:"credentials set",description:"Store a credential in the nuvira credential store",flags:["--stdin","--value <value>"]},{name:"credentials forget",description:"Delete a stored credential",flags:[]},{name:"credentials verify",description:"Check the stored GitHub and npm tokens against the live services",flags:[]}]},{name:"bedrock",description:"AWS Bedrock setup and management (dedicated onboarding for Bedrock)",commands:[{name:"bedrock setup",description:"Interactive wizard to configure AWS Bedrock (credentials, region, model access)",flags:[]},{name:"bedrock status",description:"Show current Bedrock configuration and connectivity status",flags:[]},{name:"bedrock test",description:"Probe Bedrock models and test inference",flags:["--region <region>"]}]},{name:"phase",description:"Phase-wise project scope execution — multi-goal pipelines",commands:[{name:"phase create",description:"Create a new phase scope with ordered goals",flags:["--output <output>"]},{name:"phase execute",description:"Execute a phase scope from start to finish",flags:["--dry-run","--model <model>","--non-interactive","--provider <provider>","--skip-tests","--verbose"]},{name:"phase resume",description:"Resume a saved phase scope from where it left off",flags:["--model <model>","--provider <provider>","--skip-tests","--verbose"]},{name:"phase status",description:"Show progress of a phase scope",flags:[]},{name:"phase delete",description:"Delete a saved phase scope",flags:[]},{name:"phase list",description:"List all saved phase scopes",flags:[]}]},{name:"retrieval",description:"Vector retrieval — token-efficient context via local embeddings",commands:[{name:"retrieval stats",description:"Show token-savings transparency (how many tokens retrieval saved)",flags:[]},{name:"retrieval index",description:"Index a repo/file into the retrieval store (chunks embedded locally)",flags:[]},{name:"retrieval query",description:"Semantic search over the indexed repo (top-k chunks)",flags:[]},{name:"retrieval clear",description:"Clear the retrieval index and token-savings stats",flags:[]}]},{name:"knowledge",description:"Knowledge base — answer questions from your own tagged documents (vector retrieval)",commands:[{name:"knowledge add",description:"Ingest files or folders under a tag (extracted, chunked and embedded once)",flags:[]},{name:"knowledge query",description:"Retrieve the most relevant passages for a question, scoped to a tag",flags:["--top-k <top_k>"]},{name:"knowledge toc",description:"List a tag's documents and the headings in each",flags:[]},{name:"knowledge read",description:"Print a document, or one named section, VERBATIM (not a summary)",flags:["--section <section>"]},{name:"knowledge remove",description:"Remove ONE document from a tag (its chunks, stored text and manifest row)",flags:[]},{name:"knowledge sync",description:"Bring a tag up to date with its folders — hash-gated, prunes files that vanished",flags:[]},{name:"knowledge list",description:"List knowledge tags with document and chunk counts",flags:[]},{name:"knowledge stats",description:"Show details for one knowledge tag",flags:[]},{name:"knowledge forget",description:"Remove a tag's vectors and manifest entry",flags:[]}]},{name:"hooks",description:"Declarative lifecycle hooks — list/add/remove the rules that deny, notify or secret-scan tool calls (the same hooks.json the dashboard Hooks page edits; a hook is data, never code)",commands:[{name:"hooks list",description:"List built-in and user hooks with their seam, action and state",flags:[]},{name:"hooks add",description:"Declare a new hook (it is enabled unless --disabled is given)",flags:["--action <action>","--arg <arg>","--cwd <cwd>","--deny-on-hit","--disabled","--event <event>","--id <id>","--label <label>","--message <message>","--reason <reason>","--surface <surface>","--tool <tool>"]},{name:"hooks remove",description:"Remove a user hook (a built-in cannot be deleted — disable it instead)",flags:[]},{name:"hooks enable",description:"Turn a hook on (works on a built-in too)",flags:[]},{name:"hooks disable",description:"Turn a hook off",flags:[]}]},{name:"trace",description:"Inspect and replay per-step reasoning traces (every LLM call in a pipeline)",commands:[{name:"trace list",description:"Show recent traces",flags:["--limit <limit>"]},{name:"trace show",description:"Show a single trace (goal, timing, step summary)",flags:[]},{name:"trace replay",description:"Step-by-step replay of a trace — every LLM call with prompt digest, model, tokens, latency, and routing",flags:["--full"]},{name:"trace clear",description:"Delete all stored traces",flags:[]}]},{name:"rate",description:"Rate the last turn (good|bad) — records the one label a quality signal can be fit to (also on the dashboard Trace tab)",commands:[]},{name:"decisions",description:"The must-ask decisions recorded for this project — list, search, and revise them (written by ask_user)",commands:[{name:"decisions show",description:"",flags:["--json"]},{name:"decisions revise",description:"",flags:["--answer <answer>","--note <note>"]}]},{name:"continuity",description:"Session continuity — what is stored, and how to forget it",commands:[{name:"continuity list",description:"Show the continuity switches, stored sessions, and the semantic recall index",flags:[]},{name:"continuity clear",description:"Forget stored continuity data (no flags = both sessions and recall)",flags:["--recall","--sessions"]}]},{name:"website",description:"Open the Agent-Nuvira website — capabilities, commands, docs, setup",commands:[]}],xc={commandCount:gle,groupCount:vle,groups:yle},fE=xc.groups;function ble(e,t){return e.name.toLowerCase().includes(t)||e.description.toLowerCase().includes(t)}function xle({onPick:e}){const[t,n]=x.useState(""),r=x.useId(),a=t.trim().toLowerCase(),s=x.useMemo(()=>a?fE.map(l=>l.name.toLowerCase().includes(a)?l:{...l,commands:l.commands.filter(c=>ble(c,a))}).filter(l=>l.commands.length>0):fE,[a]),o=s.reduce((l,c)=>l+c.commands.length,0);return i.jsxs("section",{className:"command-browser",children:[i.jsxs("div",{className:"command-browser-head",children:[i.jsx("h2",{className:"section-title command-browser-title",children:"Browse commands"}),i.jsx("p",{className:"command-browser-count",children:a?`${o} of ${xc.commandCount} commands match “${t.trim()}”`:`${xc.commandCount} commands in ${xc.groupCount} groups`})]}),i.jsx("label",{className:"sr-only",htmlFor:r,children:"Filter commands"}),i.jsx("input",{id:r,type:"search",className:"admin-input command-browser-search",placeholder:"Filter commands — e.g. eval, memory, gateway status",value:t,onChange:l=>n(l.target.value),autoComplete:"off",spellCheck:!1}),s.length===0?i.jsxs("p",{className:"command-browser-empty",children:["No command matches “",t.trim(),"”. Clear the filter to see all ",xc.groupCount," groups."]}):i.jsx("div",{className:"command-browser-groups",children:s.map(l=>i.jsxs("details",{className:"command-group",open:a?!0:void 0,children:[i.jsxs("summary",{className:"command-group-summary",children:[i.jsx("code",{className:"command-group-name",children:l.name}),i.jsx("span",{className:"command-group-description",children:l.description}),i.jsx("span",{className:"command-group-count",children:l.commands.length})]}),i.jsx("ul",{className:"command-list",children:l.commands.map(c=>i.jsx("li",{className:"command-item",children:i.jsxs("button",{type:"button",className:"command-use",onClick:()=>e(c.name),title:`Insert “${c.name}” into the command box`,children:[i.jsx("span",{className:"command-item-name",children:c.name}),i.jsx("span",{className:"command-item-description",children:c.description}),c.flags.length>0&&i.jsx("span",{className:"command-item-flags",children:c.flags.map(u=>i.jsx("code",{children:u},u))})]})},c.name))})]},`${l.name}:${a?"filtering":"browsing"}`))})]})}const hE={running:"⏳ running",done:"✅ done",failed:"❌ failed",cancelled:"⏹ cancelled",timeout:"⏰ timed out",error:"💥 error"};function pE(e){switch(e){case"done":return"task-status-done";case"running":return"task-status-running";case"failed":return"task-status-failed";case"cancelled":return"task-status-cancelled";case"timeout":return"task-status-timeout";default:return"task-status-error"}}function wle(e){const t=[];let n="",r=null;for(const a of e.trim())r?a===r?r=null:n+=a:a==='"'||a==="'"?r=a:/\s/.test(a)?n&&(t.push(n),n=""):n+=a;return n&&t.push(n),t}function mE(e){return e===null?"—":e<1e3?`${e}ms`:`${(e/1e3).toFixed(1)}s`}function kle(e){const t=Math.max(0,Math.floor((Date.now()-e)/1e3));if(t<60)return`${t}s ago`;const n=Math.floor(t/60);return n<60?`${n}m ago`:`${Math.floor(n/60)}h ago`}function Sle(){const[e,t]=x.useState(null),n=Vr(),[r,a]=x.useState(""),[s,o]=x.useState(300),[l,c]=x.useState(!1),[u,d]=x.useState(""),[f,h]=x.useState(null),[p,g]=x.useState([]),[m,y]=x.useState(!0),v=x.useRef(null),S=x.useRef(null),w=x.useRef(null),j=x.useCallback(async()=>{const O=await K.listTasks();O&&g(O.tasks)},[]);x.useEffect(()=>{K.fetchAdminAuthStatus().then(O=>{t(O?{configured:O.configured,authenticated:O.authenticated,role:O.role??null}:{configured:!1,authenticated:!1,role:null}),O!=null&&O.authenticated&&j()})},[j,n]),x.useEffect(()=>{var O,P;if(m&&(f==null?void 0:f.status)==="running")try{(P=(O=v.current)==null?void 0:O.scrollIntoView)==null||P.call(O,{block:"end"})}catch{}},[f==null?void 0:f.logs.length,f==null?void 0:f.status,m]),x.useEffect(()=>()=>{var O;return(O=w.current)==null?void 0:O.call(w)},[]);const k=x.useCallback((O,P)=>{var L;if((L=w.current)==null||L.call(w),h(O),d(""),!P)return;const z=K.subscribeTask(O.id,{onLog:M=>h(D=>D&&D.id===O.id?{...D,logs:[...D.logs,M]}:D),onStatus:M=>h(D=>D&&D.id===O.id?{...D,status:M}:D)});w.current=z},[]),b=x.useCallback(async()=>{const O=wle(r);if(O.length===0){d("Type a command first — e.g. `eval run --task smoke-test` or `gateway status`.");return}c(!0),d("");const P=await K.startTask(O,s*1e3);if(c(!1),!P.ok||!P.task){d(P.error||"Failed to start task.");return}a(""),j(),k(P.task,!0)},[r,s,k,j]),N=x.useCallback(async O=>{await K.cancelTask(O)},[]),_=x.useCallback(O=>{var P;a(`${O} `),d(""),(P=S.current)==null||P.focus()},[]),T=x.useCallback(async O=>{const P=await K.getTask(O);P!=null&&P.task&&k(P.task,!1)},[k]),C=x.useCallback(()=>{var O;(O=w.current)==null||O.call(w),h(null)},[]);return e?e.authenticated?i.jsxs("div",{className:"panel",children:[i.jsx(Re,{icon:"🚀",title:"Command Console"}),i.jsx("p",{className:"admin-subtitle",children:"Run any agent-nuvira command — the same CLI, executed by the dashboard. Messaging, skills, tools, eval, memory, traces and more."}),i.jsxs("form",{className:"task-run-form",onSubmit:O=>{O.preventDefault(),b()},children:[i.jsx("input",{ref:S,className:"admin-input task-cmd-input",placeholder:"eval run --task smoke-test · gateway status · skill list · memory stats",value:r,onChange:O=>a(O.target.value),autoComplete:"off",spellCheck:!1}),i.jsxs("select",{className:"admin-input task-timeout-select",title:"Task timeout",value:s,onChange:O=>o(Number(O.target.value)),children:[i.jsx("option",{value:60,children:"1 min"}),i.jsx("option",{value:300,children:"5 min"}),i.jsx("option",{value:600,children:"10 min"}),i.jsx("option",{value:1800,children:"30 min"})]}),i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:l||r.trim()==="",children:l?"⏳ Starting…":"▶ Run"})]}),u&&i.jsx("div",{className:"admin-error",children:u}),i.jsx("p",{className:"task-hint",children:"Long-running commands stream their output live. Runs are capped at the chosen timeout and can be cancelled."}),i.jsx(xle,{onPick:_}),f&&i.jsxs("div",{className:"task-console-wrap",children:[i.jsxs("div",{className:"task-console-header",children:[i.jsx("code",{className:"task-console-cmd",children:f.command}),i.jsx("span",{className:`task-status ${pE(f.status)}`,children:hE[f.status]}),i.jsxs("span",{className:"task-meta",children:["exit ",f.exitCode??"—"," · ",mE(f.durationMs)]}),f.status==="running"&&i.jsx("button",{className:"admin-mini-btn task-cancel-btn",onClick:()=>void N(f.id),children:"⏹ Cancel"}),i.jsx("button",{className:"admin-mini-btn",onClick:C,children:"✕ Close"})]}),i.jsxs("div",{className:"task-console",children:[f.logs.map((O,P)=>i.jsx("div",{className:`task-line task-line-${O.stream}`,children:O.text},P)),f.logs.length===0&&f.status==="running"&&i.jsx("div",{className:"task-line task-line-system",children:"⏳ waiting for output…"}),i.jsx("div",{ref:v})]}),i.jsxs("label",{className:"task-autoscroll",children:[i.jsx("input",{type:"checkbox",checked:m,onChange:O=>y(O.target.checked)})," auto-scroll"]})]}),i.jsx("h2",{className:"task-history-title",children:"History"}),p.length===0?i.jsx("div",{className:"empty-state",children:"No tasks yet — run your first command above."}):i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table task-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Command"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Exit"}),i.jsx("th",{children:"Duration"}),i.jsx("th",{children:"When"})]})}),i.jsx("tbody",{children:p.map(O=>i.jsxs("tr",{className:(f==null?void 0:f.id)===O.id?"task-row-active":"",onClick:()=>void T(O.id),children:[i.jsx("td",{children:i.jsx("code",{children:O.command})}),i.jsx("td",{children:i.jsx("span",{className:`task-status ${pE(O.status)}`,children:hE[O.status]})}),i.jsx("td",{children:O.exitCode??"—"}),i.jsx("td",{children:mE(O.durationMs)}),i.jsx("td",{children:kle(O.startedAt)})]},O.id))})]})})]}):i.jsxs("div",{className:"panel",children:[i.jsx(Re,{icon:"🚀",title:"Command Console"}),i.jsxs("div",{className:"empty-state",children:[i.jsxs("p",{children:[i.jsx("strong",{children:"Log in to run tasks."})," The console executes commands on this machine, so it needs an admin session (like the Agent Hub toggles)."]}),i.jsx("p",{children:e.configured?i.jsx(rn,{className:"admin-refresh-btn",to:"/admin",children:"🔐 Log in"}):i.jsx(rn,{className:"admin-refresh-btn",to:"/admin",children:"🔐 Create admin account"})})]})]}):i.jsxs("div",{className:"panel",children:[i.jsx(Re,{icon:"🚀",title:"Command Console"}),i.jsx("div",{className:"loading-state",children:"Loading…"})]})}function jle(e,t){const n={};return(e[e.length-1]===""?[...e,""]:e).join((n.padRight?" ":"")+","+(n.padLeft===!1?"":" ")).trim()}const Nle=/^[$_\p{ID_Start}][$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,Ele=/^[$_\p{ID_Start}][-$_\u{200C}\u{200D}\p{ID_Continue}]*$/u,_le={};function gE(e,t){return(_le.jsx?Ele:Nle).test(e)}const Ale=/[ \t\n\f\r]/g;function Cle(e){return typeof e=="object"?e.type==="text"?vE(e.value):!1:vE(e)}function vE(e){return e.replace(Ale,"")===""}class ad{constructor(t,n,r){this.normal=n,this.property=t,r&&(this.space=r)}}ad.prototype.normal={};ad.prototype.property={};ad.prototype.space=void 0;function yM(e,t){const n={},r={};for(const a of e)Object.assign(n,a.property),Object.assign(r,a.normal);return new ad(n,r,t)}function Fb(e){return e.toLowerCase()}class Gn{constructor(t,n){this.attribute=n,this.property=t}}Gn.prototype.attribute="";Gn.prototype.booleanish=!1;Gn.prototype.boolean=!1;Gn.prototype.commaOrSpaceSeparated=!1;Gn.prototype.commaSeparated=!1;Gn.prototype.defined=!1;Gn.prototype.mustUseProperty=!1;Gn.prototype.number=!1;Gn.prototype.overloadedBoolean=!1;Gn.prototype.property="";Gn.prototype.spaceSeparated=!1;Gn.prototype.space=void 0;let Tle=0;const Me=qs(),Wt=qs(),Ub=qs(),le=qs(),dt=qs(),_s=qs(),Xn=qs();function qs(){return 2**++Tle}const Wb=Object.freeze(Object.defineProperty({__proto__:null,boolean:Me,booleanish:Wt,commaOrSpaceSeparated:Xn,commaSeparated:_s,number:le,overloadedBoolean:Ub,spaceSeparated:dt},Symbol.toStringTag,{value:"Module"})),qg=Object.keys(Wb);class h0 extends Gn{constructor(t,n,r,a){let s=-1;if(super(t,n),yE(this,"space",a),typeof r=="number")for(;++s<qg.length;){const o=qg[s];yE(this,qg[s],(r&Wb[o])===Wb[o])}}}h0.prototype.defined=!0;function yE(e,t,n){n&&(e[t]=n)}function Ml(e){const t={},n={};for(const[r,a]of Object.entries(e.properties)){const s=new h0(r,e.transform(e.attributes||{},r),a,e.space);e.mustUseProperty&&e.mustUseProperty.includes(r)&&(s.mustUseProperty=!0),t[r]=s,n[Fb(r)]=r,n[Fb(s.attribute)]=r}return new ad(t,n,e.space)}const bM=Ml({properties:{ariaActiveDescendant:null,ariaAtomic:Wt,ariaAutoComplete:null,ariaBusy:Wt,ariaChecked:Wt,ariaColCount:le,ariaColIndex:le,ariaColSpan:le,ariaControls:dt,ariaCurrent:null,ariaDescribedBy:dt,ariaDetails:null,ariaDisabled:Wt,ariaDropEffect:dt,ariaErrorMessage:null,ariaExpanded:Wt,ariaFlowTo:dt,ariaGrabbed:Wt,ariaHasPopup:null,ariaHidden:Wt,ariaInvalid:null,ariaKeyShortcuts:null,ariaLabel:null,ariaLabelledBy:dt,ariaLevel:le,ariaLive:null,ariaModal:Wt,ariaMultiLine:Wt,ariaMultiSelectable:Wt,ariaOrientation:null,ariaOwns:dt,ariaPlaceholder:null,ariaPosInSet:le,ariaPressed:Wt,ariaReadOnly:Wt,ariaRelevant:null,ariaRequired:Wt,ariaRoleDescription:dt,ariaRowCount:le,ariaRowIndex:le,ariaRowSpan:le,ariaSelected:Wt,ariaSetSize:le,ariaSort:null,ariaValueMax:le,ariaValueMin:le,ariaValueNow:le,ariaValueText:null,role:null},transform(e,t){return t==="role"?t:"aria-"+t.slice(4).toLowerCase()}});function xM(e,t){return t in e?e[t]:t}function wM(e,t){return xM(e,t.toLowerCase())}const Ole=Ml({attributes:{acceptcharset:"accept-charset",classname:"class",htmlfor:"for",httpequiv:"http-equiv"},mustUseProperty:["checked","multiple","muted","selected"],properties:{abbr:null,accept:_s,acceptCharset:dt,accessKey:dt,action:null,allow:null,allowFullScreen:Me,allowPaymentRequest:Me,allowUserMedia:Me,alpha:Me,alt:null,as:null,async:Me,autoCapitalize:null,autoComplete:dt,autoFocus:Me,autoPlay:Me,blocking:dt,capture:null,charSet:null,checked:Me,cite:null,className:dt,closedBy:null,colorSpace:null,cols:le,colSpan:le,command:null,commandFor:null,content:null,contentEditable:Wt,controls:Me,controlsList:dt,coords:le|_s,crossOrigin:null,data:null,dateTime:null,decoding:null,default:Me,defer:Me,dir:null,dirName:null,disabled:Me,download:Ub,draggable:Wt,encType:null,enterKeyHint:null,fetchPriority:null,form:null,formAction:null,formEncType:null,formMethod:null,formNoValidate:Me,formTarget:null,headers:dt,height:le,hidden:Ub,high:le,href:null,hrefLang:null,htmlFor:dt,httpEquiv:dt,id:null,imageSizes:null,imageSrcSet:null,inert:Me,inputMode:null,integrity:null,is:null,isMap:Me,itemId:null,itemProp:dt,itemRef:dt,itemScope:Me,itemType:dt,kind:null,label:null,lang:null,language:null,list:null,loading:null,loop:Me,low:le,manifest:null,max:null,maxLength:le,media:null,method:null,min:null,minLength:le,multiple:Me,muted:Me,name:null,nonce:null,noModule:Me,noValidate:Me,onAbort:null,onAfterPrint:null,onAuxClick:null,onBeforeMatch:null,onBeforePrint:null,onBeforeToggle:null,onBeforeUnload:null,onBlur:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onContextLost:null,onContextMenu:null,onContextRestored:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnded:null,onError:null,onFocus:null,onFormData:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLanguageChange:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadEnd:null,onLoadStart:null,onMessage:null,onMessageError:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRejectionHandled:null,onReset:null,onResize:null,onScroll:null,onScrollEnd:null,onSecurityPolicyViolation:null,onSeeked:null,onSeeking:null,onSelect:null,onSlotChange:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnhandledRejection:null,onUnload:null,onVolumeChange:null,onWaiting:null,onWheel:null,open:Me,optimum:le,pattern:null,ping:dt,placeholder:null,playsInline:Me,popover:null,popoverTarget:null,popoverTargetAction:null,poster:null,preload:null,readOnly:Me,referrerPolicy:null,rel:dt,required:Me,reversed:Me,rows:le,rowSpan:le,sandbox:dt,scope:null,scoped:Me,seamless:Me,selected:Me,shadowRootClonable:Me,shadowRootCustomElementRegistry:Me,shadowRootDelegatesFocus:Me,shadowRootMode:null,shadowRootSerializable:Me,shape:null,size:le,sizes:null,slot:null,span:le,spellCheck:Wt,src:null,srcDoc:null,srcLang:null,srcSet:null,start:le,step:null,style:null,tabIndex:le,target:null,title:null,translate:null,type:null,typeMustMatch:Me,useMap:null,value:Wt,width:le,wrap:null,writingSuggestions:null,align:null,aLink:null,archive:dt,axis:null,background:null,bgColor:null,border:le,borderColor:null,bottomMargin:le,cellPadding:null,cellSpacing:null,char:null,charOff:null,classId:null,clear:null,code:null,codeBase:null,codeType:null,color:null,compact:Me,declare:Me,event:null,face:null,frame:null,frameBorder:null,hSpace:le,leftMargin:le,link:null,longDesc:null,lowSrc:null,marginHeight:le,marginWidth:le,noResize:Me,noHref:Me,noShade:Me,noWrap:Me,object:null,profile:null,prompt:null,rev:null,rightMargin:le,rules:null,scheme:null,scrolling:Wt,standby:null,summary:null,text:null,topMargin:le,valueType:null,version:null,vAlign:null,vLink:null,vSpace:le,allowTransparency:null,autoCorrect:null,autoSave:null,credentialless:Me,disablePictureInPicture:Me,disableRemotePlayback:Me,exportParts:_s,part:dt,prefix:null,property:null,results:le,security:null,unselectable:null},space:"html",transform:wM}),Ple=Ml({attributes:{accentHeight:"accent-height",alignmentBaseline:"alignment-baseline",arabicForm:"arabic-form",baselineShift:"baseline-shift",capHeight:"cap-height",className:"class",clipPath:"clip-path",clipRule:"clip-rule",colorInterpolation:"color-interpolation",colorInterpolationFilters:"color-interpolation-filters",colorProfile:"color-profile",colorRendering:"color-rendering",crossOrigin:"crossorigin",dataType:"datatype",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",hrefLang:"hreflang",horizAdvX:"horiz-adv-x",horizOriginX:"horiz-origin-x",horizOriginY:"horiz-origin-y",imageRendering:"image-rendering",letterSpacing:"letter-spacing",lightingColor:"lighting-color",markerEnd:"marker-end",markerMid:"marker-mid",markerStart:"marker-start",maskType:"mask-type",navDown:"nav-down",navDownLeft:"nav-down-left",navDownRight:"nav-down-right",navLeft:"nav-left",navNext:"nav-next",navPrev:"nav-prev",navRight:"nav-right",navUp:"nav-up",navUpLeft:"nav-up-left",navUpRight:"nav-up-right",onAbort:"onabort",onActivate:"onactivate",onAfterPrint:"onafterprint",onBeforePrint:"onbeforeprint",onBegin:"onbegin",onCancel:"oncancel",onCanPlay:"oncanplay",onCanPlayThrough:"oncanplaythrough",onChange:"onchange",onClick:"onclick",onClose:"onclose",onCopy:"oncopy",onCueChange:"oncuechange",onCut:"oncut",onDblClick:"ondblclick",onDrag:"ondrag",onDragEnd:"ondragend",onDragEnter:"ondragenter",onDragExit:"ondragexit",onDragLeave:"ondragleave",onDragOver:"ondragover",onDragStart:"ondragstart",onDrop:"ondrop",onDurationChange:"ondurationchange",onEmptied:"onemptied",onEnd:"onend",onEnded:"onended",onError:"onerror",onFocus:"onfocus",onFocusIn:"onfocusin",onFocusOut:"onfocusout",onHashChange:"onhashchange",onInput:"oninput",onInvalid:"oninvalid",onKeyDown:"onkeydown",onKeyPress:"onkeypress",onKeyUp:"onkeyup",onLoad:"onload",onLoadedData:"onloadeddata",onLoadedMetadata:"onloadedmetadata",onLoadStart:"onloadstart",onMessage:"onmessage",onMouseDown:"onmousedown",onMouseEnter:"onmouseenter",onMouseLeave:"onmouseleave",onMouseMove:"onmousemove",onMouseOut:"onmouseout",onMouseOver:"onmouseover",onMouseUp:"onmouseup",onMouseWheel:"onmousewheel",onOffline:"onoffline",onOnline:"ononline",onPageHide:"onpagehide",onPageShow:"onpageshow",onPaste:"onpaste",onPause:"onpause",onPlay:"onplay",onPlaying:"onplaying",onPopState:"onpopstate",onProgress:"onprogress",onRateChange:"onratechange",onRepeat:"onrepeat",onReset:"onreset",onResize:"onresize",onScroll:"onscroll",onSeeked:"onseeked",onSeeking:"onseeking",onSelect:"onselect",onShow:"onshow",onStalled:"onstalled",onStorage:"onstorage",onSubmit:"onsubmit",onSuspend:"onsuspend",onTimeUpdate:"ontimeupdate",onToggle:"ontoggle",onUnload:"onunload",onVolumeChange:"onvolumechange",onWaiting:"onwaiting",onZoom:"onzoom",overlinePosition:"overline-position",overlineThickness:"overline-thickness",paintOrder:"paint-order",panose1:"panose-1",pointerEvents:"pointer-events",referrerPolicy:"referrerpolicy",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",tabIndex:"tabindex",textAnchor:"text-anchor",textDecoration:"text-decoration",textRendering:"text-rendering",transformOrigin:"transform-origin",typeOf:"typeof",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",xHeight:"x-height",playbackOrder:"playbackorder",timelineBegin:"timelinebegin"},properties:{about:Xn,accentHeight:le,accumulate:null,additive:null,alignmentBaseline:null,alphabetic:le,amplitude:le,arabicForm:null,ascent:le,attributeName:null,attributeType:null,azimuth:le,bandwidth:null,baselineShift:null,baseFrequency:null,baseProfile:null,bbox:null,begin:null,bias:le,by:null,calcMode:null,capHeight:le,className:dt,clip:null,clipPath:null,clipPathUnits:null,clipRule:null,color:null,colorInterpolation:null,colorInterpolationFilters:null,colorProfile:null,colorRendering:null,content:null,contentScriptType:null,contentStyleType:null,crossOrigin:null,cursor:null,cx:null,cy:null,d:null,dataType:null,defaultAction:null,descent:le,diffuseConstant:le,direction:null,display:null,dur:null,divisor:le,dominantBaseline:null,download:Me,dx:null,dy:null,edgeMode:null,editable:null,elevation:le,enableBackground:null,end:null,event:null,exponent:le,externalResourcesRequired:null,fill:null,fillOpacity:le,fillRule:null,filter:null,filterRes:null,filterUnits:null,floodColor:null,floodOpacity:null,focusable:null,focusHighlight:null,fontFamily:null,fontSize:null,fontSizeAdjust:null,fontStretch:null,fontStyle:null,fontVariant:null,fontWeight:null,format:null,fr:null,from:null,fx:null,fy:null,g1:_s,g2:_s,glyphName:_s,glyphOrientationHorizontal:null,glyphOrientationVertical:null,glyphRef:null,gradientTransform:null,gradientUnits:null,handler:null,hanging:le,hatchContentUnits:null,hatchUnits:null,height:null,href:null,hrefLang:null,horizAdvX:le,horizOriginX:le,horizOriginY:le,id:null,ideographic:le,imageRendering:null,initialVisibility:null,in:null,in2:null,intercept:le,k:le,k1:le,k2:le,k3:le,k4:le,kernelMatrix:Xn,kernelUnitLength:null,keyPoints:null,keySplines:null,keyTimes:null,kerning:null,lang:null,lengthAdjust:null,letterSpacing:null,lightingColor:null,limitingConeAngle:le,local:null,markerEnd:null,markerMid:null,markerStart:null,markerHeight:null,markerUnits:null,markerWidth:null,mask:null,maskContentUnits:null,maskType:null,maskUnits:null,mathematical:null,max:null,media:null,mediaCharacterEncoding:null,mediaContentEncodings:null,mediaSize:le,mediaTime:null,method:null,min:null,mode:null,name:null,navDown:null,navDownLeft:null,navDownRight:null,navLeft:null,navNext:null,navPrev:null,navRight:null,navUp:null,navUpLeft:null,navUpRight:null,numOctaves:null,observer:null,offset:null,onAbort:null,onActivate:null,onAfterPrint:null,onBeforePrint:null,onBegin:null,onCancel:null,onCanPlay:null,onCanPlayThrough:null,onChange:null,onClick:null,onClose:null,onCopy:null,onCueChange:null,onCut:null,onDblClick:null,onDrag:null,onDragEnd:null,onDragEnter:null,onDragExit:null,onDragLeave:null,onDragOver:null,onDragStart:null,onDrop:null,onDurationChange:null,onEmptied:null,onEnd:null,onEnded:null,onError:null,onFocus:null,onFocusIn:null,onFocusOut:null,onHashChange:null,onInput:null,onInvalid:null,onKeyDown:null,onKeyPress:null,onKeyUp:null,onLoad:null,onLoadedData:null,onLoadedMetadata:null,onLoadStart:null,onMessage:null,onMouseDown:null,onMouseEnter:null,onMouseLeave:null,onMouseMove:null,onMouseOut:null,onMouseOver:null,onMouseUp:null,onMouseWheel:null,onOffline:null,onOnline:null,onPageHide:null,onPageShow:null,onPaste:null,onPause:null,onPlay:null,onPlaying:null,onPopState:null,onProgress:null,onRateChange:null,onRepeat:null,onReset:null,onResize:null,onScroll:null,onSeeked:null,onSeeking:null,onSelect:null,onShow:null,onStalled:null,onStorage:null,onSubmit:null,onSuspend:null,onTimeUpdate:null,onToggle:null,onUnload:null,onVolumeChange:null,onWaiting:null,onZoom:null,opacity:null,operator:null,order:null,orient:null,orientation:null,origin:null,overflow:null,overlay:null,overlinePosition:le,overlineThickness:le,paintOrder:null,panose1:null,path:null,pathLength:le,patternContentUnits:null,patternTransform:null,patternUnits:null,phase:null,ping:dt,pitch:null,playbackOrder:null,pointerEvents:null,points:null,pointsAtX:le,pointsAtY:le,pointsAtZ:le,preserveAlpha:null,preserveAspectRatio:null,primitiveUnits:null,propagate:null,property:Xn,r:null,radius:null,referrerPolicy:null,refX:null,refY:null,rel:Xn,rev:Xn,renderingIntent:null,repeatCount:null,repeatDur:null,requiredExtensions:Xn,requiredFeatures:Xn,requiredFonts:Xn,requiredFormats:Xn,resource:null,restart:null,result:null,rotate:null,rx:null,ry:null,scale:null,seed:null,shapeRendering:null,side:null,slope:null,snapshotTime:null,specularConstant:le,specularExponent:le,spreadMethod:null,spacing:null,startOffset:null,stdDeviation:null,stemh:null,stemv:null,stitchTiles:null,stopColor:null,stopOpacity:null,strikethroughPosition:le,strikethroughThickness:le,string:null,stroke:null,strokeDashArray:Xn,strokeDashOffset:null,strokeLineCap:null,strokeLineJoin:null,strokeMiterLimit:le,strokeOpacity:le,strokeWidth:null,style:null,surfaceScale:le,syncBehavior:null,syncBehaviorDefault:null,syncMaster:null,syncTolerance:null,syncToleranceDefault:null,systemLanguage:Xn,tabIndex:le,tableValues:null,target:null,targetX:le,targetY:le,textAnchor:null,textDecoration:null,textRendering:null,textLength:null,timelineBegin:null,title:null,transformBehavior:null,type:null,typeOf:Xn,to:null,transform:null,transformOrigin:null,u1:null,u2:null,underlinePosition:le,underlineThickness:le,unicode:null,unicodeBidi:null,unicodeRange:null,unitsPerEm:le,values:null,vAlphabetic:le,vMathematical:le,vectorEffect:null,vHanging:le,vIdeographic:le,version:null,vertAdvY:le,vertOriginX:le,vertOriginY:le,viewBox:null,viewTarget:null,visibility:null,width:null,widths:null,wordSpacing:null,writingMode:null,x:null,x1:null,x2:null,xChannelSelector:null,xHeight:le,y:null,y1:null,y2:null,yChannelSelector:null,z:null,zoomAndPan:null},space:"svg",transform:xM}),kM=Ml({properties:{xLinkActuate:null,xLinkArcRole:null,xLinkHref:null,xLinkRole:null,xLinkShow:null,xLinkTitle:null,xLinkType:null},space:"xlink",transform(e,t){return"xlink:"+t.slice(5).toLowerCase()}}),SM=Ml({attributes:{xmlnsxlink:"xmlns:xlink"},properties:{xmlnsXLink:null,xmlns:null},space:"xmlns",transform:wM}),jM=Ml({properties:{xmlBase:null,xmlLang:null,xmlSpace:null},space:"xml",transform(e,t){return"xml:"+t.slice(3).toLowerCase()}}),Rle={classId:"classID",dataType:"datatype",itemId:"itemID",strokeDashArray:"strokeDasharray",strokeDashOffset:"strokeDashoffset",strokeLineCap:"strokeLinecap",strokeLineJoin:"strokeLinejoin",strokeMiterLimit:"strokeMiterlimit",typeOf:"typeof",xLinkActuate:"xlinkActuate",xLinkArcRole:"xlinkArcrole",xLinkHref:"xlinkHref",xLinkRole:"xlinkRole",xLinkShow:"xlinkShow",xLinkTitle:"xlinkTitle",xLinkType:"xlinkType",xmlnsXLink:"xmlnsXlink"},Mle=/[A-Z]/g,bE=/-[a-z]/g,Ile=/^data[-\w.:]+$/i;function $le(e,t){const n=Fb(t);let r=t,a=Gn;if(n in e.normal)return e.property[e.normal[n]];if(n.length>4&&n.slice(0,4)==="data"&&Ile.test(t)){if(t.charAt(4)==="-"){const s=t.slice(5).replace(bE,Dle);r="data"+s.charAt(0).toUpperCase()+s.slice(1)}else{const s=t.slice(4);if(!bE.test(s)){let o=s.replace(Mle,Lle);o.charAt(0)!=="-"&&(o="-"+o),t="data"+o}}a=h0}return new a(r,t)}function Lle(e){return"-"+e.toLowerCase()}function Dle(e){return e.charAt(1).toUpperCase()}const Ble=yM([bM,Ole,kM,SM,jM],"html"),p0=yM([bM,Ple,kM,SM,jM],"svg");function zle(e){return e.join(" ").trim()}var m0={},xE=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g,Fle=/\n/g,Ule=/^\s*/,Wle=/^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/,Hle=/^:\s*/,Gle=/^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/,qle=/^[;\s]*/,Kle=/^\s+|\s+$/g,Vle=`
|
|
165
|
+
`,wE="/",kE="*",fs="",Yle="comment",Xle="declaration";function Qle(e,t){if(typeof e!="string")throw new TypeError("First argument must be a string");if(!e)return[];t=t||{};var n=1,r=1;function a(g){var m=g.match(Fle);m&&(n+=m.length);var y=g.lastIndexOf(Vle);r=~y?g.length-y:r+g.length}function s(){var g={line:n,column:r};return function(m){return m.position=new o(g),u(),m}}function o(g){this.start=g,this.end={line:n,column:r},this.source=t.source}o.prototype.content=e;function l(g){var m=new Error(t.source+":"+n+":"+r+": "+g);if(m.reason=g,m.filename=t.source,m.line=n,m.column=r,m.source=e,!t.silent)throw m}function c(g){var m=g.exec(e);if(m){var y=m[0];return a(y),e=e.slice(y.length),m}}function u(){c(Ule)}function d(g){var m;for(g=g||[];m=f();)m!==!1&&g.push(m);return g}function f(){var g=s();if(!(wE!=e.charAt(0)||kE!=e.charAt(1))){for(var m=2;fs!=e.charAt(m)&&(kE!=e.charAt(m)||wE!=e.charAt(m+1));)++m;if(m+=2,fs===e.charAt(m-1))return l("End of comment missing");var y=e.slice(2,m-2);return r+=2,a(y),e=e.slice(m),r+=2,g({type:Yle,comment:y})}}function h(){var g=s(),m=c(Wle);if(m){if(f(),!c(Hle))return l("property missing ':'");var y=c(Gle),v=g({type:Xle,property:SE(m[0].replace(xE,fs)),value:y?SE(y[0].replace(xE,fs)):fs});return c(qle),v}}function p(){var g=[];d(g);for(var m;m=h();)m!==!1&&(g.push(m),d(g));return g}return u(),p()}function SE(e){return e?e.replace(Kle,fs):fs}var Zle=Qle,Jle=li&&li.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(m0,"__esModule",{value:!0});m0.default=tce;const ece=Jle(Zle);function tce(e,t){let n=null;if(!e||typeof e!="string")return n;const r=(0,ece.default)(e),a=typeof t=="function";return r.forEach(s=>{if(s.type!=="declaration")return;const{property:o,value:l}=s;a?t(o,l,s):l&&(n=n||{},n[o]=l)}),n}var km={};Object.defineProperty(km,"__esModule",{value:!0});km.camelCase=void 0;var nce=/^--[a-zA-Z0-9_-]+$/,rce=/-([a-z])/g,ace=/^[^-]+$/,ice=/^-(webkit|moz|ms|o|khtml)-/,sce=/^-(ms)-/,oce=function(e){return!e||ace.test(e)||nce.test(e)},lce=function(e,t){return t.toUpperCase()},jE=function(e,t){return"".concat(t,"-")},cce=function(e,t){return t===void 0&&(t={}),oce(e)?e:(e=e.toLowerCase(),t.reactCompat?e=e.replace(sce,jE):e=e.replace(ice,jE),e.replace(rce,lce))};km.camelCase=cce;var uce=li&&li.__importDefault||function(e){return e&&e.__esModule?e:{default:e}},dce=uce(m0),fce=km;function Hb(e,t){var n={};return!e||typeof e!="string"||(0,dce.default)(e,function(r,a){r&&a&&(n[(0,fce.camelCase)(r,t)]=a)}),n}Hb.default=Hb;var hce=Hb;const pce=tt(hce),NM=EM("end"),g0=EM("start");function EM(e){return t;function t(n){const r=n&&n.position&&n.position[e]||{};if(typeof r.line=="number"&&r.line>0&&typeof r.column=="number"&&r.column>0)return{line:r.line,column:r.column,offset:typeof r.offset=="number"&&r.offset>-1?r.offset:void 0}}}function mce(e){const t=g0(e),n=NM(e);if(t&&n)return{start:t,end:n}}function $c(e){return!e||typeof e!="object"?"":"position"in e||"type"in e?NE(e.position):"start"in e||"end"in e?NE(e):"line"in e||"column"in e?Gb(e):""}function Gb(e){return EE(e&&e.line)+":"+EE(e&&e.column)}function NE(e){return Gb(e&&e.start)+"-"+Gb(e&&e.end)}function EE(e){return e&&typeof e=="number"?e:1}class Nn extends Error{constructor(t,n,r){super(),typeof n=="string"&&(r=n,n=void 0);let a="",s={},o=!1;if(n&&("line"in n&&"column"in n?s={place:n}:"start"in n&&"end"in n?s={place:n}:"type"in n?s={ancestors:[n],place:n.position}:s={...n}),typeof t=="string"?a=t:!s.cause&&t&&(o=!0,a=t.message,s.cause=t),!s.ruleId&&!s.source&&typeof r=="string"){const c=r.indexOf(":");c===-1?s.ruleId=r:(s.source=r.slice(0,c),s.ruleId=r.slice(c+1))}if(!s.place&&s.ancestors&&s.ancestors){const c=s.ancestors[s.ancestors.length-1];c&&(s.place=c.position)}const l=s.place&&"start"in s.place?s.place.start:s.place;this.ancestors=s.ancestors||void 0,this.cause=s.cause||void 0,this.column=l?l.column:void 0,this.fatal=void 0,this.file="",this.message=a,this.line=l?l.line:void 0,this.name=$c(s.place)||"1:1",this.place=s.place||void 0,this.reason=this.message,this.ruleId=s.ruleId||void 0,this.source=s.source||void 0,this.stack=o&&s.cause&&typeof s.cause.stack=="string"?s.cause.stack:"",this.actual=void 0,this.expected=void 0,this.note=void 0,this.url=void 0}}Nn.prototype.file="";Nn.prototype.name="";Nn.prototype.reason="";Nn.prototype.message="";Nn.prototype.stack="";Nn.prototype.column=void 0;Nn.prototype.line=void 0;Nn.prototype.ancestors=void 0;Nn.prototype.cause=void 0;Nn.prototype.fatal=void 0;Nn.prototype.place=void 0;Nn.prototype.ruleId=void 0;Nn.prototype.source=void 0;const v0={}.hasOwnProperty,gce=new Map,vce=/[A-Z]/g,yce=new Set(["table","tbody","thead","tfoot","tr"]),bce=new Set(["td","th"]),_M="https://github.com/syntax-tree/hast-util-to-jsx-runtime";function xce(e,t){if(!t||t.Fragment===void 0)throw new TypeError("Expected `Fragment` in options");const n=t.filePath||void 0;let r;if(t.development){if(typeof t.jsxDEV!="function")throw new TypeError("Expected `jsxDEV` in options when `development: true`");r=Ace(n,t.jsxDEV)}else{if(typeof t.jsx!="function")throw new TypeError("Expected `jsx` in production options");if(typeof t.jsxs!="function")throw new TypeError("Expected `jsxs` in production options");r=_ce(n,t.jsx,t.jsxs)}const a={Fragment:t.Fragment,ancestors:[],components:t.components||{},create:r,elementAttributeNameCase:t.elementAttributeNameCase||"react",evaluater:t.createEvaluater?t.createEvaluater():void 0,filePath:n,ignoreInvalidStyle:t.ignoreInvalidStyle||!1,passKeys:t.passKeys!==!1,passNode:t.passNode||!1,schema:t.space==="svg"?p0:Ble,stylePropertyNameCase:t.stylePropertyNameCase||"dom",tableCellAlignToStyle:t.tableCellAlignToStyle!==!1},s=AM(a,e,void 0);return s&&typeof s!="string"?s:a.create(e,a.Fragment,{children:s||void 0},void 0)}function AM(e,t,n){if(t.type==="element")return wce(e,t,n);if(t.type==="mdxFlowExpression"||t.type==="mdxTextExpression")return kce(e,t);if(t.type==="mdxJsxFlowElement"||t.type==="mdxJsxTextElement")return jce(e,t,n);if(t.type==="mdxjsEsm")return Sce(e,t);if(t.type==="root")return Nce(e,t,n);if(t.type==="text")return Ece(e,t)}function wce(e,t,n){const r=e.schema;let a=r;t.tagName.toLowerCase()==="svg"&&r.space==="html"&&(a=p0,e.schema=a),e.ancestors.push(t);const s=TM(e,t.tagName,!1),o=Cce(e,t);let l=b0(e,t);return yce.has(t.tagName)&&(l=l.filter(function(c){return typeof c=="string"?!Cle(c):!0})),CM(e,o,s,t),y0(o,l),e.ancestors.pop(),e.schema=r,e.create(t,s,o,n)}function kce(e,t){if(t.data&&t.data.estree&&e.evaluater){const r=t.data.estree.body[0];return r.type,e.evaluater.evaluateExpression(r.expression)}Fu(e,t.position)}function Sce(e,t){if(t.data&&t.data.estree&&e.evaluater)return e.evaluater.evaluateProgram(t.data.estree);Fu(e,t.position)}function jce(e,t,n){const r=e.schema;let a=r;t.name==="svg"&&r.space==="html"&&(a=p0,e.schema=a),e.ancestors.push(t);const s=t.name===null?e.Fragment:TM(e,t.name,!0),o=Tce(e,t),l=b0(e,t);return CM(e,o,s,t),y0(o,l),e.ancestors.pop(),e.schema=r,e.create(t,s,o,n)}function Nce(e,t,n){const r={};return y0(r,b0(e,t)),e.create(t,e.Fragment,r,n)}function Ece(e,t){return t.value}function CM(e,t,n,r){typeof n!="string"&&n!==e.Fragment&&e.passNode&&(t.node=r)}function y0(e,t){if(t.length>0){const n=t.length>1?t:t[0];n&&(e.children=n)}}function _ce(e,t,n){return r;function r(a,s,o,l){const u=Array.isArray(o.children)?n:t;return l?u(s,o,l):u(s,o)}}function Ace(e,t){return n;function n(r,a,s,o){const l=Array.isArray(s.children),c=g0(r);return t(a,s,o,l,{columnNumber:c?c.column-1:void 0,fileName:e,lineNumber:c?c.line:void 0},void 0)}}function Cce(e,t){const n={};let r,a;for(a in t.properties)if(a!=="children"&&v0.call(t.properties,a)){const s=Oce(e,a,t.properties[a]);if(s){const[o,l]=s;e.tableCellAlignToStyle&&o==="align"&&typeof l=="string"&&bce.has(t.tagName)?r=l:n[o]=l}}if(r){const s=n.style||(n.style={});s[e.stylePropertyNameCase==="css"?"text-align":"textAlign"]=r}return n}function Tce(e,t){const n={};for(const r of t.attributes)if(r.type==="mdxJsxExpressionAttribute")if(r.data&&r.data.estree&&e.evaluater){const s=r.data.estree.body[0];s.type;const o=s.expression;o.type;const l=o.properties[0];l.type,Object.assign(n,e.evaluater.evaluateExpression(l.argument))}else Fu(e,t.position);else{const a=r.name;let s;if(r.value&&typeof r.value=="object")if(r.value.data&&r.value.data.estree&&e.evaluater){const l=r.value.data.estree.body[0];l.type,s=e.evaluater.evaluateExpression(l.expression)}else Fu(e,t.position);else s=r.value===null?!0:r.value;n[a]=s}return n}function b0(e,t){const n=[];let r=-1;const a=e.passKeys?new Map:gce;for(;++r<t.children.length;){const s=t.children[r];let o;if(e.passKeys){const c=s.type==="element"?s.tagName:s.type==="mdxJsxFlowElement"||s.type==="mdxJsxTextElement"?s.name:void 0;if(c){const u=a.get(c)||0;o=c+"-"+u,a.set(c,u+1)}}const l=AM(e,s,o);l!==void 0&&n.push(l)}return n}function Oce(e,t,n){const r=$le(e.schema,t);if(!(n==null||typeof n=="number"&&Number.isNaN(n))){if(Array.isArray(n)&&(n=r.commaSeparated?jle(n):zle(n)),r.property==="style"){let a=typeof n=="object"?n:Pce(e,String(n));return e.stylePropertyNameCase==="css"&&(a=Rce(a)),["style",a]}return[e.elementAttributeNameCase==="react"&&r.space?Rle[r.property]||r.property:r.attribute,n]}}function Pce(e,t){try{return pce(t,{reactCompat:!0})}catch(n){if(e.ignoreInvalidStyle)return{};const r=n,a=new Nn("Cannot parse `style` attribute",{ancestors:e.ancestors,cause:r,ruleId:"style",source:"hast-util-to-jsx-runtime"});throw a.file=e.filePath||void 0,a.url=_M+"#cannot-parse-style-attribute",a}}function TM(e,t,n){let r;if(!n)r={type:"Literal",value:t};else if(t.includes(".")){const a=t.split(".");let s=-1,o;for(;++s<a.length;){const l=gE(a[s])?{type:"Identifier",name:a[s]}:{type:"Literal",value:a[s]};o=o?{type:"MemberExpression",object:o,property:l,computed:!!(s&&l.type==="Literal"),optional:!1}:l}r=o}else r=gE(t)&&!/^[a-z]/.test(t)?{type:"Identifier",name:t}:{type:"Literal",value:t};if(r.type==="Literal"){const a=r.value;return v0.call(e.components,a)?e.components[a]:a}if(e.evaluater)return e.evaluater.evaluateExpression(r);Fu(e)}function Fu(e,t){const n=new Nn("Cannot handle MDX estrees without `createEvaluater`",{ancestors:e.ancestors,place:t,ruleId:"mdx-estree",source:"hast-util-to-jsx-runtime"});throw n.file=e.filePath||void 0,n.url=_M+"#cannot-handle-mdx-estrees-without-createevaluater",n}function Rce(e){const t={};let n;for(n in e)v0.call(e,n)&&(t[Mce(n)]=e[n]);return t}function Mce(e){let t=e.replace(vce,Ice);return t.slice(0,3)==="ms-"&&(t="-"+t),t}function Ice(e){return"-"+e.toLowerCase()}const Kg={action:["form"],cite:["blockquote","del","ins","q"],data:["object"],formAction:["button","input"],href:["a","area","base","link"],icon:["menuitem"],itemId:null,manifest:["html"],ping:["a","area"],poster:["video"],src:["audio","embed","iframe","img","input","script","source","track","video"]},$ce={};function x0(e,t){const n=$ce,r=typeof n.includeImageAlt=="boolean"?n.includeImageAlt:!0,a=typeof n.includeHtml=="boolean"?n.includeHtml:!0;return OM(e,r,a)}function OM(e,t,n){if(Lce(e)){if("value"in e)return e.type==="html"&&!n?"":e.value;if(t&&"alt"in e&&e.alt)return e.alt;if("children"in e)return _E(e.children,t,n)}return Array.isArray(e)?_E(e,t,n):""}function _E(e,t,n){const r=[];let a=-1;for(;++a<e.length;)r[a]=OM(e[a],t,n);return r.join("")}function Lce(e){return!!(e&&typeof e=="object")}const AE=document.createElement("i");function w0(e){const t="&"+e+";";AE.innerHTML=t;const n=AE.textContent;return n.charCodeAt(n.length-1)===59&&e!=="semi"||n===t?!1:n}function rr(e,t,n,r){const a=e.length;let s=0,o;if(t<0?t=-t>a?0:a+t:t=t>a?a:t,n=n>0?n:0,r.length<1e4)o=Array.from(r),o.unshift(t,n),e.splice(...o);else for(n&&e.splice(t,n);s<r.length;)o=r.slice(s,s+1e4),o.unshift(t,0),e.splice(...o),s+=1e4,t+=1e4}function br(e,t){return e.length>0?(rr(e,e.length,0,t),e):t}const CE={}.hasOwnProperty;function PM(e){const t={};let n=-1;for(;++n<e.length;)Dce(t,e[n]);return t}function Dce(e,t){let n;for(n in t){const a=(CE.call(e,n)?e[n]:void 0)||(e[n]={}),s=t[n];let o;if(s)for(o in s){CE.call(a,o)||(a[o]=[]);const l=s[o];Bce(a[o],Array.isArray(l)?l:l?[l]:[])}}}function Bce(e,t){let n=-1;const r=[];for(;++n<t.length;)(t[n].add==="after"?e:r).push(t[n]);rr(e,0,0,r)}function RM(e,t){const n=Number.parseInt(e,t);return n<9||n===11||n>13&&n<32||n>126&&n<160||n>55295&&n<57344||n>64975&&n<65008||(n&65535)===65535||(n&65535)===65534||n>1114111?"�":String.fromCodePoint(n)}function Gr(e){return e.replace(/[\t\n\r ]+/g," ").replace(/^ | $/g,"").toLowerCase().toUpperCase()}const Tn=zi(/[A-Za-z]/),Sn=zi(/[\dA-Za-z]/),zce=zi(/[#-'*+\--9=?A-Z^-~]/);function sp(e){return e!==null&&(e<32||e===127)}const qb=zi(/\d/),Fce=zi(/[\dA-Fa-f]/),Uce=zi(/[!-/:-@[-`{-~]/);function _e(e){return e!==null&&e<-2}function ht(e){return e!==null&&(e<0||e===32)}function ze(e){return e===-2||e===-1||e===32}const Sm=zi(new RegExp("\\p{P}|\\p{S}","u")),Bs=zi(/\s/);function zi(e){return t;function t(n){return n!==null&&n>-1&&e.test(String.fromCharCode(n))}}function Il(e){const t=[];let n=-1,r=0,a=0;for(;++n<e.length;){const s=e.charCodeAt(n);let o="";if(s===37&&Sn(e.charCodeAt(n+1))&&Sn(e.charCodeAt(n+2)))a=2;else if(s<128)/[!#$&-;=?-Z_a-z~]/.test(String.fromCharCode(s))||(o=String.fromCharCode(s));else if(s>55295&&s<57344){const l=e.charCodeAt(n+1);s<56320&&l>56319&&l<57344?(o=String.fromCharCode(s,l),a=1):o="�"}else o=String.fromCharCode(s);o&&(t.push(e.slice(r,n),encodeURIComponent(o)),r=n+a+1,o=""),a&&(n+=a,a=0)}return t.join("")+e.slice(r)}function We(e,t,n,r){const a=r?r-1:Number.POSITIVE_INFINITY;let s=0;return o;function o(c){return ze(c)?(e.enter(n),l(c)):t(c)}function l(c){return ze(c)&&s++<a?(e.consume(c),l):(e.exit(n),t(c))}}const Wce={tokenize:Hce};function Hce(e){const t=e.attempt(this.parser.constructs.contentInitial,r,a);let n;return t;function r(l){if(l===null){e.consume(l);return}return e.enter("lineEnding"),e.consume(l),e.exit("lineEnding"),We(e,t,"linePrefix")}function a(l){return e.enter("paragraph"),s(l)}function s(l){const c=e.enter("chunkText",{contentType:"text",previous:n});return n&&(n.next=c),n=c,o(l)}function o(l){if(l===null){e.exit("chunkText"),e.exit("paragraph"),e.consume(l);return}return _e(l)?(e.consume(l),e.exit("chunkText"),s):(e.consume(l),o)}}const Gce={tokenize:qce},TE={tokenize:Kce};function qce(e){const t=this,n=[];let r=0,a,s,o;return l;function l(w){if(r<n.length){const j=n[r];return t.containerState=j[1],e.attempt(j[0].continuation,c,u)(w)}return u(w)}function c(w){if(r++,t.containerState._closeFlow){t.containerState._closeFlow=void 0,a&&S();const j=t.events.length;let k=j,b;for(;k--;)if(t.events[k][0]==="exit"&&t.events[k][1].type==="chunkFlow"){b=t.events[k][1].end;break}v(r);let N=j;for(;N<t.events.length;)t.events[N][1].end={...b},N++;return rr(t.events,k+1,0,t.events.slice(j)),t.events.length=N,u(w)}return l(w)}function u(w){if(r===n.length){if(!a)return h(w);if(a.currentConstruct&&a.currentConstruct.concrete)return g(w);t.interrupt=!!(a.currentConstruct&&!a._gfmTableDynamicInterruptHack)}return t.containerState={},e.check(TE,d,f)(w)}function d(w){return a&&S(),v(r),h(w)}function f(w){return t.parser.lazy[t.now().line]=r!==n.length,o=t.now().offset,g(w)}function h(w){return t.containerState={},e.attempt(TE,p,g)(w)}function p(w){return r++,n.push([t.currentConstruct,t.containerState]),h(w)}function g(w){if(w===null){a&&S(),v(0),e.consume(w);return}return a=a||t.parser.flow(t.now()),e.enter("chunkFlow",{_tokenizer:a,contentType:"flow",previous:s}),m(w)}function m(w){if(w===null){y(e.exit("chunkFlow"),!0),v(0),e.consume(w);return}return _e(w)?(e.consume(w),y(e.exit("chunkFlow")),r=0,t.interrupt=void 0,l):(e.consume(w),m)}function y(w,j){const k=t.sliceStream(w);if(j&&k.push(null),w.previous=s,s&&(s.next=w),s=w,a.defineSkip(w.start),a.write(k),t.parser.lazy[w.start.line]){let b=a.events.length;for(;b--;)if(a.events[b][1].start.offset<o&&(!a.events[b][1].end||a.events[b][1].end.offset>o))return;const N=t.events.length;let _=N,T,C;for(;_--;)if(t.events[_][0]==="exit"&&t.events[_][1].type==="chunkFlow"){if(T){C=t.events[_][1].end;break}T=!0}for(v(r),b=N;b<t.events.length;)t.events[b][1].end={...C},b++;rr(t.events,_+1,0,t.events.slice(N)),t.events.length=b}}function v(w){let j=n.length;for(;j-- >w;){const k=n[j];t.containerState=k[1],k[0].exit.call(t,e)}n.length=w}function S(){a.write([null]),s=void 0,a=void 0,t.containerState._closeFlow=void 0}}function Kce(e,t,n){return We(e,e.attempt(this.parser.constructs.document,t,n),"linePrefix",this.parser.constructs.disable.null.includes("codeIndented")?void 0:4)}function ml(e){if(e===null||ht(e)||Bs(e))return 1;if(Sm(e))return 2}function jm(e,t,n){const r=[];let a=-1;for(;++a<e.length;){const s=e[a].resolveAll;s&&!r.includes(s)&&(t=s(t,n),r.push(s))}return t}const Kb={name:"attention",resolveAll:Vce,tokenize:Yce};function Vce(e,t){let n=-1,r,a,s,o,l,c,u,d;for(;++n<e.length;)if(e[n][0]==="enter"&&e[n][1].type==="attentionSequence"&&e[n][1]._close){for(r=n;r--;)if(e[r][0]==="exit"&&e[r][1].type==="attentionSequence"&&e[r][1]._open&&t.sliceSerialize(e[r][1]).charCodeAt(0)===t.sliceSerialize(e[n][1]).charCodeAt(0)){if((e[r][1]._close||e[n][1]._open)&&(e[n][1].end.offset-e[n][1].start.offset)%3&&!((e[r][1].end.offset-e[r][1].start.offset+e[n][1].end.offset-e[n][1].start.offset)%3))continue;c=e[r][1].end.offset-e[r][1].start.offset>1&&e[n][1].end.offset-e[n][1].start.offset>1?2:1;const f={...e[r][1].end},h={...e[n][1].start};OE(f,-c),OE(h,c),o={type:c>1?"strongSequence":"emphasisSequence",start:f,end:{...e[r][1].end}},l={type:c>1?"strongSequence":"emphasisSequence",start:{...e[n][1].start},end:h},s={type:c>1?"strongText":"emphasisText",start:{...e[r][1].end},end:{...e[n][1].start}},a={type:c>1?"strong":"emphasis",start:{...o.start},end:{...l.end}},e[r][1].end={...o.start},e[n][1].start={...l.end},u=[],e[r][1].end.offset-e[r][1].start.offset&&(u=br(u,[["enter",e[r][1],t],["exit",e[r][1],t]])),u=br(u,[["enter",a,t],["enter",o,t],["exit",o,t],["enter",s,t]]),u=br(u,jm(t.parser.constructs.insideSpan.null,e.slice(r+1,n),t)),u=br(u,[["exit",s,t],["enter",l,t],["exit",l,t],["exit",a,t]]),e[n][1].end.offset-e[n][1].start.offset?(d=2,u=br(u,[["enter",e[n][1],t],["exit",e[n][1],t]])):d=0,rr(e,r-1,n-r+3,u),n=r+u.length-d-2;break}}for(n=-1;++n<e.length;)e[n][1].type==="attentionSequence"&&(e[n][1].type="data");return e}function Yce(e,t){const n=this.parser.constructs.attentionMarkers.null,r=this.previous,a=ml(r);let s;return o;function o(c){return s=c,e.enter("attentionSequence"),l(c)}function l(c){if(c===s)return e.consume(c),l;const u=e.exit("attentionSequence"),d=ml(c),f=!d||d===2&&a||n.includes(c),h=!a||a===2&&d||n.includes(r);return u._open=!!(s===42?f:f&&(a||!h)),u._close=!!(s===42?h:h&&(d||!f)),t(c)}}function OE(e,t){e.column+=t,e.offset+=t,e._bufferIndex+=t}const Xce={name:"autolink",tokenize:Qce};function Qce(e,t,n){let r=0;return a;function a(p){return e.enter("autolink"),e.enter("autolinkMarker"),e.consume(p),e.exit("autolinkMarker"),e.enter("autolinkProtocol"),s}function s(p){return Tn(p)?(e.consume(p),o):p===64?n(p):u(p)}function o(p){return p===43||p===45||p===46||Sn(p)?(r=1,l(p)):u(p)}function l(p){return p===58?(e.consume(p),r=0,c):(p===43||p===45||p===46||Sn(p))&&r++<32?(e.consume(p),l):(r=0,u(p))}function c(p){return p===62?(e.exit("autolinkProtocol"),e.enter("autolinkMarker"),e.consume(p),e.exit("autolinkMarker"),e.exit("autolink"),t):p===null||p===32||p===60||sp(p)?n(p):(e.consume(p),c)}function u(p){return p===64?(e.consume(p),d):zce(p)?(e.consume(p),u):n(p)}function d(p){return Sn(p)?f(p):n(p)}function f(p){return p===46?(e.consume(p),r=0,d):p===62?(e.exit("autolinkProtocol").type="autolinkEmail",e.enter("autolinkMarker"),e.consume(p),e.exit("autolinkMarker"),e.exit("autolink"),t):h(p)}function h(p){if((p===45||Sn(p))&&r++<63){const g=p===45?h:f;return e.consume(p),g}return n(p)}}const id={partial:!0,tokenize:Zce};function Zce(e,t,n){return r;function r(s){return ze(s)?We(e,a,"linePrefix")(s):a(s)}function a(s){return s===null||_e(s)?t(s):n(s)}}const MM={continuation:{tokenize:eue},exit:tue,name:"blockQuote",tokenize:Jce};function Jce(e,t,n){const r=this;return a;function a(o){if(o===62){const l=r.containerState;return l.open||(e.enter("blockQuote",{_container:!0}),l.open=!0),e.enter("blockQuotePrefix"),e.enter("blockQuoteMarker"),e.consume(o),e.exit("blockQuoteMarker"),s}return n(o)}function s(o){return ze(o)?(e.enter("blockQuotePrefixWhitespace"),e.consume(o),e.exit("blockQuotePrefixWhitespace"),e.exit("blockQuotePrefix"),t):(e.exit("blockQuotePrefix"),t(o))}}function eue(e,t,n){const r=this;return a;function a(o){return ze(o)?We(e,s,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(o):s(o)}function s(o){return e.attempt(MM,t,n)(o)}}function tue(e){e.exit("blockQuote")}const IM={name:"characterEscape",tokenize:nue};function nue(e,t,n){return r;function r(s){return e.enter("characterEscape"),e.enter("escapeMarker"),e.consume(s),e.exit("escapeMarker"),a}function a(s){return Uce(s)?(e.enter("characterEscapeValue"),e.consume(s),e.exit("characterEscapeValue"),e.exit("characterEscape"),t):n(s)}}const $M={name:"characterReference",tokenize:rue};function rue(e,t,n){const r=this;let a=0,s,o;return l;function l(f){return e.enter("characterReference"),e.enter("characterReferenceMarker"),e.consume(f),e.exit("characterReferenceMarker"),c}function c(f){return f===35?(e.enter("characterReferenceMarkerNumeric"),e.consume(f),e.exit("characterReferenceMarkerNumeric"),u):(e.enter("characterReferenceValue"),s=31,o=Sn,d(f))}function u(f){return f===88||f===120?(e.enter("characterReferenceMarkerHexadecimal"),e.consume(f),e.exit("characterReferenceMarkerHexadecimal"),e.enter("characterReferenceValue"),s=6,o=Fce,d):(e.enter("characterReferenceValue"),s=7,o=qb,d(f))}function d(f){if(f===59&&a){const h=e.exit("characterReferenceValue");return o===Sn&&!w0(r.sliceSerialize(h))?n(f):(e.enter("characterReferenceMarker"),e.consume(f),e.exit("characterReferenceMarker"),e.exit("characterReference"),t)}return o(f)&&a++<s?(e.consume(f),d):n(f)}}const PE={partial:!0,tokenize:iue},RE={concrete:!0,name:"codeFenced",tokenize:aue};function aue(e,t,n){const r=this,a={partial:!0,tokenize:k};let s=0,o=0,l;return c;function c(b){return u(b)}function u(b){const N=r.events[r.events.length-1];return s=N&&N[1].type==="linePrefix"?N[2].sliceSerialize(N[1],!0).length:0,l=b,e.enter("codeFenced"),e.enter("codeFencedFence"),e.enter("codeFencedFenceSequence"),d(b)}function d(b){return b===l?(o++,e.consume(b),d):o<3?n(b):(e.exit("codeFencedFenceSequence"),ze(b)?We(e,f,"whitespace")(b):f(b))}function f(b){return b===null||_e(b)?(e.exit("codeFencedFence"),r.interrupt?t(b):e.check(PE,m,j)(b)):(e.enter("codeFencedFenceInfo"),e.enter("chunkString",{contentType:"string"}),h(b))}function h(b){return b===null||_e(b)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),f(b)):ze(b)?(e.exit("chunkString"),e.exit("codeFencedFenceInfo"),We(e,p,"whitespace")(b)):b===96&&b===l?n(b):(e.consume(b),h)}function p(b){return b===null||_e(b)?f(b):(e.enter("codeFencedFenceMeta"),e.enter("chunkString",{contentType:"string"}),g(b))}function g(b){return b===null||_e(b)?(e.exit("chunkString"),e.exit("codeFencedFenceMeta"),f(b)):b===96&&b===l?n(b):(e.consume(b),g)}function m(b){return e.attempt(a,j,y)(b)}function y(b){return e.enter("lineEnding"),e.consume(b),e.exit("lineEnding"),v}function v(b){return s>0&&ze(b)?We(e,S,"linePrefix",s+1)(b):S(b)}function S(b){return b===null||_e(b)?e.check(PE,m,j)(b):(e.enter("codeFlowValue"),w(b))}function w(b){return b===null||_e(b)?(e.exit("codeFlowValue"),S(b)):(e.consume(b),w)}function j(b){return e.exit("codeFenced"),t(b)}function k(b,N,_){let T=0;return C;function C(M){return b.enter("lineEnding"),b.consume(M),b.exit("lineEnding"),O}function O(M){return b.enter("codeFencedFence"),ze(M)?We(b,P,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(M):P(M)}function P(M){return M===l?(b.enter("codeFencedFenceSequence"),z(M)):_(M)}function z(M){return M===l?(T++,b.consume(M),z):T>=o?(b.exit("codeFencedFenceSequence"),ze(M)?We(b,L,"whitespace")(M):L(M)):_(M)}function L(M){return M===null||_e(M)?(b.exit("codeFencedFence"),N(M)):_(M)}}}function iue(e,t,n){const r=this;return a;function a(o){return o===null?n(o):(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),s)}function s(o){return r.parser.lazy[r.now().line]?n(o):t(o)}}const Vg={name:"codeIndented",tokenize:oue},sue={partial:!0,tokenize:lue};function oue(e,t,n){const r=this;return a;function a(u){return e.enter("codeIndented"),We(e,s,"linePrefix",5)(u)}function s(u){const d=r.events[r.events.length-1];return d&&d[1].type==="linePrefix"&&d[2].sliceSerialize(d[1],!0).length>=4?o(u):n(u)}function o(u){return u===null?c(u):_e(u)?e.attempt(sue,o,c)(u):(e.enter("codeFlowValue"),l(u))}function l(u){return u===null||_e(u)?(e.exit("codeFlowValue"),o(u)):(e.consume(u),l)}function c(u){return e.exit("codeIndented"),t(u)}}function lue(e,t,n){const r=this;return a;function a(o){return r.parser.lazy[r.now().line]?n(o):_e(o)?(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),a):We(e,s,"linePrefix",5)(o)}function s(o){const l=r.events[r.events.length-1];return l&&l[1].type==="linePrefix"&&l[2].sliceSerialize(l[1],!0).length>=4?t(o):_e(o)?a(o):n(o)}}const cue={name:"codeText",previous:due,resolve:uue,tokenize:fue};function uue(e){let t=e.length-4,n=3,r,a;if((e[n][1].type==="lineEnding"||e[n][1].type==="space")&&(e[t][1].type==="lineEnding"||e[t][1].type==="space")){for(r=n;++r<t;)if(e[r][1].type==="codeTextData"){e[n][1].type="codeTextPadding",e[t][1].type="codeTextPadding",n+=2,t-=2;break}}for(r=n-1,t++;++r<=t;)a===void 0?r!==t&&e[r][1].type!=="lineEnding"&&(a=r):(r===t||e[r][1].type==="lineEnding")&&(e[a][1].type="codeTextData",r!==a+2&&(e[a][1].end=e[r-1][1].end,e.splice(a+2,r-a-2),t-=r-a-2,r=a+2),a=void 0);return e}function due(e){return e!==96||this.events[this.events.length-1][1].type==="characterEscape"}function fue(e,t,n){let r=0,a,s;return o;function o(f){return e.enter("codeText"),e.enter("codeTextSequence"),l(f)}function l(f){return f===96?(e.consume(f),r++,l):(e.exit("codeTextSequence"),c(f))}function c(f){return f===null?n(f):f===32?(e.enter("space"),e.consume(f),e.exit("space"),c):f===96?(s=e.enter("codeTextSequence"),a=0,d(f)):_e(f)?(e.enter("lineEnding"),e.consume(f),e.exit("lineEnding"),c):(e.enter("codeTextData"),u(f))}function u(f){return f===null||f===32||f===96||_e(f)?(e.exit("codeTextData"),c(f)):(e.consume(f),u)}function d(f){return f===96?(e.consume(f),a++,d):a===r?(e.exit("codeTextSequence"),e.exit("codeText"),t(f)):(s.type="codeTextData",u(f))}}class hue{constructor(t){this.left=t?[...t]:[],this.right=[]}get(t){if(t<0||t>=this.left.length+this.right.length)throw new RangeError("Cannot access index `"+t+"` in a splice buffer of size `"+(this.left.length+this.right.length)+"`");return t<this.left.length?this.left[t]:this.right[this.right.length-t+this.left.length-1]}get length(){return this.left.length+this.right.length}shift(){return this.setCursor(0),this.right.pop()}slice(t,n){const r=n??Number.POSITIVE_INFINITY;return r<this.left.length?this.left.slice(t,r):t>this.left.length?this.right.slice(this.right.length-r+this.left.length,this.right.length-t+this.left.length).reverse():this.left.slice(t).concat(this.right.slice(this.right.length-r+this.left.length).reverse())}splice(t,n,r){const a=n||0;this.setCursor(Math.trunc(t));const s=this.right.splice(this.right.length-a,Number.POSITIVE_INFINITY);return r&&fc(this.left,r),s.reverse()}pop(){return this.setCursor(Number.POSITIVE_INFINITY),this.left.pop()}push(t){this.setCursor(Number.POSITIVE_INFINITY),this.left.push(t)}pushMany(t){this.setCursor(Number.POSITIVE_INFINITY),fc(this.left,t)}unshift(t){this.setCursor(0),this.right.push(t)}unshiftMany(t){this.setCursor(0),fc(this.right,t.reverse())}setCursor(t){if(!(t===this.left.length||t>this.left.length&&this.right.length===0||t<0&&this.left.length===0))if(t<this.left.length){const n=this.left.splice(t,Number.POSITIVE_INFINITY);fc(this.right,n.reverse())}else{const n=this.right.splice(this.left.length+this.right.length-t,Number.POSITIVE_INFINITY);fc(this.left,n.reverse())}}}function fc(e,t){let n=0;if(t.length<1e4)e.push(...t);else for(;n<t.length;)e.push(...t.slice(n,n+1e4)),n+=1e4}function LM(e){const t={};let n=-1,r,a,s,o,l,c,u;const d=new hue(e);for(;++n<d.length;){for(;n in t;)n=t[n];if(r=d.get(n),n&&r[1].type==="chunkFlow"&&d.get(n-1)[1].type==="listItemPrefix"&&(c=r[1]._tokenizer.events,s=0,s<c.length&&c[s][1].type==="lineEndingBlank"&&(s+=2),s<c.length&&c[s][1].type==="content"))for(;++s<c.length&&c[s][1].type!=="content";)c[s][1].type==="chunkText"&&(c[s][1]._isInFirstContentOfListItem=!0,s++);if(r[0]==="enter")r[1].contentType&&(Object.assign(t,pue(d,n)),n=t[n],u=!0);else if(r[1]._container){for(s=n,a=void 0;s--;)if(o=d.get(s),o[1].type==="lineEnding"||o[1].type==="lineEndingBlank")o[0]==="enter"&&(a&&(d.get(a)[1].type="lineEndingBlank"),o[1].type="lineEnding",a=s);else if(!(o[1].type==="linePrefix"||o[1].type==="listItemIndent"))break;a&&(r[1].end={...d.get(a)[1].start},l=d.slice(a,n),l.unshift(r),d.splice(a,n-a+1,l))}}return rr(e,0,Number.POSITIVE_INFINITY,d.slice(0)),!u}function pue(e,t){const n=e.get(t)[1],r=e.get(t)[2];let a=t-1;const s=[];let o=n._tokenizer;o||(o=r.parser[n.contentType](n.start),n._contentTypeTextTrailing&&(o._contentTypeTextTrailing=!0));const l=o.events,c=[],u={};let d,f,h=-1,p=n,g=0,m=0;const y=[m];for(;p;){for(;e.get(++a)[1]!==p;);s.push(a),p._tokenizer||(d=r.sliceStream(p),p.next||d.push(null),f&&o.defineSkip(p.start),p._isInFirstContentOfListItem&&(o._gfmTasklistFirstContentOfListItem=!0),o.write(d),p._isInFirstContentOfListItem&&(o._gfmTasklistFirstContentOfListItem=void 0)),f=p,p=p.next}for(p=n;++h<l.length;)l[h][0]==="exit"&&l[h-1][0]==="enter"&&l[h][1].type===l[h-1][1].type&&l[h][1].start.line!==l[h][1].end.line&&(m=h+1,y.push(m),p._tokenizer=void 0,p.previous=void 0,p=p.next);for(o.events=[],p?(p._tokenizer=void 0,p.previous=void 0):y.pop(),h=y.length;h--;){const v=l.slice(y[h],y[h+1]),S=s.pop();c.push([S,S+v.length-1]),e.splice(S,2,v)}for(c.reverse(),h=-1;++h<c.length;)u[g+c[h][0]]=g+c[h][1],g+=c[h][1]-c[h][0]-1;return u}const mue={resolve:vue,tokenize:yue},gue={partial:!0,tokenize:bue};function vue(e){return LM(e),e}function yue(e,t){let n;return r;function r(l){return e.enter("content"),n=e.enter("chunkContent",{contentType:"content"}),a(l)}function a(l){return l===null?s(l):_e(l)?e.check(gue,o,s)(l):(e.consume(l),a)}function s(l){return e.exit("chunkContent"),e.exit("content"),t(l)}function o(l){return e.consume(l),e.exit("chunkContent"),n.next=e.enter("chunkContent",{contentType:"content",previous:n}),n=n.next,a}}function bue(e,t,n){const r=this;return a;function a(o){return e.exit("chunkContent"),e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),We(e,s,"linePrefix")}function s(o){if(o===null||_e(o))return n(o);const l=r.events[r.events.length-1];return!r.parser.constructs.disable.null.includes("codeIndented")&&l&&l[1].type==="linePrefix"&&l[2].sliceSerialize(l[1],!0).length>=4?t(o):e.interrupt(r.parser.constructs.flow,n,t)(o)}}function DM(e,t,n,r,a,s,o,l,c){const u=c||Number.POSITIVE_INFINITY;let d=0;return f;function f(v){return v===60?(e.enter(r),e.enter(a),e.enter(s),e.consume(v),e.exit(s),h):v===null||v===32||v===41||sp(v)?n(v):(e.enter(r),e.enter(o),e.enter(l),e.enter("chunkString",{contentType:"string"}),m(v))}function h(v){return v===62?(e.enter(s),e.consume(v),e.exit(s),e.exit(a),e.exit(r),t):(e.enter(l),e.enter("chunkString",{contentType:"string"}),p(v))}function p(v){return v===62?(e.exit("chunkString"),e.exit(l),h(v)):v===null||v===60||_e(v)?n(v):(e.consume(v),v===92?g:p)}function g(v){return v===60||v===62||v===92?(e.consume(v),p):p(v)}function m(v){return!d&&(v===null||v===41||ht(v))?(e.exit("chunkString"),e.exit(l),e.exit(o),e.exit(r),t(v)):d<u&&v===40?(e.consume(v),d++,m):v===41?(e.consume(v),d--,m):v===null||v===32||v===40||sp(v)?n(v):(e.consume(v),v===92?y:m)}function y(v){return v===40||v===41||v===92?(e.consume(v),m):m(v)}}function BM(e,t,n,r,a,s){const o=this;let l=0,c;return u;function u(p){return e.enter(r),e.enter(a),e.consume(p),e.exit(a),e.enter(s),d}function d(p){return l>999||p===null||p===91||p===93&&!c||p===94&&!l&&"_hiddenFootnoteSupport"in o.parser.constructs?n(p):p===93?(e.exit(s),e.enter(a),e.consume(p),e.exit(a),e.exit(r),t):_e(p)?(e.enter("lineEnding"),e.consume(p),e.exit("lineEnding"),d):(e.enter("chunkString",{contentType:"string"}),f(p))}function f(p){return p===null||p===91||p===93||_e(p)||l++>999?(e.exit("chunkString"),d(p)):(e.consume(p),c||(c=!ze(p)),p===92?h:f)}function h(p){return p===91||p===92||p===93?(e.consume(p),l++,f):f(p)}}function zM(e,t,n,r,a,s){let o;return l;function l(h){return h===34||h===39||h===40?(e.enter(r),e.enter(a),e.consume(h),e.exit(a),o=h===40?41:h,c):n(h)}function c(h){return h===o?(e.enter(a),e.consume(h),e.exit(a),e.exit(r),t):(e.enter(s),u(h))}function u(h){return h===o?(e.exit(s),c(o)):h===null?n(h):_e(h)?(e.enter("lineEnding"),e.consume(h),e.exit("lineEnding"),We(e,u,"linePrefix")):(e.enter("chunkString",{contentType:"string"}),d(h))}function d(h){return h===o||h===null||_e(h)?(e.exit("chunkString"),u(h)):(e.consume(h),h===92?f:d)}function f(h){return h===o||h===92?(e.consume(h),d):d(h)}}function Lc(e,t){let n;return r;function r(a){return _e(a)?(e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),n=!0,r):ze(a)?We(e,r,n?"linePrefix":"lineSuffix")(a):t(a)}}const xue={name:"definition",tokenize:kue},wue={partial:!0,tokenize:Sue};function kue(e,t,n){const r=this;let a;return s;function s(p){return e.enter("definition"),o(p)}function o(p){return BM.call(r,e,l,n,"definitionLabel","definitionLabelMarker","definitionLabelString")(p)}function l(p){return a=Gr(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)),p===58?(e.enter("definitionMarker"),e.consume(p),e.exit("definitionMarker"),c):n(p)}function c(p){return ht(p)?Lc(e,u)(p):u(p)}function u(p){return DM(e,d,n,"definitionDestination","definitionDestinationLiteral","definitionDestinationLiteralMarker","definitionDestinationRaw","definitionDestinationString")(p)}function d(p){return e.attempt(wue,f,f)(p)}function f(p){return ze(p)?We(e,h,"whitespace")(p):h(p)}function h(p){return p===null||_e(p)?(e.exit("definition"),r.parser.defined.push(a),t(p)):n(p)}}function Sue(e,t,n){return r;function r(l){return ht(l)?Lc(e,a)(l):n(l)}function a(l){return zM(e,s,n,"definitionTitle","definitionTitleMarker","definitionTitleString")(l)}function s(l){return ze(l)?We(e,o,"whitespace")(l):o(l)}function o(l){return l===null||_e(l)?t(l):n(l)}}const jue={name:"hardBreakEscape",tokenize:Nue};function Nue(e,t,n){return r;function r(s){return e.enter("hardBreakEscape"),e.consume(s),a}function a(s){return _e(s)?(e.exit("hardBreakEscape"),t(s)):n(s)}}const Eue={name:"headingAtx",resolve:_ue,tokenize:Aue};function _ue(e,t){let n=e.length-2,r=3,a,s;return e[r][1].type==="whitespace"&&(r+=2),n-2>r&&e[n][1].type==="whitespace"&&(n-=2),e[n][1].type==="atxHeadingSequence"&&(r===n-1||n-4>r&&e[n-2][1].type==="whitespace")&&(n-=r+1===n?2:4),n>r&&(a={type:"atxHeadingText",start:e[r][1].start,end:e[n][1].end},s={type:"chunkText",start:e[r][1].start,end:e[n][1].end,contentType:"text"},rr(e,r,n-r+1,[["enter",a,t],["enter",s,t],["exit",s,t],["exit",a,t]])),e}function Aue(e,t,n){let r=0;return a;function a(d){return e.enter("atxHeading"),s(d)}function s(d){return e.enter("atxHeadingSequence"),o(d)}function o(d){return d===35&&r++<6?(e.consume(d),o):d===null||ht(d)?(e.exit("atxHeadingSequence"),l(d)):n(d)}function l(d){return d===35?(e.enter("atxHeadingSequence"),c(d)):d===null||_e(d)?(e.exit("atxHeading"),t(d)):ze(d)?We(e,l,"whitespace")(d):(e.enter("atxHeadingText"),u(d))}function c(d){return d===35?(e.consume(d),c):(e.exit("atxHeadingSequence"),l(d))}function u(d){return d===null||d===35||ht(d)?(e.exit("atxHeadingText"),l(d)):(e.consume(d),u)}}const Cue=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"],ME=["pre","script","style","textarea"],Tue={concrete:!0,name:"htmlFlow",resolveTo:Rue,tokenize:Mue},Oue={partial:!0,tokenize:$ue},Pue={partial:!0,tokenize:Iue};function Rue(e){let t=e.length;for(;t--&&!(e[t][0]==="enter"&&e[t][1].type==="htmlFlow"););return t>1&&e[t-2][1].type==="linePrefix"&&(e[t][1].start=e[t-2][1].start,e[t+1][1].start=e[t-2][1].start,e.splice(t-2,2)),e}function Mue(e,t,n){const r=this;let a,s,o,l,c;return u;function u($){return d($)}function d($){return e.enter("htmlFlow"),e.enter("htmlFlowData"),e.consume($),f}function f($){return $===33?(e.consume($),h):$===47?(e.consume($),s=!0,m):$===63?(e.consume($),a=3,r.interrupt?t:A):Tn($)?(e.consume($),o=String.fromCharCode($),y):n($)}function h($){return $===45?(e.consume($),a=2,p):$===91?(e.consume($),a=5,l=0,g):Tn($)?(e.consume($),a=4,r.interrupt?t:A):n($)}function p($){return $===45?(e.consume($),r.interrupt?t:A):n($)}function g($){const ie="CDATA[";return $===ie.charCodeAt(l++)?(e.consume($),l===ie.length?r.interrupt?t:P:g):n($)}function m($){return Tn($)?(e.consume($),o=String.fromCharCode($),y):n($)}function y($){if($===null||$===47||$===62||ht($)){const ie=$===47,de=o.toLowerCase();return!ie&&!s&&ME.includes(de)?(a=1,r.interrupt?t($):P($)):Cue.includes(o.toLowerCase())?(a=6,ie?(e.consume($),v):r.interrupt?t($):P($)):(a=7,r.interrupt&&!r.parser.lazy[r.now().line]?n($):s?S($):w($))}return $===45||Sn($)?(e.consume($),o+=String.fromCharCode($),y):n($)}function v($){return $===62?(e.consume($),r.interrupt?t:P):n($)}function S($){return ze($)?(e.consume($),S):C($)}function w($){return $===47?(e.consume($),C):$===58||$===95||Tn($)?(e.consume($),j):ze($)?(e.consume($),w):C($)}function j($){return $===45||$===46||$===58||$===95||Sn($)?(e.consume($),j):k($)}function k($){return $===61?(e.consume($),b):ze($)?(e.consume($),k):w($)}function b($){return $===null||$===60||$===61||$===62||$===96?n($):$===34||$===39?(e.consume($),c=$,N):ze($)?(e.consume($),b):_($)}function N($){return $===c?(e.consume($),c=null,T):$===null||_e($)?n($):(e.consume($),N)}function _($){return $===null||$===34||$===39||$===47||$===60||$===61||$===62||$===96||ht($)?k($):(e.consume($),_)}function T($){return $===47||$===62||ze($)?w($):n($)}function C($){return $===62?(e.consume($),O):n($)}function O($){return $===null||_e($)?P($):ze($)?(e.consume($),O):n($)}function P($){return $===45&&a===2?(e.consume($),D):$===60&&a===1?(e.consume($),W):$===62&&a===4?(e.consume($),J):$===63&&a===3?(e.consume($),A):$===93&&a===5?(e.consume($),B):_e($)&&(a===6||a===7)?(e.exit("htmlFlowData"),e.check(Oue,F,z)($)):$===null||_e($)?(e.exit("htmlFlowData"),z($)):(e.consume($),P)}function z($){return e.check(Pue,L,F)($)}function L($){return e.enter("lineEnding"),e.consume($),e.exit("lineEnding"),M}function M($){return $===null||_e($)?z($):(e.enter("htmlFlowData"),P($))}function D($){return $===45?(e.consume($),A):P($)}function W($){return $===47?(e.consume($),o="",R):P($)}function R($){if($===62){const ie=o.toLowerCase();return ME.includes(ie)?(e.consume($),J):P($)}return Tn($)&&o.length<8?(e.consume($),o+=String.fromCharCode($),R):P($)}function B($){return $===93?(e.consume($),A):P($)}function A($){return $===62?(e.consume($),J):$===45&&a===2?(e.consume($),A):P($)}function J($){return $===null||_e($)?(e.exit("htmlFlowData"),F($)):(e.consume($),J)}function F($){return e.exit("htmlFlow"),t($)}}function Iue(e,t,n){const r=this;return a;function a(o){return _e(o)?(e.enter("lineEnding"),e.consume(o),e.exit("lineEnding"),s):n(o)}function s(o){return r.parser.lazy[r.now().line]?n(o):t(o)}}function $ue(e,t,n){return r;function r(a){return e.enter("lineEnding"),e.consume(a),e.exit("lineEnding"),e.attempt(id,t,n)}}const Lue={name:"htmlText",tokenize:Due};function Due(e,t,n){const r=this;let a,s,o;return l;function l(A){return e.enter("htmlText"),e.enter("htmlTextData"),e.consume(A),c}function c(A){return A===33?(e.consume(A),u):A===47?(e.consume(A),k):A===63?(e.consume(A),w):Tn(A)?(e.consume(A),_):n(A)}function u(A){return A===45?(e.consume(A),d):A===91?(e.consume(A),s=0,g):Tn(A)?(e.consume(A),S):n(A)}function d(A){return A===45?(e.consume(A),p):n(A)}function f(A){return A===null?n(A):A===45?(e.consume(A),h):_e(A)?(o=f,W(A)):(e.consume(A),f)}function h(A){return A===45?(e.consume(A),p):f(A)}function p(A){return A===62?D(A):A===45?h(A):f(A)}function g(A){const J="CDATA[";return A===J.charCodeAt(s++)?(e.consume(A),s===J.length?m:g):n(A)}function m(A){return A===null?n(A):A===93?(e.consume(A),y):_e(A)?(o=m,W(A)):(e.consume(A),m)}function y(A){return A===93?(e.consume(A),v):m(A)}function v(A){return A===62?D(A):A===93?(e.consume(A),v):m(A)}function S(A){return A===null||A===62?D(A):_e(A)?(o=S,W(A)):(e.consume(A),S)}function w(A){return A===null?n(A):A===63?(e.consume(A),j):_e(A)?(o=w,W(A)):(e.consume(A),w)}function j(A){return A===62?D(A):w(A)}function k(A){return Tn(A)?(e.consume(A),b):n(A)}function b(A){return A===45||Sn(A)?(e.consume(A),b):N(A)}function N(A){return _e(A)?(o=N,W(A)):ze(A)?(e.consume(A),N):D(A)}function _(A){return A===45||Sn(A)?(e.consume(A),_):A===47||A===62||ht(A)?T(A):n(A)}function T(A){return A===47?(e.consume(A),D):A===58||A===95||Tn(A)?(e.consume(A),C):_e(A)?(o=T,W(A)):ze(A)?(e.consume(A),T):D(A)}function C(A){return A===45||A===46||A===58||A===95||Sn(A)?(e.consume(A),C):O(A)}function O(A){return A===61?(e.consume(A),P):_e(A)?(o=O,W(A)):ze(A)?(e.consume(A),O):T(A)}function P(A){return A===null||A===60||A===61||A===62||A===96?n(A):A===34||A===39?(e.consume(A),a=A,z):_e(A)?(o=P,W(A)):ze(A)?(e.consume(A),P):(e.consume(A),L)}function z(A){return A===a?(e.consume(A),a=void 0,M):A===null?n(A):_e(A)?(o=z,W(A)):(e.consume(A),z)}function L(A){return A===null||A===34||A===39||A===60||A===61||A===96?n(A):A===47||A===62||ht(A)?T(A):(e.consume(A),L)}function M(A){return A===47||A===62||ht(A)?T(A):n(A)}function D(A){return A===62?(e.consume(A),e.exit("htmlTextData"),e.exit("htmlText"),t):n(A)}function W(A){return e.exit("htmlTextData"),e.enter("lineEnding"),e.consume(A),e.exit("lineEnding"),R}function R(A){return ze(A)?We(e,B,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(A):B(A)}function B(A){return e.enter("htmlTextData"),o(A)}}const k0={name:"labelEnd",resolveAll:Uue,resolveTo:Wue,tokenize:Hue},Bue={tokenize:Gue},zue={tokenize:que},Fue={tokenize:Kue};function Uue(e){let t=-1;const n=[];for(;++t<e.length;){const r=e[t][1];if(n.push(e[t]),r.type==="labelImage"||r.type==="labelLink"||r.type==="labelEnd"){const a=r.type==="labelImage"?4:2;r.type="data",t+=a}}return e.length!==n.length&&rr(e,0,e.length,n),e}function Wue(e,t){let n=e.length,r=0,a,s,o,l;for(;n--;)if(a=e[n][1],s){if(a.type==="link"||a.type==="labelLink"&&a._inactive)break;e[n][0]==="enter"&&a.type==="labelLink"&&(a._inactive=!0)}else if(o){if(e[n][0]==="enter"&&(a.type==="labelImage"||a.type==="labelLink")&&!a._balanced&&(s=n,a.type!=="labelLink")){r=2;break}}else a.type==="labelEnd"&&(o=n);const c={type:e[s][1].type==="labelLink"?"link":"image",start:{...e[s][1].start},end:{...e[e.length-1][1].end}},u={type:"label",start:{...e[s][1].start},end:{...e[o][1].end}},d={type:"labelText",start:{...e[s+r+2][1].end},end:{...e[o-2][1].start}};return l=[["enter",c,t],["enter",u,t]],l=br(l,e.slice(s+1,s+r+3)),l=br(l,[["enter",d,t]]),l=br(l,jm(t.parser.constructs.insideSpan.null,e.slice(s+r+4,o-3),t)),l=br(l,[["exit",d,t],e[o-2],e[o-1],["exit",u,t]]),l=br(l,e.slice(o+1)),l=br(l,[["exit",c,t]]),rr(e,s,e.length,l),e}function Hue(e,t,n){const r=this;let a=r.events.length,s,o;for(;a--;)if((r.events[a][1].type==="labelImage"||r.events[a][1].type==="labelLink")&&!r.events[a][1]._balanced){s=r.events[a][1];break}return l;function l(h){return s?s._inactive?f(h):(o=r.parser.defined.includes(Gr(r.sliceSerialize({start:s.end,end:r.now()}))),e.enter("labelEnd"),e.enter("labelMarker"),e.consume(h),e.exit("labelMarker"),e.exit("labelEnd"),c):n(h)}function c(h){return h===40?e.attempt(Bue,d,o?d:f)(h):h===91?e.attempt(zue,d,o?u:f)(h):o?d(h):f(h)}function u(h){return e.attempt(Fue,d,f)(h)}function d(h){return t(h)}function f(h){return s._balanced=!0,n(h)}}function Gue(e,t,n){return r;function r(f){return e.enter("resource"),e.enter("resourceMarker"),e.consume(f),e.exit("resourceMarker"),a}function a(f){return ht(f)?Lc(e,s)(f):s(f)}function s(f){return f===41?d(f):DM(e,o,l,"resourceDestination","resourceDestinationLiteral","resourceDestinationLiteralMarker","resourceDestinationRaw","resourceDestinationString",32)(f)}function o(f){return ht(f)?Lc(e,c)(f):d(f)}function l(f){return n(f)}function c(f){return f===34||f===39||f===40?zM(e,u,n,"resourceTitle","resourceTitleMarker","resourceTitleString")(f):d(f)}function u(f){return ht(f)?Lc(e,d)(f):d(f)}function d(f){return f===41?(e.enter("resourceMarker"),e.consume(f),e.exit("resourceMarker"),e.exit("resource"),t):n(f)}}function que(e,t,n){const r=this;return a;function a(l){return BM.call(r,e,s,o,"reference","referenceMarker","referenceString")(l)}function s(l){return r.parser.defined.includes(Gr(r.sliceSerialize(r.events[r.events.length-1][1]).slice(1,-1)))?t(l):n(l)}function o(l){return n(l)}}function Kue(e,t,n){return r;function r(s){return e.enter("reference"),e.enter("referenceMarker"),e.consume(s),e.exit("referenceMarker"),a}function a(s){return s===93?(e.enter("referenceMarker"),e.consume(s),e.exit("referenceMarker"),e.exit("reference"),t):n(s)}}const Vue={name:"labelStartImage",resolveAll:k0.resolveAll,tokenize:Yue};function Yue(e,t,n){const r=this;return a;function a(l){return e.enter("labelImage"),e.enter("labelImageMarker"),e.consume(l),e.exit("labelImageMarker"),s}function s(l){return l===91?(e.enter("labelMarker"),e.consume(l),e.exit("labelMarker"),e.exit("labelImage"),o):n(l)}function o(l){return l===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(l):t(l)}}const Xue={name:"labelStartLink",resolveAll:k0.resolveAll,tokenize:Que};function Que(e,t,n){const r=this;return a;function a(o){return e.enter("labelLink"),e.enter("labelMarker"),e.consume(o),e.exit("labelMarker"),e.exit("labelLink"),s}function s(o){return o===94&&"_hiddenFootnoteSupport"in r.parser.constructs?n(o):t(o)}}const Yg={name:"lineEnding",tokenize:Zue};function Zue(e,t){return n;function n(r){return e.enter("lineEnding"),e.consume(r),e.exit("lineEnding"),We(e,t,"linePrefix")}}const Cf={name:"thematicBreak",tokenize:Jue};function Jue(e,t,n){let r=0,a;return s;function s(u){return e.enter("thematicBreak"),o(u)}function o(u){return a=u,l(u)}function l(u){return u===a?(e.enter("thematicBreakSequence"),c(u)):r>=3&&(u===null||_e(u))?(e.exit("thematicBreak"),t(u)):n(u)}function c(u){return u===a?(e.consume(u),r++,c):(e.exit("thematicBreakSequence"),ze(u)?We(e,l,"whitespace")(u):l(u))}}const Ln={continuation:{tokenize:rde},exit:ide,name:"list",tokenize:nde},ede={partial:!0,tokenize:sde},tde={partial:!0,tokenize:ade};function nde(e,t,n){const r=this,a=r.events[r.events.length-1];let s=a&&a[1].type==="linePrefix"?a[2].sliceSerialize(a[1],!0).length:0,o=0;return l;function l(p){const g=r.containerState.type||(p===42||p===43||p===45?"listUnordered":"listOrdered");if(g==="listUnordered"?!r.containerState.marker||p===r.containerState.marker:qb(p)){if(r.containerState.type||(r.containerState.type=g,e.enter(g,{_container:!0})),g==="listUnordered")return e.enter("listItemPrefix"),p===42||p===45?e.check(Cf,n,u)(p):u(p);if(!r.interrupt||p===49)return e.enter("listItemPrefix"),e.enter("listItemValue"),c(p)}return n(p)}function c(p){return qb(p)&&++o<10?(e.consume(p),c):(!r.interrupt||o<2)&&(r.containerState.marker?p===r.containerState.marker:p===41||p===46)?(e.exit("listItemValue"),u(p)):n(p)}function u(p){return e.enter("listItemMarker"),e.consume(p),e.exit("listItemMarker"),r.containerState.marker=r.containerState.marker||p,e.check(id,r.interrupt?n:d,e.attempt(ede,h,f))}function d(p){return r.containerState.initialBlankLine=!0,s++,h(p)}function f(p){return ze(p)?(e.enter("listItemPrefixWhitespace"),e.consume(p),e.exit("listItemPrefixWhitespace"),h):n(p)}function h(p){return r.containerState.size=s+r.sliceSerialize(e.exit("listItemPrefix"),!0).length,t(p)}}function rde(e,t,n){const r=this;return r.containerState._closeFlow=void 0,e.check(id,a,s);function a(l){return r.containerState.furtherBlankLines=r.containerState.furtherBlankLines||r.containerState.initialBlankLine,We(e,t,"listItemIndent",r.containerState.size+1)(l)}function s(l){return r.containerState.furtherBlankLines||!ze(l)?(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,o(l)):(r.containerState.furtherBlankLines=void 0,r.containerState.initialBlankLine=void 0,e.attempt(tde,t,o)(l))}function o(l){return r.containerState._closeFlow=!0,r.interrupt=void 0,We(e,e.attempt(Ln,t,n),"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(l)}}function ade(e,t,n){const r=this;return We(e,a,"listItemIndent",r.containerState.size+1);function a(s){const o=r.events[r.events.length-1];return o&&o[1].type==="listItemIndent"&&o[2].sliceSerialize(o[1],!0).length===r.containerState.size?t(s):n(s)}}function ide(e){e.exit(this.containerState.type)}function sde(e,t,n){const r=this;return We(e,a,"listItemPrefixWhitespace",r.parser.constructs.disable.null.includes("codeIndented")?void 0:5);function a(s){const o=r.events[r.events.length-1];return!ze(s)&&o&&o[1].type==="listItemPrefixWhitespace"?t(s):n(s)}}const IE={name:"setextUnderline",resolveTo:ode,tokenize:lde};function ode(e,t){let n=e.length,r,a,s;for(;n--;)if(e[n][0]==="enter"){if(e[n][1].type==="content"){r=n;break}e[n][1].type==="paragraph"&&(a=n)}else e[n][1].type==="content"&&e.splice(n,1),!s&&e[n][1].type==="definition"&&(s=n);const o={type:"setextHeading",start:{...e[r][1].start},end:{...e[e.length-1][1].end}};return e[a][1].type="setextHeadingText",s?(e.splice(a,0,["enter",o,t]),e.splice(s+1,0,["exit",e[r][1],t]),e[r][1].end={...e[s][1].end}):e[r][1]=o,e.push(["exit",o,t]),e}function lde(e,t,n){const r=this;let a;return s;function s(u){let d=r.events.length,f;for(;d--;)if(r.events[d][1].type!=="lineEnding"&&r.events[d][1].type!=="linePrefix"&&r.events[d][1].type!=="content"){f=r.events[d][1].type==="paragraph";break}return!r.parser.lazy[r.now().line]&&(r.interrupt||f)?(e.enter("setextHeadingLine"),a=u,o(u)):n(u)}function o(u){return e.enter("setextHeadingLineSequence"),l(u)}function l(u){return u===a?(e.consume(u),l):(e.exit("setextHeadingLineSequence"),ze(u)?We(e,c,"lineSuffix")(u):c(u))}function c(u){return u===null||_e(u)?(e.exit("setextHeadingLine"),t(u)):n(u)}}const cde={tokenize:ude};function ude(e){const t=this,n=e.attempt(id,r,e.attempt(this.parser.constructs.flowInitial,a,We(e,e.attempt(this.parser.constructs.flow,a,e.attempt(mue,a)),"linePrefix")));return n;function r(s){if(s===null){e.consume(s);return}return e.enter("lineEndingBlank"),e.consume(s),e.exit("lineEndingBlank"),t.currentConstruct=void 0,n}function a(s){if(s===null){e.consume(s);return}return e.enter("lineEnding"),e.consume(s),e.exit("lineEnding"),t.currentConstruct=void 0,n}}const dde={resolveAll:UM()},fde=FM("string"),hde=FM("text");function FM(e){return{resolveAll:UM(e==="text"?pde:void 0),tokenize:t};function t(n){const r=this,a=this.parser.constructs[e],s=n.attempt(a,o,l);return o;function o(d){return u(d)?s(d):l(d)}function l(d){if(d===null){n.consume(d);return}return n.enter("data"),n.consume(d),c}function c(d){return u(d)?(n.exit("data"),s(d)):(n.consume(d),c)}function u(d){if(d===null)return!0;const f=a[d];let h=-1;if(f)for(;++h<f.length;){const p=f[h];if(!p.previous||p.previous.call(r,r.previous))return!0}return!1}}}function UM(e){return t;function t(n,r){let a=-1,s;for(;++a<=n.length;)s===void 0?n[a]&&n[a][1].type==="data"&&(s=a,a++):(!n[a]||n[a][1].type!=="data")&&(a!==s+2&&(n[s][1].end=n[a-1][1].end,n.splice(s+2,a-s-2),a=s+2),s=void 0);return e?e(n,r):n}}function pde(e,t){let n=0;for(;++n<=e.length;)if((n===e.length||e[n][1].type==="lineEnding")&&e[n-1][1].type==="data"){const r=e[n-1][1],a=t.sliceStream(r);let s=a.length,o=-1,l=0,c;for(;s--;){const u=a[s];if(typeof u=="string"){for(o=u.length;u.charCodeAt(o-1)===32;)l++,o--;if(o)break;o=-1}else if(u===-2)c=!0,l++;else if(u!==-1){s++;break}}if(t._contentTypeTextTrailing&&n===e.length&&(l=0),l){const u={type:n===e.length||c||l<2?"lineSuffix":"hardBreakTrailing",start:{_bufferIndex:s?o:r.start._bufferIndex+o,_index:r.start._index+s,line:r.end.line,column:r.end.column-l,offset:r.end.offset-l},end:{...r.end}};r.end={...u.start},r.start.offset===r.end.offset?Object.assign(r,u):(e.splice(n,0,["enter",u,t],["exit",u,t]),n+=2)}n++}return e}const mde={42:Ln,43:Ln,45:Ln,48:Ln,49:Ln,50:Ln,51:Ln,52:Ln,53:Ln,54:Ln,55:Ln,56:Ln,57:Ln,62:MM},gde={91:xue},vde={[-2]:Vg,[-1]:Vg,32:Vg},yde={35:Eue,42:Cf,45:[IE,Cf],60:Tue,61:IE,95:Cf,96:RE,126:RE},bde={38:$M,92:IM},xde={[-5]:Yg,[-4]:Yg,[-3]:Yg,33:Vue,38:$M,42:Kb,60:[Xce,Lue],91:Xue,92:[jue,IM],93:k0,95:Kb,96:cue},wde={null:[Kb,dde]},kde={null:[42,95]},Sde={null:[]},jde=Object.freeze(Object.defineProperty({__proto__:null,attentionMarkers:kde,contentInitial:gde,disable:Sde,document:mde,flow:yde,flowInitial:vde,insideSpan:wde,string:bde,text:xde},Symbol.toStringTag,{value:"Module"}));function Nde(e,t,n){let r={_bufferIndex:-1,_index:0,line:n&&n.line||1,column:n&&n.column||1,offset:n&&n.offset||0};const a={},s=[];let o=[],l=[];const c={attempt:N(k),check:N(b),consume:S,enter:w,exit:j,interrupt:N(b,{interrupt:!0})},u={code:null,containerState:{},defineSkip:m,events:[],now:g,parser:e,previous:null,sliceSerialize:h,sliceStream:p,write:f};let d=t.tokenize.call(u,c);return t.resolveAll&&s.push(t),u;function f(O){return o=br(o,O),y(),o[o.length-1]!==null?[]:(_(t,0),u.events=jm(s,u.events,u),u.events)}function h(O,P){return _de(p(O),P)}function p(O){return Ede(o,O)}function g(){const{_bufferIndex:O,_index:P,line:z,column:L,offset:M}=r;return{_bufferIndex:O,_index:P,line:z,column:L,offset:M}}function m(O){a[O.line]=O.column,C()}function y(){let O;for(;r._index<o.length;){const P=o[r._index];if(typeof P=="string")for(O=r._index,r._bufferIndex<0&&(r._bufferIndex=0);r._index===O&&r._bufferIndex<P.length;)v(P.charCodeAt(r._bufferIndex));else v(P)}}function v(O){d=d(O)}function S(O){_e(O)?(r.line++,r.column=1,r.offset+=O===-3?2:1,C()):O!==-1&&(r.column++,r.offset++),r._bufferIndex<0?r._index++:(r._bufferIndex++,r._bufferIndex===o[r._index].length&&(r._bufferIndex=-1,r._index++)),u.previous=O}function w(O,P){const z=P||{};return z.type=O,z.start=g(),u.events.push(["enter",z,u]),l.push(z),z}function j(O){const P=l.pop();return P.end=g(),u.events.push(["exit",P,u]),P}function k(O,P){_(O,P.from)}function b(O,P){P.restore()}function N(O,P){return z;function z(L,M,D){let W,R,B,A;return Array.isArray(L)?F(L):"tokenize"in L?F([L]):J(L);function J(me){return Te;function Te(Q){const X=Q!==null&&me[Q],ae=Q!==null&&me.null,ce=[...Array.isArray(X)?X:X?[X]:[],...Array.isArray(ae)?ae:ae?[ae]:[]];return F(ce)(Q)}}function F(me){return W=me,R=0,me.length===0?D:$(me[R])}function $(me){return Te;function Te(Q){return A=T(),B=me,me.partial||(u.currentConstruct=me),me.name&&u.parser.constructs.disable.null.includes(me.name)?de():me.tokenize.call(P?Object.assign(Object.create(u),P):u,c,ie,de)(Q)}}function ie(me){return O(B,A),M}function de(me){return A.restore(),++R<W.length?$(W[R]):D}}}function _(O,P){O.resolveAll&&!s.includes(O)&&s.push(O),O.resolve&&rr(u.events,P,u.events.length-P,O.resolve(u.events.slice(P),u)),O.resolveTo&&(u.events=O.resolveTo(u.events,u))}function T(){const O=g(),P=u.previous,z=u.currentConstruct,L=u.events.length,M=Array.from(l);return{from:L,restore:D};function D(){r=O,u.previous=P,u.currentConstruct=z,u.events.length=L,l=M,C()}}function C(){r.line in a&&r.column<2&&(r.column=a[r.line],r.offset+=a[r.line]-1)}}function Ede(e,t){const n=t.start._index,r=t.start._bufferIndex,a=t.end._index,s=t.end._bufferIndex;let o;if(n===a)o=[e[n].slice(r,s)];else{if(o=e.slice(n,a),r>-1){const l=o[0];typeof l=="string"?o[0]=l.slice(r):o.shift()}s>0&&o.push(e[a].slice(0,s))}return o}function _de(e,t){let n=-1;const r=[];let a;for(;++n<e.length;){const s=e[n];let o;if(typeof s=="string")o=s;else switch(s){case-5:{o="\r";break}case-4:{o=`
|
|
166
|
+
`;break}case-3:{o=`\r
|
|
167
|
+
`;break}case-2:{o=t?" ":" ";break}case-1:{if(!t&&a)continue;o=" ";break}default:o=String.fromCharCode(s)}a=s===-2,r.push(o)}return r.join("")}function Ade(e){const r={constructs:PM([jde,...(e||{}).extensions||[]]),content:a(Wce),defined:[],document:a(Gce),flow:a(cde),lazy:{},string:a(fde),text:a(hde)};return r;function a(s){return o;function o(l){return Nde(r,s,l)}}}function Cde(e){for(;!LM(e););return e}const $E=/[\0\t\n\r]/g;function Tde(){let e=1,t="",n=!0,r;return a;function a(s,o,l){const c=[];let u,d,f,h,p;for(s=t+(typeof s=="string"?s.toString():new TextDecoder(o||void 0).decode(s)),f=0,t="",n&&(s.charCodeAt(0)===65279&&f++,n=void 0);f<s.length;){if($E.lastIndex=f,u=$E.exec(s),h=u&&u.index!==void 0?u.index:s.length,p=s.charCodeAt(h),!u){t=s.slice(f);break}if(p===10&&f===h&&r)c.push(-3),r=void 0;else switch(r&&(c.push(-5),r=void 0),f<h&&(c.push(s.slice(f,h)),e+=h-f),p){case 0:{c.push(65533),e++;break}case 9:{for(d=Math.ceil(e/4)*4,c.push(-2);e++<d;)c.push(-1);break}case 10:{c.push(-4),e=1;break}default:r=!0,e=1}f=h+1}return l&&(r&&c.push(-5),t&&c.push(t),c.push(null)),c}}const Ode=/\\([!-/:-@[-`{-~])|&(#(?:\d{1,7}|x[\da-f]{1,6})|[\da-z]{1,31});/gi;function Pde(e){return e.replace(Ode,Rde)}function Rde(e,t,n){if(t)return t;if(n.charCodeAt(0)===35){const a=n.charCodeAt(1),s=a===120||a===88;return RM(n.slice(s?2:1),s?16:10)}return w0(n)||e}const WM={}.hasOwnProperty;function Mde(e,t,n){return t&&typeof t=="object"&&(n=t,t=void 0),Ide(n)(Cde(Ade(n).document().write(Tde()(e,t,!0))))}function Ide(e){const t={transforms:[],canContainEols:["emphasis","fragment","heading","paragraph","strong"],enter:{autolink:s(nt),autolinkProtocol:T,autolinkEmail:T,atxHeading:s(je),blockQuote:s(ae),characterEscape:T,characterReference:T,codeFenced:s(ce),codeFencedFenceInfo:o,codeFencedFenceMeta:o,codeIndented:s(ce,o),codeText:s(H,o),codeTextData:T,data:T,codeFlowValue:T,definition:s(xe),definitionDestinationString:o,definitionLabelString:o,definitionTitleString:o,emphasis:s(we),hardBreakEscape:s(ge),hardBreakTrailing:s(ge),htmlFlow:s(Ie,o),htmlFlowData:T,htmlText:s(Ie,o),htmlTextData:T,image:s(fe),label:o,link:s(nt),listItem:s(Oe),listItemValue:h,listOrdered:s(Be,f),listUnordered:s(Be),paragraph:s(Ye),reference:$,referenceString:o,resourceDestinationString:o,resourceTitleString:o,setextHeading:s(je),strong:s(rt),thematicBreak:s(Lt)},exit:{atxHeading:c(),atxHeadingSequence:k,autolink:c(),autolinkEmail:X,autolinkProtocol:Q,blockQuote:c(),characterEscapeValue:C,characterReferenceMarkerHexadecimal:de,characterReferenceMarkerNumeric:de,characterReferenceValue:me,characterReference:Te,codeFenced:c(y),codeFencedFence:m,codeFencedFenceInfo:p,codeFencedFenceMeta:g,codeFlowValue:C,codeIndented:c(v),codeText:c(M),codeTextData:C,data:C,definition:c(),definitionDestinationString:j,definitionLabelString:S,definitionTitleString:w,emphasis:c(),hardBreakEscape:c(P),hardBreakTrailing:c(P),htmlFlow:c(z),htmlFlowData:C,htmlText:c(L),htmlTextData:C,image:c(W),label:B,labelText:R,lineEnding:O,link:c(D),listItem:c(),listOrdered:c(),listUnordered:c(),paragraph:c(),referenceString:ie,resourceDestinationString:A,resourceTitleString:J,resource:F,setextHeading:c(_),setextHeadingLineSequence:N,setextHeadingText:b,strong:c(),thematicBreak:c()}};HM(t,(e||{}).mdastExtensions||[]);const n={};return r;function r(q){let Z={type:"root",children:[]};const se={stack:[Z],tokenStack:[],config:t,enter:l,exit:u,buffer:o,resume:d,data:n},he=[];let Ne=-1;for(;++Ne<q.length;)if(q[Ne][1].type==="listOrdered"||q[Ne][1].type==="listUnordered")if(q[Ne][0]==="enter")he.push(Ne);else{const $e=he.pop();Ne=a(q,$e,Ne)}for(Ne=-1;++Ne<q.length;){const $e=t[q[Ne][0]];WM.call($e,q[Ne][1].type)&&$e[q[Ne][1].type].call(Object.assign({sliceSerialize:q[Ne][2].sliceSerialize},se),q[Ne][1])}if(se.tokenStack.length>0){const $e=se.tokenStack[se.tokenStack.length-1];($e[1]||LE).call(se,void 0,$e[0])}for(Z.position={start:ei(q.length>0?q[0][1].start:{line:1,column:1,offset:0}),end:ei(q.length>0?q[q.length-2][1].end:{line:1,column:1,offset:0})},Ne=-1;++Ne<t.transforms.length;)Z=t.transforms[Ne](Z)||Z;return Z}function a(q,Z,se){let he=Z-1,Ne=-1,$e=!1,Dt,Ae,En,In;for(;++he<=se;){const ut=q[he];switch(ut[1].type){case"listUnordered":case"listOrdered":case"blockQuote":{ut[0]==="enter"?Ne++:Ne--,In=void 0;break}case"lineEndingBlank":{ut[0]==="enter"&&(Dt&&!In&&!Ne&&!En&&(En=he),In=void 0);break}case"linePrefix":case"listItemValue":case"listItemMarker":case"listItemPrefix":case"listItemPrefixWhitespace":break;default:In=void 0}if(!Ne&&ut[0]==="enter"&&ut[1].type==="listItemPrefix"||Ne===-1&&ut[0]==="exit"&&(ut[1].type==="listUnordered"||ut[1].type==="listOrdered")){if(Dt){let qt=he;for(Ae=void 0;qt--;){const Rt=q[qt];if(Rt[1].type==="lineEnding"||Rt[1].type==="lineEndingBlank"){if(Rt[0]==="exit")continue;Ae&&(q[Ae][1].type="lineEndingBlank",$e=!0),Rt[1].type="lineEnding",Ae=qt}else if(!(Rt[1].type==="linePrefix"||Rt[1].type==="blockQuotePrefix"||Rt[1].type==="blockQuotePrefixWhitespace"||Rt[1].type==="blockQuoteMarker"||Rt[1].type==="listItemIndent"))break}En&&(!Ae||En<Ae)&&(Dt._spread=!0),Dt.end=Object.assign({},Ae?q[Ae][1].start:ut[1].end),q.splice(Ae||he,0,["exit",Dt,ut[2]]),he++,se++}if(ut[1].type==="listItemPrefix"){const qt={type:"listItem",_spread:!1,start:Object.assign({},ut[1].start),end:void 0};Dt=qt,q.splice(he,0,["enter",qt,ut[2]]),he++,se++,En=void 0,In=!0}}}return q[Z][1]._spread=$e,se}function s(q,Z){return se;function se(he){l.call(this,q(he),he),Z&&Z.call(this,he)}}function o(){this.stack.push({type:"fragment",children:[]})}function l(q,Z,se){this.stack[this.stack.length-1].children.push(q),this.stack.push(q),this.tokenStack.push([Z,se||void 0]),q.position={start:ei(Z.start),end:void 0}}function c(q){return Z;function Z(se){q&&q.call(this,se),u.call(this,se)}}function u(q,Z){const se=this.stack.pop(),he=this.tokenStack.pop();if(he)he[0].type!==q.type&&(Z?Z.call(this,q,he[0]):(he[1]||LE).call(this,q,he[0]));else throw new Error("Cannot close `"+q.type+"` ("+$c({start:q.start,end:q.end})+"): it’s not open");se.position.end=ei(q.end)}function d(){return x0(this.stack.pop())}function f(){this.data.expectingFirstListItemValue=!0}function h(q){if(this.data.expectingFirstListItemValue){const Z=this.stack[this.stack.length-2];Z.start=Number.parseInt(this.sliceSerialize(q),10),this.data.expectingFirstListItemValue=void 0}}function p(){const q=this.resume(),Z=this.stack[this.stack.length-1];Z.lang=q}function g(){const q=this.resume(),Z=this.stack[this.stack.length-1];Z.meta=q}function m(){this.data.flowCodeInside||(this.buffer(),this.data.flowCodeInside=!0)}function y(){const q=this.resume(),Z=this.stack[this.stack.length-1];Z.value=q.replace(/^(\r?\n|\r)|(\r?\n|\r)$/g,""),this.data.flowCodeInside=void 0}function v(){const q=this.resume(),Z=this.stack[this.stack.length-1];Z.value=q.replace(/(\r?\n|\r)$/g,"")}function S(q){const Z=this.resume(),se=this.stack[this.stack.length-1];se.label=Z,se.identifier=Gr(this.sliceSerialize(q)).toLowerCase()}function w(){const q=this.resume(),Z=this.stack[this.stack.length-1];Z.title=q}function j(){const q=this.resume(),Z=this.stack[this.stack.length-1];Z.url=q}function k(q){const Z=this.stack[this.stack.length-1];if(!Z.depth){const se=this.sliceSerialize(q).length;Z.depth=se}}function b(){this.data.setextHeadingSlurpLineEnding=!0}function N(q){const Z=this.stack[this.stack.length-1];Z.depth=this.sliceSerialize(q).codePointAt(0)===61?1:2}function _(){this.data.setextHeadingSlurpLineEnding=void 0}function T(q){const se=this.stack[this.stack.length-1].children;let he=se[se.length-1];(!he||he.type!=="text")&&(he=gt(),he.position={start:ei(q.start),end:void 0},se.push(he)),this.stack.push(he)}function C(q){const Z=this.stack.pop();Z.value+=this.sliceSerialize(q),Z.position.end=ei(q.end)}function O(q){const Z=this.stack[this.stack.length-1];if(this.data.atHardBreak){const se=Z.children[Z.children.length-1];se.position.end=ei(q.end),this.data.atHardBreak=void 0;return}!this.data.setextHeadingSlurpLineEnding&&t.canContainEols.includes(Z.type)&&(T.call(this,q),C.call(this,q))}function P(){this.data.atHardBreak=!0}function z(){const q=this.resume(),Z=this.stack[this.stack.length-1];Z.value=q}function L(){const q=this.resume(),Z=this.stack[this.stack.length-1];Z.value=q}function M(){const q=this.resume(),Z=this.stack[this.stack.length-1];Z.value=q}function D(){const q=this.stack[this.stack.length-1];if(this.data.inReference){const Z=this.data.referenceType||"shortcut";q.type+="Reference",q.referenceType=Z,delete q.url,delete q.title}else delete q.identifier,delete q.label;this.data.referenceType=void 0}function W(){const q=this.stack[this.stack.length-1];if(this.data.inReference){const Z=this.data.referenceType||"shortcut";q.type+="Reference",q.referenceType=Z,delete q.url,delete q.title}else delete q.identifier,delete q.label;this.data.referenceType=void 0}function R(q){const Z=this.sliceSerialize(q),se=this.stack[this.stack.length-2];se.label=Pde(Z),se.identifier=Gr(Z).toLowerCase()}function B(){const q=this.stack[this.stack.length-1],Z=this.resume(),se=this.stack[this.stack.length-1];if(this.data.inReference=!0,se.type==="link"){const he=q.children;se.children=he}else se.alt=Z}function A(){const q=this.resume(),Z=this.stack[this.stack.length-1];Z.url=q}function J(){const q=this.resume(),Z=this.stack[this.stack.length-1];Z.title=q}function F(){this.data.inReference=void 0}function $(){this.data.referenceType="collapsed"}function ie(q){const Z=this.resume(),se=this.stack[this.stack.length-1];se.label=Z,se.identifier=Gr(this.sliceSerialize(q)).toLowerCase(),this.data.referenceType="full"}function de(q){this.data.characterReferenceType=q.type}function me(q){const Z=this.sliceSerialize(q),se=this.data.characterReferenceType;let he;se?(he=RM(Z,se==="characterReferenceMarkerNumeric"?10:16),this.data.characterReferenceType=void 0):he=w0(Z);const Ne=this.stack[this.stack.length-1];Ne.value+=he}function Te(q){const Z=this.stack.pop();Z.position.end=ei(q.end)}function Q(q){C.call(this,q);const Z=this.stack[this.stack.length-1];Z.url=this.sliceSerialize(q)}function X(q){C.call(this,q);const Z=this.stack[this.stack.length-1];Z.url="mailto:"+this.sliceSerialize(q)}function ae(){return{type:"blockquote",children:[]}}function ce(){return{type:"code",lang:null,meta:null,value:""}}function H(){return{type:"inlineCode",value:""}}function xe(){return{type:"definition",identifier:"",label:null,title:null,url:""}}function we(){return{type:"emphasis",children:[]}}function je(){return{type:"heading",depth:0,children:[]}}function ge(){return{type:"break"}}function Ie(){return{type:"html",value:""}}function fe(){return{type:"image",title:null,url:"",alt:null}}function nt(){return{type:"link",title:null,url:"",children:[]}}function Be(q){return{type:"list",ordered:q.type==="listOrdered",start:null,spread:q._spread,children:[]}}function Oe(q){return{type:"listItem",spread:q._spread,checked:null,children:[]}}function Ye(){return{type:"paragraph",children:[]}}function rt(){return{type:"strong",children:[]}}function gt(){return{type:"text",value:""}}function Lt(){return{type:"thematicBreak"}}}function ei(e){return{line:e.line,column:e.column,offset:e.offset}}function HM(e,t){let n=-1;for(;++n<t.length;){const r=t[n];Array.isArray(r)?HM(e,r):$de(e,r)}}function $de(e,t){let n;for(n in t)if(WM.call(t,n))switch(n){case"canContainEols":{const r=t[n];r&&e[n].push(...r);break}case"transforms":{const r=t[n];r&&e[n].push(...r);break}case"enter":case"exit":{const r=t[n];r&&Object.assign(e[n],r);break}}}function LE(e,t){throw e?new Error("Cannot close `"+e.type+"` ("+$c({start:e.start,end:e.end})+"): a different token (`"+t.type+"`, "+$c({start:t.start,end:t.end})+") is open"):new Error("Cannot close document, a token (`"+t.type+"`, "+$c({start:t.start,end:t.end})+") is still open")}function Lde(e){const t=this;t.parser=n;function n(r){return Mde(r,{...t.data("settings"),...e,extensions:t.data("micromarkExtensions")||[],mdastExtensions:t.data("fromMarkdownExtensions")||[]})}}function Dde(e,t){const n={type:"element",tagName:"blockquote",properties:{},children:e.wrap(e.all(t),!0)};return e.patch(t,n),e.applyData(t,n)}function Bde(e,t){const n={type:"element",tagName:"br",properties:{},children:[]};return e.patch(t,n),[e.applyData(t,n),{type:"text",value:`
|
|
168
|
+
`}]}function zde(e,t){const n=t.value?t.value+`
|
|
169
|
+
`:"",r={},a=t.lang?t.lang.split(/\s+/):[];a.length>0&&(r.className=["language-"+a[0]]);let s={type:"element",tagName:"code",properties:r,children:[{type:"text",value:n}]};return t.meta&&(s.data={meta:t.meta}),e.patch(t,s),s=e.applyData(t,s),s={type:"element",tagName:"pre",properties:{},children:[s]},e.patch(t,s),s}function Fde(e,t){const n={type:"element",tagName:"del",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Ude(e,t){const n={type:"element",tagName:"em",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Wde(e,t){const n=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",r=String(t.identifier).toUpperCase(),a=Il(r.toLowerCase()),s=e.footnoteOrder.indexOf(r);let o,l=e.footnoteCounts.get(r);l===void 0?(l=0,e.footnoteOrder.push(r),o=e.footnoteOrder.length):o=s+1,l+=1,e.footnoteCounts.set(r,l);const c={type:"element",tagName:"a",properties:{href:"#"+n+"fn-"+a,id:n+"fnref-"+a+(l>1?"-"+l:""),dataFootnoteRef:!0,ariaDescribedBy:["footnote-label"]},children:[{type:"text",value:String(o)}]};e.patch(t,c);const u={type:"element",tagName:"sup",properties:{},children:[c]};return e.patch(t,u),e.applyData(t,u)}function Hde(e,t){const n={type:"element",tagName:"h"+t.depth,properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function Gde(e,t){if(e.options.allowDangerousHtml){const n={type:"raw",value:t.value};return e.patch(t,n),e.applyData(t,n)}}function GM(e,t){const n=t.referenceType;let r="]";if(n==="collapsed"?r+="[]":n==="full"&&(r+="["+(t.label||t.identifier)+"]"),t.type==="imageReference")return[{type:"text",value:"!["+t.alt+r}];const a=e.all(t),s=a[0];s&&s.type==="text"?s.value="["+s.value:a.unshift({type:"text",value:"["});const o=a[a.length-1];return o&&o.type==="text"?o.value+=r:a.push({type:"text",value:r}),a}function qde(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return GM(e,t);const a={src:Il(r.url||""),alt:t.alt};r.title!==null&&r.title!==void 0&&(a.title=r.title);const s={type:"element",tagName:"img",properties:a,children:[]};return e.patch(t,s),e.applyData(t,s)}function Kde(e,t){const n={src:Il(t.url)};t.alt!==null&&t.alt!==void 0&&(n.alt=t.alt),t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"img",properties:n,children:[]};return e.patch(t,r),e.applyData(t,r)}function Vde(e,t){const n={type:"text",value:t.value.replace(/\r?\n|\r/g," ")};e.patch(t,n);const r={type:"element",tagName:"code",properties:{},children:[n]};return e.patch(t,r),e.applyData(t,r)}function Yde(e,t){const n=String(t.identifier).toUpperCase(),r=e.definitionById.get(n);if(!r)return GM(e,t);const a={href:Il(r.url||"")};r.title!==null&&r.title!==void 0&&(a.title=r.title);const s={type:"element",tagName:"a",properties:a,children:e.all(t)};return e.patch(t,s),e.applyData(t,s)}function Xde(e,t){const n={href:Il(t.url)};t.title!==null&&t.title!==void 0&&(n.title=t.title);const r={type:"element",tagName:"a",properties:n,children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function Qde(e,t,n){const r=e.all(t),a=n?Zde(n):qM(t),s={},o=[];if(typeof t.checked=="boolean"){const d=r[0];let f;d&&d.type==="element"&&d.tagName==="p"?f=d:(f={type:"element",tagName:"p",properties:{},children:[]},r.unshift(f)),f.children.length>0&&f.children.unshift({type:"text",value:" "}),f.children.unshift({type:"element",tagName:"input",properties:{type:"checkbox",checked:t.checked,disabled:!0},children:[]}),s.className=["task-list-item"]}let l=-1;for(;++l<r.length;){const d=r[l];(a||l!==0||d.type!=="element"||d.tagName!=="p")&&o.push({type:"text",value:`
|
|
170
|
+
`}),d.type==="element"&&d.tagName==="p"&&!a?o.push(...d.children):o.push(d)}const c=r[r.length-1];c&&(a||c.type!=="element"||c.tagName!=="p")&&o.push({type:"text",value:`
|
|
171
|
+
`});const u={type:"element",tagName:"li",properties:s,children:o};return e.patch(t,u),e.applyData(t,u)}function Zde(e){let t=!1;if(e.type==="list"){t=e.spread||!1;const n=e.children;let r=-1;for(;!t&&++r<n.length;)t=qM(n[r])}return t}function qM(e){const t=e.spread;return t??e.children.length>1}function Jde(e,t){const n={},r=e.all(t);let a=-1;for(typeof t.start=="number"&&t.start!==1&&(n.start=t.start);++a<r.length;){const o=r[a];if(o.type==="element"&&o.tagName==="li"&&o.properties&&Array.isArray(o.properties.className)&&o.properties.className.includes("task-list-item")){n.className=["contains-task-list"];break}}const s={type:"element",tagName:t.ordered?"ol":"ul",properties:n,children:e.wrap(r,!0)};return e.patch(t,s),e.applyData(t,s)}function efe(e,t){const n={type:"element",tagName:"p",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function tfe(e,t){const n={type:"root",children:e.wrap(e.all(t))};return e.patch(t,n),e.applyData(t,n)}function nfe(e,t){const n={type:"element",tagName:"strong",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}function rfe(e,t){const n=e.all(t),r=n.shift(),a=[];if(r){const o={type:"element",tagName:"thead",properties:{},children:e.wrap([r],!0)};e.patch(t.children[0],o),a.push(o)}if(n.length>0){const o={type:"element",tagName:"tbody",properties:{},children:e.wrap(n,!0)},l=g0(t.children[1]),c=NM(t.children[t.children.length-1]);l&&c&&(o.position={start:l,end:c}),a.push(o)}const s={type:"element",tagName:"table",properties:{},children:e.wrap(a,!0)};return e.patch(t,s),e.applyData(t,s)}function afe(e,t,n){const r=n?n.children:void 0,s=(r?r.indexOf(t):1)===0?"th":"td",o=n&&n.type==="table"?n.align:void 0,l=o?o.length:t.children.length;let c=-1;const u=[];for(;++c<l;){const f=t.children[c],h={},p=o?o[c]:void 0;p&&(h.align=p);let g={type:"element",tagName:s,properties:h,children:[]};f&&(g.children=e.all(f),e.patch(f,g),g=e.applyData(f,g)),u.push(g)}const d={type:"element",tagName:"tr",properties:{},children:e.wrap(u,!0)};return e.patch(t,d),e.applyData(t,d)}function ife(e,t){const n={type:"element",tagName:"td",properties:{},children:e.all(t)};return e.patch(t,n),e.applyData(t,n)}const DE=9,BE=32;function sfe(e){const t=String(e),n=/\r?\n|\r/g;let r=n.exec(t),a=0;const s=[];for(;r;)s.push(zE(t.slice(a,r.index),a>0,!0),r[0]),a=r.index+r[0].length,r=n.exec(t);return s.push(zE(t.slice(a),a>0,!1)),s.join("")}function zE(e,t,n){let r=0,a=e.length;if(t){let s=e.codePointAt(r);for(;s===DE||s===BE;)r++,s=e.codePointAt(r)}if(n){let s=e.codePointAt(a-1);for(;s===DE||s===BE;)a--,s=e.codePointAt(a-1)}return a>r?e.slice(r,a):""}function ofe(e,t){const n={type:"text",value:sfe(String(t.value))};return e.patch(t,n),e.applyData(t,n)}function lfe(e,t){const n={type:"element",tagName:"hr",properties:{},children:[]};return e.patch(t,n),e.applyData(t,n)}const cfe={blockquote:Dde,break:Bde,code:zde,delete:Fde,emphasis:Ude,footnoteReference:Wde,heading:Hde,html:Gde,imageReference:qde,image:Kde,inlineCode:Vde,linkReference:Yde,link:Xde,listItem:Qde,list:Jde,paragraph:efe,root:tfe,strong:nfe,table:rfe,tableCell:ife,tableRow:afe,text:ofe,thematicBreak:lfe,toml:sf,yaml:sf,definition:sf,footnoteDefinition:sf};function sf(){}const KM=-1,Nm=0,Dc=1,op=2,S0=3,j0=4,N0=5,E0=6,VM=7,YM=8,XM=typeof self=="object"?self:globalThis,FE=(e,t)=>{switch(e){case"Function":case"SharedWorker":case"Worker":case"eval":case"setInterval":case"setTimeout":throw new TypeError("unable to deserialize "+e)}return new XM[e](t)},ufe=(e,t)=>{const n=(a,s)=>(e.set(s,a),a),r=a=>{if(e.has(a))return e.get(a);const[s,o]=t[a];switch(s){case Nm:case KM:return n(o,a);case Dc:{const l=n([],a);for(const c of o)l.push(r(c));return l}case op:{const l=n({},a);for(const[c,u]of o)l[r(c)]=r(u);return l}case S0:return n(new Date(o),a);case j0:{const{source:l,flags:c}=o;return n(new RegExp(l,c),a)}case N0:{const l=n(new Map,a);for(const[c,u]of o)l.set(r(c),r(u));return l}case E0:{const l=n(new Set,a);for(const c of o)l.add(r(c));return l}case VM:{const{name:l,message:c}=o;return n(typeof XM[l]=="function"?FE(l,c):new Error(c),a)}case YM:return n(BigInt(o),a);case"BigInt":return n(Object(BigInt(o)),a);case"ArrayBuffer":return n(new Uint8Array(o).buffer,o);case"DataView":{const{buffer:l}=new Uint8Array(o);return n(new DataView(l),o)}}return n(FE(s,o),a)};return r},UE=e=>ufe(new Map,e)(0),cs="",{toString:dfe}={},{keys:ffe}=Object,hc=e=>{const t=typeof e;if(t!=="object"||!e)return[Nm,t];const n=dfe.call(e).slice(8,-1);switch(n){case"Array":return[Dc,cs];case"Object":return[op,cs];case"Date":return[S0,cs];case"RegExp":return[j0,cs];case"Map":return[N0,cs];case"Set":return[E0,cs];case"DataView":return[Dc,n]}return n.includes("Array")?[Dc,n]:e instanceof Error?[VM,e.name||"Error"]:[op,n]},of=([e,t])=>e===Nm&&(t==="function"||t==="symbol"),hfe=(e,t,n,r)=>{const a=(o,l)=>{const c=r.push(o)-1;return n.set(l,c),c},s=o=>{if(n.has(o))return n.get(o);let[l,c]=hc(o);switch(l){case Nm:{let d=o;switch(c){case"bigint":l=YM,d=o.toString();break;case"function":case"symbol":if(e)throw new TypeError("unable to serialize "+c);d=null;break;case"undefined":return a([KM],o)}return a([l,d],o)}case Dc:{if(c){let h=o;return c==="DataView"?h=new Uint8Array(o.buffer):c==="ArrayBuffer"&&(h=new Uint8Array(o)),a([c,[...h]],o)}const d=[],f=a([l,d],o);for(const h of o)d.push(s(h));return f}case op:{if(c)switch(c){case"BigInt":return a([c,o.toString()],o);case"Boolean":case"Number":case"String":return a([c,o.valueOf()],o)}if(t&&"toJSON"in o)return s(o.toJSON());const d=[],f=a([l,d],o);for(const h of ffe(o))(e||!of(hc(o[h])))&&d.push([s(h),s(o[h])]);return f}case S0:return a([l,isNaN(o.getTime())?cs:o.toISOString()],o);case j0:{const{source:d,flags:f}=o;return a([l,{source:d,flags:f}],o)}case N0:{const d=[],f=a([l,d],o);for(const[h,p]of o)(e||!(of(hc(h))||of(hc(p))))&&d.push([s(h),s(p)]);return f}case E0:{const d=[],f=a([l,d],o);for(const h of o)(e||!of(hc(h)))&&d.push(s(h));return f}}const{message:u}=o;return a([l,{name:c,message:u}],o)};return s},WE=(e,{json:t,lossy:n}={})=>{const r=[];return hfe(!(t||n),!!t,new Map,r)(e),r},lp=typeof structuredClone=="function"?(e,t)=>t&&("json"in t||"lossy"in t)?UE(WE(e,t)):structuredClone(e):(e,t)=>UE(WE(e,t));function pfe(e,t){const n=[{type:"text",value:"↩"}];return t>1&&n.push({type:"element",tagName:"sup",properties:{},children:[{type:"text",value:String(t)}]}),n}function mfe(e,t){return"Back to reference "+(e+1)+(t>1?"-"+t:"")}function gfe(e){const t=typeof e.options.clobberPrefix=="string"?e.options.clobberPrefix:"user-content-",n=e.options.footnoteBackContent||pfe,r=e.options.footnoteBackLabel||mfe,a=e.options.footnoteLabel||"Footnotes",s=e.options.footnoteLabelTagName||"h2",o=e.options.footnoteLabelProperties||{className:["sr-only"]},l=[];let c=-1;for(;++c<e.footnoteOrder.length;){const u=e.footnoteById.get(e.footnoteOrder[c]);if(!u)continue;const d=e.all(u),f=String(u.identifier).toUpperCase(),h=Il(f.toLowerCase());let p=0;const g=[],m=e.footnoteCounts.get(f);for(;m!==void 0&&++p<=m;){g.length>0&&g.push({type:"text",value:" "});let S=typeof n=="string"?n:n(c,p);typeof S=="string"&&(S={type:"text",value:S}),g.push({type:"element",tagName:"a",properties:{href:"#"+t+"fnref-"+h+(p>1?"-"+p:""),dataFootnoteBackref:"",ariaLabel:typeof r=="string"?r:r(c,p),className:["data-footnote-backref"]},children:Array.isArray(S)?S:[S]})}const y=d[d.length-1];if(y&&y.type==="element"&&y.tagName==="p"){const S=y.children[y.children.length-1];S&&S.type==="text"?S.value+=" ":y.children.push({type:"text",value:" "}),y.children.push(...g)}else d.push(...g);const v={type:"element",tagName:"li",properties:{id:t+"fn-"+h},children:e.wrap(d,!0)};e.patch(u,v),l.push(v)}if(l.length!==0)return{type:"element",tagName:"section",properties:{dataFootnotes:!0,className:["footnotes"]},children:[{type:"element",tagName:s,properties:{...lp(o),id:"footnote-label"},children:[{type:"text",value:a}]},{type:"text",value:`
|
|
172
|
+
`},{type:"element",tagName:"ol",properties:{},children:e.wrap(l,!0)},{type:"text",value:`
|
|
173
|
+
`}]}}const sd=function(e){if(e==null)return xfe;if(typeof e=="function")return Em(e);if(typeof e=="object")return Array.isArray(e)?vfe(e):yfe(e);if(typeof e=="string")return bfe(e);throw new Error("Expected function, string, or object as test")};function vfe(e){const t=[];let n=-1;for(;++n<e.length;)t[n]=sd(e[n]);return Em(r);function r(...a){let s=-1;for(;++s<t.length;)if(t[s].apply(this,a))return!0;return!1}}function yfe(e){const t=e;return Em(n);function n(r){const a=r;let s;for(s in e)if(a[s]!==t[s])return!1;return!0}}function bfe(e){return Em(t);function t(n){return n&&n.type===e}}function Em(e){return t;function t(n,r,a){return!!(wfe(n)&&e.call(this,n,typeof r=="number"?r:void 0,a||void 0))}}function xfe(){return!0}function wfe(e){return e!==null&&typeof e=="object"&&"type"in e}const QM=[],kfe=!0,Vb=!1,Sfe="skip";function ZM(e,t,n,r){let a;typeof t=="function"&&typeof n!="function"?(r=n,n=t):a=t;const s=sd(a),o=r?-1:1;l(e,void 0,[])();function l(c,u,d){const f=c&&typeof c=="object"?c:{};if(typeof f.type=="string"){const p=typeof f.tagName=="string"?f.tagName:typeof f.name=="string"?f.name:void 0;Object.defineProperty(h,"name",{value:"node ("+(c.type+(p?"<"+p+">":""))+")"})}return h;function h(){let p=QM,g,m,y;if((!t||s(c,u,d[d.length-1]||void 0))&&(p=jfe(n(c,d)),p[0]===Vb))return p;if("children"in c&&c.children){const v=c;if(v.children&&p[0]!==Sfe)for(m=(r?v.children.length:-1)+o,y=d.concat(v);m>-1&&m<v.children.length;){const S=v.children[m];if(g=l(S,m,y)(),g[0]===Vb)return g;m=typeof g[1]=="number"?g[1]:m+o}}return p}}}function jfe(e){return Array.isArray(e)?e:typeof e=="number"?[kfe,e]:e==null?QM:[e]}function _m(e,t,n,r){let a,s,o;typeof t=="function"&&typeof n!="function"?(s=void 0,o=t,a=n):(s=t,o=n,a=r),ZM(e,s,l,a);function l(c,u){const d=u[u.length-1],f=d?d.children.indexOf(c):void 0;return o(c,f,d)}}const Yb={}.hasOwnProperty,Nfe={};function Efe(e,t){const n=t||Nfe,r=new Map,a=new Map,s=new Map,o={...cfe,...n.handlers},l={all:u,applyData:Afe,definitionById:r,footnoteById:a,footnoteCounts:s,footnoteOrder:[],handlers:o,one:c,options:n,patch:_fe,wrap:Tfe};return _m(e,function(d){if(d.type==="definition"||d.type==="footnoteDefinition"){const f=d.type==="definition"?r:a,h=String(d.identifier).toUpperCase();f.has(h)||f.set(h,d)}}),l;function c(d,f){const h=d.type,p=l.handlers[h];if(Yb.call(l.handlers,h)&&p)return p(l,d,f);if(l.options.passThrough&&l.options.passThrough.includes(h)){if("children"in d){const{children:m,...y}=d,v=lp(y);return v.children=l.all(d),v}return lp(d)}return(l.options.unknownHandler||Cfe)(l,d,f)}function u(d){const f=[];if("children"in d){const h=d.children;let p=-1;for(;++p<h.length;){const g=l.one(h[p],d);if(g){if(p&&h[p-1].type==="break"&&(!Array.isArray(g)&&g.type==="text"&&(g.value=HE(g.value)),!Array.isArray(g)&&g.type==="element")){const m=g.children[0];m&&m.type==="text"&&(m.value=HE(m.value))}Array.isArray(g)?f.push(...g):f.push(g)}}}return f}}function _fe(e,t){e.position&&(t.position=mce(e))}function Afe(e,t){let n=t;if(e&&e.data){const r=e.data.hName,a=e.data.hChildren,s=e.data.hProperties;if(typeof r=="string")if(n.type==="element")n.tagName=r;else{const o="children"in n?n.children:[n];n={type:"element",tagName:r,properties:{},children:o}}n.type==="element"&&s&&Object.assign(n.properties,lp(s)),"children"in n&&n.children&&a!==null&&a!==void 0&&(n.children=a)}return n}function Cfe(e,t){const n=t.data||{},r="value"in t&&!(Yb.call(n,"hProperties")||Yb.call(n,"hChildren"))?{type:"text",value:t.value}:{type:"element",tagName:"div",properties:{},children:e.all(t)};return e.patch(t,r),e.applyData(t,r)}function Tfe(e,t){const n=[];let r=-1;for(t&&n.push({type:"text",value:`
|
|
174
|
+
`});++r<e.length;)r&&n.push({type:"text",value:`
|
|
175
|
+
`}),n.push(e[r]);return t&&e.length>0&&n.push({type:"text",value:`
|
|
176
|
+
`}),n}function HE(e){let t=0,n=e.charCodeAt(t);for(;n===9||n===32;)t++,n=e.charCodeAt(t);return e.slice(t)}function GE(e,t){const n=Efe(e,t),r=n.one(e,void 0),a=gfe(n),s=Array.isArray(r)?{type:"root",children:r}:r||{type:"root",children:[]};return a&&s.children.push({type:"text",value:`
|
|
177
|
+
`},a),s}function Ofe(e,t){return e&&"run"in e?async function(n,r){const a=GE(n,{file:r,...t});await e.run(a,r)}:function(n,r){return GE(n,{file:r,...e||t})}}function qE(e){if(e)throw e}var Tf=Object.prototype.hasOwnProperty,JM=Object.prototype.toString,KE=Object.defineProperty,VE=Object.getOwnPropertyDescriptor,YE=function(t){return typeof Array.isArray=="function"?Array.isArray(t):JM.call(t)==="[object Array]"},XE=function(t){if(!t||JM.call(t)!=="[object Object]")return!1;var n=Tf.call(t,"constructor"),r=t.constructor&&t.constructor.prototype&&Tf.call(t.constructor.prototype,"isPrototypeOf");if(t.constructor&&!n&&!r)return!1;var a;for(a in t);return typeof a>"u"||Tf.call(t,a)},QE=function(t,n){KE&&n.name==="__proto__"?KE(t,n.name,{enumerable:!0,configurable:!0,value:n.newValue,writable:!0}):t[n.name]=n.newValue},ZE=function(t,n){if(n==="__proto__")if(Tf.call(t,n)){if(VE)return VE(t,n).value}else return;return t[n]},Pfe=function e(){var t,n,r,a,s,o,l=arguments[0],c=1,u=arguments.length,d=!1;for(typeof l=="boolean"&&(d=l,l=arguments[1]||{},c=2),(l==null||typeof l!="object"&&typeof l!="function")&&(l={});c<u;++c)if(t=arguments[c],t!=null)for(n in t)r=ZE(l,n),a=ZE(t,n),l!==a&&(d&&a&&(XE(a)||(s=YE(a)))?(s?(s=!1,o=r&&YE(r)?r:[]):o=r&&XE(r)?r:{},QE(l,{name:n,newValue:e(d,o,a)})):typeof a<"u"&&QE(l,{name:n,newValue:a}));return l};const Xg=tt(Pfe);function Xb(e){if(typeof e!="object"||e===null)return!1;const t=Object.getPrototypeOf(e);return(t===null||t===Object.prototype||Object.getPrototypeOf(t)===null)&&!(Symbol.toStringTag in e)&&!(Symbol.iterator in e)}function Rfe(){const e=[],t={run:n,use:r};return t;function n(...a){let s=-1;const o=a.pop();if(typeof o!="function")throw new TypeError("Expected function as last argument, not "+o);l(null,...a);function l(c,...u){const d=e[++s];let f=-1;if(c){o(c);return}for(;++f<a.length;)(u[f]===null||u[f]===void 0)&&(u[f]=a[f]);a=u,d?Mfe(d,l)(...u):o(null,...u)}}function r(a){if(typeof a!="function")throw new TypeError("Expected `middelware` to be a function, not "+a);return e.push(a),t}}function Mfe(e,t){let n;return r;function r(...o){const l=e.length>o.length;let c;l&&o.push(a);try{c=e.apply(this,o)}catch(u){const d=u;if(l&&n)throw d;return a(d)}l||(c&&c.then&&typeof c.then=="function"?c.then(s,a):c instanceof Error?a(c):s(c))}function a(o,...l){n||(n=!0,t(o,...l))}function s(o){a(null,o)}}const ra={basename:Ife,dirname:$fe,extname:Lfe,join:Dfe,sep:"/"};function Ife(e,t){if(t!==void 0&&typeof t!="string")throw new TypeError('"ext" argument must be a string');od(e);let n=0,r=-1,a=e.length,s;if(t===void 0||t.length===0||t.length>e.length){for(;a--;)if(e.codePointAt(a)===47){if(s){n=a+1;break}}else r<0&&(s=!0,r=a+1);return r<0?"":e.slice(n,r)}if(t===e)return"";let o=-1,l=t.length-1;for(;a--;)if(e.codePointAt(a)===47){if(s){n=a+1;break}}else o<0&&(s=!0,o=a+1),l>-1&&(e.codePointAt(a)===t.codePointAt(l--)?l<0&&(r=a):(l=-1,r=o));return n===r?r=o:r<0&&(r=e.length),e.slice(n,r)}function $fe(e){if(od(e),e.length===0)return".";let t=-1,n=e.length,r;for(;--n;)if(e.codePointAt(n)===47){if(r){t=n;break}}else r||(r=!0);return t<0?e.codePointAt(0)===47?"/":".":t===1&&e.codePointAt(0)===47?"//":e.slice(0,t)}function Lfe(e){od(e);let t=e.length,n=-1,r=0,a=-1,s=0,o;for(;t--;){const l=e.codePointAt(t);if(l===47){if(o){r=t+1;break}continue}n<0&&(o=!0,n=t+1),l===46?a<0?a=t:s!==1&&(s=1):a>-1&&(s=-1)}return a<0||n<0||s===0||s===1&&a===n-1&&a===r+1?"":e.slice(a,n)}function Dfe(...e){let t=-1,n;for(;++t<e.length;)od(e[t]),e[t]&&(n=n===void 0?e[t]:n+"/"+e[t]);return n===void 0?".":Bfe(n)}function Bfe(e){od(e);const t=e.codePointAt(0)===47;let n=zfe(e,!t);return n.length===0&&!t&&(n="."),n.length>0&&e.codePointAt(e.length-1)===47&&(n+="/"),t?"/"+n:n}function zfe(e,t){let n="",r=0,a=-1,s=0,o=-1,l,c;for(;++o<=e.length;){if(o<e.length)l=e.codePointAt(o);else{if(l===47)break;l=47}if(l===47){if(!(a===o-1||s===1))if(a!==o-1&&s===2){if(n.length<2||r!==2||n.codePointAt(n.length-1)!==46||n.codePointAt(n.length-2)!==46){if(n.length>2){if(c=n.lastIndexOf("/"),c!==n.length-1){c<0?(n="",r=0):(n=n.slice(0,c),r=n.length-1-n.lastIndexOf("/")),a=o,s=0;continue}}else if(n.length>0){n="",r=0,a=o,s=0;continue}}t&&(n=n.length>0?n+"/..":"..",r=2)}else n.length>0?n+="/"+e.slice(a+1,o):n=e.slice(a+1,o),r=o-a-1;a=o,s=0}else l===46&&s>-1?s++:s=-1}return n}function od(e){if(typeof e!="string")throw new TypeError("Path must be a string. Received "+JSON.stringify(e))}const Ffe={cwd:Ufe};function Ufe(){return"/"}function Qb(e){return!!(e!==null&&typeof e=="object"&&"href"in e&&e.href&&"protocol"in e&&e.protocol&&e.auth===void 0)}function Wfe(e){if(typeof e=="string")e=new URL(e);else if(!Qb(e)){const t=new TypeError('The "path" argument must be of type string or an instance of URL. Received `'+e+"`");throw t.code="ERR_INVALID_ARG_TYPE",t}if(e.protocol!=="file:"){const t=new TypeError("The URL must be of scheme file");throw t.code="ERR_INVALID_URL_SCHEME",t}return Hfe(e)}function Hfe(e){if(e.hostname!==""){const r=new TypeError('File URL host must be "localhost" or empty on darwin');throw r.code="ERR_INVALID_FILE_URL_HOST",r}const t=e.pathname;let n=-1;for(;++n<t.length;)if(t.codePointAt(n)===37&&t.codePointAt(n+1)===50){const r=t.codePointAt(n+2);if(r===70||r===102){const a=new TypeError("File URL path must not include encoded / characters");throw a.code="ERR_INVALID_FILE_URL_PATH",a}}return decodeURIComponent(t)}const Qg=["history","path","basename","stem","extname","dirname"];class eI{constructor(t){let n;t?Qb(t)?n={path:t}:typeof t=="string"||Gfe(t)?n={value:t}:n=t:n={},this.cwd="cwd"in n?"":Ffe.cwd(),this.data={},this.history=[],this.messages=[],this.value,this.map,this.result,this.stored;let r=-1;for(;++r<Qg.length;){const s=Qg[r];s in n&&n[s]!==void 0&&n[s]!==null&&(this[s]=s==="history"?[...n[s]]:n[s])}let a;for(a in n)Qg.includes(a)||(this[a]=n[a])}get basename(){return typeof this.path=="string"?ra.basename(this.path):void 0}set basename(t){Jg(t,"basename"),Zg(t,"basename"),this.path=ra.join(this.dirname||"",t)}get dirname(){return typeof this.path=="string"?ra.dirname(this.path):void 0}set dirname(t){JE(this.basename,"dirname"),this.path=ra.join(t||"",this.basename)}get extname(){return typeof this.path=="string"?ra.extname(this.path):void 0}set extname(t){if(Zg(t,"extname"),JE(this.dirname,"extname"),t){if(t.codePointAt(0)!==46)throw new Error("`extname` must start with `.`");if(t.includes(".",1))throw new Error("`extname` cannot contain multiple dots")}this.path=ra.join(this.dirname,this.stem+(t||""))}get path(){return this.history[this.history.length-1]}set path(t){Qb(t)&&(t=Wfe(t)),Jg(t,"path"),this.path!==t&&this.history.push(t)}get stem(){return typeof this.path=="string"?ra.basename(this.path,this.extname):void 0}set stem(t){Jg(t,"stem"),Zg(t,"stem"),this.path=ra.join(this.dirname||"",t+(this.extname||""))}fail(t,n,r){const a=this.message(t,n,r);throw a.fatal=!0,a}info(t,n,r){const a=this.message(t,n,r);return a.fatal=void 0,a}message(t,n,r){const a=new Nn(t,n,r);return this.path&&(a.name=this.path+":"+a.name,a.file=this.path),a.fatal=!1,this.messages.push(a),a}toString(t){return this.value===void 0?"":typeof this.value=="string"?this.value:new TextDecoder(t||void 0).decode(this.value)}}function Zg(e,t){if(e&&e.includes(ra.sep))throw new Error("`"+t+"` cannot be a path: did not expect `"+ra.sep+"`")}function Jg(e,t){if(!e)throw new Error("`"+t+"` cannot be empty")}function JE(e,t){if(!e)throw new Error("Setting `"+t+"` requires `path` to be set too")}function Gfe(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const qfe=function(e){const r=this.constructor.prototype,a=r[e],s=function(){return a.apply(s,arguments)};return Object.setPrototypeOf(s,r),s},Kfe={}.hasOwnProperty;class _0 extends qfe{constructor(){super("copy"),this.Compiler=void 0,this.Parser=void 0,this.attachers=[],this.compiler=void 0,this.freezeIndex=-1,this.frozen=void 0,this.namespace={},this.parser=void 0,this.transformers=Rfe()}copy(){const t=new _0;let n=-1;for(;++n<this.attachers.length;){const r=this.attachers[n];t.use(...r)}return t.data(Xg(!0,{},this.namespace)),t}data(t,n){return typeof t=="string"?arguments.length===2?(nv("data",this.frozen),this.namespace[t]=n,this):Kfe.call(this.namespace,t)&&this.namespace[t]||void 0:t?(nv("data",this.frozen),this.namespace=t,this):this.namespace}freeze(){if(this.frozen)return this;const t=this;for(;++this.freezeIndex<this.attachers.length;){const[n,...r]=this.attachers[this.freezeIndex];if(r[0]===!1)continue;r[0]===!0&&(r[0]=void 0);const a=n.call(t,...r);typeof a=="function"&&this.transformers.use(a)}return this.frozen=!0,this.freezeIndex=Number.POSITIVE_INFINITY,this}parse(t){this.freeze();const n=lf(t),r=this.parser||this.Parser;return ev("parse",r),r(String(n),n)}process(t,n){const r=this;return this.freeze(),ev("process",this.parser||this.Parser),tv("process",this.compiler||this.Compiler),n?a(void 0,n):new Promise(a);function a(s,o){const l=lf(t),c=r.parse(l);r.run(c,l,function(d,f,h){if(d||!f||!h)return u(d);const p=f,g=r.stringify(p,h);Xfe(g)?h.value=g:h.result=g,u(d,h)});function u(d,f){d||!f?o(d):s?s(f):n(void 0,f)}}}processSync(t){let n=!1,r;return this.freeze(),ev("processSync",this.parser||this.Parser),tv("processSync",this.compiler||this.Compiler),this.process(t,a),t_("processSync","process",n),r;function a(s,o){n=!0,qE(s),r=o}}run(t,n,r){e_(t),this.freeze();const a=this.transformers;return!r&&typeof n=="function"&&(r=n,n=void 0),r?s(void 0,r):new Promise(s);function s(o,l){const c=lf(n);a.run(t,c,u);function u(d,f,h){const p=f||t;d?l(d):o?o(p):r(void 0,p,h)}}}runSync(t,n){let r=!1,a;return this.run(t,n,s),t_("runSync","run",r),a;function s(o,l){qE(o),a=l,r=!0}}stringify(t,n){this.freeze();const r=lf(n),a=this.compiler||this.Compiler;return tv("stringify",a),e_(t),a(t,r)}use(t,...n){const r=this.attachers,a=this.namespace;if(nv("use",this.frozen),t!=null)if(typeof t=="function")c(t,n);else if(typeof t=="object")Array.isArray(t)?l(t):o(t);else throw new TypeError("Expected usable value, not `"+t+"`");return this;function s(u){if(typeof u=="function")c(u,[]);else if(typeof u=="object")if(Array.isArray(u)){const[d,...f]=u;c(d,f)}else o(u);else throw new TypeError("Expected usable value, not `"+u+"`")}function o(u){if(!("plugins"in u)&&!("settings"in u))throw new Error("Expected usable value but received an empty preset, which is probably a mistake: presets typically come with `plugins` and sometimes with `settings`, but this has neither");l(u.plugins),u.settings&&(a.settings=Xg(!0,a.settings,u.settings))}function l(u){let d=-1;if(u!=null)if(Array.isArray(u))for(;++d<u.length;){const f=u[d];s(f)}else throw new TypeError("Expected a list of plugins, not `"+u+"`")}function c(u,d){let f=-1,h=-1;for(;++f<r.length;)if(r[f][0]===u){h=f;break}if(h===-1)r.push([u,...d]);else if(d.length>0){let[p,...g]=d;const m=r[h][1];Xb(m)&&Xb(p)&&(p=Xg(!0,m,p)),r[h]=[u,p,...g]}}}}const Vfe=new _0().freeze();function ev(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `parser`")}function tv(e,t){if(typeof t!="function")throw new TypeError("Cannot `"+e+"` without `compiler`")}function nv(e,t){if(t)throw new Error("Cannot call `"+e+"` on a frozen processor.\nCreate a new processor first, by calling it: use `processor()` instead of `processor`.")}function e_(e){if(!Xb(e)||typeof e.type!="string")throw new TypeError("Expected node, got `"+e+"`")}function t_(e,t,n){if(!n)throw new Error("`"+e+"` finished async. Use `"+t+"` instead")}function lf(e){return Yfe(e)?e:new eI(e)}function Yfe(e){return!!(e&&typeof e=="object"&&"message"in e&&"messages"in e)}function Xfe(e){return typeof e=="string"||Qfe(e)}function Qfe(e){return!!(e&&typeof e=="object"&&"byteLength"in e&&"byteOffset"in e)}const Zfe="https://github.com/remarkjs/react-markdown/blob/main/changelog.md",n_=[],r_={allowDangerousHtml:!0},Jfe=/^(https?|ircs?|mailto|xmpp)$/i,ehe=[{from:"astPlugins",id:"remove-buggy-html-in-markdown-parser"},{from:"allowDangerousHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"allowNode",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowElement"},{from:"allowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"allowedElements"},{from:"className",id:"remove-classname"},{from:"disallowedTypes",id:"replace-allownode-allowedtypes-and-disallowedtypes",to:"disallowedElements"},{from:"escapeHtml",id:"remove-buggy-html-in-markdown-parser"},{from:"includeElementIndex",id:"#remove-includeelementindex"},{from:"includeNodeIndex",id:"change-includenodeindex-to-includeelementindex"},{from:"linkTarget",id:"remove-linktarget"},{from:"plugins",id:"change-plugins-to-remarkplugins",to:"remarkPlugins"},{from:"rawSourcePos",id:"#remove-rawsourcepos"},{from:"renderers",id:"change-renderers-to-components",to:"components"},{from:"source",id:"change-source-to-children",to:"children"},{from:"sourcePos",id:"#remove-sourcepos"},{from:"transformImageUri",id:"#add-urltransform",to:"urlTransform"},{from:"transformLinkUri",id:"#add-urltransform",to:"urlTransform"}];function the(e){const t=nhe(e),n=rhe(e);return ahe(t.runSync(t.parse(n),n),e)}function nhe(e){const t=e.rehypePlugins||n_,n=e.remarkPlugins||n_,r=e.remarkRehypeOptions?{...e.remarkRehypeOptions,...r_}:r_;return Vfe().use(Lde).use(n).use(Ofe,r).use(t)}function rhe(e){const t=e.children||"",n=new eI;return typeof t=="string"&&(n.value=t),n}function ahe(e,t){const n=t.allowedElements,r=t.allowElement,a=t.components,s=t.disallowedElements,o=t.skipHtml,l=t.unwrapDisallowed,c=t.urlTransform||ihe;for(const d of ehe)Object.hasOwn(t,d.from)&&(""+d.from+(d.to?"use `"+d.to+"` instead":"remove it")+Zfe+d.id,void 0);return _m(e,u),xce(e,{Fragment:i.Fragment,components:a,ignoreInvalidStyle:!0,jsx:i.jsx,jsxs:i.jsxs,passKeys:!0,passNode:!0});function u(d,f,h){if(d.type==="raw"&&h&&typeof f=="number")return o?h.children.splice(f,1):h.children[f]={type:"text",value:d.value},f;if(d.type==="element"){let p;for(p in Kg)if(Object.hasOwn(Kg,p)&&Object.hasOwn(d.properties,p)){const g=d.properties[p],m=Kg[p];(m===null||m.includes(d.tagName))&&(d.properties[p]=c(String(g||""),p,d))}}if(d.type==="element"){let p=n?!n.includes(d.tagName):s?s.includes(d.tagName):!1;if(!p&&r&&typeof f=="number"&&(p=!r(d,f,h)),p&&h&&typeof f=="number")return l&&d.children?h.children.splice(f,1,...d.children):h.children.splice(f,1),f}}}function ihe(e){const t=e.indexOf(":"),n=e.indexOf("?"),r=e.indexOf("#"),a=e.indexOf("/");return t===-1||a!==-1&&t>a||n!==-1&&t>n||r!==-1&&t>r||Jfe.test(e.slice(0,t))?e:""}function a_(e,t){const n=String(e);if(typeof t!="string")throw new TypeError("Expected character");let r=0,a=n.indexOf(t);for(;a!==-1;)r++,a=n.indexOf(t,a+t.length);return r}function she(e){if(typeof e!="string")throw new TypeError("Expected a string");return e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d")}function ohe(e,t,n){const a=sd((n||{}).ignore||[]),s=lhe(t);let o=-1;for(;++o<s.length;)ZM(e,"text",l);function l(u,d){let f=-1,h;for(;++f<d.length;){const p=d[f],g=h?h.children:void 0;if(a(p,g?g.indexOf(p):void 0,h))return;h=p}if(h)return c(u,d)}function c(u,d){const f=d[d.length-1],h=s[o][0],p=s[o][1];let g=0;const y=f.children.indexOf(u);let v=!1,S=[];h.lastIndex=0;let w=h.exec(u.value);for(;w;){const j=w.index,k={index:w.index,input:w.input,stack:[...d,u]};let b=p(...w,k);if(typeof b=="string"&&(b=b.length>0?{type:"text",value:b}:void 0),b===!1?h.lastIndex=j+1:(g!==j&&S.push({type:"text",value:u.value.slice(g,j)}),Array.isArray(b)?S.push(...b):b&&S.push(b),g=j+w[0].length,v=!0),!h.global)break;w=h.exec(u.value)}return v?(g<u.value.length&&S.push({type:"text",value:u.value.slice(g)}),f.children.splice(y,1,...S)):S=[u],y+S.length}}function lhe(e){const t=[];if(!Array.isArray(e))throw new TypeError("Expected find and replace tuple or list of tuples");const n=!e[0]||Array.isArray(e[0])?e:[e];let r=-1;for(;++r<n.length;){const a=n[r];t.push([che(a[0]),uhe(a[1])])}return t}function che(e){return typeof e=="string"?new RegExp(she(e),"g"):e}function uhe(e){return typeof e=="function"?e:function(){return e}}const rv="phrasing",av=["autolink","link","image","label"];function dhe(){return{transforms:[yhe],enter:{literalAutolink:hhe,literalAutolinkEmail:iv,literalAutolinkHttp:iv,literalAutolinkWww:iv},exit:{literalAutolink:vhe,literalAutolinkEmail:ghe,literalAutolinkHttp:phe,literalAutolinkWww:mhe}}}function fhe(){return{unsafe:[{character:"@",before:"[+\\-.\\w]",after:"[\\-.\\w]",inConstruct:rv,notInConstruct:av},{character:".",before:"[Ww]",after:"[\\-.\\w]",inConstruct:rv,notInConstruct:av},{character:":",before:"[ps]",after:"\\/",inConstruct:rv,notInConstruct:av}]}}function hhe(e){this.enter({type:"link",title:null,url:"",children:[]},e)}function iv(e){this.config.enter.autolinkProtocol.call(this,e)}function phe(e){this.config.exit.autolinkProtocol.call(this,e)}function mhe(e){this.config.exit.data.call(this,e);const t=this.stack[this.stack.length-1];t.type,t.url="http://"+this.sliceSerialize(e)}function ghe(e){this.config.exit.autolinkEmail.call(this,e)}function vhe(e){this.exit(e)}function yhe(e){ohe(e,[[/(https?:\/\/|www(?=\.))([-.\w]+)([^ \t\r\n]*)/gi,bhe],[new RegExp("(?<=^|\\s|\\p{P}|\\p{S})([-.\\w+]+)@([-\\w]+(?:\\.[-\\w]+)+)","gu"),xhe]],{ignore:["link","linkReference"]})}function bhe(e,t,n,r,a){let s="";if(!tI(a)||(/^w/i.test(t)&&(n=t+n,t="",s="http://"),!whe(n)))return!1;const o=khe(n+r);if(!o[0])return!1;const l={type:"link",title:null,url:s+t+o[0],children:[{type:"text",value:t+o[0]}]};return o[1]?[l,{type:"text",value:o[1]}]:l}function xhe(e,t,n,r){return!tI(r,!0)||/[-\d_]$/.test(n)?!1:{type:"link",title:null,url:"mailto:"+t+"@"+n,children:[{type:"text",value:t+"@"+n}]}}function whe(e){const t=e.split(".");return!(t.length<2||t[t.length-1]&&(/_/.test(t[t.length-1])||!/[a-zA-Z\d]/.test(t[t.length-1]))||t[t.length-2]&&(/_/.test(t[t.length-2])||!/[a-zA-Z\d]/.test(t[t.length-2])))}function khe(e){const t=/[!"&'),.:;<>?\]}]+$/.exec(e);if(!t)return[e,void 0];e=e.slice(0,t.index);let n=t[0],r=n.indexOf(")");const a=a_(e,"(");let s=a_(e,")");for(;r!==-1&&a>s;)e+=n.slice(0,r+1),n=n.slice(r+1),r=n.indexOf(")"),s++;return[e,n]}function tI(e,t){const n=e.input.charCodeAt(e.index-1);return(e.index===0||Bs(n)||Sm(n))&&(!t||n!==47)}nI.peek=Ohe;function She(){this.buffer()}function jhe(e){this.enter({type:"footnoteReference",identifier:"",label:""},e)}function Nhe(){this.buffer()}function Ehe(e){this.enter({type:"footnoteDefinition",identifier:"",label:"",children:[]},e)}function _he(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Gr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function Ahe(e){this.exit(e)}function Che(e){const t=this.resume(),n=this.stack[this.stack.length-1];n.type,n.identifier=Gr(this.sliceSerialize(e)).toLowerCase(),n.label=t}function The(e){this.exit(e)}function Ohe(){return"["}function nI(e,t,n,r){const a=n.createTracker(r);let s=a.move("[^");const o=n.enter("footnoteReference"),l=n.enter("reference");return s+=a.move(n.safe(n.associationId(e),{after:"]",before:s})),l(),o(),s+=a.move("]"),s}function Phe(){return{enter:{gfmFootnoteCallString:She,gfmFootnoteCall:jhe,gfmFootnoteDefinitionLabelString:Nhe,gfmFootnoteDefinition:Ehe},exit:{gfmFootnoteCallString:_he,gfmFootnoteCall:Ahe,gfmFootnoteDefinitionLabelString:Che,gfmFootnoteDefinition:The}}}function Rhe(e){let t=!1;return e&&e.firstLineBlank&&(t=!0),{handlers:{footnoteDefinition:n,footnoteReference:nI},unsafe:[{character:"[",inConstruct:["label","phrasing","reference"]}]};function n(r,a,s,o){const l=s.createTracker(o);let c=l.move("[^");const u=s.enter("footnoteDefinition"),d=s.enter("label");return c+=l.move(s.safe(s.associationId(r),{before:c,after:"]"})),d(),c+=l.move("]:"),r.children&&r.children.length>0&&(l.shift(4),c+=l.move((t?`
|
|
178
|
+
`:" ")+s.indentLines(s.containerFlow(r,l.current()),t?rI:Mhe))),u(),c}}function Mhe(e,t,n){return t===0?e:rI(e,t,n)}function rI(e,t,n){return(n?"":" ")+e}const Ihe=["autolink","destinationLiteral","destinationRaw","reference","titleQuote","titleApostrophe"];aI.peek=zhe;function $he(){return{canContainEols:["delete"],enter:{strikethrough:Dhe},exit:{strikethrough:Bhe}}}function Lhe(){return{unsafe:[{character:"~",inConstruct:"phrasing",notInConstruct:Ihe}],handlers:{delete:aI}}}function Dhe(e){this.enter({type:"delete",children:[]},e)}function Bhe(e){this.exit(e)}function aI(e,t,n,r){const a=n.createTracker(r),s=n.enter("strikethrough");let o=a.move("~~");return o+=n.containerPhrasing(e,{...a.current(),before:o,after:"~"}),o+=a.move("~~"),s(),o}function zhe(){return"~"}function Fhe(e){return e.length}function Uhe(e,t){const n=t||{},r=(n.align||[]).concat(),a=n.stringLength||Fhe,s=[],o=[],l=[],c=[];let u=0,d=-1;for(;++d<e.length;){const m=[],y=[];let v=-1;for(e[d].length>u&&(u=e[d].length);++v<e[d].length;){const S=Whe(e[d][v]);if(n.alignDelimiters!==!1){const w=a(S);y[v]=w,(c[v]===void 0||w>c[v])&&(c[v]=w)}m.push(S)}o[d]=m,l[d]=y}let f=-1;if(typeof r=="object"&&"length"in r)for(;++f<u;)s[f]=i_(r[f]);else{const m=i_(r);for(;++f<u;)s[f]=m}f=-1;const h=[],p=[];for(;++f<u;){const m=s[f];let y="",v="";m===99?(y=":",v=":"):m===108?y=":":m===114&&(v=":");let S=n.alignDelimiters===!1?1:Math.max(1,c[f]-y.length-v.length);const w=y+"-".repeat(S)+v;n.alignDelimiters!==!1&&(S=y.length+S+v.length,S>c[f]&&(c[f]=S),p[f]=S),h[f]=w}o.splice(1,0,h),l.splice(1,0,p),d=-1;const g=[];for(;++d<o.length;){const m=o[d],y=l[d];f=-1;const v=[];for(;++f<u;){const S=m[f]||"";let w="",j="";if(n.alignDelimiters!==!1){const k=c[f]-(y[f]||0),b=s[f];b===114?w=" ".repeat(k):b===99?k%2?(w=" ".repeat(k/2+.5),j=" ".repeat(k/2-.5)):(w=" ".repeat(k/2),j=w):j=" ".repeat(k)}n.delimiterStart!==!1&&!f&&v.push("|"),n.padding!==!1&&!(n.alignDelimiters===!1&&S==="")&&(n.delimiterStart!==!1||f)&&v.push(" "),n.alignDelimiters!==!1&&v.push(w),v.push(S),n.alignDelimiters!==!1&&v.push(j),n.padding!==!1&&v.push(" "),(n.delimiterEnd!==!1||f!==u-1)&&v.push("|")}g.push(n.delimiterEnd===!1?v.join("").replace(/ +$/,""):v.join(""))}return g.join(`
|
|
179
|
+
`)}function Whe(e){return e==null?"":String(e)}function i_(e){const t=typeof e=="string"?e.codePointAt(0):0;return t===67||t===99?99:t===76||t===108?108:t===82||t===114?114:0}function Hhe(e,t,n,r){const a=n.enter("blockquote"),s=n.createTracker(r);s.move("> "),s.shift(2);const o=n.indentLines(n.containerFlow(e,s.current()),Ghe);return a(),o}function Ghe(e,t,n){return">"+(n?"":" ")+e}function qhe(e,t){return s_(e,t.inConstruct,!0)&&!s_(e,t.notInConstruct,!1)}function s_(e,t,n){if(typeof t=="string"&&(t=[t]),!t||t.length===0)return n;let r=-1;for(;++r<t.length;)if(e.includes(t[r]))return!0;return!1}function o_(e,t,n,r){let a=-1;for(;++a<n.unsafe.length;)if(n.unsafe[a].character===`
|
|
180
|
+
`&&qhe(n.stack,n.unsafe[a]))return/[ \t]/.test(r.before)?"":" ";return`\\
|
|
181
|
+
`}function Khe(e,t){const n=String(e);let r=n.indexOf(t),a=r,s=0,o=0;if(typeof t!="string")throw new TypeError("Expected substring");for(;r!==-1;)r===a?++s>o&&(o=s):s=1,a=r+t.length,r=n.indexOf(t,a);return o}function Vhe(e,t){return!!(t.options.fences===!1&&e.value&&!e.lang&&/[^ \r\n]/.test(e.value)&&!/^[\t ]*(?:[\r\n]|$)|(?:^|[\r\n])[\t ]*$/.test(e.value))}function Yhe(e){const t=e.options.fence||"`";if(t!=="`"&&t!=="~")throw new Error("Cannot serialize code with `"+t+"` for `options.fence`, expected `` ` `` or `~`");return t}function Xhe(e,t,n,r){const a=Yhe(n),s=e.value||"",o=a==="`"?"GraveAccent":"Tilde";if(Vhe(e,n)){const f=n.enter("codeIndented"),h=n.indentLines(s,Qhe);return f(),h}const l=n.createTracker(r),c=a.repeat(Math.max(Khe(s,a)+1,3)),u=n.enter("codeFenced");let d=l.move(c);if(e.lang){const f=n.enter(`codeFencedLang${o}`);d+=l.move(n.safe(e.lang,{before:d,after:" ",encode:["`"],...l.current()})),f()}if(e.lang&&e.meta){const f=n.enter(`codeFencedMeta${o}`);d+=l.move(" "),d+=l.move(n.safe(e.meta,{before:d,after:`
|
|
182
|
+
`,encode:["`"],...l.current()})),f()}return d+=l.move(`
|
|
183
|
+
`),s&&(d+=l.move(s+`
|
|
184
|
+
`)),d+=l.move(c),u(),d}function Qhe(e,t,n){return(n?"":" ")+e}function A0(e){const t=e.options.quote||'"';if(t!=='"'&&t!=="'")throw new Error("Cannot serialize title with `"+t+"` for `options.quote`, expected `\"`, or `'`");return t}function Zhe(e,t,n,r){const a=A0(n),s=a==='"'?"Quote":"Apostrophe",o=n.enter("definition");let l=n.enter("label");const c=n.createTracker(r);let u=c.move("[");return u+=c.move(n.safe(n.associationId(e),{before:u,after:"]",...c.current()})),u+=c.move("]: "),l(),!e.url||/[\0- \u007F]/.test(e.url)?(l=n.enter("destinationLiteral"),u+=c.move("<"),u+=c.move(n.safe(e.url,{before:u,after:">",...c.current()})),u+=c.move(">")):(l=n.enter("destinationRaw"),u+=c.move(n.safe(e.url,{before:u,after:e.title?" ":`
|
|
185
|
+
`,...c.current()}))),l(),e.title&&(l=n.enter(`title${s}`),u+=c.move(" "+a),u+=c.move(n.safe(e.title,{before:u,after:a,...c.current()})),u+=c.move(a),l()),o(),u}function Jhe(e){const t=e.options.emphasis||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize emphasis with `"+t+"` for `options.emphasis`, expected `*`, or `_`");return t}function Uu(e){return"&#x"+e.toString(16).toUpperCase()+";"}function cp(e,t,n){const r=ml(e),a=ml(t);return r===void 0?a===void 0?n==="_"?{inside:!0,outside:!0}:{inside:!1,outside:!1}:a===1?{inside:!0,outside:!0}:{inside:!1,outside:!0}:r===1?a===void 0?{inside:!1,outside:!1}:a===1?{inside:!0,outside:!0}:{inside:!1,outside:!1}:a===void 0?{inside:!1,outside:!1}:a===1?{inside:!0,outside:!1}:{inside:!1,outside:!1}}iI.peek=epe;function iI(e,t,n,r){const a=Jhe(n),s=n.enter("emphasis"),o=n.createTracker(r),l=o.move(a);let c=o.move(n.containerPhrasing(e,{after:a,before:l,...o.current()}));const u=c.charCodeAt(0),d=cp(r.before.charCodeAt(r.before.length-1),u,a);d.inside&&(c=Uu(u)+c.slice(1));const f=c.charCodeAt(c.length-1),h=cp(r.after.charCodeAt(0),f,a);h.inside&&(c=c.slice(0,-1)+Uu(f));const p=o.move(a);return s(),n.attentionEncodeSurroundingInfo={after:h.outside,before:d.outside},l+c+p}function epe(e,t,n){return n.options.emphasis||"*"}function tpe(e,t){let n=!1;return _m(e,function(r){if("value"in r&&/\r?\n|\r/.test(r.value)||r.type==="break")return n=!0,Vb}),!!((!e.depth||e.depth<3)&&x0(e)&&(t.options.setext||n))}function npe(e,t,n,r){const a=Math.max(Math.min(6,e.depth||1),1),s=n.createTracker(r);if(tpe(e,n)){const d=n.enter("headingSetext"),f=n.enter("phrasing"),h=n.containerPhrasing(e,{...s.current(),before:`
|
|
186
|
+
`,after:`
|
|
187
|
+
`});return f(),d(),h+`
|
|
188
|
+
`+(a===1?"=":"-").repeat(h.length-(Math.max(h.lastIndexOf("\r"),h.lastIndexOf(`
|
|
189
|
+
`))+1))}const o="#".repeat(a),l=n.enter("headingAtx"),c=n.enter("phrasing");s.move(o+" ");let u=n.containerPhrasing(e,{before:"# ",after:`
|
|
190
|
+
`,...s.current()});return/^[\t ]/.test(u)&&(u=Uu(u.charCodeAt(0))+u.slice(1)),u=u?o+" "+u:o,n.options.closeAtx&&(u+=" "+o),c(),l(),u}sI.peek=rpe;function sI(e){return e.value||""}function rpe(){return"<"}oI.peek=ape;function oI(e,t,n,r){const a=A0(n),s=a==='"'?"Quote":"Apostrophe",o=n.enter("image");let l=n.enter("label");const c=n.createTracker(r);let u=c.move("![");return u+=c.move(n.safe(e.alt,{before:u,after:"]",...c.current()})),u+=c.move("]("),l(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(l=n.enter("destinationLiteral"),u+=c.move("<"),u+=c.move(n.safe(e.url,{before:u,after:">",...c.current()})),u+=c.move(">")):(l=n.enter("destinationRaw"),u+=c.move(n.safe(e.url,{before:u,after:e.title?" ":")",...c.current()}))),l(),e.title&&(l=n.enter(`title${s}`),u+=c.move(" "+a),u+=c.move(n.safe(e.title,{before:u,after:a,...c.current()})),u+=c.move(a),l()),u+=c.move(")"),o(),u}function ape(){return"!"}lI.peek=ipe;function lI(e,t,n,r){const a=e.referenceType,s=n.enter("imageReference");let o=n.enter("label");const l=n.createTracker(r);let c=l.move("![");const u=n.safe(e.alt,{before:c,after:"]",...l.current()});c+=l.move(u+"]["),o();const d=n.stack;n.stack=[],o=n.enter("reference");const f=n.safe(n.associationId(e),{before:c,after:"]",...l.current()});return o(),n.stack=d,s(),a==="full"||!u||u!==f?c+=l.move(f+"]"):a==="shortcut"?c=c.slice(0,-1):c+=l.move("]"),c}function ipe(){return"!"}cI.peek=spe;function cI(e,t,n){let r=e.value||"",a="`",s=-1;for(;new RegExp("(^|[^`])"+a+"([^`]|$)").test(r);)a+="`";for(/[^ \r\n]/.test(r)&&(/^[ \r\n]/.test(r)&&/[ \r\n]$/.test(r)||/^`|`$/.test(r))&&(r=" "+r+" ");++s<n.unsafe.length;){const o=n.unsafe[s],l=n.compilePattern(o);let c;if(o.atBreak)for(;c=l.exec(r);){let u=c.index;r.charCodeAt(u)===10&&r.charCodeAt(u-1)===13&&u--,r=r.slice(0,u)+" "+r.slice(c.index+1)}}return a+r+a}function spe(){return"`"}function uI(e,t){const n=x0(e);return!!(!t.options.resourceLink&&e.url&&!e.title&&e.children&&e.children.length===1&&e.children[0].type==="text"&&(n===e.url||"mailto:"+n===e.url)&&/^[a-z][a-z+.-]+:/i.test(e.url)&&!/[\0- <>\u007F]/.test(e.url))}dI.peek=ope;function dI(e,t,n,r){const a=A0(n),s=a==='"'?"Quote":"Apostrophe",o=n.createTracker(r);let l,c;if(uI(e,n)){const d=n.stack;n.stack=[],l=n.enter("autolink");let f=o.move("<");return f+=o.move(n.containerPhrasing(e,{before:f,after:">",...o.current()})),f+=o.move(">"),l(),n.stack=d,f}l=n.enter("link"),c=n.enter("label");let u=o.move("[");return u+=o.move(n.containerPhrasing(e,{before:u,after:"](",...o.current()})),u+=o.move("]("),c(),!e.url&&e.title||/[\0- \u007F]/.test(e.url)?(c=n.enter("destinationLiteral"),u+=o.move("<"),u+=o.move(n.safe(e.url,{before:u,after:">",...o.current()})),u+=o.move(">")):(c=n.enter("destinationRaw"),u+=o.move(n.safe(e.url,{before:u,after:e.title?" ":")",...o.current()}))),c(),e.title&&(c=n.enter(`title${s}`),u+=o.move(" "+a),u+=o.move(n.safe(e.title,{before:u,after:a,...o.current()})),u+=o.move(a),c()),u+=o.move(")"),l(),u}function ope(e,t,n){return uI(e,n)?"<":"["}fI.peek=lpe;function fI(e,t,n,r){const a=e.referenceType,s=n.enter("linkReference");let o=n.enter("label");const l=n.createTracker(r);let c=l.move("[");const u=n.containerPhrasing(e,{before:c,after:"]",...l.current()});c+=l.move(u+"]["),o();const d=n.stack;n.stack=[],o=n.enter("reference");const f=n.safe(n.associationId(e),{before:c,after:"]",...l.current()});return o(),n.stack=d,s(),a==="full"||!u||u!==f?c+=l.move(f+"]"):a==="shortcut"?c=c.slice(0,-1):c+=l.move("]"),c}function lpe(){return"["}function C0(e){const t=e.options.bullet||"*";if(t!=="*"&&t!=="+"&&t!=="-")throw new Error("Cannot serialize items with `"+t+"` for `options.bullet`, expected `*`, `+`, or `-`");return t}function cpe(e){const t=C0(e),n=e.options.bulletOther;if(!n)return t==="*"?"-":"*";if(n!=="*"&&n!=="+"&&n!=="-")throw new Error("Cannot serialize items with `"+n+"` for `options.bulletOther`, expected `*`, `+`, or `-`");if(n===t)throw new Error("Expected `bullet` (`"+t+"`) and `bulletOther` (`"+n+"`) to be different");return n}function upe(e){const t=e.options.bulletOrdered||".";if(t!=="."&&t!==")")throw new Error("Cannot serialize items with `"+t+"` for `options.bulletOrdered`, expected `.` or `)`");return t}function hI(e){const t=e.options.rule||"*";if(t!=="*"&&t!=="-"&&t!=="_")throw new Error("Cannot serialize rules with `"+t+"` for `options.rule`, expected `*`, `-`, or `_`");return t}function dpe(e,t,n,r){const a=n.enter("list"),s=n.bulletCurrent;let o=e.ordered?upe(n):C0(n);const l=e.ordered?o==="."?")":".":cpe(n);let c=t&&n.bulletLastUsed?o===n.bulletLastUsed:!1;if(!e.ordered){const d=e.children?e.children[0]:void 0;if((o==="*"||o==="-")&&d&&(!d.children||!d.children[0])&&n.stack[n.stack.length-1]==="list"&&n.stack[n.stack.length-2]==="listItem"&&n.stack[n.stack.length-3]==="list"&&n.stack[n.stack.length-4]==="listItem"&&n.indexStack[n.indexStack.length-1]===0&&n.indexStack[n.indexStack.length-2]===0&&n.indexStack[n.indexStack.length-3]===0&&(c=!0),hI(n)===o&&d){let f=-1;for(;++f<e.children.length;){const h=e.children[f];if(h&&h.type==="listItem"&&h.children&&h.children[0]&&h.children[0].type==="thematicBreak"){c=!0;break}}}}c&&(o=l),n.bulletCurrent=o;const u=n.containerFlow(e,r);return n.bulletLastUsed=o,n.bulletCurrent=s,a(),u}function fpe(e){const t=e.options.listItemIndent||"one";if(t!=="tab"&&t!=="one"&&t!=="mixed")throw new Error("Cannot serialize items with `"+t+"` for `options.listItemIndent`, expected `tab`, `one`, or `mixed`");return t}function hpe(e,t,n,r){const a=fpe(n);let s=n.bulletCurrent||C0(n);t&&t.type==="list"&&t.ordered&&(s=(typeof t.start=="number"&&t.start>-1?t.start:1)+(n.options.incrementListMarker===!1?0:t.children.indexOf(e))+s);let o=s.length+1;(a==="tab"||a==="mixed"&&(t&&t.type==="list"&&t.spread||e.spread))&&(o=Math.ceil(o/4)*4);const l=n.createTracker(r);l.move(s+" ".repeat(o-s.length)),l.shift(o);const c=n.enter("listItem"),u=n.indentLines(n.containerFlow(e,l.current()),d);return c(),u;function d(f,h,p){return h?(p?"":" ".repeat(o))+f:(p?s:s+" ".repeat(o-s.length))+f}}function ppe(e,t,n,r){const a=n.enter("paragraph"),s=n.enter("phrasing"),o=n.containerPhrasing(e,r);return s(),a(),o}const mpe=sd(["break","delete","emphasis","footnote","footnoteReference","image","imageReference","inlineCode","inlineMath","link","linkReference","mdxJsxTextElement","mdxTextExpression","strong","text","textDirective"]);function gpe(e,t,n,r){return(e.children.some(function(o){return mpe(o)})?n.containerPhrasing:n.containerFlow).call(n,e,r)}function vpe(e){const t=e.options.strong||"*";if(t!=="*"&&t!=="_")throw new Error("Cannot serialize strong with `"+t+"` for `options.strong`, expected `*`, or `_`");return t}pI.peek=ype;function pI(e,t,n,r){const a=vpe(n),s=n.enter("strong"),o=n.createTracker(r),l=o.move(a+a);let c=o.move(n.containerPhrasing(e,{after:a,before:l,...o.current()}));const u=c.charCodeAt(0),d=cp(r.before.charCodeAt(r.before.length-1),u,a);d.inside&&(c=Uu(u)+c.slice(1));const f=c.charCodeAt(c.length-1),h=cp(r.after.charCodeAt(0),f,a);h.inside&&(c=c.slice(0,-1)+Uu(f));const p=o.move(a+a);return s(),n.attentionEncodeSurroundingInfo={after:h.outside,before:d.outside},l+c+p}function ype(e,t,n){return n.options.strong||"*"}function bpe(e,t,n,r){return n.safe(e.value,r)}function xpe(e){const t=e.options.ruleRepetition||3;if(t<3)throw new Error("Cannot serialize rules with repetition `"+t+"` for `options.ruleRepetition`, expected `3` or more");return t}function wpe(e,t,n){const r=(hI(n)+(n.options.ruleSpaces?" ":"")).repeat(xpe(n));return n.options.ruleSpaces?r.slice(0,-1):r}const mI={blockquote:Hhe,break:o_,code:Xhe,definition:Zhe,emphasis:iI,hardBreak:o_,heading:npe,html:sI,image:oI,imageReference:lI,inlineCode:cI,link:dI,linkReference:fI,list:dpe,listItem:hpe,paragraph:ppe,root:gpe,strong:pI,text:bpe,thematicBreak:wpe};function kpe(){return{enter:{table:Spe,tableData:l_,tableHeader:l_,tableRow:Npe},exit:{codeText:Epe,table:jpe,tableData:sv,tableHeader:sv,tableRow:sv}}}function Spe(e){const t=e._align;this.enter({type:"table",align:t.map(function(n){return n==="none"?null:n}),children:[]},e),this.data.inTable=!0}function jpe(e){this.exit(e),this.data.inTable=void 0}function Npe(e){this.enter({type:"tableRow",children:[]},e)}function sv(e){this.exit(e)}function l_(e){this.enter({type:"tableCell",children:[]},e)}function Epe(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,_pe));const n=this.stack[this.stack.length-1];n.type,n.value=t,this.exit(e)}function _pe(e,t){return t==="|"?t:e}function Ape(e){const t=e||{},n=t.tableCellPadding,r=t.tablePipeAlign,a=t.stringLength,s=n?" ":"|";return{unsafe:[{character:"\r",inConstruct:"tableCell"},{character:`
|
|
191
|
+
`,inConstruct:"tableCell"},{atBreak:!0,character:"|",after:"[ :-]"},{character:"|",inConstruct:"tableCell"},{atBreak:!0,character:":",after:"-"},{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{inlineCode:h,table:o,tableCell:c,tableRow:l}};function o(p,g,m,y){return u(d(p,m,y),p.align)}function l(p,g,m,y){const v=f(p,m,y),S=u([v]);return S.slice(0,S.indexOf(`
|
|
192
|
+
`))}function c(p,g,m,y){const v=m.enter("tableCell"),S=m.enter("phrasing"),w=m.containerPhrasing(p,{...y,before:s,after:s});return S(),v(),w}function u(p,g){return Uhe(p,{align:g,alignDelimiters:r,padding:n,stringLength:a})}function d(p,g,m){const y=p.children;let v=-1;const S=[],w=g.enter("table");for(;++v<y.length;)S[v]=f(y[v],g,m);return w(),S}function f(p,g,m){const y=p.children;let v=-1;const S=[],w=g.enter("tableRow");for(;++v<y.length;)S[v]=c(y[v],p,g,m);return w(),S}function h(p,g,m){let y=mI.inlineCode(p,g,m);return m.stack.includes("tableCell")&&(y=y.replace(/\|/g,"\\$&")),y}}function Cpe(){return{exit:{taskListCheckValueChecked:c_,taskListCheckValueUnchecked:c_,paragraph:Ope}}}function Tpe(){return{unsafe:[{atBreak:!0,character:"-",after:"[:|-]"}],handlers:{listItem:Ppe}}}function c_(e){const t=this.stack[this.stack.length-2];t.type,t.checked=e.type==="taskListCheckValueChecked"}function Ope(e){const t=this.stack[this.stack.length-2];if(t&&t.type==="listItem"&&typeof t.checked=="boolean"){const n=this.stack[this.stack.length-1];n.type;const r=n.children[0];if(r&&r.type==="text"){const a=t.children;let s=-1,o;for(;++s<a.length;){const l=a[s];if(l.type==="paragraph"){o=l;break}}o===n&&(r.value=r.value.slice(1),r.value.length===0?n.children.shift():n.position&&r.position&&typeof r.position.start.offset=="number"&&(r.position.start.column++,r.position.start.offset++,n.position.start=Object.assign({},r.position.start)))}}this.exit(e)}function Ppe(e,t,n,r){const a=e.children[0],s=typeof e.checked=="boolean"&&a&&a.type==="paragraph",o="["+(e.checked?"x":" ")+"] ",l=n.createTracker(r);s&&l.move(o);let c=mI.listItem(e,t,n,{...r,...l.current()});return s&&(c=c.replace(/^(?:[*+-]|\d+\.)([\r\n]| {1,3})/,u)),c;function u(d){return d+o}}function Rpe(){return[dhe(),Phe(),$he(),kpe(),Cpe()]}function Mpe(e){return{extensions:[fhe(),Rhe(e),Lhe(),Ape(e),Tpe()]}}const Ipe={tokenize:Fpe,partial:!0},gI={tokenize:Upe,partial:!0},vI={tokenize:Wpe,partial:!0},yI={tokenize:Hpe,partial:!0},$pe={tokenize:Gpe,partial:!0},bI={name:"wwwAutolink",tokenize:Bpe,previous:wI},xI={name:"protocolAutolink",tokenize:zpe,previous:kI},Ua={name:"emailAutolink",tokenize:Dpe,previous:SI},ma={};function Lpe(){return{text:ma}}let ns=48;for(;ns<123;)ma[ns]=Ua,ns++,ns===58?ns=65:ns===91&&(ns=97);ma[43]=Ua;ma[45]=Ua;ma[46]=Ua;ma[95]=Ua;ma[72]=[Ua,xI];ma[104]=[Ua,xI];ma[87]=[Ua,bI];ma[119]=[Ua,bI];function Dpe(e,t,n){const r=this;let a,s;return o;function o(f){return!Zb(f)||!SI.call(r,r.previous)||T0(r.events)?n(f):(e.enter("literalAutolink"),e.enter("literalAutolinkEmail"),l(f))}function l(f){return Zb(f)?(e.consume(f),l):f===64?(e.consume(f),c):n(f)}function c(f){return f===46?e.check($pe,d,u)(f):f===45||f===95||Sn(f)?(s=!0,e.consume(f),c):d(f)}function u(f){return e.consume(f),a=!0,c}function d(f){return s&&a&&Tn(r.previous)?(e.exit("literalAutolinkEmail"),e.exit("literalAutolink"),t(f)):n(f)}}function Bpe(e,t,n){const r=this;return a;function a(o){return o!==87&&o!==119||!wI.call(r,r.previous)||T0(r.events)?n(o):(e.enter("literalAutolink"),e.enter("literalAutolinkWww"),e.check(Ipe,e.attempt(gI,e.attempt(vI,s),n),n)(o))}function s(o){return e.exit("literalAutolinkWww"),e.exit("literalAutolink"),t(o)}}function zpe(e,t,n){const r=this;let a="",s=!1;return o;function o(f){return(f===72||f===104)&&kI.call(r,r.previous)&&!T0(r.events)?(e.enter("literalAutolink"),e.enter("literalAutolinkHttp"),a+=String.fromCodePoint(f),e.consume(f),l):n(f)}function l(f){if(Tn(f)&&a.length<5)return a+=String.fromCodePoint(f),e.consume(f),l;if(f===58){const h=a.toLowerCase();if(h==="http"||h==="https")return e.consume(f),c}return n(f)}function c(f){return f===47?(e.consume(f),s?u:(s=!0,c)):n(f)}function u(f){return f===null||sp(f)||ht(f)||Bs(f)||Sm(f)?n(f):e.attempt(gI,e.attempt(vI,d),n)(f)}function d(f){return e.exit("literalAutolinkHttp"),e.exit("literalAutolink"),t(f)}}function Fpe(e,t,n){let r=0;return a;function a(o){return(o===87||o===119)&&r<3?(r++,e.consume(o),a):o===46&&r===3?(e.consume(o),s):n(o)}function s(o){return o===null?n(o):t(o)}}function Upe(e,t,n){let r,a,s;return o;function o(u){return u===46||u===95?e.check(yI,c,l)(u):u===null||ht(u)||Bs(u)||u!==45&&Sm(u)?c(u):(s=!0,e.consume(u),o)}function l(u){return u===95?r=!0:(a=r,r=void 0),e.consume(u),o}function c(u){return a||r||!s?n(u):t(u)}}function Wpe(e,t){let n=0,r=0;return a;function a(o){return o===40?(n++,e.consume(o),a):o===41&&r<n?s(o):o===33||o===34||o===38||o===39||o===41||o===42||o===44||o===46||o===58||o===59||o===60||o===63||o===93||o===95||o===126?e.check(yI,t,s)(o):o===null||ht(o)||Bs(o)?t(o):(e.consume(o),a)}function s(o){return o===41&&r++,e.consume(o),a}}function Hpe(e,t,n){return r;function r(l){return l===33||l===34||l===39||l===41||l===42||l===44||l===46||l===58||l===59||l===63||l===95||l===126?(e.consume(l),r):l===38?(e.consume(l),s):l===93?(e.consume(l),a):l===60||l===null||ht(l)||Bs(l)?t(l):n(l)}function a(l){return l===null||l===40||l===91||ht(l)||Bs(l)?t(l):r(l)}function s(l){return Tn(l)?o(l):n(l)}function o(l){return l===59?(e.consume(l),r):Tn(l)?(e.consume(l),o):n(l)}}function Gpe(e,t,n){return r;function r(s){return e.consume(s),a}function a(s){return Sn(s)?n(s):t(s)}}function wI(e){return e===null||e===40||e===42||e===95||e===91||e===93||e===126||ht(e)}function kI(e){return!Tn(e)}function SI(e){return!(e===47||Zb(e))}function Zb(e){return e===43||e===45||e===46||e===95||Sn(e)}function T0(e){let t=e.length,n=!1;for(;t--;){const r=e[t][1];if((r.type==="labelLink"||r.type==="labelImage")&&!r._balanced){n=!0;break}if(r._gfmAutolinkLiteralWalkedInto){n=!1;break}}return e.length>0&&!n&&(e[e.length-1][1]._gfmAutolinkLiteralWalkedInto=!0),n}const qpe={tokenize:eme,partial:!0};function Kpe(){return{document:{91:{name:"gfmFootnoteDefinition",tokenize:Qpe,continuation:{tokenize:Zpe},exit:Jpe}},text:{91:{name:"gfmFootnoteCall",tokenize:Xpe},93:{name:"gfmPotentialFootnoteCall",add:"after",tokenize:Vpe,resolveTo:Ype}}}}function Vpe(e,t,n){const r=this;let a=r.events.length;const s=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let o;for(;a--;){const c=r.events[a][1];if(c.type==="labelImage"){o=c;break}if(c.type==="gfmFootnoteCall"||c.type==="labelLink"||c.type==="label"||c.type==="image"||c.type==="link")break}return l;function l(c){if(!o||!o._balanced)return n(c);const u=Gr(r.sliceSerialize({start:o.end,end:r.now()}));return u.codePointAt(0)!==94||!s.includes(u.slice(1))?n(c):(e.enter("gfmFootnoteCallLabelMarker"),e.consume(c),e.exit("gfmFootnoteCallLabelMarker"),t(c))}}function Ype(e,t){let n=e.length;for(;n--;)if(e[n][1].type==="labelImage"&&e[n][0]==="enter"){e[n][1];break}e[n+1][1].type="data",e[n+3][1].type="gfmFootnoteCallLabelMarker";const r={type:"gfmFootnoteCall",start:Object.assign({},e[n+3][1].start),end:Object.assign({},e[e.length-1][1].end)},a={type:"gfmFootnoteCallMarker",start:Object.assign({},e[n+3][1].end),end:Object.assign({},e[n+3][1].end)};a.end.column++,a.end.offset++,a.end._bufferIndex++;const s={type:"gfmFootnoteCallString",start:Object.assign({},a.end),end:Object.assign({},e[e.length-1][1].start)},o={type:"chunkString",contentType:"string",start:Object.assign({},s.start),end:Object.assign({},s.end)},l=[e[n+1],e[n+2],["enter",r,t],e[n+3],e[n+4],["enter",a,t],["exit",a,t],["enter",s,t],["enter",o,t],["exit",o,t],["exit",s,t],e[e.length-2],e[e.length-1],["exit",r,t]];return e.splice(n,e.length-n+1,...l),e}function Xpe(e,t,n){const r=this,a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s=0,o;return l;function l(f){return e.enter("gfmFootnoteCall"),e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),c}function c(f){return f!==94?n(f):(e.enter("gfmFootnoteCallMarker"),e.consume(f),e.exit("gfmFootnoteCallMarker"),e.enter("gfmFootnoteCallString"),e.enter("chunkString").contentType="string",u)}function u(f){if(s>999||f===93&&!o||f===null||f===91||ht(f))return n(f);if(f===93){e.exit("chunkString");const h=e.exit("gfmFootnoteCallString");return a.includes(Gr(r.sliceSerialize(h)))?(e.enter("gfmFootnoteCallLabelMarker"),e.consume(f),e.exit("gfmFootnoteCallLabelMarker"),e.exit("gfmFootnoteCall"),t):n(f)}return ht(f)||(o=!0),s++,e.consume(f),f===92?d:u}function d(f){return f===91||f===92||f===93?(e.consume(f),s++,u):u(f)}}function Qpe(e,t,n){const r=this,a=r.parser.gfmFootnotes||(r.parser.gfmFootnotes=[]);let s,o=0,l;return c;function c(g){return e.enter("gfmFootnoteDefinition")._container=!0,e.enter("gfmFootnoteDefinitionLabel"),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionLabelMarker"),u}function u(g){return g===94?(e.enter("gfmFootnoteDefinitionMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionMarker"),e.enter("gfmFootnoteDefinitionLabelString"),e.enter("chunkString").contentType="string",d):n(g)}function d(g){if(o>999||g===93&&!l||g===null||g===91||ht(g))return n(g);if(g===93){e.exit("chunkString");const m=e.exit("gfmFootnoteDefinitionLabelString");return s=Gr(r.sliceSerialize(m)),e.enter("gfmFootnoteDefinitionLabelMarker"),e.consume(g),e.exit("gfmFootnoteDefinitionLabelMarker"),e.exit("gfmFootnoteDefinitionLabel"),h}return ht(g)||(l=!0),o++,e.consume(g),g===92?f:d}function f(g){return g===91||g===92||g===93?(e.consume(g),o++,d):d(g)}function h(g){return g===58?(e.enter("definitionMarker"),e.consume(g),e.exit("definitionMarker"),a.includes(s)||a.push(s),We(e,p,"gfmFootnoteDefinitionWhitespace")):n(g)}function p(g){return t(g)}}function Zpe(e,t,n){return e.check(id,t,e.attempt(qpe,t,n))}function Jpe(e){e.exit("gfmFootnoteDefinition")}function eme(e,t,n){const r=this;return We(e,a,"gfmFootnoteDefinitionIndent",5);function a(s){const o=r.events[r.events.length-1];return o&&o[1].type==="gfmFootnoteDefinitionIndent"&&o[2].sliceSerialize(o[1],!0).length===4?t(s):n(s)}}function tme(e){let n=(e||{}).singleTilde;const r={name:"strikethrough",tokenize:s,resolveAll:a};return n==null&&(n=!0),{text:{126:r},insideSpan:{null:[r]},attentionMarkers:{null:[126]}};function a(o,l){let c=-1;for(;++c<o.length;)if(o[c][0]==="enter"&&o[c][1].type==="strikethroughSequenceTemporary"&&o[c][1]._close){let u=c;for(;u--;)if(o[u][0]==="exit"&&o[u][1].type==="strikethroughSequenceTemporary"&&o[u][1]._open&&o[c][1].end.offset-o[c][1].start.offset===o[u][1].end.offset-o[u][1].start.offset){o[c][1].type="strikethroughSequence",o[u][1].type="strikethroughSequence";const d={type:"strikethrough",start:Object.assign({},o[u][1].start),end:Object.assign({},o[c][1].end)},f={type:"strikethroughText",start:Object.assign({},o[u][1].end),end:Object.assign({},o[c][1].start)},h=[["enter",d,l],["enter",o[u][1],l],["exit",o[u][1],l],["enter",f,l]],p=l.parser.constructs.insideSpan.null;p&&rr(h,h.length,0,jm(p,o.slice(u+1,c),l)),rr(h,h.length,0,[["exit",f,l],["enter",o[c][1],l],["exit",o[c][1],l],["exit",d,l]]),rr(o,u-1,c-u+3,h),c=u+h.length-2;break}}for(c=-1;++c<o.length;)o[c][1].type==="strikethroughSequenceTemporary"&&(o[c][1].type="data");return o}function s(o,l,c){const u=this.previous,d=this.events;let f=0;return h;function h(g){return u===126&&d[d.length-1][1].type!=="characterEscape"?c(g):(o.enter("strikethroughSequenceTemporary"),p(g))}function p(g){const m=ml(u);if(g===126)return f>1?c(g):(o.consume(g),f++,p);if(f<2&&!n)return c(g);const y=o.exit("strikethroughSequenceTemporary"),v=ml(g);return y._open=!v||v===2&&!!m,y._close=!m||m===2&&!!v,l(g)}}}class nme{constructor(){this.map=[]}add(t,n,r){rme(this,t,n,r)}consume(t){if(this.map.sort(function(s,o){return s[0]-o[0]}),this.map.length===0)return;let n=this.map.length;const r=[];for(;n>0;)n-=1,r.push(t.slice(this.map[n][0]+this.map[n][1]),this.map[n][2]),t.length=this.map[n][0];r.push(t.slice()),t.length=0;let a=r.pop();for(;a;){for(const s of a)t.push(s);a=r.pop()}this.map.length=0}}function rme(e,t,n,r){let a=0;if(!(n===0&&r.length===0)){for(;a<e.map.length;){if(e.map[a][0]===t){e.map[a][1]+=n,e.map[a][2].push(...r);return}a+=1}e.map.push([t,n,r])}}function ame(e,t){let n=!1;const r=[];for(;t<e.length;){const a=e[t];if(n){if(a[0]==="enter")a[1].type==="tableContent"&&r.push(e[t+1][1].type==="tableDelimiterMarker"?"left":"none");else if(a[1].type==="tableContent"){if(e[t-1][1].type==="tableDelimiterMarker"){const s=r.length-1;r[s]=r[s]==="left"?"center":"right"}}else if(a[1].type==="tableDelimiterRow")break}else a[0]==="enter"&&a[1].type==="tableDelimiterRow"&&(n=!0);t+=1}return r}function ime(){return{flow:{null:{name:"table",tokenize:sme,resolveAll:ome}}}}function sme(e,t,n){const r=this;let a=0,s=0,o;return l;function l(C){let O=r.events.length-1;for(;O>-1;){const L=r.events[O][1].type;if(L==="lineEnding"||L==="linePrefix")O--;else break}const P=O>-1?r.events[O][1].type:null,z=P==="tableHead"||P==="tableRow"?b:c;return z===b&&r.parser.lazy[r.now().line]?n(C):z(C)}function c(C){return e.enter("tableHead"),e.enter("tableRow"),u(C)}function u(C){return C===124||(o=!0,s+=1),d(C)}function d(C){return C===null?n(C):_e(C)?s>1?(s=0,r.interrupt=!0,e.exit("tableRow"),e.enter("lineEnding"),e.consume(C),e.exit("lineEnding"),p):n(C):ze(C)?We(e,d,"whitespace")(C):(s+=1,o&&(o=!1,a+=1),C===124?(e.enter("tableCellDivider"),e.consume(C),e.exit("tableCellDivider"),o=!0,d):(e.enter("data"),f(C)))}function f(C){return C===null||C===124||ht(C)?(e.exit("data"),d(C)):(e.consume(C),C===92?h:f)}function h(C){return C===92||C===124?(e.consume(C),f):f(C)}function p(C){return r.interrupt=!1,r.parser.lazy[r.now().line]?n(C):(e.enter("tableDelimiterRow"),o=!1,ze(C)?We(e,g,"linePrefix",r.parser.constructs.disable.null.includes("codeIndented")?void 0:4)(C):g(C))}function g(C){return C===45||C===58?y(C):C===124?(o=!0,e.enter("tableCellDivider"),e.consume(C),e.exit("tableCellDivider"),m):k(C)}function m(C){return ze(C)?We(e,y,"whitespace")(C):y(C)}function y(C){return C===58?(s+=1,o=!0,e.enter("tableDelimiterMarker"),e.consume(C),e.exit("tableDelimiterMarker"),v):C===45?(s+=1,v(C)):C===null||_e(C)?j(C):k(C)}function v(C){return C===45?(e.enter("tableDelimiterFiller"),S(C)):k(C)}function S(C){return C===45?(e.consume(C),S):C===58?(o=!0,e.exit("tableDelimiterFiller"),e.enter("tableDelimiterMarker"),e.consume(C),e.exit("tableDelimiterMarker"),w):(e.exit("tableDelimiterFiller"),w(C))}function w(C){return ze(C)?We(e,j,"whitespace")(C):j(C)}function j(C){return C===124?g(C):C===null||_e(C)?!o||a!==s?k(C):(e.exit("tableDelimiterRow"),e.exit("tableHead"),t(C)):k(C)}function k(C){return n(C)}function b(C){return e.enter("tableRow"),N(C)}function N(C){return C===124?(e.enter("tableCellDivider"),e.consume(C),e.exit("tableCellDivider"),N):C===null||_e(C)?(e.exit("tableRow"),t(C)):ze(C)?We(e,N,"whitespace")(C):(e.enter("data"),_(C))}function _(C){return C===null||C===124||ht(C)?(e.exit("data"),N(C)):(e.consume(C),C===92?T:_)}function T(C){return C===92||C===124?(e.consume(C),_):_(C)}}function ome(e,t){let n=-1,r=!0,a=0,s=[0,0,0,0],o=[0,0,0,0],l=!1,c=0,u,d,f;const h=new nme;for(;++n<e.length;){const p=e[n],g=p[1];p[0]==="enter"?g.type==="tableHead"?(l=!1,c!==0&&(u_(h,t,c,u,d),d=void 0,c=0),u={type:"table",start:Object.assign({},g.start),end:Object.assign({},g.end)},h.add(n,0,[["enter",u,t]])):g.type==="tableRow"||g.type==="tableDelimiterRow"?(r=!0,f=void 0,s=[0,0,0,0],o=[0,n+1,0,0],l&&(l=!1,d={type:"tableBody",start:Object.assign({},g.start),end:Object.assign({},g.end)},h.add(n,0,[["enter",d,t]])),a=g.type==="tableDelimiterRow"?2:d?3:1):a&&(g.type==="data"||g.type==="tableDelimiterMarker"||g.type==="tableDelimiterFiller")?(r=!1,o[2]===0&&(s[1]!==0&&(o[0]=o[1],f=cf(h,t,s,a,void 0,f),s=[0,0,0,0]),o[2]=n)):g.type==="tableCellDivider"&&(r?r=!1:(s[1]!==0&&(o[0]=o[1],f=cf(h,t,s,a,void 0,f)),s=o,o=[s[1],n,0,0])):g.type==="tableHead"?(l=!0,c=n):g.type==="tableRow"||g.type==="tableDelimiterRow"?(c=n,s[1]!==0?(o[0]=o[1],f=cf(h,t,s,a,n,f)):o[1]!==0&&(f=cf(h,t,o,a,n,f)),a=0):a&&(g.type==="data"||g.type==="tableDelimiterMarker"||g.type==="tableDelimiterFiller")&&(o[3]=n)}for(c!==0&&u_(h,t,c,u,d),h.consume(t.events),n=-1;++n<t.events.length;){const p=t.events[n];p[0]==="enter"&&p[1].type==="table"&&(p[1]._align=ame(t.events,n))}return e}function cf(e,t,n,r,a,s){const o=r===1?"tableHeader":r===2?"tableDelimiter":"tableData",l="tableContent";n[0]!==0&&(s.end=Object.assign({},co(t.events,n[0])),e.add(n[0],0,[["exit",s,t]]));const c=co(t.events,n[1]);if(s={type:o,start:Object.assign({},c),end:Object.assign({},c)},e.add(n[1],0,[["enter",s,t]]),n[2]!==0){const u=co(t.events,n[2]),d=co(t.events,n[3]),f={type:l,start:Object.assign({},u),end:Object.assign({},d)};if(e.add(n[2],0,[["enter",f,t]]),r!==2){const h=t.events[n[2]],p=t.events[n[3]];if(h[1].end=Object.assign({},p[1].end),h[1].type="chunkText",h[1].contentType="text",n[3]>n[2]+1){const g=n[2]+1,m=n[3]-n[2]-1;e.add(g,m,[])}}e.add(n[3]+1,0,[["exit",f,t]])}return a!==void 0&&(s.end=Object.assign({},co(t.events,a)),e.add(a,0,[["exit",s,t]]),s=void 0),s}function u_(e,t,n,r,a){const s=[],o=co(t.events,n);a&&(a.end=Object.assign({},o),s.push(["exit",a,t])),r.end=Object.assign({},o),s.push(["exit",r,t]),e.add(n+1,0,s)}function co(e,t){const n=e[t],r=n[0]==="enter"?"start":"end";return n[1][r]}const lme={name:"tasklistCheck",tokenize:ume};function cme(){return{text:{91:lme}}}function ume(e,t,n){const r=this;return a;function a(c){return r.previous!==null||!r._gfmTasklistFirstContentOfListItem?n(c):(e.enter("taskListCheck"),e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),s)}function s(c){return ht(c)?(e.enter("taskListCheckValueUnchecked"),e.consume(c),e.exit("taskListCheckValueUnchecked"),o):c===88||c===120?(e.enter("taskListCheckValueChecked"),e.consume(c),e.exit("taskListCheckValueChecked"),o):n(c)}function o(c){return c===93?(e.enter("taskListCheckMarker"),e.consume(c),e.exit("taskListCheckMarker"),e.exit("taskListCheck"),l):n(c)}function l(c){return _e(c)?t(c):ze(c)?e.check({tokenize:dme},t,n)(c):n(c)}}function dme(e,t,n){return We(e,r,"whitespace");function r(a){return a===null?n(a):t(a)}}function fme(e){return PM([Lpe(),Kpe(),tme(e),ime(),cme()])}const hme={};function pme(e){const t=this,n=e||hme,r=t.data(),a=r.micromarkExtensions||(r.micromarkExtensions=[]),s=r.fromMarkdownExtensions||(r.fromMarkdownExtensions=[]),o=r.toMarkdownExtensions||(r.toMarkdownExtensions=[]);a.push(fme(n)),s.push(Rpe()),o.push(Mpe(n))}const d_=function(e,t,n){const r=sd(n);if(!e||!e.type||!e.children)throw new Error("Expected parent node");if(typeof t=="number"){if(t<0||t===Number.POSITIVE_INFINITY)throw new Error("Expected positive finite number as index")}else if(t=e.children.indexOf(t),t<0)throw new Error("Expected child node or index");for(;++t<e.children.length;)if(r(e.children[t],t,e))return e.children[t]},Ks=function(e){if(e==null)return vme;if(typeof e=="string")return gme(e);if(typeof e=="object")return mme(e);if(typeof e=="function")return O0(e);throw new Error("Expected function, string, or array as `test`")};function mme(e){const t=[];let n=-1;for(;++n<e.length;)t[n]=Ks(e[n]);return O0(r);function r(...a){let s=-1;for(;++s<t.length;)if(t[s].apply(this,a))return!0;return!1}}function gme(e){return O0(t);function t(n){return n.tagName===e}}function O0(e){return t;function t(n,r,a){return!!(yme(n)&&e.call(this,n,typeof r=="number"?r:void 0,a||void 0))}}function vme(e){return!!(e&&typeof e=="object"&&"type"in e&&e.type==="element"&&"tagName"in e&&typeof e.tagName=="string")}function yme(e){return e!==null&&typeof e=="object"&&"type"in e&&"tagName"in e}const f_=/\n/g,h_=/[\t ]+/g,Jb=Ks("br"),p_=Ks(Eme),bme=Ks("p"),m_=Ks("tr"),xme=Ks(["datalist","head","noembed","noframes","noscript","rp","script","style","template","title",Nme,_me]),jI=Ks(["address","article","aside","blockquote","body","caption","center","dd","dialog","dir","dl","dt","div","figure","figcaption","footer","form,","h1","h2","h3","h4","h5","h6","header","hgroup","hr","html","legend","li","listing","main","menu","nav","ol","p","plaintext","pre","section","ul","xmp"]);function wme(e,t){const n=t||{},r="children"in e?e.children:[],a=jI(e),s=_I(e,{whitespace:n.whitespace||"normal"}),o=[];(e.type==="text"||e.type==="comment")&&o.push(...EI(e,{breakBefore:!0,breakAfter:!0}));let l=-1;for(;++l<r.length;)o.push(...NI(r[l],e,{whitespace:s,breakBefore:l?void 0:a,breakAfter:l<r.length-1?Jb(r[l+1]):a}));const c=[];let u;for(l=-1;++l<o.length;){const d=o[l];typeof d=="number"?u!==void 0&&d>u&&(u=d):d&&(u!==void 0&&u>-1&&c.push(`
|
|
193
|
+
`.repeat(u)||" "),u=-1,c.push(d))}return c.join("")}function NI(e,t,n){return e.type==="element"?kme(e,t,n):e.type==="text"?n.whitespace==="normal"?EI(e,n):Sme(e):[]}function kme(e,t,n){const r=_I(e,n),a=e.children||[];let s=-1,o=[];if(xme(e))return o;let l,c;for(Jb(e)||m_(e)&&d_(t,e,m_)?c=`
|
|
194
|
+
`:bme(e)?(l=2,c=2):jI(e)&&(l=1,c=1);++s<a.length;)o=o.concat(NI(a[s],e,{whitespace:r,breakBefore:s?void 0:l,breakAfter:s<a.length-1?Jb(a[s+1]):c}));return p_(e)&&d_(t,e,p_)&&o.push(" "),l&&o.unshift(l),c&&o.push(c),o}function EI(e,t){const n=String(e.value),r=[],a=[];let s=0;for(;s<=n.length;){f_.lastIndex=s;const c=f_.exec(n),u=c&&"index"in c?c.index:n.length;r.push(jme(n.slice(s,u).replace(/[\u061C\u200E\u200F\u202A-\u202E\u2066-\u2069]/g,""),s===0?t.breakBefore:!0,u===n.length?t.breakAfter:!0)),s=u+1}let o=-1,l;for(;++o<r.length;)r[o].charCodeAt(r[o].length-1)===8203||o<r.length-1&&r[o+1].charCodeAt(0)===8203?(a.push(r[o]),l=void 0):r[o]?(typeof l=="number"&&a.push(l),a.push(r[o]),l=0):(o===0||o===r.length-1)&&a.push(0);return a}function Sme(e){return[String(e.value)]}function jme(e,t,n){const r=[];let a=0,s;for(;a<e.length;){h_.lastIndex=a;const o=h_.exec(e);s=o?o.index:e.length,!a&&!s&&o&&!t&&r.push(""),a!==s&&r.push(e.slice(a,s)),a=o?s+o[0].length:s}return a!==s&&!n&&r.push(""),r.join(" ")}function _I(e,t){if(e.type==="element"){const n=e.properties||{};switch(e.tagName){case"listing":case"plaintext":case"xmp":return"pre";case"nobr":return"nowrap";case"pre":return n.wrap?"pre-wrap":"pre";case"td":case"th":return n.noWrap?"nowrap":t.whitespace;case"textarea":return"pre-wrap"}}return t.whitespace}function Nme(e){return!!(e.properties||{}).hidden}function Eme(e){return e.tagName==="td"||e.tagName==="th"}function _me(e){return e.tagName==="dialog"&&!(e.properties||{}).open}function Ame(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",a="[a-zA-Z_]\\w*::",o="(?!struct)("+r+"|"+t.optional(a)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",l={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},d={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},f={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},h={className:"title",begin:t.optional(a)+e.IDENT_RE,relevance:0},p=t.optional(a)+e.IDENT_RE+"\\s*\\(",g=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],m=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],y=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],v=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],j={type:m,keyword:g,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:y},k={className:"function.dispatch",relevance:0,keywords:{_hint:v},begin:t.concat(/\b/,`(?!${g.join("|")})`,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/))},b=[k,f,l,n,e.C_BLOCK_COMMENT_MODE,d,u],N={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:j,contains:b.concat([{begin:/\(/,end:/\)/,keywords:j,contains:b.concat(["self"]),relevance:0}]),relevance:0},_={className:"function",begin:"("+o+"[\\*&\\s]+)+"+p,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:j,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:j,relevance:0},{begin:p,returnBegin:!0,contains:[h],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[u,d]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:j,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,u,d,l,{begin:/\(/,end:/\)/,keywords:j,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,u,d,l]}]},l,n,e.C_BLOCK_COMMENT_MODE,f]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:j,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(N,_,k,b,[f,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",end:">",keywords:j,contains:["self",l]},{begin:e.IDENT_RE+"::",keywords:j},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function Cme(e){const t={type:["boolean","byte","word","String"],built_in:["KeyboardController","MouseController","SoftwareSerial","EthernetServer","EthernetClient","LiquidCrystal","RobotControl","GSMVoiceCall","EthernetUDP","EsploraTFT","HttpClient","RobotMotor","WiFiClient","GSMScanner","FileSystem","Scheduler","GSMServer","YunClient","YunServer","IPAddress","GSMClient","GSMModem","Keyboard","Ethernet","Console","GSMBand","Esplora","Stepper","Process","WiFiUDP","GSM_SMS","Mailbox","USBHost","Firmata","PImage","Client","Server","GSMPIN","FileIO","Bridge","Serial","EEPROM","Stream","Mouse","Audio","Servo","File","Task","GPRS","WiFi","Wire","TFT","GSM","SPI","SD"],_hints:["setup","loop","runShellCommandAsynchronously","analogWriteResolution","retrieveCallingNumber","printFirmwareVersion","analogReadResolution","sendDigitalPortPair","noListenOnLocalhost","readJoystickButton","setFirmwareVersion","readJoystickSwitch","scrollDisplayRight","getVoiceCallStatus","scrollDisplayLeft","writeMicroseconds","delayMicroseconds","beginTransmission","getSignalStrength","runAsynchronously","getAsynchronously","listenOnLocalhost","getCurrentCarrier","readAccelerometer","messageAvailable","sendDigitalPorts","lineFollowConfig","countryNameWrite","runShellCommand","readStringUntil","rewindDirectory","readTemperature","setClockDivider","readLightSensor","endTransmission","analogReference","detachInterrupt","countryNameRead","attachInterrupt","encryptionType","readBytesUntil","robotNameWrite","readMicrophone","robotNameRead","cityNameWrite","userNameWrite","readJoystickY","readJoystickX","mouseReleased","openNextFile","scanNetworks","noInterrupts","digitalWrite","beginSpeaker","mousePressed","isActionDone","mouseDragged","displayLogos","noAutoscroll","addParameter","remoteNumber","getModifiers","keyboardRead","userNameRead","waitContinue","processInput","parseCommand","printVersion","readNetworks","writeMessage","blinkVersion","cityNameRead","readMessage","setDataMode","parsePacket","isListening","setBitOrder","beginPacket","isDirectory","motorsWrite","drawCompass","digitalRead","clearScreen","serialEvent","rightToLeft","setTextSize","leftToRight","requestFrom","keyReleased","compassRead","analogWrite","interrupts","WiFiServer","disconnect","playMelody","parseFloat","autoscroll","getPINUsed","setPINUsed","setTimeout","sendAnalog","readSlider","analogRead","beginWrite","createChar","motorsStop","keyPressed","tempoWrite","readButton","subnetMask","debugPrint","macAddress","writeGreen","randomSeed","attachGPRS","readString","sendString","remotePort","releaseAll","mouseMoved","background","getXChange","getYChange","answerCall","getResult","voiceCall","endPacket","constrain","getSocket","writeJSON","getButton","available","connected","findUntil","readBytes","exitValue","readGreen","writeBlue","startLoop","IPAddress","isPressed","sendSysex","pauseMode","gatewayIP","setCursor","getOemKey","tuneWrite","noDisplay","loadImage","switchPIN","onRequest","onReceive","changePIN","playFile","noBuffer","parseInt","overflow","checkPIN","knobRead","beginTFT","bitClear","updateIR","bitWrite","position","writeRGB","highByte","writeRed","setSpeed","readBlue","noStroke","remoteIP","transfer","shutdown","hangCall","beginSMS","endWrite","attached","maintain","noCursor","checkReg","checkPUK","shiftOut","isValid","shiftIn","pulseIn","connect","println","localIP","pinMode","getIMEI","display","noBlink","process","getBand","running","beginSD","drawBMP","lowByte","setBand","release","bitRead","prepare","pointTo","readRed","setMode","noFill","remove","listen","stroke","detach","attach","noTone","exists","buffer","height","bitSet","circle","config","cursor","random","IRread","setDNS","endSMS","getKey","micros","millis","begin","print","write","ready","flush","width","isPIN","blink","clear","press","mkdir","rmdir","close","point","yield","image","BSSID","click","delay","read","text","move","peek","beep","rect","line","open","seek","fill","size","turn","stop","home","find","step","tone","sqrt","RSSI","SSID","end","bit","tan","cos","sin","pow","map","abs","max","min","get","run","put"],literal:["DIGITAL_MESSAGE","FIRMATA_STRING","ANALOG_MESSAGE","REPORT_DIGITAL","REPORT_ANALOG","INPUT_PULLUP","SET_PIN_MODE","INTERNAL2V56","SYSTEM_RESET","LED_BUILTIN","INTERNAL1V1","SYSEX_START","INTERNAL","EXTERNAL","DEFAULT","OUTPUT","INPUT","HIGH","LOW"]},n=Ame(e),r=n.keywords;return r.type=[...r.type,...t.type],r.literal=[...r.literal,...t.literal],r.built_in=[...r.built_in,...t.built_in],r._hints=t._hints,n.name="Arduino",n.aliases=["ino"],n.supersetOf="cpp",n}function Tme(e){const t=e.regex,n={},r={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{begin:t.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},r]});const a={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},s=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),o={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},l={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,a]};a.contains.push(l);const c={match:/\\"/},u={className:"string",begin:/'/,end:/'/},d={match:/\\'/},f={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,n]},h=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],p=e.SHEBANG({binary:`(${h.join("|")})`,relevance:10}),g={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},m=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],y=["true","false"],v={match:/(\/[a-z._-]+)+/},S=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],w=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],j=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],k=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:m,literal:y,built_in:[...S,...w,"set","shopt",...j,...k]},contains:[p,e.SHEBANG(),g,f,s,o,v,l,c,u,d,n]}}function Ome(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",a="[a-zA-Z_]\\w*::",o="("+r+"|"+t.optional(a)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",l={className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{match:/\batomic_[a-z]{3,6}\b/}]},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},d={className:"number",variants:[{match:/\b(0b[01']+)/},{match:/(-?)\b([\d']+(\.[\d']*)?|\.[\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)/},{match:/(-?)\b(0[xX][a-fA-F0-9]+(?:'[a-fA-F0-9]+)*(?:\.[a-fA-F0-9]*(?:'[a-fA-F0-9]*)*)?(?:[pP][-+]?[0-9]+)?(l|L)?(u|U)?)/},{match:/(-?)\b\d+(?:'\d+)*(?:\.\d*(?:'\d*)*)?(?:[eE][-+]?\d+)?/}],relevance:0},f={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef elifdef elifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},h={className:"title",begin:t.optional(a)+e.IDENT_RE,relevance:0},p=t.optional(a)+e.IDENT_RE+"\\s*\\(",y={keyword:["asm","auto","break","case","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","typeof","typeof_unqual","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"],type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_BitInt","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal96","_Decimal128","_Decimal64x","_Decimal128x","_Float16","_Float32","_Float64","_Float128","_Float32x","_Float64x","_Float128x","const","static","constexpr","complex","bool","imaginary"],literal:"true false NULL",built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr"},v=[f,l,n,e.C_BLOCK_COMMENT_MODE,d,u],S={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:y,contains:v.concat([{begin:/\(/,end:/\)/,keywords:y,contains:v.concat(["self"]),relevance:0}]),relevance:0},w={begin:"("+o+"[\\*&\\s]+)+"+p,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:y,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:y,relevance:0},{begin:p,returnBegin:!0,contains:[e.inherit(h,{className:"title.function"})],relevance:0},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:y,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,u,d,l,{begin:/\(/,end:/\)/,keywords:y,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,u,d,l]}]},l,n,e.C_BLOCK_COMMENT_MODE,f]};return{name:"C",aliases:["h"],keywords:y,disableAutodetect:!0,illegal:"</",contains:[].concat(S,w,v,[f,{begin:e.IDENT_RE+"::",keywords:y},{className:"class",beginKeywords:"enum class struct union",end:/[{;:<>=]/,contains:[{beginKeywords:"final class struct"},e.TITLE_MODE]}]),exports:{preprocessor:f,strings:u,keywords:y}}}function Pme(e){const t=e.regex,n=e.COMMENT("//","$",{contains:[{begin:/\\\n/}]}),r="decltype\\(auto\\)",a="[a-zA-Z_]\\w*::",o="(?!struct)("+r+"|"+t.optional(a)+"[a-zA-Z_]\\w*"+t.optional("<[^<>]+>")+")",l={className:"type",begin:"\\b[a-z\\d_]*_t\\b"},u={className:"string",variants:[{begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]},{begin:"(u8?|U|L)?'("+"\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)"+"|.)",end:"'",illegal:"."},e.END_SAME_AS_BEGIN({begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},d={className:"number",variants:[{begin:"[+-]?(?:(?:[0-9](?:'?[0-9])*\\.(?:[0-9](?:'?[0-9])*)?|\\.[0-9](?:'?[0-9])*)(?:[Ee][+-]?[0-9](?:'?[0-9])*)?|[0-9](?:'?[0-9])*[Ee][+-]?[0-9](?:'?[0-9])*|0[Xx](?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*(?:\\.(?:[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)?)?|\\.[0-9A-Fa-f](?:'?[0-9A-Fa-f])*)[Pp][+-]?[0-9](?:'?[0-9])*)(?:[Ff](?:16|32|64|128)?|(BF|bf)16|[Ll]|)"},{begin:"[+-]?\\b(?:0[Bb][01](?:'?[01])*|0[Xx][0-9A-Fa-f](?:'?[0-9A-Fa-f])*|0(?:'?[0-7])*|[1-9](?:'?[0-9])*)(?:[Uu](?:LL?|ll?)|[Uu][Zz]?|(?:LL?|ll?)[Uu]?|[Zz][Uu]|)"}],relevance:0},f={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(u,{className:"string"}),{className:"string",begin:/<.*?>/},n,e.C_BLOCK_COMMENT_MODE]},h={className:"title",begin:t.optional(a)+e.IDENT_RE,relevance:0},p=t.optional(a)+e.IDENT_RE+"\\s*\\(",g=["alignas","alignof","and","and_eq","asm","atomic_cancel","atomic_commit","atomic_noexcept","auto","bitand","bitor","break","case","catch","class","co_await","co_return","co_yield","compl","concept","const_cast|10","consteval","constexpr","constinit","continue","decltype","default","delete","do","dynamic_cast|10","else","enum","explicit","export","extern","false","final","for","friend","goto","if","import","inline","module","mutable","namespace","new","noexcept","not","not_eq","nullptr","operator","or","or_eq","override","private","protected","public","reflexpr","register","reinterpret_cast|10","requires","return","sizeof","static_assert","static_cast|10","struct","switch","synchronized","template","this","thread_local","throw","transaction_safe","transaction_safe_dynamic","true","try","typedef","typeid","typename","union","using","virtual","volatile","while","xor","xor_eq"],m=["bool","char","char16_t","char32_t","char8_t","double","float","int","long","short","void","wchar_t","unsigned","signed","const","static"],y=["any","auto_ptr","barrier","binary_semaphore","bitset","complex","condition_variable","condition_variable_any","counting_semaphore","deque","false_type","flat_map","flat_set","future","imaginary","initializer_list","istringstream","jthread","latch","lock_guard","multimap","multiset","mutex","optional","ostringstream","packaged_task","pair","promise","priority_queue","queue","recursive_mutex","recursive_timed_mutex","scoped_lock","set","shared_future","shared_lock","shared_mutex","shared_timed_mutex","shared_ptr","stack","string_view","stringstream","timed_mutex","thread","true_type","tuple","unique_lock","unique_ptr","unordered_map","unordered_multimap","unordered_multiset","unordered_set","variant","vector","weak_ptr","wstring","wstring_view"],v=["abort","abs","acos","apply","as_const","asin","atan","atan2","calloc","ceil","cerr","cin","clog","cos","cosh","cout","declval","endl","exchange","exit","exp","fabs","floor","fmod","forward","fprintf","fputs","free","frexp","fscanf","future","invoke","isalnum","isalpha","iscntrl","isdigit","isgraph","islower","isprint","ispunct","isspace","isupper","isxdigit","labs","launder","ldexp","log","log10","make_pair","make_shared","make_shared_for_overwrite","make_tuple","make_unique","malloc","memchr","memcmp","memcpy","memset","modf","move","pow","printf","putchar","puts","realloc","scanf","sin","sinh","snprintf","sprintf","sqrt","sscanf","std","stderr","stdin","stdout","strcat","strchr","strcmp","strcpy","strcspn","strlen","strncat","strncmp","strncpy","strpbrk","strrchr","strspn","strstr","swap","tan","tanh","terminate","to_underlying","tolower","toupper","vfprintf","visit","vprintf","vsprintf"],j={type:m,keyword:g,literal:["NULL","false","nullopt","nullptr","true"],built_in:["_Pragma"],_type_hints:y},k={className:"function.dispatch",relevance:0,keywords:{_hint:v},begin:t.concat(/\b/,`(?!${g.join("|")})`,e.IDENT_RE,t.lookahead(/(<[^<>]+>|)\s*\(/))},b=[k,f,l,n,e.C_BLOCK_COMMENT_MODE,d,u],N={variants:[{begin:/=/,end:/;/},{begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}],keywords:j,contains:b.concat([{begin:/\(/,end:/\)/,keywords:j,contains:b.concat(["self"]),relevance:0}]),relevance:0},_={className:"function",begin:"("+o+"[\\*&\\s]+)+"+p,returnBegin:!0,end:/[{;=]/,excludeEnd:!0,keywords:j,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:r,keywords:j,relevance:0},{begin:p,returnBegin:!0,contains:[h],relevance:0},{begin:/::/,relevance:0},{begin:/:/,endsWithParent:!0,contains:[u,d]},{relevance:0,match:/,/},{className:"params",begin:/\(/,end:/\)/,keywords:j,relevance:0,contains:[n,e.C_BLOCK_COMMENT_MODE,u,d,l,{begin:/\(/,end:/\)/,keywords:j,relevance:0,contains:["self",n,e.C_BLOCK_COMMENT_MODE,u,d,l]}]},l,n,e.C_BLOCK_COMMENT_MODE,f]};return{name:"C++",aliases:["cc","c++","h++","hpp","hh","hxx","cxx"],keywords:j,illegal:"</",classNameAliases:{"function.dispatch":"built_in"},contains:[].concat(N,_,k,b,[f,{begin:"\\b(deque|list|queue|priority_queue|pair|stack|vector|map|set|bitset|multiset|multimap|unordered_map|unordered_set|unordered_multiset|unordered_multimap|array|tuple|optional|variant|function|flat_map|flat_set)\\s*<(?!<)",end:">",keywords:j,contains:["self",l]},{begin:e.IDENT_RE+"::",keywords:j},{match:[/\b(?:enum(?:\s+(?:class|struct))?|class|struct|union)/,/\s+/,/\w+/],className:{1:"keyword",3:"title.class"}}])}}function Rme(e){const t=["bool","byte","char","decimal","delegate","double","dynamic","enum","float","int","long","nint","nuint","object","sbyte","short","string","ulong","uint","ushort"],n=["public","private","protected","static","internal","protected","abstract","async","extern","override","unsafe","virtual","new","sealed","partial"],r=["default","false","null","true"],a=["abstract","as","base","break","case","catch","class","const","continue","do","else","event","explicit","extern","finally","fixed","for","foreach","goto","if","implicit","in","interface","internal","is","lock","namespace","new","operator","out","override","params","private","protected","public","readonly","record","ref","return","scoped","sealed","sizeof","stackalloc","static","struct","switch","this","throw","try","typeof","unchecked","unsafe","using","virtual","void","volatile","while"],s=["add","alias","and","ascending","args","async","await","by","descending","dynamic","equals","file","from","get","global","group","init","into","join","let","nameof","not","notnull","on","or","orderby","partial","record","remove","required","scoped","select","set","unmanaged","value|0","var","when","where","with","yield"],o={keyword:a.concat(s),built_in:t,literal:r},l=e.inherit(e.TITLE_MODE,{begin:"[a-zA-Z](\\.?\\w)*"}),c={className:"number",variants:[{begin:"\\b(0b[01']+)"},{begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)(u|U|l|L|ul|UL|f|F|b|B)"},{begin:"(-?)(\\b0[xX][a-fA-F0-9'_]+|(\\b[\\d'_]+(\\.[\\d'_]*)?|\\.[\\d'_]+)([eE][-+]?[\\d'_]+)?)"}],relevance:0},u={className:"string",begin:/"""("*)(?!")(.|\n)*?"""\1/,relevance:1},d={className:"string",begin:'@"',end:'"',contains:[{begin:'""'}]},f=e.inherit(d,{illegal:/\n/}),h={className:"subst",begin:/\{/,end:/\}/,keywords:o},p=e.inherit(h,{illegal:/\n/}),g={className:"string",begin:/\$"/,end:'"',illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},e.BACKSLASH_ESCAPE,p]},m={className:"string",begin:/\$@"/,end:'"',contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},h]},y=e.inherit(m,{illegal:/\n/,contains:[{begin:/\{\{/},{begin:/\}\}/},{begin:'""'},p]});h.contains=[m,g,d,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,c,e.C_BLOCK_COMMENT_MODE],p.contains=[y,g,f,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,c,e.inherit(e.C_BLOCK_COMMENT_MODE,{illegal:/\n/})];const v={variants:[u,m,g,d,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},S={begin:"<",end:">",contains:[{beginKeywords:"in out"},l]},w=e.IDENT_RE+"(<"+e.IDENT_RE+"(\\s*,\\s*"+e.IDENT_RE+")*>)?(\\[\\])?",j={begin:"@"+e.IDENT_RE,relevance:0};return{name:"C#",aliases:["cs","c#"],keywords:o,illegal:/::/,contains:[e.COMMENT("///","$",{returnBegin:!0,contains:[{className:"doctag",variants:[{begin:"///",relevance:0},{begin:"<!--|-->"},{begin:"</?",end:">"}]}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"meta",begin:"#",end:"$",keywords:{keyword:"if else elif endif define undef warning error line region endregion pragma checksum"}},v,c,{beginKeywords:"class interface",relevance:0,end:/[{;=]/,illegal:/[^\s:,]/,contains:[{beginKeywords:"where class"},l,S,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"namespace",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[l,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"record",relevance:0,end:/[{;=]/,illegal:/[^\s:]/,contains:[l,S,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"meta",begin:"^\\s*\\[(?=[\\w])",excludeBegin:!0,end:"\\]",excludeEnd:!0,contains:[{className:"string",begin:/"/,end:/"/}]},{beginKeywords:"new return throw await else",relevance:0},{className:"function",begin:"("+w+"\\s+)+"+e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,end:/\s*[{;=]/,excludeEnd:!0,keywords:o,contains:[{beginKeywords:n.join(" "),relevance:0},{begin:e.IDENT_RE+"\\s*(<[^=]+>\\s*)?\\(",returnBegin:!0,contains:[e.TITLE_MODE,S],relevance:0},{match:/\(\)/},{className:"params",begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:o,relevance:0,contains:[v,c,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},j]}}const Mme=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),Ime=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],$me=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],Lme=[...Ime,...$me],Dme=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),Bme=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),zme=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Fme=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","unicode-range","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function Ume(e){const t=e.regex,n=Mme(e),r={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},a="and or not only",s=/@-?\w[\w]*(-\w+)*/,o="[a-zA-Z-][a-zA-Z0-9_-]*",l=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[n.BLOCK_COMMENT,r,n.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+o,relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Bme.join("|")+")"},{begin:":(:)?("+zme.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Fme.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,n.UNICODE_RANGE,...l,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...l,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:t.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:s},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:a,attribute:Dme.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...l,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Lme.join("|")+")\\b"}]}}function Wme(e){const t=e.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:t.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^@@ +-\d+ +\+\d+,\d+ +@@/,/^@@ +-\d+,\d+ +\+\d+ +@@/,/^@@ +-\d+ +\+\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:t.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}function Hme(e){const s={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:s,illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{className:"string",variants:[e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{match:/-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/,relevance:0},{match:/-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b0[oO](_?[0-7])*i?/,relevance:0},{match:/-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/,relevance:0}]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[e.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:s,illegal:/["']/}]}]}}function Gme(e){const t=e.regex,n=/[_A-Za-z][_0-9A-Za-z]*/;return{name:"GraphQL",aliases:["gql"],case_insensitive:!0,disableAutodetect:!1,keywords:{keyword:["query","mutation","subscription","type","input","schema","directive","interface","union","scalar","fragment","enum","on"],literal:["true","false","null"]},contains:[e.HASH_COMMENT_MODE,e.QUOTE_STRING_MODE,e.NUMBER_MODE,{scope:"punctuation",match:/[.]{3}/,relevance:0},{scope:"punctuation",begin:/[\!\(\)\:\=\[\]\{\|\}]{1}/,relevance:0},{scope:"variable",begin:/\$/,end:/\W/,excludeEnd:!0,relevance:0},{scope:"meta",match:/@\w+/,excludeEnd:!0},{scope:"symbol",begin:t.concat(n,t.lookahead(/\s*:/)),relevance:0}],illegal:[/[;<']/,/BEGIN/]}}function qme(e){const t=e.regex,n={className:"number",relevance:0,variants:[{begin:/([+-]+)?[\d]+_[\d_]+/},{begin:e.NUMBER_RE}]},r=e.COMMENT();r.variants=[{begin:/;/,end:/$/},{begin:/#/,end:/$/}];const a={className:"variable",variants:[{begin:/\$[\w\d"][\w\d_]*/},{begin:/\$\{(.*?)\}/}]},s={className:"literal",begin:/\bon|off|true|false|yes|no\b/},o={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:"'''",end:"'''",relevance:10},{begin:'"""',end:'"""',relevance:10},{begin:'"',end:'"'},{begin:"'",end:"'"}]},l={begin:/\[/,end:/\]/,contains:[r,s,a,o,n,"self"],relevance:0},c=/[A-Za-z0-9_-]+/,u=/"(\\"|[^"])*"/,d=/'[^']*'/,f=t.either(c,u,d),h=t.concat(f,"(\\s*\\.\\s*",f,")*",t.lookahead(/\s*=\s*[^#\s]/));return{name:"TOML, also INI",aliases:["toml"],case_insensitive:!0,illegal:/\S/,contains:[r,{className:"section",begin:/\[+/,end:/\]+/},{begin:h,className:"attr",starts:{end:/$/,contains:[r,l,s,a,o,n]}}]}}var uo="[0-9](_*[0-9])*",uf=`\\.(${uo})`,df="[0-9a-fA-F](_*[0-9a-fA-F])*",g_={className:"number",variants:[{begin:`(\\b(${uo})((${uf})|\\.)?|(${uf}))[eE][+-]?(${uo})[fFdD]?\\b`},{begin:`\\b(${uo})((${uf})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${uf})[fFdD]?\\b`},{begin:`\\b(${uo})[fFdD]\\b`},{begin:`\\b0[xX]((${df})\\.?|(${df})?\\.(${df}))[pP][+-]?(${uo})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${df})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function AI(e,t,n){return n===-1?"":e.replace(t,r=>AI(e,t,n-1))}function Kme(e){const t=e.regex,n="[À-ʸa-zA-Z_$][À-ʸa-zA-Z_$0-9]*",r=n+AI("(?:<"+n+"~~~(?:\\s*,\\s*"+n+"~~~)*>)?",/~~~/g,2),c={keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do","sealed","yield","permits","goto","when"],literal:["false","true","null"],type:["char","boolean","long","float","int","byte","short","double"],built_in:["super","this"]},u={className:"meta",begin:"@"+n,contains:[{begin:/\(/,end:/\)/,contains:["self"]}]},d={className:"params",begin:/\(/,end:/\)/,keywords:c,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0};return{name:"Java",aliases:["jsp"],keywords:c,illegal:/<\/|#/,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/,relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{begin:/import java\.[a-z]+\./,keywords:"import",relevance:2},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{begin:/"""/,end:/"""/,className:"string",contains:[e.BACKSLASH_ESCAPE]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,n],className:{1:"keyword",3:"title.class"}},{match:/non-sealed/,scope:"keyword"},{begin:[t.concat(/(?!else)/,n),/\s+/,n,/\s+/,/=(?!=)/],className:{1:"type",3:"variable",5:"operator"}},{begin:[/record/,/\s+/,n],className:{1:"keyword",3:"title.class"},contains:[d,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{beginKeywords:"new throw return else",relevance:0},{begin:["(?:"+r+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{2:"title.function"},keywords:c,contains:[{className:"params",begin:/\(/,end:/\)/,keywords:c,relevance:0,contains:[u,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,g_,e.C_BLOCK_COMMENT_MODE]},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},g_,u]}}const v_="[A-Za-z$_][0-9A-Za-z$_]*",Vme=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],Yme=["true","false","null","undefined","NaN","Infinity"],CI=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],TI=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],OI=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Xme=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Qme=[].concat(OI,CI,TI);function Zme(e){const t=e.regex,n=(R,{after:B})=>{const A="</"+R[0].slice(1);return R.input.indexOf(A,B)!==-1},r=v_,a={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(R,B)=>{const A=R[0].length+R.index,J=R.input[A];if(J==="<"||J===","){B.ignoreMatch();return}J===">"&&(n(R,{after:A})||B.ignoreMatch());let F;const $=R.input.substring(A);if(F=$.match(/^\s*=/)){B.ignoreMatch();return}if((F=$.match(/^\s+extends\s+/))&&F.index===0){B.ignoreMatch();return}}},l={$pattern:v_,keyword:Vme,literal:Yme,built_in:Qme,"variable.language":Xme},c="[0-9](_?[0-9])*",u=`\\.(${c})`,d="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",f={className:"number",variants:[{begin:`(\\b(${d})((${u})|\\.)?|(${u}))[eE][+-]?(${c})\\b`},{begin:`\\b(${d})\\b((${u})\\b|\\.)?|(${u})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},h={className:"subst",begin:"\\$\\{",end:"\\}",keywords:l,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"xml"}},g={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"css"}},m={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,h]},S={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},w=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,{match:/\$\d+/},f];h.contains=w.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(w)});const j=[].concat(S,h.contains),k=j.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(j)}]),b={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:k},N={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,"(",t.concat(/\./,r),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,r],scope:{1:"keyword",3:"title.class"}}]},_={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...CI,...TI]}},T={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},C={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[b],illegal:/%/},O={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function P(R){return t.concat("(?!",R.join("|"),")")}const z={match:t.concat(/\b/,P([...OI,"super","import","await"].map(R=>`${R}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},L={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},M={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},b]},D="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",W={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(D)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[b]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:k,CLASS_REFERENCE:_},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),T,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,S,{match:/\$\d+/},f,_,{scope:"attr",match:r+t.lookahead(":"),relevance:0},W,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[S,e.REGEXP_MODE,{className:"function",begin:D,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:k}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:a.begin,end:a.end},{match:s},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0,contains:["self"]}]}]},C,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[b,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},L,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[b]},z,O,N,M,{match:/\$[(.]/}]}}const Jme="([-+]?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)|NaN|[-+]?Infinity",ege={scope:"number",match:Jme,relevance:0};function tge(e){const t={className:"attr",begin:/(("(\\.|[^\\"\r\n])*")|('(\\.|[^\\'\r\n])*'))(?=\s*:)/,relevance:1.01},n={match:/[{}[\],:]/,className:"punctuation",relevance:0},r=["true","false","null"],a={scope:"literal",beginKeywords:r.join(" ")};return{name:"JSON",aliases:["jsonc","json5"],keywords:{literal:r},contains:[t,n,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,a,ege,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}var fo="[0-9](_*[0-9])*",ff=`\\.(${fo})`,hf="[0-9a-fA-F](_*[0-9a-fA-F])*",nge={className:"number",variants:[{begin:`(\\b(${fo})((${ff})|\\.)?|(${ff}))[eE][+-]?(${fo})[fFdD]?\\b`},{begin:`\\b(${fo})((${ff})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{begin:`(${ff})[fFdD]?\\b`},{begin:`\\b(${fo})[fFdD]\\b`},{begin:`\\b0[xX]((${hf})\\.?|(${hf})?\\.(${hf}))[pP][+-]?(${fo})[fFdD]?\\b`},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${hf})[lL]?\\b`},{begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}],relevance:0};function rge(e){const t={keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual",built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing",literal:"true false null"},n={className:"keyword",begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol",begin:/@\w+/}]}},r={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@"},a={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},s={className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},o={className:"string",variants:[{begin:'"""',end:'"""(?=[^"])',contains:[s,a]},{begin:"'",end:"'",illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/,contains:[e.BACKSLASH_ESCAPE,s,a]}]};a.contains.push(o);const l={className:"meta",begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?"},c={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/,end:/\)/,contains:[e.inherit(o,{className:"string"}),"self"]}]},u=nge,d=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),f={variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/,contains:[]}]},h=f;return h.variants[1].contains=[f],f.variants[1].contains=[h],{name:"Kotlin",aliases:["kt","kts"],keywords:t,contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,d,n,r,l,c,{className:"function",beginKeywords:"fun",end:"[(]|$",returnBegin:!0,excludeEnd:!0,keywords:t,relevance:5,contains:[{begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0,contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin:/</,end:/>/,keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:t,relevance:0,contains:[{begin:/:/,end:/[=,\/]/,endsWithParent:!0,contains:[f,e.C_LINE_COMMENT_MODE,d],relevance:0},e.C_LINE_COMMENT_MODE,d,l,c,o,e.C_NUMBER_MODE]},d]},{begin:[/class|interface|trait/,/\s+/,e.UNDERSCORE_IDENT_RE],beginScope:{3:"title.class"},keywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0,illegal:"extends implements",contains:[{beginKeywords:"public protected internal private constructor"},e.UNDERSCORE_TITLE_MODE,{className:"type",begin:/</,end:/>/,excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,){\s]|$/,excludeBegin:!0,returnEnd:!0},l,c]},o,{className:"meta",begin:"^#!/usr/bin/env",end:"$",illegal:`
|
|
195
|
+
`},u]}}const age=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),ige=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],sge=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],oge=[...ige,...sge],lge=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),PI=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),RI=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),cge=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","unicode-range","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse(),uge=PI.concat(RI).sort().reverse();function dge(e){const t=age(e),n=uge,r="and or not only",a="[\\w-]+",s="("+a+"|@\\{"+a+"\\})",o=[],l=[],c=function(w){return{className:"string",begin:"~?"+w+".*?"+w}},u=function(w,j,k){return{className:w,begin:j,relevance:k}},d={$pattern:/[a-z-]+/,keyword:r,attribute:lge.join(" ")},f={begin:"\\(",end:"\\)",contains:l,keywords:d,relevance:0};l.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,c("'"),c('"'),t.CSS_NUMBER_MODE,{begin:"(url|data-uri)\\(",starts:{className:"string",end:"[\\)\\n]",excludeEnd:!0}},t.UNICODE_RANGE,t.HEXCOLOR,f,u("variable","@@?"+a,10),u("variable","@\\{"+a+"\\}"),u("built_in","~?`[^`]*?`"),{className:"attribute",begin:a+"\\s*:",end:":",returnBegin:!0,excludeEnd:!0},t.IMPORTANT,{beginKeywords:"and not"},t.FUNCTION_DISPATCH);const h=l.concat({begin:/\{/,end:/\}/,contains:o}),p={beginKeywords:"when",endsWithParent:!0,contains:[{beginKeywords:"and not"}].concat(l)},g={begin:s+"\\s*:",returnBegin:!0,end:/[;}]/,relevance:0,contains:[{begin:/-(webkit|moz|ms|o)-/},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+cge.join("|")+")\\b",end:/(?=:)/,starts:{endsWithParent:!0,illegal:"[<=$]",relevance:0,contains:l}}]},m={className:"keyword",begin:"@(import|media|charset|font-face|(-[a-z]+-)?keyframes|supports|document|namespace|page|viewport|host)\\b",starts:{end:"[;{}]",keywords:d,returnEnd:!0,contains:l,relevance:0}},y={className:"variable",variants:[{begin:"@"+a+"\\s*:",relevance:15},{begin:"@"+a}],starts:{end:"[;}]",returnEnd:!0,contains:h}},v={variants:[{begin:"[\\.#:&\\[>]",end:"[;{}]"},{begin:s,end:/\{/}],returnBegin:!0,returnEnd:!0,illegal:`[<='$"]`,relevance:0,contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,p,u("keyword","all\\b"),u("variable","@\\{"+a+"\\}"),{begin:"\\b("+oge.join("|")+")\\b",className:"selector-tag"},t.CSS_NUMBER_MODE,u("selector-tag",s,0),u("selector-id","#"+s),u("selector-class","\\."+s,0),u("selector-tag","&",0),t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",begin:":("+PI.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+RI.join("|")+")"},{begin:/\(/,end:/\)/,relevance:0,contains:h},{begin:"!important"},t.FUNCTION_DISPATCH]},S={begin:a+`:(:)?(${n.join("|")})`,returnBegin:!0,contains:[v]};return o.push(e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,m,y,S,g,v,p,t.FUNCTION_DISPATCH),{name:"Less",case_insensitive:!0,illegal:`[=>'/<($"]`,contains:o}}function fge(e){const t="\\[=*\\[",n="\\]=*\\]",r={begin:t,end:n,contains:["self"]},a=[e.COMMENT("--(?!"+t+")","$"),e.COMMENT("--"+t,n,{contains:[r],relevance:10})];return{name:"Lua",aliases:["pluto"],keywords:{$pattern:e.UNDERSCORE_IDENT_RE,literal:"true false nil",keyword:"and break do else elseif end for goto if in local not or repeat return then until while",built_in:"_G _ENV _VERSION __index __newindex __mode __call __metatable __tostring __len __gc __add __sub __mul __div __mod __pow __concat __unm __eq __lt __le assert collectgarbage dofile error getfenv getmetatable ipairs load loadfile loadstring module next pairs pcall print rawequal rawget rawset require select setfenv setmetatable tonumber tostring type unpack xpcall arg self coroutine resume yield status wrap create running debug getupvalue debug sethook getmetatable gethook setmetatable setlocal traceback setfenv getinfo setupvalue getlocal getregistry getfenv io lines write close flush open output type read stderr stdin input stdout popen tmpfile math log max acos huge ldexp pi cos tanh pow deg tan cosh sinh random randomseed frexp ceil floor rad abs sqrt modf asin min mod fmod log10 atan2 exp sin atan os exit setlocale date getenv difftime remove time clock tmpname rename execute package preload loadlib loaded loaders cpath config path seeall string sub upper len gfind rep find match char dump gmatch reverse byte format gsub lower table setn insert getn foreachi maxn foreach concat sort remove"},contains:a.concat([{className:"function",beginKeywords:"function",end:"\\)",contains:[e.inherit(e.TITLE_MODE,{begin:"([_a-zA-Z]\\w*\\.)*([_a-zA-Z]\\w*:)?[_a-zA-Z]\\w*"}),{className:"params",begin:"\\(",endsWithParent:!0,contains:a}].concat(a)},e.C_NUMBER_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{className:"string",begin:t,end:n,contains:[r],relevance:5}])}}function hge(e){const t={className:"variable",variants:[{begin:"\\$\\("+e.UNDERSCORE_IDENT_RE+"\\)",contains:[e.BACKSLASH_ESCAPE]},{begin:/\$[@%<?\^\+\*]/}]},n={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,t]},r={className:"variable",begin:/\$\([\w-]+\s/,end:/\)/,keywords:{built_in:"subst patsubst strip findstring filter filter-out sort word wordlist firstword lastword dir notdir suffix basename addsuffix addprefix join wildcard realpath abspath error warning shell origin flavor foreach if or and call eval file value"},contains:[t,n]},a={begin:"^"+e.UNDERSCORE_IDENT_RE+"\\s*(?=[:+?]?=)"},s={className:"meta",begin:/^\.PHONY:/,end:/$/,keywords:{$pattern:/[\.\w]+/,keyword:".PHONY"}},o={className:"section",begin:/^[^\s]+:/,end:/$/,contains:[t]};return{name:"Makefile",aliases:["mk","mak","make"],keywords:{$pattern:/[\w-]+/,keyword:"define endef undefine ifdef ifndef ifeq ifneq else endif include -include sinclude override export unexport private vpath"},contains:[e.HASH_COMMENT_MODE,t,n,r,a,s,o]}}function pge(e){const t=e.regex,n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},r={begin:"^[-\\*]{3,}",end:"$"},a={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},s={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},o={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},l=/[A-Za-z][A-Za-z0-9+.-]*/,c={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:t.concat(/\[.+?\]\(/,l,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},u={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},d={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},f=e.inherit(u,{contains:[]}),h=e.inherit(d,{contains:[]});u.contains.push(h),d.contains.push(f);let p=[n,c];return[u,d,f,h].forEach(v=>{v.contains=v.contains.concat(p)}),p=p.concat(u,d),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:p},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:p}]}]},n,s,u,d,{className:"quote",begin:"^>\\s+",contains:p,end:"$"},a,r,c,o,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function mge(e){const t={className:"built_in",begin:"\\b(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)\\w+"},n=/[a-zA-Z@][a-zA-Z0-9_]*/,l={"variable.language":["this","super"],$pattern:n,keyword:["while","export","sizeof","typedef","const","struct","for","union","volatile","static","mutable","if","do","return","goto","enum","else","break","extern","asm","case","default","register","explicit","typename","switch","continue","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"],literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"],built_in:["dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"],type:["int","float","char","unsigned","signed","short","long","double","wchar_t","unichar","void","bool","BOOL","id|0","_Bool"]},c={$pattern:n,keyword:["@interface","@class","@protocol","@implementation"]};return{name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"],keywords:l,illegal:"</",contains:[t,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.C_NUMBER_MODE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,{className:"string",variants:[{begin:'@"',end:'"',illegal:"\\n",contains:[e.BACKSLASH_ESCAPE]}]},{className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{keyword:"if else elif endif define undef warning error line pragma ifdef ifndef include"},contains:[{begin:/\\\n/,relevance:0},e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),{className:"string",begin:/<.*?>/,end:/$/,illegal:"\\n"},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class",begin:"("+c.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:c,contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE,relevance:0}]}}function gge(e){const t=e.regex,n=["abs","accept","alarm","and","atan2","bind","binmode","bless","break","caller","chdir","chmod","chomp","chop","chown","chr","chroot","class","close","closedir","connect","continue","cos","crypt","dbmclose","dbmopen","defined","delete","die","do","dump","each","else","elsif","endgrent","endhostent","endnetent","endprotoent","endpwent","endservent","eof","eval","exec","exists","exit","exp","fcntl","field","fileno","flock","for","foreach","fork","format","formline","getc","getgrent","getgrgid","getgrnam","gethostbyaddr","gethostbyname","gethostent","getlogin","getnetbyaddr","getnetbyname","getnetent","getpeername","getpgrp","getpriority","getprotobyname","getprotobynumber","getprotoent","getpwent","getpwnam","getpwuid","getservbyname","getservbyport","getservent","getsockname","getsockopt","given","glob","gmtime","goto","grep","gt","hex","if","index","int","ioctl","join","keys","kill","last","lc","lcfirst","length","link","listen","local","localtime","log","lstat","lt","ma","map","method","mkdir","msgctl","msgget","msgrcv","msgsnd","my","ne","next","no","not","oct","open","opendir","or","ord","our","pack","package","pipe","pop","pos","print","printf","prototype","push","q|0","qq","quotemeta","qw","qx","rand","read","readdir","readline","readlink","readpipe","recv","redo","ref","rename","require","reset","return","reverse","rewinddir","rindex","rmdir","say","scalar","seek","seekdir","select","semctl","semget","semop","send","setgrent","sethostent","setnetent","setpgrp","setpriority","setprotoent","setpwent","setservent","setsockopt","shift","shmctl","shmget","shmread","shmwrite","shutdown","sin","sleep","socket","socketpair","sort","splice","split","sprintf","sqrt","srand","stat","state","study","sub","substr","symlink","syscall","sysopen","sysread","sysseek","system","syswrite","tell","telldir","tie","tied","time","times","tr","truncate","uc","ucfirst","umask","undef","unless","unlink","unpack","unshift","untie","until","use","utime","values","vec","wait","waitpid","wantarray","warn","when","while","write","x|0","xor","y|0"],r=/[dualxmsipngr]{0,12}/,a={$pattern:/[\w.]+/,keyword:n.join(" ")},s={className:"subst",begin:"[$@]\\{",end:"\\}",keywords:a},o={begin:/->\{/,end:/\}/},l={scope:"attr",match:/\s+:\s*\w+(\s*\(.*?\))?/},c={scope:"variable",variants:[{begin:/\$\d/},{begin:t.concat(/[$%@](?!")(\^\w\b|#\w+(::\w+)*|\{\w+\}|\w+(::\w*)*)/,"(?![A-Za-z])(?![@$%])")},{begin:/[$%@](?!")[^\s\w{=]|\$=/,relevance:0}],contains:[l]},u={className:"number",variants:[{match:/0?\.[0-9][0-9_]+\b/},{match:/\bv?(0|[1-9][0-9_]*(\.[0-9_]+)?|[1-9][0-9_]*)\b/},{match:/\b0[0-7][0-7_]*\b/},{match:/\b0x[0-9a-fA-F][0-9a-fA-F_]*\b/},{match:/\b0b[0-1][0-1_]*\b/}],relevance:0},d=[e.BACKSLASH_ESCAPE,s,c],f=[/!/,/\//,/\|/,/\?/,/'/,/"/,/#/],h=(m,y,v="\\1")=>{const S=v==="\\1"?v:t.concat(v,y);return t.concat(t.concat("(?:",m,")"),y,/(?:\\.|[^\\\/])*?/,S,/(?:\\.|[^\\\/])*?/,v,r)},p=(m,y,v)=>t.concat(t.concat("(?:",m,")"),y,/(?:\\.|[^\\\/])*?/,v,r),g=[c,e.HASH_COMMENT_MODE,e.COMMENT(/^=\w/,/=cut/,{endsWithParent:!0}),o,{className:"string",contains:d,variants:[{begin:"q[qwxr]?\\s*\\(",end:"\\)",relevance:5},{begin:"q[qwxr]?\\s*\\[",end:"\\]",relevance:5},{begin:"q[qwxr]?\\s*\\{",end:"\\}",relevance:5},{begin:"q[qwxr]?\\s*\\|",end:"\\|",relevance:5},{begin:"q[qwxr]?\\s*<",end:">",relevance:5},{begin:"qw\\s+q",end:"q",relevance:5},{begin:"'",end:"'",contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"'},{begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE]},{begin:/\{\w+\}/,relevance:0},{begin:"-?\\w+\\s*=>",relevance:0}]},u,{begin:"(\\/\\/|"+e.RE_STARTERS_RE+"|\\b(split|return|print|reverse|grep)\\b)\\s*",keywords:"split return print reverse grep",relevance:0,contains:[e.HASH_COMMENT_MODE,{className:"regexp",variants:[{begin:h("s|tr|y",t.either(...f,{capture:!0}))},{begin:h("s|tr|y","\\(","\\)")},{begin:h("s|tr|y","\\[","\\]")},{begin:h("s|tr|y","\\{","\\}")}],relevance:2},{className:"regexp",variants:[{begin:/(m|qr)\/\//,relevance:0},{begin:p("(?:m|qr)?",/\//,/\//)},{begin:p("m|qr",t.either(...f,{capture:!0}),/\1/)},{begin:p("m|qr",/\(/,/\)/)},{begin:p("m|qr",/\[/,/\]/)},{begin:p("m|qr",/\{/,/\}/)}]}]},{className:"function",beginKeywords:"sub method",end:"(\\s*\\(.*?\\))?[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,l]},{className:"class",beginKeywords:"class",end:"[;{]",excludeEnd:!0,relevance:5,contains:[e.TITLE_MODE,l,u]},{begin:"-\\w\\b",relevance:0},{begin:"^__DATA__$",end:"^__END__$",subLanguage:"mojolicious",contains:[{begin:"^@@.*",end:"$",className:"comment"}]}];return s.contains=g,o.contains=g,{name:"Perl",aliases:["pl","pm"],keywords:a,contains:g}}function vge(e){const t=e.regex,n=/(?![A-Za-z0-9])(?![$])/,r=t.concat(/[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*/,n),a=t.concat(/(\\?[A-Z][a-z0-9_\x7f-\xff]+|\\?[A-Z]+(?=[A-Z][a-z0-9_\x7f-\xff])){1,}/,n),s=t.concat(/[A-Z]+/,n),o={scope:"variable",match:"\\$+"+r},l={scope:"meta",variants:[{begin:/<\?php/,relevance:10},{begin:/<\?=/},{begin:/<\?/,relevance:.1},{begin:/\?>/}]},c={scope:"subst",variants:[{begin:/\$\w+/},{begin:/\{\$/,end:/\}/}]},u=e.inherit(e.APOS_STRING_MODE,{illegal:null}),d=e.inherit(e.QUOTE_STRING_MODE,{illegal:null,contains:e.QUOTE_STRING_MODE.contains.concat(c)}),f={begin:/<<<[ \t]*(?:(\w+)|"(\w+)")\n/,end:/[ \t]*(\w+)\b/,contains:e.QUOTE_STRING_MODE.contains.concat(c),"on:begin":(L,M)=>{M.data._beginMatch=L[1]||L[2]},"on:end":(L,M)=>{M.data._beginMatch!==L[1]&&M.ignoreMatch()}},h=e.END_SAME_AS_BEGIN({begin:/<<<[ \t]*'(\w+)'\n/,end:/[ \t]*(\w+)\b/}),p=`[
|
|
196
|
+
]`,g={scope:"string",variants:[d,u,f,h]},m={scope:"number",variants:[{begin:"\\b0[bB][01]+(?:_[01]+)*\\b"},{begin:"\\b0[oO][0-7]+(?:_[0-7]+)*\\b"},{begin:"\\b0[xX][\\da-fA-F]+(?:_[\\da-fA-F]+)*\\b"},{begin:"(?:\\b\\d+(?:_\\d+)*(\\.(?:\\d+(?:_\\d+)*))?|\\B\\.\\d+)(?:[eE][+-]?\\d+)?"}],relevance:0},y=["false","null","true"],v=["__CLASS__","__DIR__","__FILE__","__FUNCTION__","__COMPILER_HALT_OFFSET__","__LINE__","__METHOD__","__NAMESPACE__","__TRAIT__","die","echo","exit","include","include_once","print","require","require_once","array","abstract","and","as","binary","bool","boolean","break","callable","case","catch","class","clone","const","continue","declare","default","do","double","else","elseif","empty","enddeclare","endfor","endforeach","endif","endswitch","endwhile","enum","eval","extends","final","finally","float","for","foreach","from","global","goto","if","implements","instanceof","insteadof","int","integer","interface","isset","iterable","list","match|0","mixed","new","never","object","or","private","protected","public","readonly","real","return","string","switch","throw","trait","try","unset","use","var","void","while","xor","yield"],S=["Error|0","AppendIterator","ArgumentCountError","ArithmeticError","ArrayIterator","ArrayObject","AssertionError","BadFunctionCallException","BadMethodCallException","CachingIterator","CallbackFilterIterator","CompileError","Countable","DirectoryIterator","DivisionByZeroError","DomainException","EmptyIterator","ErrorException","Exception","FilesystemIterator","FilterIterator","GlobIterator","InfiniteIterator","InvalidArgumentException","IteratorIterator","LengthException","LimitIterator","LogicException","MultipleIterator","NoRewindIterator","OutOfBoundsException","OutOfRangeException","OuterIterator","OverflowException","ParentIterator","ParseError","RangeException","RecursiveArrayIterator","RecursiveCachingIterator","RecursiveCallbackFilterIterator","RecursiveDirectoryIterator","RecursiveFilterIterator","RecursiveIterator","RecursiveIteratorIterator","RecursiveRegexIterator","RecursiveTreeIterator","RegexIterator","RuntimeException","SeekableIterator","SplDoublyLinkedList","SplFileInfo","SplFileObject","SplFixedArray","SplHeap","SplMaxHeap","SplMinHeap","SplObjectStorage","SplObserver","SplPriorityQueue","SplQueue","SplStack","SplSubject","SplTempFileObject","TypeError","UnderflowException","UnexpectedValueException","UnhandledMatchError","ArrayAccess","BackedEnum","Closure","Fiber","Generator","Iterator","IteratorAggregate","Serializable","Stringable","Throwable","Traversable","UnitEnum","WeakReference","WeakMap","Directory","__PHP_Incomplete_Class","parent","php_user_filter","self","static","stdClass"],j={keyword:v,literal:(L=>{const M=[];return L.forEach(D=>{M.push(D),D.toLowerCase()===D?M.push(D.toUpperCase()):M.push(D.toLowerCase())}),M})(y),built_in:S},k=L=>L.map(M=>M.replace(/\|\d+$/,"")),b={variants:[{match:[/new/,t.concat(p,"+"),t.concat("(?!",k(S).join("\\b|"),"\\b)"),a],scope:{1:"keyword",4:"title.class"}}]},N=t.concat(r,"\\b(?!\\()"),_={variants:[{match:[t.concat(/::/,t.lookahead(/(?!class\b)/)),N],scope:{2:"variable.constant"}},{match:[/::/,/class/],scope:{2:"variable.language"}},{match:[a,t.concat(/::/,t.lookahead(/(?!class\b)/)),N],scope:{1:"title.class",3:"variable.constant"}},{match:[a,t.concat("::",t.lookahead(/(?!class\b)/))],scope:{1:"title.class"}},{match:[a,/::/,/class/],scope:{1:"title.class",3:"variable.language"}}]},T={scope:"attr",match:t.concat(r,t.lookahead(":"),t.lookahead(/(?!::)/))},C={relevance:0,begin:/\(/,end:/\)/,keywords:j,contains:[T,o,_,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,g,m,b]},O={relevance:0,match:[/\b/,t.concat("(?!fn\\b|function\\b|",k(v).join("\\b|"),"|",k(S).join("\\b|"),"\\b)"),r,t.concat(p,"*"),t.lookahead(/(?=\()/)],scope:{3:"title.function.invoke"},contains:[C]};C.contains.push(O);const P=[T,_,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,g,m,b],z={begin:t.concat(/#\[\s*\\?/,t.either(a,s)),beginScope:"meta",end:/]/,endScope:"meta",keywords:{literal:y,keyword:["new","array"]},contains:[{begin:/\[/,end:/]/,keywords:{literal:y,keyword:["new","array"]},contains:["self",...P]},...P,{scope:"meta",variants:[{match:a},{match:s}]}]};return{case_insensitive:!1,keywords:j,contains:[z,e.HASH_COMMENT_MODE,e.COMMENT("//","$"),e.COMMENT("/\\*","\\*/",{contains:[{scope:"doctag",match:"@[A-Za-z]+"}]}),{match:/__halt_compiler\(\);/,keywords:"__halt_compiler",starts:{scope:"comment",end:e.MATCH_NOTHING_RE,contains:[{match:/\?>/,scope:"meta",endsParent:!0}]}},l,{scope:"variable.language",match:/\$this\b/},o,O,_,{match:[/const/,/\s/,r],scope:{1:"keyword",3:"variable.constant"}},b,{scope:"function",relevance:0,beginKeywords:"fn function",end:/[;{]/,excludeEnd:!0,illegal:"[$%\\[]",contains:[{beginKeywords:"use"},e.UNDERSCORE_TITLE_MODE,{begin:"=>",endsParent:!0},{scope:"params",begin:"\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0,keywords:j,contains:["self",z,o,_,e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE,e.HASH_COMMENT_MODE,g,m]}]},{scope:"class",variants:[{beginKeywords:"enum",illegal:/[($"]/},{beginKeywords:"class interface trait",illegal:/[:($"]/}],relevance:0,end:/\{/,excludeEnd:!0,contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE]},{beginKeywords:"namespace",relevance:0,end:";",illegal:/[.']/,contains:[e.inherit(e.UNDERSCORE_TITLE_MODE,{scope:"title.class"})]},{beginKeywords:"use",relevance:0,end:";",contains:[{match:/\b(as|const|function)\b/,scope:"keyword"},e.UNDERSCORE_TITLE_MODE]},g,m]}}function yge(e){return{name:"PHP template",subLanguage:"xml",contains:[{begin:/<\?(php|=)?/,end:/\?>/,subLanguage:"php",contains:[{begin:"/\\*",end:"\\*/",skip:!0},{begin:'b"',end:'"',skip:!0},{begin:"b'",end:"'",skip:!0},e.inherit(e.APOS_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0}),e.inherit(e.QUOTE_STRING_MODE,{illegal:null,className:null,contains:null,skip:!0})]}]}}function bge(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}function xge(e){const t=e.regex,n=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),r=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],l={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},c={className:"meta",begin:/^(>>>|\.\.\.) /},u={className:"subst",begin:/\{/,end:/\}/,keywords:l,illegal:/#/},d={begin:/\{\{/,relevance:0},f={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,c],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,c],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,c,d,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,c,d,u]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,d,u]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,d,u]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},h="[0-9](_?[0-9])*",p=`(\\b(${h}))?\\.(${h})|\\b(${h})\\.`,g=`\\b|${r.join("|")}`,m={className:"number",relevance:0,variants:[{begin:`(\\b(${h})|(${p}))[eE][+-]?(${h})[jJ]?(?=${g})`},{begin:`(${p})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${g})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${g})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${g})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${g})`},{begin:`\\b(${h})[jJ](?=${g})`}]},y={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:l,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},v={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:["self",c,m,f,e.HASH_COMMENT_MODE]}]};return u.contains=[f,m,c],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:l,illegal:/(<\/|\?)|=>/,contains:[c,m,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},f,y,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[v]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[m,v,f]}]}}function wge(e){return{aliases:["pycon"],contains:[{className:"meta.prompt",starts:{end:/ |$/,starts:{end:"$",subLanguage:"python"}},variants:[{begin:/^>>>(?=[ ]|$)/},{begin:/^\.\.\.(?=[ ]|$)/}]}]}}function kge(e){const t=e.regex,n=/(?:(?:[a-zA-Z]|\.[._a-zA-Z])[._a-zA-Z0-9]*)|\.(?!\d)/,r=t.either(/0[xX][0-9a-fA-F]+\.[0-9a-fA-F]*[pP][+-]?\d+i?/,/0[xX][0-9a-fA-F]+(?:[pP][+-]?\d+)?[Li]?/,/(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?[Li]?/),a=/[=!<>:]=|\|\||&&|:::?|<-|<<-|->>|->|\|>|[-+*\/?!$&|:<=>@^~]|\*\*/,s=t.either(/[()]/,/[{}]/,/\[\[/,/[[\]]/,/\\/,/,/);return{name:"R",keywords:{$pattern:n,keyword:"function if in break next repeat else for while",literal:"NULL NA TRUE FALSE Inf NaN NA_integer_|10 NA_real_|10 NA_character_|10 NA_complex_|10",built_in:"LETTERS letters month.abb month.name pi T F abs acos acosh all any anyNA Arg as.call as.character as.complex as.double as.environment as.integer as.logical as.null.default as.numeric as.raw asin asinh atan atanh attr attributes baseenv browser c call ceiling class Conj cos cosh cospi cummax cummin cumprod cumsum digamma dim dimnames emptyenv exp expression floor forceAndCall gamma gc.time globalenv Im interactive invisible is.array is.atomic is.call is.character is.complex is.double is.environment is.expression is.finite is.function is.infinite is.integer is.language is.list is.logical is.matrix is.na is.name is.nan is.null is.numeric is.object is.pairlist is.raw is.recursive is.single is.symbol lazyLoadDBfetch length lgamma list log max min missing Mod names nargs nzchar oldClass on.exit pos.to.env proc.time prod quote range Re rep retracemem return round seq_along seq_len seq.int sign signif sin sinh sinpi sqrt standardGeneric substitute sum switch tan tanh tanpi tracemem trigamma trunc unclass untracemem UseMethod xtfrm"},contains:[e.COMMENT(/#'/,/$/,{contains:[{scope:"doctag",match:/@examples/,starts:{end:t.lookahead(t.either(/\n^#'\s*(?=@[a-zA-Z]+)/,/\n^(?!#')/)),endsParent:!0}},{scope:"doctag",begin:"@param",end:/$/,contains:[{scope:"variable",variants:[{match:n},{match:/`(?:\\.|[^`\\])+`/}],endsParent:!0}]},{scope:"doctag",match:/@[a-zA-Z]+/},{scope:"keyword",match:/\\[a-zA-Z]+/}]}),e.HASH_COMMENT_MODE,{scope:"string",contains:[e.BACKSLASH_ESCAPE],variants:[e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\(/,end:/\)(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\{/,end:/\}(-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]"(-*)\[/,end:/\](-*)"/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\(/,end:/\)(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\{/,end:/\}(-*)'/}),e.END_SAME_AS_BEGIN({begin:/[rR]'(-*)\[/,end:/\](-*)'/}),{begin:'"',end:'"',relevance:0},{begin:"'",end:"'",relevance:0}]},{relevance:0,variants:[{scope:{1:"operator",2:"number"},match:[a,r]},{scope:{1:"operator",2:"number"},match:[/%[^%]*%/,r]},{scope:{1:"punctuation",2:"number"},match:[s,r]},{scope:{2:"number"},match:[/[^a-zA-Z0-9._]|^/,r]}]},{scope:{3:"operator"},match:[n,/\s+/,/<-/,/\s+/]},{scope:"operator",relevance:0,variants:[{match:a},{match:/%[^%]*%/}]},{scope:"punctuation",relevance:0,match:s},{begin:"`",end:"`",contains:[{begin:/\\./}]}]}}function Sge(e){const t=e.regex,n="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",r=t.either(/\b([A-Z]+[a-z0-9]+)+/,/\b([A-Z]+[a-z0-9]+)+[A-Z]+/),a=t.concat(r,/(::\w+)*/),o={"variable.constant":["__FILE__","__LINE__","__ENCODING__"],"variable.language":["self","super"],keyword:["alias","and","begin","BEGIN","break","case","class","defined","do","else","elsif","end","END","ensure","for","if","in","module","next","not","or","redo","require","rescue","retry","return","then","undef","unless","until","when","while","yield",...["include","extend","prepend","public","private","protected","raise","throw"]],built_in:["proc","lambda","attr_accessor","attr_reader","attr_writer","define_method","private_constant","module_function"],literal:["true","false","nil"]},l={className:"doctag",begin:"@[A-Za-z]+"},c={begin:"#<",end:">"},u=[e.COMMENT("#","$",{contains:[l]}),e.COMMENT("^=begin","^=end",{contains:[l],relevance:10}),e.COMMENT("^__END__",e.MATCH_NOTHING_RE)],d={className:"subst",begin:/#\{/,end:/\}/,keywords:o},f={className:"string",contains:[e.BACKSLASH_ESCAPE,d],variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/,end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{begin:/%[qQwWx]?</,end:/>/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/,end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{begin:t.concat(/<<[-~]?'?/,t.lookahead(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)),contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,contains:[e.BACKSLASH_ESCAPE,d]})]}]},h="[1-9](_?[0-9])*|0",p="[0-9](_?[0-9])*",g={className:"number",relevance:0,variants:[{begin:`\\b(${h})(\\.(${p}))?([eE][+-]?(${p})|r)?i?\\b`},{begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{begin:"\\b0(_?[0-7])+r?i?\\b"}]},m={variants:[{match:/\(\)/},{className:"params",begin:/\(/,end:/(?=\))/,excludeBegin:!0,endsParent:!0,keywords:o}]},b=[f,{variants:[{match:[/class\s+/,a,/\s+<\s+/,a]},{match:[/\b(class|module)\s+/,a]}],scope:{2:"title.class",4:"title.class.inherited"},keywords:o},{match:[/(include|extend)\s+/,a],scope:{2:"title.class"},keywords:o},{relevance:0,match:[a,/\.new[. (]/],scope:{1:"title.class"}},{relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"},{relevance:0,match:r,scope:"title.class"},{match:[/def/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[m]},{begin:e.IDENT_RE+"::"},{className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol",begin:":(?!\\s)",contains:[f,{begin:n}],relevance:0},g,{className:"variable",begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{className:"params",begin:/\|(?!=)/,end:/\|/,excludeBegin:!0,excludeEnd:!0,relevance:0,keywords:o},{begin:"("+e.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{className:"regexp",contains:[e.BACKSLASH_ESCAPE,d],illegal:/\n/,variants:[{begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(",end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}]}].concat(c,u),relevance:0}].concat(c,u);d.contains=b,m.contains=b;const C=[{begin:/^\s*=>/,starts:{end:"$",contains:b}},{className:"meta.prompt",begin:"^("+"[>?]>"+"|"+"[\\w#]+\\(\\w+\\):\\d+:\\d+[>*]"+"|"+"(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>"+")(?=[ ])",starts:{end:"$",keywords:o,contains:b}}];return u.unshift(c),{name:"Ruby",aliases:["rb","gemspec","podspec","thor","irb"],keywords:o,illegal:/\/\*/,contains:[e.SHEBANG({binary:"ruby"})].concat(C).concat(u).concat(b)}}function jge(e){const t=e.regex,n=/(r#)?/,r=t.concat(n,e.UNDERSCORE_IDENT_RE),a=t.concat(n,e.IDENT_RE),s={className:"title.function.invoke",relevance:0,begin:t.concat(/\b/,/(?!let|for|while|if|else|match\b)/,a,t.lookahead(/\s*\(/))},o="([ui](8|16|32|64|128|size)|f(32|64))?",l=["abstract","as","async","await","become","box","break","const","continue","crate","do","dyn","else","enum","extern","false","final","fn","for","if","impl","in","let","loop","macro","match","mod","move","mut","override","priv","pub","ref","return","self","Self","static","struct","super","trait","true","try","type","typeof","union","unsafe","unsized","use","virtual","where","while","yield"],c=["true","false","Some","None","Ok","Err"],u=["drop ","Copy","Send","Sized","Sync","Drop","Fn","FnMut","FnOnce","ToOwned","Clone","Debug","PartialEq","PartialOrd","Eq","Ord","AsRef","AsMut","Into","From","Default","Iterator","Extend","IntoIterator","DoubleEndedIterator","ExactSizeIterator","SliceConcatExt","ToString","assert!","assert_eq!","bitflags!","bytes!","cfg!","col!","concat!","concat_idents!","debug_assert!","debug_assert_eq!","env!","eprintln!","panic!","file!","format!","format_args!","include_bytes!","include_str!","line!","local_data_key!","module_path!","option_env!","print!","println!","select!","stringify!","try!","unimplemented!","unreachable!","vec!","write!","writeln!","macro_rules!","assert_ne!","debug_assert_ne!"],d=["i8","i16","i32","i64","i128","isize","u8","u16","u32","u64","u128","usize","f32","f64","str","char","bool","Box","Option","Result","String","Vec"];return{name:"Rust",aliases:["rs"],keywords:{$pattern:e.IDENT_RE+"!?",type:d,keyword:l,literal:c,built_in:u},illegal:"</",contains:[e.C_LINE_COMMENT_MODE,e.COMMENT("/\\*","\\*/",{contains:["self"]}),e.inherit(e.QUOTE_STRING_MODE,{begin:/b?"/,illegal:null}),{className:"symbol",begin:/'[a-zA-Z_][a-zA-Z0-9_]*(?!')/},{scope:"string",variants:[{begin:/b?r(#*)"(.|\n)*?"\1(?!#)/},{begin:/b?'/,end:/'/,contains:[{scope:"char.escape",match:/\\('|\w|x\w{2}|u\w{4}|U\w{8})/}]}]},{className:"number",variants:[{begin:"\\b0b([01_]+)"+o},{begin:"\\b0o([0-7_]+)"+o},{begin:"\\b0x([A-Fa-f0-9_]+)"+o},{begin:"\\b(\\d[\\d_]*(\\.[0-9_]+)?([eE][+-]?[0-9_]+)?)"+o}],relevance:0},{begin:[/fn/,/\s+/,r],className:{1:"keyword",3:"title.function"}},{className:"meta",begin:"#!?\\[",end:"\\]",contains:[{className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE]}]},{begin:[/let/,/\s+/,/(?:mut\s+)?/,r],className:{1:"keyword",3:"keyword",4:"variable"}},{begin:[/for/,/\s+/,r,/\s+/,/in/],className:{1:"keyword",3:"variable",5:"keyword"}},{begin:[/type/,/\s+/,r],className:{1:"keyword",3:"title.class"}},{begin:[/(?:trait|enum|struct|union|impl|for)/,/\s+/,r],className:{1:"keyword",3:"title.class"}},{begin:e.IDENT_RE+"::",keywords:{keyword:"Self",built_in:u,type:d}},{className:"punctuation",begin:"->"},s]}}const Nge=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,4}(-[0-9A-Fa-f][0-9A-Fa-f]{0,4})?/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),Ege=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],_ge=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],Age=[...Ege,..._ge],Cge=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),Tge=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),Oge=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Pge=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","unicode-range","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function Rge(e){const t=Nge(e),n=Oge,r=Tge,a="@[a-z-]+",s="and or not only",l={className:"variable",begin:"(\\$"+"[a-zA-Z-][a-zA-Z0-9_-]*"+")\\b",relevance:0};return{name:"SCSS",case_insensitive:!0,illegal:"[=/|']",contains:[e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,t.CSS_NUMBER_MODE,{className:"selector-id",begin:"#[A-Za-z0-9_-]+",relevance:0},{className:"selector-class",begin:"\\.[A-Za-z0-9_-]+",relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-tag",begin:"\\b("+Age.join("|")+")\\b",relevance:0},{className:"selector-pseudo",begin:":("+r.join("|")+")"},{className:"selector-pseudo",begin:":(:)?("+n.join("|")+")"},l,{begin:/\(/,end:/\)/,contains:[t.CSS_NUMBER_MODE]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Pge.join("|")+")\\b"},{begin:"\\b(whitespace|wait|w-resize|visible|vertical-text|vertical-ideographic|uppercase|upper-roman|upper-alpha|underline|transparent|top|thin|thick|text|text-top|text-bottom|tb-rl|table-header-group|table-footer-group|sw-resize|super|strict|static|square|solid|small-caps|separate|se-resize|scroll|s-resize|rtl|row-resize|ridge|right|repeat|repeat-y|repeat-x|relative|progress|pointer|overline|outside|outset|oblique|nowrap|not-allowed|normal|none|nw-resize|no-repeat|no-drop|newspaper|ne-resize|n-resize|move|middle|medium|ltr|lr-tb|lowercase|lower-roman|lower-alpha|loose|list-item|line|line-through|line-edge|lighter|left|keep-all|justify|italic|inter-word|inter-ideograph|inside|inset|inline|inline-block|inherit|inactive|ideograph-space|ideograph-parenthesis|ideograph-numeric|ideograph-alpha|horizontal|hidden|help|hand|groove|fixed|ellipsis|e-resize|double|dotted|distribute|distribute-space|distribute-letter|distribute-all-lines|disc|disabled|default|decimal|dashed|crosshair|collapse|col-resize|circle|char|center|capitalize|break-word|break-all|bottom|both|bolder|bold|block|bidi-override|below|baseline|auto|always|all-scroll|absolute|table|table-cell)\\b"},{begin:/:/,end:/[;}{]/,relevance:0,contains:[t.BLOCK_COMMENT,l,t.HEXCOLOR,t.CSS_NUMBER_MODE,t.UNICODE_RANGE,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.IMPORTANT,t.FUNCTION_DISPATCH]},{begin:"@(page|font-face)",keywords:{$pattern:a,keyword:"@page @font-face"}},{begin:"@",end:"[{;]",returnBegin:!0,keywords:{$pattern:/[a-z-]+/,keyword:s,attribute:Cge.join(" ")},contains:[{begin:a,className:"keyword"},{begin:/[a-z-]+(?=:)/,className:"attribute"},l,e.QUOTE_STRING_MODE,e.APOS_STRING_MODE,t.HEXCOLOR,t.CSS_NUMBER_MODE]},t.FUNCTION_DISPATCH]}}function Mge(e){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}function Ige(e){const t=e.regex,n=e.COMMENT("--","$"),r={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},a={begin:/"/,end:/"/,contains:[{match:/""/}]},s=["true","false","unknown"],o=["double precision","large object","with timezone","without timezone"],l=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],c=["add","asc","collation","desc","final","first","last","view"],u=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],d=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],f=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],h=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],p=d,g=[...u,...c].filter(k=>!d.includes(k)),m={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},y={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},v={match:t.concat(/\b/,t.either(...p),/\s*\(/),relevance:0,keywords:{built_in:p}};function S(k){return t.concat(/\b/,t.either(...k.map(b=>b.replace(/\s+/,"\\s+"))),/\b/)}const w={scope:"keyword",match:S(h),relevance:0};function j(k,{exceptions:b,when:N}={}){const _=N;return b=b||[],k.map(T=>T.match(/\|\d+$/)||b.includes(T)?T:_(T)?`${T}|0`:T)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:j(g,{when:k=>k.length<3}),literal:s,type:l,built_in:f},contains:[{scope:"type",match:S(o)},w,v,m,r,a,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,y]}}function MI(e){return e?typeof e=="string"?e:e.source:null}function pc(e){return lt("(?=",e,")")}function lt(...e){return e.map(n=>MI(n)).join("")}function $ge(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function An(...e){return"("+($ge(e).capture?"":"?:")+e.map(r=>MI(r)).join("|")+")"}const P0=e=>lt(/\b/,e,/\w$/.test(e)?/\b/:/\B/),Lge=["Protocol","Type"].map(P0),y_=["init","self"].map(P0),Dge=["Any","Self"],ov=["actor","any","associatedtype","async","await",/as\?/,/as!/,"as","borrowing","break","case","catch","class","consume","consuming","continue","convenience","copy","default","defer","deinit","didSet","distributed","do","dynamic","each","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","isolated","nonisolated","lazy","let","macro","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","package","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],b_=["false","nil","true"],Bge=["assignment","associativity","higherThan","left","lowerThan","none","right"],zge=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warning"],x_=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],II=An(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),$I=An(II,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),lv=lt(II,$I,"*"),LI=An(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),up=An(LI,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),ta=lt(LI,up,"*"),pf=lt(/[A-Z]/,up,"*"),Fge=["attached","autoclosure",lt(/convention\(/,An("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","freestanding","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",lt(/objc\(/,ta,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","Sendable","testable","UIApplicationMain","unchecked","unknown","usableFromInline","warn_unqualified_access"],Uge=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"];function Wge(e){const t={match:/\s+/,relevance:0},n=e.COMMENT("/\\*","\\*/",{contains:["self"]}),r=[e.C_LINE_COMMENT_MODE,n],a={match:[/\./,An(...Lge,...y_)],className:{2:"keyword"}},s={match:lt(/\./,An(...ov)),relevance:0},o=ov.filter(ge=>typeof ge=="string").concat(["_|0"]),l=ov.filter(ge=>typeof ge!="string").concat(Dge).map(P0),c={variants:[{className:"keyword",match:An(...l,...y_)}]},u={$pattern:An(/\b\w+/,/#\w+/),keyword:o.concat(zge),literal:b_},d=[a,s,c],f={match:lt(/\./,An(...x_)),relevance:0},h={className:"built_in",match:lt(/\b/,An(...x_),/(?=\()/)},p=[f,h],g={match:/->/,relevance:0},m={className:"operator",relevance:0,variants:[{match:lv},{match:`\\.(\\.|${$I})+`}]},y=[g,m],v="([0-9]_*)+",S="([0-9a-fA-F]_*)+",w={className:"number",relevance:0,variants:[{match:`\\b(${v})(\\.(${v}))?([eE][+-]?(${v}))?\\b`},{match:`\\b0x(${S})(\\.(${S}))?([pP][+-]?(${v}))?\\b`},{match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},j=(ge="")=>({className:"subst",variants:[{match:lt(/\\/,ge,/[0\\tnr"']/)},{match:lt(/\\/,ge,/u\{[0-9a-fA-F]{1,8}\}/)}]}),k=(ge="")=>({className:"subst",match:lt(/\\/,ge,/[\t ]*(?:[\r\n]|\r\n)/)}),b=(ge="")=>({className:"subst",label:"interpol",begin:lt(/\\/,ge,/\(/),end:/\)/}),N=(ge="")=>({begin:lt(ge,/"""/),end:lt(/"""/,ge),contains:[j(ge),k(ge),b(ge)]}),_=(ge="")=>({begin:lt(ge,/"/),end:lt(/"/,ge),contains:[j(ge),b(ge)]}),T={className:"string",variants:[N(),N("#"),N("##"),N("###"),_(),_("#"),_("##"),_("###")]},C=[e.BACKSLASH_ESCAPE,{begin:/\[/,end:/\]/,relevance:0,contains:[e.BACKSLASH_ESCAPE]}],O={begin:/\/[^\s](?=[^/\n]*\/)/,end:/\//,contains:C},P=ge=>{const Ie=lt(ge,/\//),fe=lt(/\//,ge);return{begin:Ie,end:fe,contains:[...C,{scope:"comment",begin:`#(?!.*${fe})`,end:/$/}]}},z={scope:"regexp",variants:[P("###"),P("##"),P("#"),O]},L={match:lt(/`/,ta,/`/)},M={className:"variable",match:/\$\d+/},D={className:"variable",match:`\\$${up}+`},W=[L,M,D],R={match:/(@|#(un)?)available/,scope:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:Uge,contains:[...y,w,T]}]}},B={scope:"keyword",match:lt(/@/,An(...Fge),pc(An(/\(/,/\s+/)))},A={scope:"meta",match:lt(/@/,ta)},J=[R,B,A],F={match:pc(/\b[A-Z]/),relevance:0,contains:[{className:"type",match:lt(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,up,"+")},{className:"type",match:pf,relevance:0},{match:/[?!]+/,relevance:0},{match:/\.\.\./,relevance:0},{match:lt(/\s+&\s+/,pc(pf)),relevance:0}]},$={begin:/</,end:/>/,keywords:u,contains:[...r,...d,...J,g,F]};F.contains.push($);const ie={match:lt(ta,/\s*:/),keywords:"_|0",relevance:0},de={begin:/\(/,end:/\)/,relevance:0,keywords:u,contains:["self",ie,...r,z,...d,...p,...y,w,T,...W,...J,F]},me={begin:/</,end:/>/,keywords:"repeat each",contains:[...r,F]},Te={begin:An(pc(lt(ta,/\s*:/)),pc(lt(ta,/\s+/,ta,/\s*:/))),end:/:/,relevance:0,contains:[{className:"keyword",match:/\b_\b/},{className:"params",match:ta}]},Q={begin:/\(/,end:/\)/,keywords:u,contains:[Te,...r,...d,...y,w,T,...J,F,de],endsParent:!0,illegal:/["']/},X={match:[/(func|macro)/,/\s+/,An(L.match,ta,lv)],className:{1:"keyword",3:"title.function"},contains:[me,Q,t],illegal:[/\[/,/%/]},ae={match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"},contains:[me,Q,t],illegal:/\[|%/},ce={match:[/operator/,/\s+/,lv],className:{1:"keyword",3:"title"}},H={begin:[/precedencegroup/,/\s+/,pf],className:{1:"keyword",3:"title"},contains:[F],keywords:[...Bge,...b_],end:/}/},xe={match:[/class\b/,/\s+/,/func\b/,/\s+/,/\b[A-Za-z_][A-Za-z0-9_]*\b/],scope:{1:"keyword",3:"keyword",5:"title.function"}},we={match:[/class\b/,/\s+/,/var\b/],scope:{1:"keyword",3:"keyword"}},je={begin:[/(struct|protocol|class|extension|enum|actor)/,/\s+/,ta,/\s*/],beginScope:{1:"keyword",3:"title.class"},keywords:u,contains:[me,...d,{begin:/:/,end:/\{/,keywords:u,contains:[{scope:"title.class.inherited",match:pf},...d],relevance:0}]};for(const ge of T.variants){const Ie=ge.contains.find(nt=>nt.label==="interpol");Ie.keywords=u;const fe=[...d,...p,...y,w,T,...W];Ie.contains=[...fe,{begin:/\(/,end:/\)/,contains:["self",...fe]}]}return{name:"Swift",keywords:u,contains:[...r,X,ae,xe,we,je,ce,H,{beginKeywords:"import",end:/$/,contains:[...r],relevance:0},z,...d,...p,...y,w,T,...W,...J,F,de]}}const dp="[A-Za-z$_][0-9A-Za-z$_]*",DI=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],BI=["true","false","null","undefined","NaN","Infinity"],zI=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],FI=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],UI=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],WI=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],HI=[].concat(UI,zI,FI);function Hge(e){const t=e.regex,n=(R,{after:B})=>{const A="</"+R[0].slice(1);return R.input.indexOf(A,B)!==-1},r=dp,a={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(R,B)=>{const A=R[0].length+R.index,J=R.input[A];if(J==="<"||J===","){B.ignoreMatch();return}J===">"&&(n(R,{after:A})||B.ignoreMatch());let F;const $=R.input.substring(A);if(F=$.match(/^\s*=/)){B.ignoreMatch();return}if((F=$.match(/^\s+extends\s+/))&&F.index===0){B.ignoreMatch();return}}},l={$pattern:dp,keyword:DI,literal:BI,built_in:HI,"variable.language":WI},c="[0-9](_?[0-9])*",u=`\\.(${c})`,d="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",f={className:"number",variants:[{begin:`(\\b(${d})((${u})|\\.)?|(${u}))[eE][+-]?(${c})\\b`},{begin:`\\b(${d})\\b((${u})\\b|\\.)?|(${u})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},h={className:"subst",begin:"\\$\\{",end:"\\}",keywords:l,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"xml"}},g={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"css"}},m={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,h]},S={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},w=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,{match:/\$\d+/},f];h.contains=w.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(w)});const j=[].concat(S,h.contains),k=j.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(j)}]),b={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:k},N={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,"(",t.concat(/\./,r),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,r],scope:{1:"keyword",3:"title.class"}}]},_={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...zI,...FI]}},T={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},C={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[b],illegal:/%/},O={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function P(R){return t.concat("(?!",R.join("|"),")")}const z={match:t.concat(/\b/,P([...UI,"super","import","await"].map(R=>`${R}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},L={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},M={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},b]},D="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",W={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(D)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[b]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:k,CLASS_REFERENCE:_},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),T,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,S,{match:/\$\d+/},f,_,{scope:"attr",match:r+t.lookahead(":"),relevance:0},W,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[S,e.REGEXP_MODE,{className:"function",begin:D,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:k}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:a.begin,end:a.end},{match:s},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0,contains:["self"]}]}]},C,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[b,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},L,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[b]},z,O,N,M,{match:/\$[(.]/}]}}function Gge(e){const t=e.regex,n=Hge(e),r=dp,a=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],s={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},o={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:a},contains:[n.exports.CLASS_REFERENCE]},l={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},c=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],u={$pattern:dp,keyword:DI.concat(c),literal:BI,built_in:HI.concat(a),"variable.language":WI},d={className:"meta",begin:"@"+r},f=(m,y,v)=>{const S=m.contains.findIndex(w=>w.label===y);if(S===-1)throw new Error("can not find mode to replace");m.contains.splice(S,1,v)};Object.assign(n.keywords,u),n.exports.PARAMS_CONTAINS.push(d);const h=n.contains.find(m=>m.scope==="attr"),p=Object.assign({},h,{match:t.concat(r,t.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,h,p]),n.contains=n.contains.concat([d,s,o,p]),f(n,"shebang",e.SHEBANG()),f(n,"use_strict",l);const g=n.contains.find(m=>m.label==="func.def");return g.relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}function qge(e){const t=e.regex,n={className:"string",begin:/"(""|[^/n])"C\b/},r={className:"string",begin:/"/,end:/"/,illegal:/\n/,contains:[{begin:/""/}]},a=/\d{1,2}\/\d{1,2}\/\d{4}/,s=/\d{4}-\d{1,2}-\d{1,2}/,o=/(\d|1[012])(:\d+){0,2} *(AM|PM)/,l=/\d{1,2}(:\d{1,2}){1,2}/,c={className:"literal",variants:[{begin:t.concat(/# */,t.either(s,a),/ *#/)},{begin:t.concat(/# */,l,/ *#/)},{begin:t.concat(/# */,o,/ *#/)},{begin:t.concat(/# */,t.either(s,a),/ +/,t.either(o,l),/ *#/)}]},u={className:"number",relevance:0,variants:[{begin:/\b\d[\d_]*((\.[\d_]+(E[+-]?[\d_]+)?)|(E[+-]?[\d_]+))[RFD@!#]?/},{begin:/\b\d[\d_]*((U?[SIL])|[%&])?/},{begin:/&H[\dA-F_]+((U?[SIL])|[%&])?/},{begin:/&O[0-7_]+((U?[SIL])|[%&])?/},{begin:/&B[01_]+((U?[SIL])|[%&])?/}]},d={className:"label",begin:/^\w+:/},f=e.COMMENT(/'''/,/$/,{contains:[{className:"doctag",begin:/<\/?/,end:/>/}]}),h=e.COMMENT(null,/$/,{variants:[{begin:/'/},{begin:/([\t ]|^)REM(?=\s)/}]});return{name:"Visual Basic .NET",aliases:["vb"],case_insensitive:!0,classNameAliases:{label:"symbol"},keywords:{keyword:"addhandler alias aggregate ansi as async assembly auto binary by byref byval call case catch class compare const continue custom declare default delegate dim distinct do each equals else elseif end enum erase error event exit explicit finally for friend from function get global goto group handles if implements imports in inherits interface into iterator join key let lib loop me mid module mustinherit mustoverride mybase myclass namespace narrowing new next notinheritable notoverridable of off on operator option optional order overloads overridable overrides paramarray partial preserve private property protected public raiseevent readonly redim removehandler resume return select set shadows shared skip static step stop structure strict sub synclock take text then throw to try unicode until using when where while widening with withevents writeonly yield",built_in:"addressof and andalso await directcast gettype getxmlnamespace is isfalse isnot istrue like mod nameof new not or orelse trycast typeof xor cbool cbyte cchar cdate cdbl cdec cint clng cobj csbyte cshort csng cstr cuint culng cushort",type:"boolean byte char date decimal double integer long object sbyte short single string uinteger ulong ushort",literal:"true false nothing"},illegal:"//|\\{|\\}|endif|gosub|variant|wend|^\\$ ",contains:[n,r,c,u,d,f,h,{className:"meta",begin:/[\t ]*#(const|disable|else|elseif|enable|end|externalsource|if|region)\b/,end:/$/,keywords:{keyword:"const disable else elseif enable end externalsource if region then"},contains:[h]}]}}function Kge(e){e.regex;const t=e.COMMENT(/\(;/,/;\)/);t.contains.push("self");const n=e.COMMENT(/;;/,/$/),r=["anyfunc","block","br","br_if","br_table","call","call_indirect","data","drop","elem","else","end","export","func","global.get","global.set","local.get","local.set","local.tee","get_global","get_local","global","if","import","local","loop","memory","memory.grow","memory.size","module","mut","nop","offset","param","result","return","select","set_global","set_local","start","table","tee_local","then","type","unreachable"],a={begin:[/(?:func|call|call_indirect)/,/\s+/,/\$[^\s)]+/],className:{1:"keyword",3:"title.function"}},s={className:"variable",begin:/\$[\w_]+/},o={match:/(\((?!;)|\))+/,className:"punctuation",relevance:0},l={className:"number",relevance:0,match:/[+-]?\b(?:\d(?:_?\d)*(?:\.\d(?:_?\d)*)?(?:[eE][+-]?\d(?:_?\d)*)?|0x[\da-fA-F](?:_?[\da-fA-F])*(?:\.[\da-fA-F](?:_?[\da-fA-D])*)?(?:[pP][+-]?\d(?:_?\d)*)?)\b|\binf\b|\bnan(?::0x[\da-fA-F](?:_?[\da-fA-D])*)?\b/},c={match:/(i32|i64|f32|f64)(?!\.)/,className:"type"},u={className:"keyword",match:/\b(f32|f64|i32|i64)(?:\.(?:abs|add|and|ceil|clz|const|convert_[su]\/i(?:32|64)|copysign|ctz|demote\/f64|div(?:_[su])?|eqz?|extend_[su]\/i32|floor|ge(?:_[su])?|gt(?:_[su])?|le(?:_[su])?|load(?:(?:8|16|32)_[su])?|lt(?:_[su])?|max|min|mul|nearest|neg?|or|popcnt|promote\/f32|reinterpret\/[fi](?:32|64)|rem_[su]|rot[lr]|shl|shr_[su]|store(?:8|16|32)?|sqrt|sub|trunc(?:_[su]\/f(?:32|64))?|wrap\/i64|xor))\b/};return{name:"WebAssembly",keywords:{$pattern:/[\w.]+/,keyword:r},contains:[n,t,{match:[/(?:offset|align)/,/\s*/,/=/],className:{1:"keyword",3:"operator"}},s,o,a,e.QUOTE_STRING_MODE,c,u,l]}}function Vge(e){const t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r=/[\p{L}0-9._:-]+/u,a={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},s={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},o=e.inherit(s,{begin:/\(/,end:/\)/}),l=e.inherit(e.APOS_STRING_MODE,{className:"string"}),c=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),u={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:r,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[a]},{begin:/'/,end:/'/,contains:[a]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[s,c,l,o,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[s,o,c,l]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},a,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[c]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[u],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[u],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:t.concat(/</,t.lookahead(t.concat(n,t.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:u}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}function Yge(e){const t="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",r={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},a={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},s={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},o={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,a]},l=e.inherit(o,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),h={className:"number",begin:"\\b"+"[0-9]{4}(-[0-9][0-9]){0,2}"+"([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?"+"(\\.[0-9]*)?"+"([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?"+"\\b"},p={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},g={begin:/\{/,end:/\}/,contains:[p],illegal:"\\n",relevance:0},m={begin:"\\[",end:"\\]",contains:[p],illegal:"\\n",relevance:0},y=[r,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},h,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},g,m,s,o],v=[...y];return v.pop(),v.push(l),p.contains=v,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:y}}const Xge={arduino:Cme,bash:Tme,c:Ome,cpp:Pme,csharp:Rme,css:Ume,diff:Wme,go:Hme,graphql:Gme,ini:qme,java:Kme,javascript:Zme,json:tge,kotlin:rge,less:dge,lua:fge,makefile:hge,markdown:pge,objectivec:mge,perl:gge,php:vge,"php-template":yge,plaintext:bge,python:xge,"python-repl":wge,r:kge,ruby:Sge,rust:jge,scss:Rge,shell:Mge,sql:Ige,swift:Wge,typescript:Gge,vbnet:qge,wasm:Kge,xml:Vge,yaml:Yge};function GI(e){return e instanceof Map?e.clear=e.delete=e.set=function(){throw new Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=function(){throw new Error("set is read-only")}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach(t=>{const n=e[t],r=typeof n;(r==="object"||r==="function")&&!Object.isFrozen(n)&&GI(n)}),e}class w_{constructor(t){t.data===void 0&&(t.data={}),this.data=t.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function qI(e){return e.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function pi(e,...t){const n=Object.create(null);for(const r in e)n[r]=e[r];return t.forEach(function(r){for(const a in r)n[a]=r[a]}),n}const Qge="</span>",k_=e=>!!e.scope,Zge=(e,{prefix:t})=>{if(e.startsWith("language:"))return e.replace("language:","language-");if(e.includes(".")){const n=e.split(".");return[`${t}${n.shift()}`,...n.map((r,a)=>`${r}${"_".repeat(a+1)}`)].join(" ")}return`${t}${e}`};class Jge{constructor(t,n){this.buffer="",this.classPrefix=n.classPrefix,t.walk(this)}addText(t){this.buffer+=qI(t)}openNode(t){if(!k_(t))return;const n=Zge(t.scope,{prefix:this.classPrefix});this.span(n)}closeNode(t){k_(t)&&(this.buffer+=Qge)}value(){return this.buffer}span(t){this.buffer+=`<span class="${t}">`}}const S_=(e={})=>{const t={children:[]};return Object.assign(t,e),t};class R0{constructor(){this.rootNode=S_(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(t){this.top.children.push(t)}openNode(t){const n=S_({scope:t});this.add(n),this.stack.push(n)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(t){return this.constructor._walk(t,this.rootNode)}static _walk(t,n){return typeof n=="string"?t.addText(n):n.children&&(t.openNode(n),n.children.forEach(r=>this._walk(t,r)),t.closeNode(n)),t}static _collapse(t){typeof t!="string"&&t.children&&(t.children.every(n=>typeof n=="string")?t.children=[t.children.join("")]:t.children.forEach(n=>{R0._collapse(n)}))}}class eve extends R0{constructor(t){super(),this.options=t}addText(t){t!==""&&this.add(t)}startScope(t){this.openNode(t)}endScope(){this.closeNode()}__addSublanguage(t,n){const r=t.root;n&&(r.scope=`language:${n}`),this.add(r)}toHTML(){return new Jge(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function Wu(e){return e?typeof e=="string"?e:e.source:null}function KI(e){return Vs("(?=",e,")")}function tve(e){return Vs("(?:",e,")*")}function nve(e){return Vs("(?:",e,")?")}function Vs(...e){return e.map(n=>Wu(n)).join("")}function rve(e){const t=e[e.length-1];return typeof t=="object"&&t.constructor===Object?(e.splice(e.length-1,1),t):{}}function M0(...e){return"("+(rve(e).capture?"":"?:")+e.map(r=>Wu(r)).join("|")+")"}function VI(e){return new RegExp(e.toString()+"|").exec("").length-1}function ave(e,t){const n=e&&e.exec(t);return n&&n.index===0}const ive=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function I0(e,{joinWith:t}){let n=0;return e.map(r=>{n+=1;const a=n;let s=Wu(r),o="";for(;s.length>0;){const l=ive.exec(s);if(!l){o+=s;break}o+=s.substring(0,l.index),s=s.substring(l.index+l[0].length),l[0][0]==="\\"&&l[1]?o+="\\"+String(Number(l[1])+a):(o+=l[0],l[0]==="("&&n++)}return o}).map(r=>`(${r})`).join(t)}const sve=/\b\B/,YI="[a-zA-Z]\\w*",$0="[a-zA-Z_]\\w*",XI="\\b\\d+(\\.\\d+)?",QI="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",ZI="\\b(0b[01]+)",ove="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",lve=(e={})=>{const t=/^#![ ]*\//;return e.binary&&(e.begin=Vs(t,/.*\b/,e.binary,/\b.*/)),pi({scope:"meta",begin:t,end:/$/,relevance:0,"on:begin":(n,r)=>{n.index!==0&&r.ignoreMatch()}},e)},Hu={begin:"\\\\[\\s\\S]",relevance:0},cve={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[Hu]},uve={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[Hu]},dve={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},Am=function(e,t,n={}){const r=pi({scope:"comment",begin:e,end:t,contains:[]},n);r.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const a=M0("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return r.contains.push({begin:Vs(/[ ]+/,"(",a,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),r},fve=Am("//","$"),hve=Am("/\\*","\\*/"),pve=Am("#","$"),mve={scope:"number",begin:XI,relevance:0},gve={scope:"number",begin:QI,relevance:0},vve={scope:"number",begin:ZI,relevance:0},yve={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[Hu,{begin:/\[/,end:/\]/,relevance:0,contains:[Hu]}]},bve={scope:"title",begin:YI,relevance:0},xve={scope:"title",begin:$0,relevance:0},wve={begin:"\\.\\s*"+$0,relevance:0},kve=function(e){return Object.assign(e,{"on:begin":(t,n)=>{n.data._beginMatch=t[1]},"on:end":(t,n)=>{n.data._beginMatch!==t[1]&&n.ignoreMatch()}})};var mf=Object.freeze({__proto__:null,APOS_STRING_MODE:cve,BACKSLASH_ESCAPE:Hu,BINARY_NUMBER_MODE:vve,BINARY_NUMBER_RE:ZI,COMMENT:Am,C_BLOCK_COMMENT_MODE:hve,C_LINE_COMMENT_MODE:fve,C_NUMBER_MODE:gve,C_NUMBER_RE:QI,END_SAME_AS_BEGIN:kve,HASH_COMMENT_MODE:pve,IDENT_RE:YI,MATCH_NOTHING_RE:sve,METHOD_GUARD:wve,NUMBER_MODE:mve,NUMBER_RE:XI,PHRASAL_WORDS_MODE:dve,QUOTE_STRING_MODE:uve,REGEXP_MODE:yve,RE_STARTERS_RE:ove,SHEBANG:lve,TITLE_MODE:bve,UNDERSCORE_IDENT_RE:$0,UNDERSCORE_TITLE_MODE:xve});function Sve(e,t){e.input[e.index-1]==="."&&t.ignoreMatch()}function jve(e,t){e.className!==void 0&&(e.scope=e.className,delete e.className)}function Nve(e,t){t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",e.__beforeBegin=Sve,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords,e.relevance===void 0&&(e.relevance=0))}function Eve(e,t){Array.isArray(e.illegal)&&(e.illegal=M0(...e.illegal))}function _ve(e,t){if(e.match){if(e.begin||e.end)throw new Error("begin & end are not supported with match");e.begin=e.match,delete e.match}}function Ave(e,t){e.relevance===void 0&&(e.relevance=1)}const Cve=(e,t)=>{if(!e.beforeMatch)return;if(e.starts)throw new Error("beforeMatch cannot be used with starts");const n=Object.assign({},e);Object.keys(e).forEach(r=>{delete e[r]}),e.keywords=n.keywords,e.begin=Vs(n.beforeMatch,KI(n.begin)),e.starts={relevance:0,contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch},Tve=["of","and","for","in","not","or","if","then","parent","list","value"],Ove="keyword";function JI(e,t,n=Ove){const r=Object.create(null);return typeof e=="string"?a(n,e.split(" ")):Array.isArray(e)?a(n,e):Object.keys(e).forEach(function(s){Object.assign(r,JI(e[s],t,s))}),r;function a(s,o){t&&(o=o.map(l=>l.toLowerCase())),o.forEach(function(l){const c=l.split("|");r[c[0]]=[s,Pve(c[0],c[1])]})}}function Pve(e,t){return t?Number(t):Rve(e)?0:1}function Rve(e){return Tve.includes(e.toLowerCase())}const j_={},As=e=>{console.error(e)},N_=(e,...t)=>{console.log(`WARN: ${e}`,...t)},lo=(e,t)=>{j_[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),j_[`${e}/${t}`]=!0)},fp=new Error;function e$(e,t,{key:n}){let r=0;const a=e[n],s={},o={};for(let l=1;l<=t.length;l++)o[l+r]=a[l],s[l+r]=!0,r+=VI(t[l-1]);e[n]=o,e[n]._emit=s,e[n]._multi=!0}function Mve(e){if(Array.isArray(e.begin)){if(e.skip||e.excludeBegin||e.returnBegin)throw As("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),fp;if(typeof e.beginScope!="object"||e.beginScope===null)throw As("beginScope must be object"),fp;e$(e,e.begin,{key:"beginScope"}),e.begin=I0(e.begin,{joinWith:""})}}function Ive(e){if(Array.isArray(e.end)){if(e.skip||e.excludeEnd||e.returnEnd)throw As("skip, excludeEnd, returnEnd not compatible with endScope: {}"),fp;if(typeof e.endScope!="object"||e.endScope===null)throw As("endScope must be object"),fp;e$(e,e.end,{key:"endScope"}),e.end=I0(e.end,{joinWith:""})}}function $ve(e){e.scope&&typeof e.scope=="object"&&e.scope!==null&&(e.beginScope=e.scope,delete e.scope)}function Lve(e){$ve(e),typeof e.beginScope=="string"&&(e.beginScope={_wrap:e.beginScope}),typeof e.endScope=="string"&&(e.endScope={_wrap:e.endScope}),Mve(e),Ive(e)}function Dve(e){function t(o,l){return new RegExp(Wu(o),"m"+(e.case_insensitive?"i":"")+(e.unicodeRegex?"u":"")+(l?"g":""))}class n{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(l,c){c.position=this.position++,this.matchIndexes[this.matchAt]=c,this.regexes.push([c,l]),this.matchAt+=VI(l)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const l=this.regexes.map(c=>c[1]);this.matcherRe=t(I0(l,{joinWith:"|"}),!0),this.lastIndex=0}exec(l){this.matcherRe.lastIndex=this.lastIndex;const c=this.matcherRe.exec(l);if(!c)return null;const u=c.findIndex((f,h)=>h>0&&f!==void 0),d=this.matchIndexes[u];return c.splice(0,u),Object.assign(c,d)}}class r{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(l){if(this.multiRegexes[l])return this.multiRegexes[l];const c=new n;return this.rules.slice(l).forEach(([u,d])=>c.addRule(u,d)),c.compile(),this.multiRegexes[l]=c,c}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(l,c){this.rules.push([l,c]),c.type==="begin"&&this.count++}exec(l){const c=this.getMatcher(this.regexIndex);c.lastIndex=this.lastIndex;let u=c.exec(l);if(this.resumingScanAtSamePosition()&&!(u&&u.index===this.lastIndex)){const d=this.getMatcher(0);d.lastIndex=this.lastIndex+1,u=d.exec(l)}return u&&(this.regexIndex+=u.position+1,this.regexIndex===this.count&&this.considerAll()),u}}function a(o){const l=new r;return o.contains.forEach(c=>l.addRule(c.begin,{rule:c,type:"begin"})),o.terminatorEnd&&l.addRule(o.terminatorEnd,{type:"end"}),o.illegal&&l.addRule(o.illegal,{type:"illegal"}),l}function s(o,l){const c=o;if(o.isCompiled)return c;[jve,_ve,Lve,Cve].forEach(d=>d(o,l)),e.compilerExtensions.forEach(d=>d(o,l)),o.__beforeBegin=null,[Nve,Eve,Ave].forEach(d=>d(o,l)),o.isCompiled=!0;let u=null;return typeof o.keywords=="object"&&o.keywords.$pattern&&(o.keywords=Object.assign({},o.keywords),u=o.keywords.$pattern,delete o.keywords.$pattern),u=u||/\w+/,o.keywords&&(o.keywords=JI(o.keywords,e.case_insensitive)),c.keywordPatternRe=t(u,!0),l&&(o.begin||(o.begin=/\B|\b/),c.beginRe=t(c.begin),!o.end&&!o.endsWithParent&&(o.end=/\B|\b/),o.end&&(c.endRe=t(c.end)),c.terminatorEnd=Wu(c.end)||"",o.endsWithParent&&l.terminatorEnd&&(c.terminatorEnd+=(o.end?"|":"")+l.terminatorEnd)),o.illegal&&(c.illegalRe=t(o.illegal)),o.contains||(o.contains=[]),o.contains=[].concat(...o.contains.map(function(d){return Bve(d==="self"?o:d)})),o.contains.forEach(function(d){s(d,c)}),o.starts&&s(o.starts,l),c.matcher=a(c),c}if(e.compilerExtensions||(e.compilerExtensions=[]),e.contains&&e.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return e.classNameAliases=pi(e.classNameAliases||{}),s(e)}function t$(e){return e?e.endsWithParent||t$(e.starts):!1}function Bve(e){return e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map(function(t){return pi(e,{variants:null},t)})),e.cachedVariants?e.cachedVariants:t$(e)?pi(e,{starts:e.starts?pi(e.starts):null}):Object.isFrozen(e)?pi(e):e}var zve="11.11.2";class Fve extends Error{constructor(t,n){super(t),this.name="HTMLInjectionError",this.html=n}}const cv=qI,E_=pi,__=Symbol("nomatch"),Uve=7,n$=function(e){const t=Object.create(null),n=Object.create(null),r=[];let a=!0;const s="Could not find the language '{}', did you forget to load/include a language module?",o={disableAutodetect:!0,name:"Plain text",contains:[]};let l={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:eve};function c(D){return l.noHighlightRe.test(D)}function u(D){let W=D.className+" ";W+=D.parentNode?D.parentNode.className:"";const R=l.languageDetectRe.exec(W);if(R){const B=_(R[1]);return B||(N_(s.replace("{}",R[1])),N_("Falling back to no-highlight mode for this block.",D)),B?R[1]:"no-highlight"}return W.split(/\s+/).find(B=>c(B)||_(B))}function d(D,W,R){let B="",A="";typeof W=="object"?(B=D,R=W.ignoreIllegals,A=W.language):(lo("10.7.0","highlight(lang, code, ...args) has been deprecated."),lo("10.7.0",`Please use highlight(code, options) instead.
|
|
197
|
+
https://github.com/highlightjs/highlight.js/issues/2277`),A=D,B=W),R===void 0&&(R=!0);const J={code:B,language:A};L("before:highlight",J);const F=J.result?J.result:f(J.language,J.code,R);return F.code=J.code,L("after:highlight",F),F}function f(D,W,R,B){const A=Object.create(null);function J(q,Z){return q.keywords[Z]}function F(){if(!fe.keywords){Be.addText(Oe);return}let q=0;fe.keywordPatternRe.lastIndex=0;let Z=fe.keywordPatternRe.exec(Oe),se="";for(;Z;){se+=Oe.substring(q,Z.index);const he=je.case_insensitive?Z[0].toLowerCase():Z[0],Ne=J(fe,he);if(Ne){const[$e,Dt]=Ne;if(Be.addText(se),se="",A[he]=(A[he]||0)+1,A[he]<=Uve&&(Ye+=Dt),$e.startsWith("_"))se+=Z[0];else{const Ae=je.classNameAliases[$e]||$e;de(Z[0],Ae)}}else se+=Z[0];q=fe.keywordPatternRe.lastIndex,Z=fe.keywordPatternRe.exec(Oe)}se+=Oe.substring(q),Be.addText(se)}function $(){if(Oe==="")return;let q=null;if(typeof fe.subLanguage=="string"){if(!t[fe.subLanguage]){Be.addText(Oe);return}q=f(fe.subLanguage,Oe,!0,nt[fe.subLanguage]),nt[fe.subLanguage]=q._top}else q=p(Oe,fe.subLanguage.length?fe.subLanguage:null);fe.relevance>0&&(Ye+=q.relevance),Be.__addSublanguage(q._emitter,q.language)}function ie(){fe.subLanguage!=null?$():F(),Oe=""}function de(q,Z){q!==""&&(Be.startScope(Z),Be.addText(q),Be.endScope())}function me(q,Z){let se=1;const he=Z.length-1;for(;se<=he;){if(!q._emit[se]){se++;continue}const Ne=je.classNameAliases[q[se]]||q[se],$e=Z[se];Ne?de($e,Ne):(Oe=$e,F(),Oe=""),se++}}function Te(q,Z){return q.scope&&typeof q.scope=="string"&&Be.openNode(je.classNameAliases[q.scope]||q.scope),q.beginScope&&(q.beginScope._wrap?(de(Oe,je.classNameAliases[q.beginScope._wrap]||q.beginScope._wrap),Oe=""):q.beginScope._multi&&(me(q.beginScope,Z),Oe="")),fe=Object.create(q,{parent:{value:fe}}),fe}function Q(q,Z,se){let he=ave(q.endRe,se);if(he){if(q["on:end"]){const Ne=new w_(q);q["on:end"](Z,Ne),Ne.isMatchIgnored&&(he=!1)}if(he){for(;q.endsParent&&q.parent;)q=q.parent;return q}}if(q.endsWithParent)return Q(q.parent,Z,se)}function X(q){return fe.matcher.regexIndex===0?(Oe+=q[0],1):(Lt=!0,0)}function ae(q){const Z=q[0],se=q.rule,he=new w_(se),Ne=[se.__beforeBegin,se["on:begin"]];for(const $e of Ne)if($e&&($e(q,he),he.isMatchIgnored))return X(Z);return se.skip?Oe+=Z:(se.excludeBegin&&(Oe+=Z),ie(),!se.returnBegin&&!se.excludeBegin&&(Oe=Z)),Te(se,q),se.returnBegin?0:Z.length}function ce(q){const Z=q[0],se=W.substring(q.index),he=Q(fe,q,se);if(!he)return __;const Ne=fe;fe.endScope&&fe.endScope._wrap?(ie(),de(Z,fe.endScope._wrap)):fe.endScope&&fe.endScope._multi?(ie(),me(fe.endScope,q)):Ne.skip?Oe+=Z:(Ne.returnEnd||Ne.excludeEnd||(Oe+=Z),ie(),Ne.excludeEnd&&(Oe=Z));do fe.scope&&Be.closeNode(),!fe.skip&&!fe.subLanguage&&(Ye+=fe.relevance),fe=fe.parent;while(fe!==he.parent);return he.starts&&Te(he.starts,q),Ne.returnEnd?0:Z.length}function H(){const q=[];for(let Z=fe;Z!==je;Z=Z.parent)Z.scope&&q.unshift(Z.scope);q.forEach(Z=>Be.openNode(Z))}let xe={};function we(q,Z){const se=Z&&Z[0];if(Oe+=q,se==null)return ie(),0;if(xe.type==="begin"&&Z.type==="end"&&xe.index===Z.index&&se===""){if(Oe+=W.slice(Z.index,Z.index+1),!a){const he=new Error(`0 width match regex (${D})`);throw he.languageName=D,he.badRule=xe.rule,he}return 1}if(xe=Z,Z.type==="begin")return ae(Z);if(Z.type==="illegal"&&!R){const he=new Error('Illegal lexeme "'+se+'" for mode "'+(fe.scope||"<unnamed>")+'"');throw he.mode=fe,he}else if(Z.type==="end"){const he=ce(Z);if(he!==__)return he}if(Z.type==="illegal"&&se==="")return Z.index===W.length||(Oe+=`
|
|
198
|
+
`),1;if(gt>1e5&>>Z.index*3)throw new Error("potential infinite loop, way more iterations than matches");return Oe+=se,se.length}const je=_(D);if(!je)throw As(s.replace("{}",D)),new Error('Unknown language: "'+D+'"');const ge=Dve(je);let Ie="",fe=B||ge;const nt={},Be=new l.__emitter(l);H();let Oe="",Ye=0,rt=0,gt=0,Lt=!1;try{if(je.__emitTokens)je.__emitTokens(W,Be);else{for(fe.matcher.considerAll();;){gt++,Lt?Lt=!1:fe.matcher.considerAll(),fe.matcher.lastIndex=rt;const q=fe.matcher.exec(W);if(!q)break;const Z=W.substring(rt,q.index),se=we(Z,q);rt=q.index+se}we(W.substring(rt))}return Be.finalize(),Ie=Be.toHTML(),{language:D,value:Ie,relevance:Ye,illegal:!1,_emitter:Be,_top:fe}}catch(q){if(q.message&&q.message.includes("Illegal"))return{language:D,value:cv(W),illegal:!0,relevance:0,_illegalBy:{message:q.message,index:rt,context:W.slice(rt-100,rt+100),mode:q.mode,resultSoFar:Ie},_emitter:Be};if(a)return{language:D,value:cv(W),illegal:!1,relevance:0,errorRaised:q,_emitter:Be,_top:fe};throw q}}function h(D){const W={value:cv(D),illegal:!1,relevance:0,_top:o,_emitter:new l.__emitter(l)};return W._emitter.addText(D),W}function p(D,W){W=W||l.languages||Object.keys(t);const R=h(D),B=W.filter(_).filter(C).map(ie=>f(ie,D,!1));B.unshift(R);const A=B.sort((ie,de)=>{if(ie.relevance!==de.relevance)return de.relevance-ie.relevance;if(ie.language&&de.language){if(_(ie.language).supersetOf===de.language)return 1;if(_(de.language).supersetOf===ie.language)return-1}return 0}),[J,F]=A,$=J;return $.secondBest=F,$}function g(D,W,R){const B=W&&n[W]||R;D.classList.add("hljs"),D.classList.add(`language-${B}`)}function m(D){let W=null;const R=u(D);if(c(R))return;if(L("before:highlightElement",{el:D,language:R}),D.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",D);return}if(D.children.length>0&&(l.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(D)),l.throwUnescapedHTML))throw new Fve("One of your code blocks includes unescaped HTML.",D.innerHTML);W=D;const B=W.textContent,A=R?d(B,{language:R,ignoreIllegals:!0}):p(B);D.innerHTML=A.value,D.dataset.highlighted="yes",g(D,R,A.language),D.result={language:A.language,re:A.relevance,relevance:A.relevance},A.secondBest&&(D.secondBest={language:A.secondBest.language,relevance:A.secondBest.relevance}),L("after:highlightElement",{el:D,result:A,text:B})}function y(D){l=E_(l,D)}const v=()=>{j(),lo("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function S(){j(),lo("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let w=!1;function j(){function D(){j()}if(document.readyState==="loading"){w||window.addEventListener("DOMContentLoaded",D,!1),w=!0;return}document.querySelectorAll(l.cssSelector).forEach(m)}function k(D,W){let R=null;try{R=W(e)}catch(B){if(As("Language definition for '{}' could not be registered.".replace("{}",D)),a)As(B);else throw B;R=o}R.name||(R.name=D),t[D]=R,R.rawDefinition=W.bind(null,e),R.aliases&&T(R.aliases,{languageName:D})}function b(D){delete t[D];for(const W of Object.keys(n))n[W]===D&&delete n[W]}function N(){return Object.keys(t)}function _(D){return D=(D||"").toLowerCase(),t[D]||t[n[D]]}function T(D,{languageName:W}){typeof D=="string"&&(D=[D]),D.forEach(R=>{n[R.toLowerCase()]=W})}function C(D){const W=_(D);return W&&!W.disableAutodetect}function O(D){D["before:highlightBlock"]&&!D["before:highlightElement"]&&(D["before:highlightElement"]=W=>{D["before:highlightBlock"](Object.assign({block:W.el},W))}),D["after:highlightBlock"]&&!D["after:highlightElement"]&&(D["after:highlightElement"]=W=>{D["after:highlightBlock"](Object.assign({block:W.el},W))})}function P(D){O(D),r.push(D)}function z(D){const W=r.indexOf(D);W!==-1&&r.splice(W,1)}function L(D,W){const R=D;r.forEach(function(B){B[R]&&B[R](W)})}function M(D){return lo("10.7.0","highlightBlock will be removed entirely in v12.0"),lo("10.7.0","Please use highlightElement now."),m(D)}Object.assign(e,{highlight:d,highlightAuto:p,highlightAll:j,highlightElement:m,highlightBlock:M,configure:y,initHighlighting:v,initHighlightingOnLoad:S,registerLanguage:k,unregisterLanguage:b,listLanguages:N,getLanguage:_,registerAliases:T,autoDetection:C,inherit:E_,addPlugin:P,removePlugin:z}),e.debugMode=function(){a=!1},e.safeMode=function(){a=!0},e.versionString=zve,e.regex={concat:Vs,lookahead:KI,either:M0,optional:nve,anyNumberOfTimes:tve};for(const D in mf)typeof mf[D]=="object"&&GI(mf[D]);return Object.assign(e,mf),e},gl=n$({});gl.newInstance=()=>n$({});var Wve=gl;gl.HighlightJS=gl;gl.default=gl;const Hve=tt(Wve),A_={},Gve="hljs-";function qve(e){const t=Hve.newInstance();return e&&s(e),{highlight:n,highlightAuto:r,listLanguages:a,register:s,registerAlias:o,registered:l};function n(c,u,d){const f=d||A_,h=typeof f.prefix=="string"?f.prefix:Gve;if(!t.getLanguage(c))throw new Error("Unknown language: `"+c+"` is not registered");t.configure({__emitter:Kve,classPrefix:h});const p=t.highlight(u,{ignoreIllegals:!0,language:c});if(p.errorRaised)throw new Error("Could not highlight with `Highlight.js`",{cause:p.errorRaised});const g=p._emitter.root,m=g.data;return m.language=p.language,m.relevance=p.relevance,g}function r(c,u){const f=(u||A_).subset||a();let h=-1,p=0,g;for(;++h<f.length;){const m=f[h];if(!t.getLanguage(m))continue;const y=n(m,c,u);y.data&&y.data.relevance!==void 0&&y.data.relevance>p&&(p=y.data.relevance,g=y)}return g||{type:"root",children:[],data:{language:void 0,relevance:p}}}function a(){return t.listLanguages()}function s(c,u){if(typeof c=="string")t.registerLanguage(c,u);else{let d;for(d in c)Object.hasOwn(c,d)&&t.registerLanguage(d,c[d])}}function o(c,u){if(typeof c=="string")t.registerAliases(typeof u=="string"?u:[...u],{languageName:c});else{let d;for(d in c)if(Object.hasOwn(c,d)){const f=c[d];t.registerAliases(typeof f=="string"?f:[...f],{languageName:d})}}}function l(c){return!!t.getLanguage(c)}}class Kve{constructor(t){this.options=t,this.root={type:"root",children:[],data:{language:void 0,relevance:0}},this.stack=[this.root]}addText(t){if(t==="")return;const n=this.stack[this.stack.length-1],r=n.children[n.children.length-1];r&&r.type==="text"?r.value+=t:n.children.push({type:"text",value:t})}startScope(t){this.openNode(String(t))}endScope(){this.closeNode()}__addSublanguage(t,n){const r=this.stack[this.stack.length-1],a=t.root.children;n?r.children.push({type:"element",tagName:"span",properties:{className:[n]},children:a}):r.children.push(...a)}openNode(t){const n=this,r=t.split(".").map(function(o,l){return l?o+"_".repeat(l):n.options.classPrefix+o}),a=this.stack[this.stack.length-1],s={type:"element",tagName:"span",properties:{className:r},children:[]};a.children.push(s),this.stack.push(s)}closeNode(){this.stack.pop()}finalize(){}toHTML(){return""}}const Vve={};function Yve(e){const t=e||Vve,n=t.aliases,r=t.detect||!1,a=t.languages||Xge,s=t.plainText,o=t.prefix,l=t.subset;let c="hljs";const u=qve(a);if(n&&u.registerAlias(n),o){const d=o.indexOf("-");c=d===-1?o:o.slice(0,d)}return function(d,f){_m(d,"element",function(h,p,g){if(h.tagName!=="code"||!g||g.type!=="element"||g.tagName!=="pre")return;const m=Xve(h);if(m===!1||!m&&!r||m&&s&&s.includes(m))return;Array.isArray(h.properties.className)||(h.properties.className=[]),h.properties.className.includes(c)||h.properties.className.unshift(c);const y=wme(h,{whitespace:"pre"});let v;try{v=m?u.highlight(m,y,{prefix:o}):u.highlightAuto(y,{prefix:o,subset:l})}catch(S){const w=S;if(m&&/Unknown language/.test(w.message)){f.message("Cannot highlight as `"+m+"`, it’s not registered",{ancestors:[g,h],cause:w,place:h.position,ruleId:"missing-language",source:"rehype-highlight"});return}throw w}!m&&v.data&&v.data.language&&h.properties.className.push("language-"+v.data.language),v.children.length>0&&(h.children=v.children)})}}function Xve(e){const t=e.properties.className;let n=-1;if(!Array.isArray(t))return;let r;for(;++n<t.length;){const a=String(t[n]);if(a==="no-highlight"||a==="nohighlight")return!1;!r&&a.slice(0,5)==="lang-"&&(r=a.slice(5)),!r&&a.slice(0,9)==="language-"&&(r=a.slice(9))}return r}const hp="[A-Za-z$_][0-9A-Za-z$_]*",r$=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],a$=["true","false","null","undefined","NaN","Infinity"],i$=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],s$=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],o$=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],l$=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","self","global"],c$=[].concat(o$,i$,s$);function Qve(e){const t=e.regex,n=(R,{after:B})=>{const A="</"+R[0].slice(1);return R.input.indexOf(A,B)!==-1},r=hp,a={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(R,B)=>{const A=R[0].length+R.index,J=R.input[A];if(J==="<"||J===","){B.ignoreMatch();return}J===">"&&(n(R,{after:A})||B.ignoreMatch());let F;const $=R.input.substring(A);if(F=$.match(/^\s*=/)){B.ignoreMatch();return}if((F=$.match(/^\s+extends\s+/))&&F.index===0){B.ignoreMatch();return}}},l={$pattern:hp,keyword:r$,literal:a$,built_in:c$,"variable.language":l$},c="[0-9](_?[0-9])*",u=`\\.(${c})`,d="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",f={className:"number",variants:[{begin:`(\\b(${d})((${u})|\\.)?|(${u}))[eE][+-]?(${c})\\b`},{begin:`\\b(${d})\\b((${u})\\b|\\.)?|(${u})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},h={className:"subst",begin:"\\$\\{",end:"\\}",keywords:l,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"xml"}},g={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"css"}},m={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,h]},S={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},w=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,{match:/\$\d+/},f];h.contains=w.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(w)});const j=[].concat(S,h.contains),k=j.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(j)}]),b={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:k},N={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,"(",t.concat(/\./,r),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,r],scope:{1:"keyword",3:"title.class"}}]},_={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...i$,...s$]}},T={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},C={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[b],illegal:/%/},O={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function P(R){return t.concat("(?!",R.join("|"),")")}const z={match:t.concat(/\b/,P([...o$,"super","import","await"].map(R=>`${R}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},L={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},M={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},b]},D="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",W={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(D)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[b]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:k,CLASS_REFERENCE:_},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),T,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,S,{match:/\$\d+/},f,_,{scope:"attr",match:r+t.lookahead(":"),relevance:0},W,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[S,e.REGEXP_MODE,{className:"function",begin:D,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:k}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:a.begin,end:a.end},{match:s},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0,contains:["self"]}]}]},C,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[b,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},L,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[b]},z,O,N,M,{match:/\$[(.]/}]}}function C_(e){const t=e.regex,n=Qve(e),r=hp,a=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],s={begin:[/namespace/,/\s+/,e.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},o={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:a},contains:[n.exports.CLASS_REFERENCE]},l={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},c=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],u={$pattern:hp,keyword:r$.concat(c),literal:a$,built_in:c$.concat(a),"variable.language":l$},d={className:"meta",begin:"@"+r},f=(m,y,v)=>{const S=m.contains.findIndex(w=>w.label===y);if(S===-1)throw new Error("can not find mode to replace");m.contains.splice(S,1,v)};Object.assign(n.keywords,u),n.exports.PARAMS_CONTAINS.push(d);const h=n.contains.find(m=>m.scope==="attr"),p=Object.assign({},h,{match:t.concat(r,t.lookahead(/\s*\?:/))});n.exports.PARAMS_CONTAINS.push([n.exports.CLASS_REFERENCE,h,p]),n.contains=n.contains.concat([d,s,o,p]),f(n,"shebang",e.SHEBANG()),f(n,"use_strict",l);const g=n.contains.find(m=>m.label==="func.def");return g.relevance=0,Object.assign(n,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),n}const T_="[A-Za-z$_][0-9A-Za-z$_]*",Zve=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],Jve=["true","false","null","undefined","NaN","Infinity"],u$=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],d$=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],f$=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],eye=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","self","global"],tye=[].concat(f$,u$,d$);function O_(e){const t=e.regex,n=(R,{after:B})=>{const A="</"+R[0].slice(1);return R.input.indexOf(A,B)!==-1},r=T_,a={begin:"<>",end:"</>"},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(R,B)=>{const A=R[0].length+R.index,J=R.input[A];if(J==="<"||J===","){B.ignoreMatch();return}J===">"&&(n(R,{after:A})||B.ignoreMatch());let F;const $=R.input.substring(A);if(F=$.match(/^\s*=/)){B.ignoreMatch();return}if((F=$.match(/^\s+extends\s+/))&&F.index===0){B.ignoreMatch();return}}},l={$pattern:T_,keyword:Zve,literal:Jve,built_in:tye,"variable.language":eye},c="[0-9](_?[0-9])*",u=`\\.(${c})`,d="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",f={className:"number",variants:[{begin:`(\\b(${d})((${u})|\\.)?|(${u}))[eE][+-]?(${c})\\b`},{begin:`\\b(${d})\\b((${u})\\b|\\.)?|(${u})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},h={className:"subst",begin:"\\$\\{",end:"\\}",keywords:l,contains:[]},p={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"xml"}},g={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"css"}},m={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[e.BACKSLASH_ESCAPE,h],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[e.BACKSLASH_ESCAPE,h]},S={className:"comment",variants:[e.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:r+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),e.C_BLOCK_COMMENT_MODE,e.C_LINE_COMMENT_MODE]},w=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,{match:/\$\d+/},f];h.contains=w.concat({begin:/\{/,end:/\}/,keywords:l,contains:["self"].concat(w)});const j=[].concat(S,h.contains),k=j.concat([{begin:/(\s*)\(/,end:/\)/,keywords:l,contains:["self"].concat(j)}]),b={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:k},N={variants:[{match:[/class/,/\s+/,r,/\s+/,/extends/,/\s+/,t.concat(r,"(",t.concat(/\./,r),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,r],scope:{1:"keyword",3:"title.class"}}]},_={relevance:0,match:t.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...u$,...d$]}},T={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},C={variants:[{match:[/function/,/\s+/,r,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[b],illegal:/%/},O={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function P(R){return t.concat("(?!",R.join("|"),")")}const z={match:t.concat(/\b/,P([...f$,"super","import","await"].map(R=>`${R}\\s*\\(`)),r,t.lookahead(/\s*\(/)),className:"title.function",relevance:0},L={begin:t.concat(/\./,t.lookahead(t.concat(r,/(?![0-9A-Za-z$_(])/))),end:r,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},M={match:[/get|set/,/\s+/,r,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},b]},D="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+e.UNDERSCORE_IDENT_RE+")\\s*=>",W={match:[/const|var|let/,/\s+/,r,/\s*/,/=\s*/,/(async\s*)?/,t.lookahead(D)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[b]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:l,exports:{PARAMS_CONTAINS:k,CLASS_REFERENCE:_},illegal:/#(?![$_A-Za-z])/,contains:[e.SHEBANG({label:"shebang",binary:"node",relevance:5}),T,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,p,g,m,y,S,{match:/\$\d+/},f,_,{scope:"attr",match:r+t.lookahead(":"),relevance:0},W,{begin:"("+e.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[S,e.REGEXP_MODE,{className:"function",begin:D,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:e.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:k}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:a.begin,end:a.end},{match:s},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0,contains:["self"]}]}]},C,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+e.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[b,e.inherit(e.TITLE_MODE,{begin:r,className:"title.function"})]},{match:/\.\.\./,relevance:0},L,{match:"\\$"+r,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[b]},z,O,N,M,{match:/\$[(.]/}]}}const nye="([-+]?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)|NaN|[-+]?Infinity",rye={scope:"number",match:nye,relevance:0};function aye(e){const t={className:"attr",begin:/(("(\\.|[^\\"\r\n])*")|('(\\.|[^\\'\r\n])*'))(?=\s*:)/,relevance:1.01},n={match:/[{}[\],:]/,className:"punctuation",relevance:0},r=["true","false","null"],a={scope:"literal",beginKeywords:r.join(" ")};return{name:"JSON",aliases:["jsonc","json5"],keywords:{literal:r},contains:[t,n,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,a,rye,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function iye(e){const t=e.regex,n={},r={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{begin:t.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},r]});const a={className:"subst",begin:/\$\(/,end:/\)/,contains:[e.BACKSLASH_ESCAPE]},s=e.inherit(e.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),o={begin:/<<-?\s*(?=\w+)/,starts:{contains:[e.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},l={className:"string",begin:/"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,n,a]};a.contains.push(l);const c={match:/\\"/},u={className:"string",begin:/'/,end:/'/},d={match:/\\'/},f={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},e.NUMBER_MODE,n]},h=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],p=e.SHEBANG({binary:`(${h.join("|")})`,relevance:10}),g={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[e.inherit(e.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},m=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],y=["true","false"],v={match:/(\/[a-z._-]+)+/},S=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],w=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],j=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],k=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:m,literal:y,built_in:[...S,...w,"set","shopt",...j,...k]},contains:[p,e.SHEBANG(),g,f,s,o,v,l,c,u,d,n]}}function P_(e){return{name:"Shell Session",aliases:["console","shellsession"],contains:[{className:"meta.prompt",begin:/^\s{0,3}[./~\w\d[\]()@-]*[>%$#][ ]?/,starts:{end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]}}function R_(e){const t=e.regex,n=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),r=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","lazy","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],l={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:r,built_in:["__import__","abs","aiter","all","anext","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozendict","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","sentinel","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},c={className:"meta",begin:/^(>>>|\.\.\.) /},u={className:"subst",begin:/\{/,end:/\}/,keywords:l,illegal:/#/},d={begin:/\{\{/,relevance:0},f={className:"string",contains:[e.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,c],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,c],relevance:10},{begin:/([fFtT][rR]|[rR][fFtT]|[fFtT])'''/,end:/'''/,contains:[e.BACKSLASH_ESCAPE,c,d,u]},{begin:/([fFtT][rR]|[rR][fFtT]|[fFtT])"""/,end:/"""/,contains:[e.BACKSLASH_ESCAPE,c,d,u]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fFtT][rR]|[rR][fFtT]|[fFtT])'/,end:/'/,contains:[e.BACKSLASH_ESCAPE,d,u]},{begin:/([fFtT][rR]|[rR][fFtT]|[fFtT])"/,end:/"/,contains:[e.BACKSLASH_ESCAPE,d,u]},e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},h="[0-9](_?[0-9])*",p=`(\\b(${h}))?\\.(${h})|\\b(${h})\\.`,g=`\\b|${r.join("|")}`,m={className:"number",relevance:0,variants:[{begin:`(\\b(${h})|(${p}))[eE][+-]?(${h})[jJ]?(?=${g})`},{begin:`(${p})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${g})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${g})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${g})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${g})`},{begin:`\\b(${h})[jJ](?=${g})`}]},y={className:"comment",begin:t.lookahead(/# type:/),end:/$/,keywords:l,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},v={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:l,contains:["self",c,m,f,e.HASH_COMMENT_MODE]}]};return u.contains=[f,m,c],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:l,illegal:/(<\/|\?)|=>/,contains:[c,m,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},f,y,e.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,n],scope:{1:"keyword",3:"title.function"},contains:[v]},{variants:[{match:[/\bclass/,/\s+/,n,/\s*/,/\(\s*/,n,/\s*\)/]},{match:[/\bclass/,/\s+/,n]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[m,v,f]}]}}function M_(e){const t=e.regex,n={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},r={match:/^ {0,3}([-*_])[ \t]*(?:\1[ \t]*){2,}$/},a={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},s={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},o={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},l=/[A-Za-z][A-Za-z0-9+.-]*/,c={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:t.concat(/\[.+?\]\(/,l,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},u={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},d={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},f=e.inherit(u,{contains:[]}),h=e.inherit(d,{contains:[]});u.contains.push(h),d.contains.push(f);let p=[n,c];return[u,d,f,h].forEach(v=>{v.contains=v.contains.concat(p)}),p=p.concat(u,d),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:p},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:p}]}]},n,s,r,u,d,{className:"quote",begin:"^>\\s+",contains:p,end:"$"},a,c,o,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}function I_(e){const t="true false yes no null",n="[\\w#;/?:@&=+$,.~*'()[\\]]+",r={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},a={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},s={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},o={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,a]},l=e.inherit(o,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),h={className:"number",begin:"\\b"+"[0-9]{4}(-[0-9][0-9]){0,2}"+"([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?"+"(\\.[0-9]*)?"+"([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?"+"\\b"},p={end:",",endsWithParent:!0,excludeEnd:!0,keywords:t,relevance:0},g={begin:/\{/,end:/\}/,contains:[p],illegal:"\\n",relevance:0},m={begin:"\\[",end:"\\]",contains:[p],illegal:"\\n",relevance:0},y=[r,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+n},{className:"type",begin:"!<"+n+">"},{className:"type",begin:"!"+n},{className:"type",begin:"!!"+n},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:t,keywords:{literal:t}},h,{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},g,m,s,o],v=[...y];return v.pop(),v.push(l),p.contains=v,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:y}}function sye(e){const t=e.regex;return{name:"Diff",aliases:["patch"],contains:[{className:"meta",relevance:10,match:t.either(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^@@ +-\d+ +\+\d+,\d+ +@@/,/^@@ +-\d+,\d+ +\+\d+ +@@/,/^@@ +-\d+ +\+\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/)},{className:"comment",variants:[{begin:t.either(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/),end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/,end:/$/}]}}function oye(e){const t=e.regex,n=e.COMMENT("--","$"),r={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},a={begin:/"/,end:/"/,contains:[{match:/""/}]},s=["true","false","unknown"],o=["double precision","large object","with timezone","without timezone"],l=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],c=["add","asc","collation","desc","final","first","last","view"],u=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],d=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],f=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],h=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],p=d,g=[...u,...c].filter(k=>!d.includes(k)),m={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},y={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},v={match:t.concat(/\b/,t.either(...p),/\s*\(/),relevance:0,keywords:{built_in:p}};function S(k){return t.concat(/\b/,t.either(...k.map(b=>b.replace(/\s+/,"\\s+"))),/\b/)}const w={scope:"keyword",match:S(h),relevance:0};function j(k,{exceptions:b,when:N}={}){const _=N;return b=b||[],k.map(T=>T.match(/\|\d+$/)||b.includes(T)?T:_(T)?`${T}|0`:T)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:j(g,{when:k=>k.length<3}),literal:s,type:l,built_in:f},contains:[{scope:"type",match:S(o)},w,v,m,r,a,e.C_NUMBER_MODE,e.C_BLOCK_COMMENT_MODE,n,y]}}function $_(e){const t=e.regex,n=t.concat(/[\p{L}_]/u,t.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),r=/[\p{L}0-9._:-]+/u,a={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},s={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},o=e.inherit(s,{begin:/\(/,end:/\)/}),l=e.inherit(e.APOS_STRING_MODE,{className:"string"}),c=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),u={endsWithParent:!0,illegal:/</,relevance:0,contains:[{className:"attr",begin:r,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[a]},{begin:/'/,end:/'/,contains:[a]},{begin:/[^\s"'=<>`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,relevance:10,contains:[s,c,l,o,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin:/<![a-z]/,end:/>/,contains:[s,o,c,l]}]}]},e.COMMENT(/<!--/,/-->/,{relevance:10}),{begin:/<!\[CDATA\[/,end:/\]\]>/,relevance:10},a,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[c]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/<style(?=\s|>)/,end:/>/,keywords:{name:"style"},contains:[u],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:"css"}},{className:"tag",begin:/<script(?=\s|>)/,end:/>/,keywords:{name:"script"},contains:[u],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:"javascript"}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:t.concat(/</,t.lookahead(t.concat(n,t.either(/\/>/,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:n,relevance:0,starts:u}]},{className:"tag",begin:t.concat(/<\//,t.lookahead(t.concat(n,/>/))),contains:[{className:"name",begin:n,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}const lye=e=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:e.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},UNICODE_RANGE:{scope:"number",begin:/\b[Uu]\+[0-9A-Fa-f][0-9A-Fa-f?]{0,5}(-[0-9A-Fa-f][0-9A-Fa-f]{0,5})?/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),cye=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],uye=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],dye=[...cye,...uye],fye=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),hye=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),pye=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),mye=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","corner-bottom-left-shape","corner-bottom-right-shape","corner-shape","corner-top-left-shape","corner-top-right-shape","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","unicode-range","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function gye(e){const t=e.regex,n=lye(e),r={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},a="and or not only",s=/@-?\w[\w]*(-\w+)*/,o="[a-zA-Z-][a-zA-Z0-9_-]*",l=[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[n.BLOCK_COMMENT,r,n.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+o,relevance:0},n.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+hye.join("|")+")"},{begin:":(:)?("+pye.join("|")+")"}]},n.CSS_VARIABLE,{className:"attribute",begin:"\\b("+mye.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[n.BLOCK_COMMENT,n.HEXCOLOR,n.IMPORTANT,n.CSS_NUMBER_MODE,n.UNICODE_RANGE,...l,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...l,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},n.FUNCTION_DISPATCH]},{begin:t.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:s},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:a,attribute:fye.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...l,n.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+dye.join("|")+")\\b"}]}}function L_(e){return{name:"Plain text",aliases:["text","txt"],disableAutodetect:!0}}const vye={ts:C_,typescript:C_,js:O_,javascript:O_,json:aye,bash:iye,shell:P_,sh:P_,python:R_,py:R_,markdown:M_,md:M_,yaml:I_,yml:I_,diff:sye,sql:oye,html:$_,xml:$_,css:gye,text:L_,plaintext:L_};function h$(e){if(e==null)return"";const t=e;return typeof t.value=="string"?t.value:Array.isArray(t.children)?t.children.map(h$).join(""):""}function yye({lang:e,code:t,children:n}){const[r,a]=x.useState(!1),s=async()=>{var o;try{await((o=navigator.clipboard)==null?void 0:o.writeText(t)),a(!0),setTimeout(()=>a(!1),1500)}catch{}};return i.jsxs("div",{className:"md-code-block",children:[i.jsxs("div",{className:"md-code-head",children:[i.jsx("span",{className:"md-code-lang",children:e}),i.jsx("button",{type:"button",className:"md-code-copy",onClick:()=>void s(),children:r?"✓ Copied":"⧉ Copy"})]}),i.jsx("pre",{className:"md-code-pre",children:i.jsx("code",{children:n})})]})}function bye({node:e,children:t}){var o,l,c,u;const n=(o=e==null?void 0:e.children)==null?void 0:o[0],a=((u=(Array.isArray((l=n==null?void 0:n.properties)==null?void 0:l.className)?(c=n==null?void 0:n.properties)==null?void 0:c.className:[]).find(d=>typeof d=="string"&&d.startsWith("language-")))==null?void 0:u.slice(9))??"text",s=x.useMemo(()=>h$(n),[n]);return i.jsx(yye,{lang:a,code:s,children:t})}function D_({text:e}){const t=x.useMemo(()=>({h1:({node:n,...r})=>i.jsx("h1",{className:"md-heading md-h1",...r}),h2:({node:n,...r})=>i.jsx("h2",{className:"md-heading md-h2",...r}),h3:({node:n,...r})=>i.jsx("h3",{className:"md-heading md-h3",...r}),h4:({node:n,...r})=>i.jsx("h4",{className:"md-heading md-h4",...r}),h5:({node:n,...r})=>i.jsx("h5",{className:"md-heading md-h5",...r}),h6:({node:n,...r})=>i.jsx("h6",{className:"md-heading md-h6",...r}),p:({node:n,...r})=>i.jsx("p",{className:"md-para",...r}),ul:({node:n,...r})=>i.jsx("ul",{className:"md-list md-ul",...r}),ol:({node:n,...r})=>i.jsx("ol",{className:"md-list md-ol",...r}),blockquote:({node:n,...r})=>i.jsx("blockquote",{className:"md-quote",...r}),hr:({node:n,...r})=>i.jsx("hr",{className:"md-hr",...r}),table:({node:n,...r})=>i.jsx("table",{className:"md-table",...r}),a:({node:n,...r})=>i.jsx("a",{target:"_blank",rel:"noreferrer",...r}),pre:bye}),[]);return i.jsx("div",{className:"md-root",children:i.jsx(the,{remarkPlugins:[pme],rehypePlugins:[[Yve,{languages:vye}]],components:t,children:e??""})})}const B_=/```([\w+-]*)\n([\s\S]*?)```/g;function xye(e){if(!e.trim())return[];const t=[];let n=null;for(const r of e.split(`
|
|
199
|
+
`))r.startsWith("diff --git ")?(n&&t.push(n),n={path:r.split(" b/").slice(1).join(" b/").replace(/^b\//,""),body:r}):n&&(n.body+=`
|
|
200
|
+
${r}`);return n&&t.push(n),t}function wye(e){return/(^|\n)\s*(PASS|FAIL|✅|❌|✗|✓|\bok\b)/i.test(e)||/\b\d+\s+(passed|failed)\b/i.test(e)||/(tests?|build|suite|checks?)\s+(passed|failed|complete|green|red|ok)/i.test(e)||/(exit code|process exited|finished with)/i.test(e)}function kye(e){return/(^|\n)\s*(FAIL|❌|✗)/i.test(e)||/\bfailed\b/i.test(e)?"fail":/(^|\n)\s*(PASS|✅|✓)/i.test(e)||/\bpassed\b/i.test(e)?"pass":"unknown"}function Sye(e){for(const t of e.split(`
|
|
201
|
+
`)){const n=t.trim();if(n)return n.length>80?`${n.slice(0,77)}…`:n}return"Command output"}const z_=/https?:\/\/[^\s)\]}"'<>]+/i,F_=/(🚀|deploy(?:ed|ment|ing)?|live at|published|available at|open the)/i;function jye(e){return e.replace(/[.,;:!?]+$/,"")}function Nye(e){const t=e.split(`
|
|
202
|
+
`),n=[],r=new Set;for(let a=0;a<t.length;a+=1){const s=t[a];let o=s.match(F_);!o&&a+1<t.length&&/deploy(?:ed|ment|ing)?:\s*$/i.test(s.trim())&&(o=t[a+1].match(F_));const l=s.match(z_)||(a+1<t.length?t[a+1].match(z_):null);if(!o||!l)continue;const c=jye(l[0]);r.has(c)||(r.add(c),n.push({url:c,title:s.trim().slice(0,80)||"Deployment"}))}return n}function uv(e){const t=[],n=[],r=[];B_.lastIndex=0;let a;for(;(a=B_.exec(e))!==null;){const s=(a[1]||"").toLowerCase(),o=a[2];if(s==="diff"||o.includes("diff --git ")){const l=xye(o);l.length>0&&t.push({files:l,summary:`${l.length} file${l.length===1?"":"s"} changed`})}else wye(o)&&n.push({verdict:kye(o),title:Sye(o),body:o})}for(const s of Nye(e))r.push(s);return{diffs:t,results:n,deploys:r}}const Eye=/\x1b(?:\[[0-9;?]*[ -/]*[@-~]|\][^\x07\x1b]*(?:\x07|\x1b\\)|[@-Z\\-_])/g;function U_(e){return e?e.replace(Eye,""):""}const _ye=3e5,Aye=2e3,Cye=/\.(pdf|docx|xlsx|pptx)$/i,Tye=/\.(png|jpe?g|gif|webp|bmp|tiff?)$/i,Oye=/\.(txt|md|markdown|text|log|csv|tsv|json|xml|yaml|yml|html?|htaccess|css|js|mjs|cjs|jsx|ts|tsx|py|rb|go|rs|java|kt|c|h|cpp|cs|php|sh|bash|zsh|sql|ini|toml|cfg|conf|env)$/i;function Pye(e){let t="";for(let r=0;r<e.length;r+=32768)t+=String.fromCharCode(...e.subarray(r,r+32768));return btoa(t)}function Rye(e,t){const n=t.includes(0),r=t.length===0?1:t.reduce((a,s)=>s===9||s===10||s===13||s>=32&&s<127||s>=128?a+1:a,0)/t.length;return!n&&r>.9?{how:"text"}:Cye.test(e)?{how:"binary"}:Oye.test(e)?{how:"text"}:Tye.test(e)?{how:"unsupported",reason:`"${e}" is an image, and this composer only sends text and documents. Save it into the project folder and ask me to describe it — I can read images from there.`}:{how:"unsupported",reason:`"${e}" is not a text file and not a document type I can read. Attach a PDF, DOCX, XLSX, PPTX, or a text/CSV/JSON/Markdown file — or put the file in the project folder and ask me to read it.`}}function Mye(e){const t=["pending","running","done","blocked"].includes(e.status),n=typeof e.note=="string"&&e.note.trim()?e.note.trim():void 0;return{id:e.id,description:e.description,status:t?e.status:"pending",...n?{note:n}:{}}}function Iye(e){return e==="read_file"||e==="glob"||e==="list_dir"?"📖":e==="edit_file"||e==="write_file"?"✏️":e==="run_terminal"||e==="run_cli"?"⚙️":e==="web_search"||e==="read_page"?"🌐":e==="delegate"||e==="spawn_subagents"?"👥":e==="ask_user"?"🤔":"🔧"}function $ye(e){return/^\s*(?:buff|agent-nuvira|nuvira)\b/i.test(e??"")}function Lye(e){const t=String(e??"").trim().toLowerCase();return t==="max"||t==="maximum"||t==="unlimited"||t==="performance"||t==="performance-first"?"max":"balanced"}const Dye={running:"⏳ running",done:"✅ done",failed:"❌ failed",cancelled:"⏹ cancelled",timeout:"⏰ timed out",error:"💥 error"};function wc({diff:e,selectable:t=!1,onCommitAccepted:n,lockedHint:r}){const[a,s]=x.useState(null),o=new Set(a??e.files.map(d=>d.path)),l=d=>{s(f=>{const h=f??e.files.map(p=>p.path);return h.includes(d)?h.filter(p=>p!==d):[...h,d]})},c=e.files.reduce((d,f)=>{var h;return d+(((h=f.body.match(/^\+/gm))==null?void 0:h.length)??0)},0),u=e.files.reduce((d,f)=>{var h;return d+(((h=f.body.match(/^-/gm))==null?void 0:h.length)??0)},0);return i.jsxs("div",{className:"chat-diff-card",children:[i.jsxs("div",{className:"chat-diff-head",children:[i.jsx("span",{className:"chat-diff-icon",children:"🔧"}),i.jsx("span",{className:"chat-diff-title",children:"git diff"}),i.jsxs("span",{className:"chat-diff-meta",children:[e.files.length," file",e.files.length===1?"":"s"," · +",c," −",u]})]}),i.jsx("div",{className:"chat-diff-files",children:e.files.map(d=>{const f=o.has(d.path);return i.jsxs("details",{className:`chat-diff-file${f?"":" chat-diff-file-rejected"}`,open:e.files.length===1,children:[i.jsxs("summary",{className:"chat-diff-file-path",children:[t?i.jsx("button",{type:"button",className:`chat-diff-toggle${f?" chat-diff-toggle-on":""}`,title:f?"Accepted — click to reject":"Rejected — click to accept",onClick:h=>{h.preventDefault(),h.stopPropagation(),l(d.path)},children:f?"✓":"✗"}):null,d.path]}),i.jsx("pre",{className:"chat-diff-body",children:d.body.split(`
|
|
203
|
+
`).map((h,p)=>{const g=h.startsWith("+")?"diff-add":h.startsWith("-")?"diff-del":h.startsWith("@@")?"diff-hunk":"";return i.jsx("div",{className:`chat-diff-line ${g}`,children:h||" "},p)})})]},d.path)})}),t&&n?i.jsxs("div",{className:"chat-diff-actions",children:[i.jsxs("button",{className:"admin-refresh-btn",type:"button",disabled:o.size===0,onClick:()=>n([...o]),children:["Commit accepted (",o.size,")"]}),i.jsx("span",{className:"admin-hint",children:"Only accepted files are committed — the agent re-confirms with a question card."})]}):r?i.jsx("div",{className:"chat-diff-actions",children:i.jsxs("span",{className:"admin-hint chat-diff-locked",children:["🔒 ",r]})}):null]})}function L0({text:e,label:t}){const[n,r]=x.useState(!1),a=async()=>{var s;try{await((s=navigator.clipboard)==null?void 0:s.writeText(e)),r(!0),setTimeout(()=>r(!1),1500)}catch{}};return i.jsx("button",{type:"button",className:"chat-card-copy",title:`Copy ${t}`,onClick:()=>void a(),children:n?"✓ Copied":"⧉ Copy"})}function Bye({result:e}){const t=e.verdict==="pass"?"✅":e.verdict==="fail"?"❌":"📋";return i.jsxs("div",{className:`chat-result-card chat-result-${e.verdict}`,children:[i.jsxs("div",{className:"chat-result-head",children:[i.jsx("span",{className:"chat-result-icon",children:t}),i.jsx("span",{className:"chat-result-title",children:e.title}),i.jsx("span",{className:"chat-result-meta",children:e.verdict}),i.jsx(L0,{text:e.body,label:"result output"})]}),i.jsx("pre",{className:"chat-result-body",children:e.body})]})}function zye({deploy:e}){return i.jsxs("div",{className:"chat-deploy-card",children:[i.jsxs("div",{className:"chat-deploy-head",children:[i.jsx("span",{className:"chat-deploy-icon",children:"🚀"}),i.jsx("span",{className:"chat-deploy-title",children:e.title||"Deployment"}),i.jsx(L0,{text:e.url,label:"deployment URL"})]}),i.jsx("a",{className:"chat-deploy-url",href:e.url,target:"_blank",rel:"noopener noreferrer",children:e.url})]})}function Fye({children:e}){const t=x.useRef(null),n=r=>{if(!t.current)return;const a=Array.from(t.current.querySelectorAll("[data-artifact-card]"));if(a.length===0)return;const s=a.indexOf(document.activeElement);let o=-1;r.key==="ArrowDown"?o=s+1>=a.length?0:s+1:r.key==="ArrowUp"?o=s-1<0?a.length-1:s-1:r.key==="Home"?o=0:r.key==="End"&&(o=a.length-1),o>=0&&o!==s&&(r.preventDefault(),a[o].focus())};return i.jsx("div",{className:"chat-artifacts",ref:t,role:"group","aria-label":"Artifacts",onKeyDown:n,children:e})}function Uye({task:e,onCancel:t}){const n=e.status==="running",r=e.logs.map(a=>U_(a.text)).join(`
|
|
204
|
+
`);return i.jsxs("div",{className:`chat-task-card${n?" chat-task-running":e.status==="done"?" chat-task-ok":" chat-task-err"}`,children:[i.jsxs("div",{className:"chat-task-head",children:[i.jsx("span",{className:"chat-task-icon",children:"⚙️"}),i.jsx("code",{className:"chat-task-cmd",children:e.command}),i.jsx("span",{className:"chat-task-status",title:e.status,children:Dye[e.status]}),!n&&e.exitCode!==null?i.jsxs("span",{className:"chat-task-exit",children:["exit ",e.exitCode]}):null,!n&&e.durationMs!==null?i.jsxs("span",{className:"chat-task-dur",children:[e.durationMs,"ms"]}):null,r?i.jsx(L0,{text:r,label:"task output"}):null,n&&t?i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:t,children:"⏹ Cancel"}):null]}),i.jsx("pre",{className:"chat-task-logs",role:"log",children:e.logs.length>0?e.logs.map((a,s)=>{const o=e.logs[s-1],l=o&&o.stream!==a.stream,c=U_(a.text)||" ";return i.jsxs("div",{children:[l?i.jsx("div",{className:`chat-task-log-sep chat-task-log-sep-${a.stream}`,"aria-hidden":"true",children:a.stream}):null,i.jsx("div",{className:`chat-task-log chat-task-log-${a.stream}`,children:c})]},s)}):i.jsx("div",{className:"admin-hint",children:n?"Waiting for output…":"(no output)"})})]})}function W_({draft:e,onAccept:t,onReject:n,onEdit:r}){const a=e.status??"pending",s=e.markdown.split(`
|
|
205
|
+
`),o=s.findIndex(c=>c.startsWith("# "))>=0?s.findIndex(c=>c.startsWith("# ")):0,l=s.slice(o,o+14).join(`
|
|
206
|
+
`);return i.jsxs("div",{className:`chat-draft-card${a==="saved"?" chat-draft-saved":""}${a==="rejected"?" chat-draft-rejected":""}`,children:[i.jsxs("div",{className:"chat-draft-head",children:[i.jsx("span",{className:"chat-draft-icon",children:"🧠"}),i.jsxs("span",{className:"chat-draft-title",children:["New skill draft: ",e.name]}),i.jsx("span",{className:"chat-draft-meta",children:"pending your review"})]}),i.jsx("p",{className:"chat-draft-desc",children:e.description}),i.jsx("pre",{className:"chat-draft-body",children:l}),a==="saving"?i.jsx("div",{className:"admin-hint",children:"Saving…"}):a==="saved"?i.jsx("div",{className:"admin-hint",children:"✅ Saved — the skill is live: load it in chat or see it in the Agent Hub Skills tab."}):a==="rejected"?i.jsx("div",{className:"admin-hint",children:"🗑️ Rejected — the draft was discarded, nothing was saved."}):i.jsxs("div",{className:"chat-draft-actions",children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>t(e.name),children:"✅ Accept"}),i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>r(e.name),children:"✏️ Edit"}),i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>n(e.name),children:"↩ Reject"})]})]})}function Wye({request:e,onSave:t}){const[n,r]=x.useState({}),[a,s]=x.useState(!1),o=e.missing.every(u=>{var d;return(d=n[u])==null?void 0:d.trim()}),l=e.missing.filter(u=>e.persisted[u]),c=e.missing.filter(u=>!e.persisted[u]);return i.jsxs("div",{className:"chat-secret-card",children:[i.jsxs("div",{className:"chat-secret-head",children:[i.jsx("span",{className:"chat-secret-icon",children:"🔐"}),i.jsxs("span",{className:"chat-secret-title",children:[e.skillName," needs environment variables"]})]}),l.length>0?i.jsxs("div",{className:"chat-secret-persisted",children:["Already configured: ",l.map(u=>i.jsx("code",{children:u},u)).join(", ")]}):null,c.length>0&&!a?i.jsxs("div",{className:"chat-secret-fields",children:[c.map(u=>i.jsxs("div",{className:"chat-secret-row",children:[i.jsxs("label",{className:"chat-secret-label",htmlFor:`secret-${u}`,children:[u,":"]}),i.jsx("input",{id:`secret-${u}`,className:"chat-secret-input",type:"password",placeholder:`Enter ${u} value…`,value:n[u]??"",onChange:d=>r(f=>({...f,[u]:d.target.value}))})]},u)),i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:!o,onClick:()=>{t(n),s(!0)},children:"💾 Save to ~/.buff/.env"})]}):a?i.jsx("div",{className:"admin-hint",children:"✅ Saved — the skill will pick up these values on next load."}):i.jsx("div",{className:"admin-hint",children:"All required env vars are already configured."})]})}function Hye({result:e}){const[t,n]=x.useState(!1),r=e.success?"✅":"❌",a=e.success?"Success":`Failed (exit ${e.exitCode})`,s=e.success?"chat-exec-success":"chat-exec-failure",o=new Date(e.timestamp).toLocaleTimeString();return i.jsxs("div",{className:`chat-exec-card ${s}`,children:[i.jsxs("div",{className:"chat-exec-head",onClick:()=>n(!t),style:{cursor:"pointer"},children:[i.jsx("span",{className:"chat-exec-icon",children:"📜"}),i.jsx("span",{className:"chat-exec-title",children:e.skillName}),i.jsxs("span",{className:"chat-exec-status",children:[r," ",a]}),i.jsxs("span",{className:"chat-exec-meta",children:[e.runtime," · ",e.durationMs,"ms · ",o]}),i.jsx("span",{className:"chat-exec-expand",children:t?"▼":"▶"})]}),t&&i.jsxs("div",{className:"chat-exec-body",children:[e.stdout&&i.jsxs("div",{className:"chat-exec-section",children:[i.jsx("div",{className:"chat-exec-section-title",children:"stdout"}),i.jsx("pre",{className:"chat-exec-output",children:e.stdout})]}),e.stderr&&i.jsxs("div",{className:"chat-exec-section chat-exec-stderr",children:[i.jsx("div",{className:"chat-exec-section-title",children:"stderr"}),i.jsx("pre",{className:"chat-exec-output",children:e.stderr})]}),i.jsxs("div",{className:"chat-exec-details",children:[i.jsxs("span",{children:["Runtime: ",e.runtime]}),i.jsxs("span",{children:["Exit code: ",e.exitCode]}),i.jsxs("span",{children:["Duration: ",e.durationMs,"ms"]})]})]})]})}function Gye(e){return e==="done"?"✅":e==="running"?"🔄":e==="blocked"?"⛔":"⬜"}function qye(e){return e==="done"?"done":e==="running"?"in progress":e==="blocked"?"blocked":"pending"}function H_({plan:e}){const t=e.steps.length,n=e.steps.filter(c=>c.status==="done").length,r=e.steps.filter(c=>c.status==="blocked").length,a=t===0?0:Math.round(n/t*100),s=t>0&&n===t,o=t>0&&e.steps.every(c=>c.status==="done"||c.status==="blocked"),l=e.steps.some(c=>c.note);return i.jsxs("div",{className:`chat-plan-card${s?" chat-plan-complete":""}`,children:[i.jsxs("div",{className:"chat-plan-head",children:[i.jsx("span",{className:"chat-plan-icon",children:"🗂️"}),i.jsx("span",{className:"chat-plan-goal",children:e.goal}),i.jsxs("span",{className:"chat-plan-count",children:[n,"/",t," done · ",a,"%"]})]}),i.jsx("div",{className:"chat-plan-bar",role:"progressbar","aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":a,children:i.jsx("span",{className:"chat-plan-bar-fill",style:{width:`${a}%`}})}),i.jsxs("table",{className:"chat-plan-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{className:"chat-plan-col-n",children:"#"}),i.jsx("th",{children:"Step"}),i.jsx("th",{className:"chat-plan-col-status",children:"Status"}),l?i.jsx("th",{children:"Notes"}):null]})}),i.jsx("tbody",{children:e.steps.map((c,u)=>i.jsxs("tr",{className:`chat-plan-row chat-plan-row-${c.status}`,children:[i.jsx("td",{className:"chat-plan-col-n",children:u+1}),i.jsx("td",{className:"chat-plan-step-text",children:c.description}),i.jsxs("td",{className:"chat-plan-col-status",children:[i.jsx("span",{className:"chat-plan-step-icon",children:Gye(c.status)})," ",qye(c.status)]}),l?i.jsx("td",{className:"chat-plan-note",children:c.note??""}):null]},c.id))})]}),o?i.jsx("div",{className:"chat-plan-settled",children:s?`✅ Plan complete — ${n}/${t} steps achieved`:`📋 Plan settled — ${n}/${t} achieved, ${r} blocked`}):null]})}function G_({tools:e,live:t}){return!e||e.length===0?null:i.jsx("div",{className:`chat-tool-cards${t?" chat-tool-cards-live":""}`,children:e.map(n=>{const r=n.phase==="started"||n.ok===void 0,a=n.ok===!1;return i.jsxs("div",{className:`chat-tool-card${r?" chat-tool-running":a?" chat-tool-err":" chat-tool-ok"}`,children:[i.jsxs("div",{className:"chat-tool-head",children:[i.jsx("span",{className:"chat-tool-icon",children:Iye(n.tool)}),i.jsx("span",{className:"chat-tool-name",children:n.tool}),n.args?i.jsx("code",{className:"chat-tool-args",children:n.args}):null,i.jsx("span",{className:"chat-tool-status",title:r?"running":a?"failed":"done",children:r?"⏳":a?"✗":"✓"}),n.durationMs!==void 0&&!r?i.jsxs("span",{className:"chat-tool-dur",children:[n.durationMs,"ms"]}):null]}),n.error||n.result?i.jsxs("details",{className:"chat-tool-detail",children:[i.jsx("summary",{children:a?"Error":"Result"}),i.jsx("pre",{className:"chat-tool-body",children:n.error||n.result})]}):null]},n.id)})})}function Kye(e){return(e.evidence??[]).filter(t=>typeof(t==null?void 0:t.ref)=="string"&&t.ref.trim().length>0)}function q_({findings:e}){return!e||e.length===0?null:i.jsx("div",{className:"chat-finding-cards",children:e.map((t,n)=>{const r=Kye(t),a=t.verdict==="CONFIRMED"&&r.length>0;return i.jsxs("div",{className:`chat-finding-card ${a?"chat-finding-confirmed":"chat-finding-plausible"}`,children:[i.jsxs("div",{className:"chat-finding-head",children:[i.jsx("span",{className:"chat-finding-icon","aria-hidden":"true",children:a?"✅":"🔎"}),i.jsx("span",{className:"chat-finding-claim",children:t.claim}),i.jsx("span",{className:`chat-finding-verdict ${a?"chat-finding-verdict-ok":"chat-finding-verdict-guess"}`,title:a?"a check was performed and is shown below":"reasoned, not verified",children:a?"CONFIRMED":"PLAUSIBLE"})]}),t.outcome?i.jsx("div",{className:"chat-finding-outcome",children:t.outcome}):null,r.length>0?i.jsx("ul",{className:"chat-finding-evidence",children:r.map((s,o)=>i.jsxs("li",{children:[i.jsx("span",{className:"chat-finding-kind",children:s.kind}),i.jsx("code",{className:"chat-finding-ref",children:s.ref}),s.detail?i.jsxs("span",{className:"chat-finding-detail",children:["(",s.detail,")"]}):null]},o))}):i.jsx("div",{className:"chat-finding-noevidence",children:"no evidence — reported as PLAUSIBLE, not verified"}),t.source?i.jsxs("div",{className:"chat-finding-source",children:["source: ",t.source]}):null]},`${n}-${t.claim}`)})})}function Vye({worktree:e}){return i.jsxs("div",{className:"chat-worktree-card",children:[i.jsxs("div",{className:"chat-worktree-head",children:[i.jsx("span",{className:"chat-worktree-icon","aria-hidden":"true",children:"🌿"}),i.jsx("span",{className:"chat-worktree-title",children:"Ran in an isolated worktree"}),i.jsx("span",{className:`chat-worktree-state ${e.removed?"chat-worktree-gone":"chat-worktree-kept"}`,children:e.removed?"removed":"kept"})]}),i.jsxs("div",{className:"chat-worktree-meta",children:[i.jsx("code",{className:"chat-worktree-dir",title:e.dir,children:e.dir}),i.jsxs("span",{className:"admin-hint",children:["base ",e.base.slice(0,7)]})]}),i.jsx("div",{className:"chat-worktree-note admin-hint",children:e.removed?"the diff below is what is left of it — nothing was written into the project tree":"the directory above is still on disk"}),i.jsx(wc,{diff:e.diff.payload})]})}function Yye({resume:e}){return i.jsxs("div",{className:"chat-resume-card",children:[i.jsxs("div",{className:"chat-resume-head",children:[i.jsx("span",{className:"chat-resume-icon","aria-hidden":"true",children:"↩️"}),i.jsx("span",{className:"chat-resume-title",children:"Resumed a recorded run"}),i.jsx("span",{className:`chat-resume-state ${e.saved?"chat-resume-saved":"chat-resume-unsaved"}`,title:e.saved?"the record was written back, so a later resume can replay this run":"the record could NOT be written — a later resume will replay nothing from this run",children:e.saved?"recorded":"not recorded"})]}),i.jsxs("div",{className:"chat-resume-meta",children:[i.jsxs("span",{children:[e.replayed," step",e.replayed===1?"":"s"," replayed"]}),i.jsxs("span",{children:[e.modelCalls," model call",e.modelCalls===1?"":"s"," made"]}),typeof e.callsAvoided=="number"&&e.callsAvoided>0&&i.jsxs("span",{className:"chat-resume-saved-calls",title:"model calls the resume did not re-pay for",children:[e.callsAvoided," model call",e.callsAvoided===1?"":"s"," saved"]}),i.jsx("code",{className:"chat-resume-id",title:"the checkpoint record this run used",children:e.id})]}),i.jsx("div",{className:"chat-resume-note",children:e.notice})]})}function Xye({report:e}){const t=e.verification==="verified"?"VERIFIED":e.verification==="unverified"?"UNVERIFIED":e.verification==="blocked"?"BLOCKED":"no changes",n=[];return e.flags.unverifiedActionClaim&&n.push("claimed an action no tool ran"),e.flags.unverifiedEditClaim&&n.push("claimed a fix nothing verified"),e.flags.unverifiedBuildClaim&&n.push("claimed a failing build worked"),e.flags.unverifiedEdit&&n.push("edited without verifying"),e.flags.undeliveredArtifact&&n.push("deliverable never written"),e.flags.unfulfilledPromise&&n.push("promised an action it did not take"),e.flags.noActionTaken&&n.push("no action taken"),i.jsxs("div",{className:`chat-turn-card chat-turn-${e.verification}`,children:[i.jsxs("div",{className:"chat-turn-head",children:[i.jsx("span",{className:"chat-turn-icon","aria-hidden":"true",children:"📋"}),i.jsx("span",{className:"chat-turn-title",children:"Turn report"}),e.planned?i.jsxs("span",{className:"chat-turn-count",children:[e.stepCounts.done,"/",e.stepCounts.total," steps"]}):null,i.jsx("span",{className:"chat-turn-verdict",title:"derived from recorded evidence, never the model's own narration",children:t})]}),e.summary?i.jsx("div",{className:"chat-turn-summary",children:e.summary}):null,e.steps.length>0?i.jsx("ul",{className:"chat-turn-steps",children:e.steps.map(r=>i.jsxs("li",{className:`chat-turn-step chat-turn-step-${r.status}`,children:[i.jsx("span",{className:"chat-turn-step-icon","aria-hidden":"true",children:r.status==="done"?"✅":r.status==="running"?"🔄":r.status==="blocked"?"⛔":"⬜"}),i.jsx("span",{className:"chat-turn-step-text",children:r.description}),r.note?i.jsx("span",{className:"chat-turn-step-note",children:r.note}):null,r.evidence?i.jsx("span",{className:"chat-turn-step-evidence",children:r.evidence}):null]},r.id))}):null,e.changedPaths.length>0?i.jsxs("div",{className:"chat-turn-files",children:[e.changedPaths.length," file",e.changedPaths.length===1?"":"s"," changed:"," ",i.jsxs("code",{children:[e.changedPaths.slice(0,6).join(", "),e.changedPaths.length>6?` +${e.changedPaths.length-6} more`:""]})]}):null,n.length>0?i.jsx("div",{className:"chat-turn-flags",children:n.map(r=>i.jsxs("span",{className:"chat-turn-flag",children:["⚠️ ",r]},r))}):null]})}function dv(){try{if(typeof crypto<"u"&&typeof crypto.randomUUID=="function")return crypto.randomUUID()}catch{}return`chat-${Date.now()}-${Math.random().toString(36).slice(2,8)}`}const p$="nuvira.dashboard.chat.activeSession";function Qye(){try{const e=sessionStorage.getItem(p$);return e&&e.length>0&&e.length<=64?e:null}catch{return null}}function fv(e){try{sessionStorage.setItem(p$,e)}catch{}}function Zye(e,t){const n=t.trim().toLowerCase(),r=n?e.filter(u=>`${u.title} ${u.preview} ${u.firstUser}`.toLowerCase().includes(n)):e,a=[],s=new Date,o=new Date(s.getFullYear(),s.getMonth(),s.getDate()).getTime(),l=864e5,c=[{label:"Today",match:u=>u>=o},{label:"Yesterday",match:u=>u>=o-l&&u<o},{label:"This week",match:u=>u>=o-7*l&&u<o-l},{label:"Older",match:()=>!0}];for(const u of c){const d=r.filter(f=>u.match(f.updatedAt));d.length>0&&a.push({label:u.label,items:d})}return a}function Jye(){var Ul,Wl,Hl,Gl,ql;const[e,t]=x.useState(null),n=Vr(),[r,a]=x.useState(_ye);x.useEffect(()=>{K.fetchLimits().then(I=>{I&&I.attachmentMaxBytes>0&&a(I.attachmentMaxBytes)})},[]),x.useEffect(()=>{K.fetchProcessEnv().then(I=>{const E=I.find(U=>U.name==="NUVIRA_CAPABILITY_MODE");E&&_(Lye(E.processValue??E.fileValue))})},[]),x.useEffect(()=>{K.listRoutableModels().then(I=>D(I))},[]);const[s,o]=x.useState([]),[l,c]=x.useState(""),[u,d]=x.useState(!1),[f,h]=x.useState(""),[p,g]=x.useState(null),[m,y]=x.useState(!1),[v,S]=x.useState(!1),[w,j]=x.useState(!1),[k,b]=x.useState(""),[N,_]=x.useState("balanced"),[T,C]=x.useState(""),[O,P]=x.useState(null),[z,L]=x.useState(!1),[M,D]=x.useState([]),[W,R]=x.useState(null),[B,A]=x.useState([]),[J,F]=x.useState([]),[$,ie]=x.useState(null),[de,me]=x.useState(null),[Te,Q]=x.useState(null),[X,ae]=x.useState([]),[ce,H]=x.useState([]),[xe,we]=x.useState([]),[je,ge]=x.useState(null),Ie=x.useRef([]),fe=x.useRef([]),nt=x.useRef(null),Be=x.useRef(null),Oe=x.useRef(null),Ye=x.useRef([]),[rt,gt]=x.useState(""),Lt=x.useRef(""),q=x.useRef(null),[Z,se]=x.useState(null),[he,Ne]=x.useState(null),[$e,Dt]=x.useState(null),Ae=x.useRef(Qye()??dv()),En=x.useRef(""),[In,ut]=x.useState([]),[qt,Rt]=x.useState(!0),[Cr,Tr]=x.useState(""),[lr,cr]=x.useState(null),[Bt,qn]=x.useState(""),[Kn,Wa]=x.useState([]),[Kt,ur]=x.useState(null),[hn,Ha]=x.useState(!1),pn=x.useRef(null),ga=x.useRef(null),[qe,Fi]=x.useState(null),[Yr,Ga]=x.useState(null),[dr,qa]=x.useState([]),[Ka,Ui]=x.useState(""),[Ys,Va]=x.useState(""),[Wi,Hi]=x.useState(!1),[_n,Xs]=x.useState(""),[Ya,Gi]=x.useState([]),[ld,qi]=x.useState(null),[Ki,fr]=x.useState(!1),[va,G]=x.useState([]),[ne,Ee]=x.useState([]),[Se,zt]=x.useState(""),$n=x.useRef(null),Le=x.useRef(null),Xr=x.useRef(null),Or=x.useRef(null),[Mt,Xa]=x.useState(null),[Vn,$l]=x.useState(new Set),[Qs,Vi]=x.useState("");x.useEffect(()=>{K.fetchAdminAuthStatus().then(I=>{t(I?{configured:I.configured,authenticated:I.authenticated,role:I.role??null}:{configured:!1,authenticated:!1,role:null})})},[n]),x.useEffect(()=>{var I,E;try{(E=(I=Xr.current)==null?void 0:I.scrollTo)==null||E.call(I,{top:Xr.current.scrollHeight})}catch{}},[s,u,B]),x.useEffect(()=>()=>{var I;(I=Le.current)==null||I.call(Le),Le.current=null},[]);const Qr=x.useCallback(async I=>{var Y,te;(Y=Le.current)==null||Y.call(Le),Le.current=null;const E=await K.getChatSession(I);if(!E)return;Ae.current=I,fv(I),o(E.turns.map(re=>({role:re.role,content:re.content,...re.role==="assistant"?{followups:[],artifacts:uv(re.content)}:{}}))),A([]),Ie.current=[],F([]),fe.current=[],ie(null),nt.current=null,me(null),Be.current=null,Q(null),Oe.current=null,ae([]),Ye.current=[],Lt.current="",gt(""),se(null),h(""),R(null),ge(null),Xa(null),Rt(!0),P(E.pinnedProvider&&E.pinnedModel?{provider:E.pinnedProvider,model:E.pinnedModel}:null);const U=E.projectPath;if(U){if(Ga(U),(qe==null?void 0:qe.path)===U)return;(te=Or.current)==null||te.call(Or,U)}else Ga(null)},[qe]),Zs=x.useCallback(()=>{var I;(I=Le.current)==null||I.call(Le),Le.current=null,Ae.current=dv(),fv(Ae.current),Ga(null),P(null),o([]),A([]),Ie.current=[],F([]),fe.current=[],ie(null),nt.current=null,me(null),Be.current=null,Q(null),Oe.current=null,ae([]),Ye.current=[],Lt.current="",gt(""),se(null),h(""),R(null),ge(null),Xa(null),Wa([]),ur(null),c(""),Rt(!0)},[]),Et=x.useCallback(I=>{Wa(E=>[...E,I].slice(-10))},[]),cd=x.useCallback(I=>{Wa(E=>E.filter((U,Y)=>Y!==I))},[]),ud=x.useCallback(async I=>{if(!I)return;if(I.size>r){h(`Attachment "${I.name}" is too large (max ${Math.round(r/1024)} KB). Raise the cap in Admin → Process Environment (NUVIRA_ATTACHMENT_MAX_BYTES).`);return}const E=new Uint8Array(await I.slice(0,8192).arrayBuffer()),U=Rye(I.name,E);if(U.how==="unsupported"){h(U.reason);return}if(U.how==="binary"){const te=new Uint8Array(await I.arrayBuffer());Et({name:I.name,content:Pye(te),kind:"file",encoding:"base64"});return}const Y=await I.text();Et({name:I.name,content:Y,kind:"file",encoding:"text"})},[Et]),Cm=x.useCallback(I=>{const E=I.currentTarget,U=I.clipboardData.getData("text")||"";U.length>=Aye&&(ga.current={start:E.selectionStart,end:E.selectionEnd},ur({text:U}))},[]),Tm=x.useCallback(()=>{const I=Kt;if(!I)return;const E=ga.current;c(U=>E?U.slice(0,E.start)+U.slice(E.end):U),Et({name:"pasted-text.txt",content:I.text,kind:"paste",encoding:"text"}),ur(null),ga.current=null},[Kt,Et]),Yi=x.useCallback(I=>{cr(I.id),qn(I.title==="(untitled conversation)"?"":I.title)},[]),dd=x.useCallback(async I=>{const E=await K.renameChatSession(I,Bt);E.ok?ut(U=>U.map(Y=>Y.id===I?{...Y,title:Bt.trim()||Y.title}:Y)):h(E.error||"Could not rename the session."),cr(null),qn("")},[Bt]),Om=x.useCallback(async I=>{const E=await K.deleteChatSession(I);E.ok?(ut(U=>U.filter(Y=>Y.id!==I)),Ae.current===I&&Zs()):h(E.error||"Could not delete the session.")},[Zs]),Xi=(e==null?void 0:e.authenticated)===!0&&(e.role==="admin"||e.role==="operator"),Qi=x.useRef(!1);x.useEffect(()=>{if(!Xi||Qi.current)return;Qi.current=!0;const I=Ae.current;let E=!1,U=null;const Y=async()=>{const te=await K.getChatSession(I);E||te&&(q.current||o(te.turns.map(re=>({role:re.role,content:re.content,...re.role==="assistant"?{followups:[],artifacts:uv(re.content)}:{}}))),d(te.busy===!0),te.busy&&(U=setTimeout(()=>void Y(),2500)))};return Y(),()=>{E=!0,U&&clearTimeout(U)}},[Xi]),x.useEffect(()=>{Xi&&(K.listChatSessions().then(I=>{Array.isArray(I)&&ut(I)}),K.listProjects().then(I=>{Array.isArray(I)&&qa(I)}))},[Xi]);const Pr=x.useCallback(async I=>{const E=I.trim();if(!E)return;Va("");const U=await K.attachProject(E);if(U.ok&&U.project){Fi(U.project),Ui("");const Y=await K.listProjects();Array.isArray(Y)&&qa(Y)}else Va(U.error||"Could not attach that directory.")},[]);Or.current=Pr;const Zi=x.useCallback(async I=>{Hi(!0),fr(!0),zt("");const E=await K.browseDirectories(I,{showDrives:!I});E.ok&&(Xs(E.path),Gi(E.entries),qi(E.parent),E.drives&&G(E.drives),E.breadcrumbs&&Ee(E.breadcrumbs)),fr(!1)},[]),Ll=x.useCallback(async I=>{fr(!0),zt("");const E=await K.browseDirectories(I);E.ok&&(Xs(E.path),Gi(E.entries),qi(E.parent),E.breadcrumbs&&Ee(E.breadcrumbs)),fr(!1)},[]),Js=x.useCallback(async()=>{if(!_n)return;const I=await K.browseDirectories(_n);I.ok&&Gi(I.entries)},[_n]);x.useEffect(()=>K.onChatRetryEvent(E=>{if(E.sessionId!==Ae.current){K.listChatSessions().then(U=>{Array.isArray(U)&&ut(U)});return}o(U=>[...U,{role:"assistant",content:E.content}]),E.kind==="answer"&&se(null)}),[]),x.useEffect(()=>(Wi&&_n&&($n.current=setInterval(()=>{Js()},5e3)),()=>{$n.current&&clearInterval($n.current)}),[Wi,_n,Js]);const fd=x.useCallback(async()=>{if(typeof window<"u"&&"showDirectoryPicker"in window)try{const U=(await window.showDirectoryPicker({mode:"read"})).name;if(!U){Zi();return}Va(""),d(!0);const Y=await K.resolveFolder(U);d(!1),Y.ok&&Y.path?(Ui(Y.path),Pr(Y.path)):Va('Folder "'+U+'" found — selecting it now. If this is wrong, type the full path below.');return}catch(E){if((E==null?void 0:E.name)==="AbortError")return}Zi()},[Zi,Pr]),It=x.useCallback(async(I,E)=>{var Je,pe,He;const U=I.trim(),Y=Array.isArray(E)?E:Kn,te=!Array.isArray(E)&&(E==null?void 0:E.skipResolve)===!0;if(!U&&Y.length===0||u)return;if(h(""),R(null),A([]),Ie.current=[],F([]),fe.current=[],ie(null),nt.current=null,me(null),Be.current=null,Q(null),Oe.current=null,ae([]),Ye.current=[],o(be=>[...be,{role:"user",content:U,attachments:Y.length>0?Y:void 0}]),c(""),Wa([]),ur(null),En.current=U||`[${Y.length} attachment(s)]`,d(!0),Rt(!1),!te&&$ye(U)){const vt=((await K.chatResolve(U)).matches??[])[0]??null;if(vt&&vt.command&&!vt.ambiguous&&vt.score>=.6){ge({ask:U,top:vt}),d(!1);return}if(vt&&vt.ambiguous&&!je){ge({ask:U,top:vt}),d(!1);return}}const re=Ae.current,ke=new AbortController;q.current=ke,se(null),(Je=Le.current)==null||Je.call(Le),Le.current=K.subscribeChat(re,{onToken:be=>{Lt.current+=be,gt(Lt.current)},onProgress:be=>{Ie.current=[...Ie.current,be],A(Ie.current)},onQuestion:be=>{Xa(be),$l(new Set)},onTool:be=>{const Ue=[...fe.current],vt=Ue.findIndex(g$=>g$.id===be.id),Ft={id:be.id,tool:be.tool,phase:be.phase,args:be.args,ok:be.ok,result:be.result,error:be.error,durationMs:be.durationMs};vt>=0?Ue[vt]=Ft:Ue.push(Ft),fe.current=Ue,F(Ue)},onPlan:be=>{const Ue={goal:be.goal,steps:be.steps.map(Mye),revision:be.revision};nt.current=Ue,ie(Ue)},onDiff:be=>{const Ue={files:be.files,summary:be.summary};Be.current=Ue,me(Ue)},onSkillDraft:be=>{const Ue={name:be.name,description:be.description,markdown:be.markdown,updatedAt:be.updatedAt,status:"pending"};Oe.current=Ue,Q(Ue)},onFinding:be=>{Ye.current=[...Ye.current,be],ae(Ye.current)},onSecretRequest:be=>{H(Ue=>{const vt=Ue.findIndex(Ft=>Ft.skillName===be.skillName);if(vt>=0){const Ft=[...Ue];return Ft[vt]=be,Ft}return[...Ue,be]})},onExecutionResult:be=>{we(Ue=>[...Ue,be])}});const Pe=await K.chatSend(re,U||`(see ${Y.length} attachment${Y.length===1?"":"s"})`,{...O?{provider:O.provider,model:O.model}:{},...O&&z?{strict:!0}:{},projectPath:qe==null?void 0:qe.path,attachments:Y.map(be=>({name:be.name,content:be.content,kind:be.kind,encoding:be.encoding??"text"})),...m?{worktree:!0,keepWorktree:v}:{},...w?{resume:k.trim()||!0}:{}},ke.signal);if(q.current=null,(pe=Le.current)==null||pe.call(Le),Le.current=null,Lt.current="",gt(""),Pe.ok){R(Pe.generationFailed?null:`${Pe.provider??"provider"}${Pe.model?` / ${Pe.model}`:" (auto-routed)"}`),Ne(Pe.routingNotice??null),Dt(Pe.workspaceNotice??null),Pe.workspacePath&&Pe.workspacePath!==(qe==null?void 0:qe.path)&&((He=Or.current)==null||He.call(Or,Pe.workspacePath)),se(Pe.generationFailed&&!Pe.retryQueued&&!Pe.refused?U:null);const be=Pe.content||"(the agent produced no text — try rephrasing)";o(Ue=>[...Ue,{role:"assistant",content:be,error:Pe.generationFailed,followups:Pe.followups,steps:Ie.current,tools:fe.current,plan:nt.current,diff:Be.current,draft:Oe.current,findings:Pe.findings??Ye.current,worktree:Pe.worktree,resume:Pe.resume,turnReport:Pe.turnReport,refused:Pe.refused,needsProject:Pe.needsProject,artifacts:uv(be)}])}else ke.signal.aborted?(h(""),se(null)):Pe.unauthorized?(t(be=>be&&{...be,authenticated:!1}),h("Session expired — log in again to chat.")):(h(Pe.error||"The agent could not answer — check that a provider API key is set for the dashboard process."),se(U));d(!1),Rt(!0)},[u,qe,Kn,m,v,w,k,O]),Dl=x.useCallback(()=>{var I;(I=q.current)==null||I.abort(),K.chatCancel(Ae.current)},[]),hd=x.useCallback(async()=>{const I=N==="max"?"balanced":"max";C("");const E=await K.saveProcessEnvVar("NUVIRA_CAPABILITY_MODE",I);E.ok?(_(I),C(I==="max"?"⚡ Max capability is on for the next turn.":"⚖️ Back to balanced.")):C(E.error||"Could not change the capability mode.")},[N]),Pm=x.useCallback(async()=>{g(null);const I=await K.chatSupportBundle(Ae.current);g(I.ok?{kind:"ok",text:"Support bundle downloaded — attach it to your bug report."}:{kind:"err",text:I.error||"Could not build the support bundle."})},[]),pd=x.useCallback(async I=>{Q(U=>U&&{...U,status:"saving"});const E=await K.skillDraftAccept(I);Q(U=>U&&{...U,status:E.ok?"saved":"error"}),E.ok||h(E.error||"Could not accept the draft.")},[]),Ji=x.useCallback(async I=>{const E=await K.skillDraftReject(I);E.ok?Q(U=>U&&{...U,status:"rejected"}):h(E.error||"Could not reject the draft.")},[]),md=x.useCallback(I=>{It(`Revise the skill draft "${I}" — improve it per your best judgment and present it again.`)},[It]),gd=x.useCallback(async I=>{const E=await K.saveSecrets(I);if(!E.ok){h(E.error||"Could not save secrets.");return}const U=E.refused??[];U.length>0&&h(U.map(Y=>Y.reason==="provider-credential"?`${Y.name} is a provider credential — set it up as a provider, skills never receive it.`:`${Y.name} was not saved (${Y.reason}).`).join(" "))},[]),vd=x.useCallback(async I=>{const Y=((await K.chatResolve(I)).matches??[])[0]??null;if(!(Y!=null&&Y.command)){ge(null);return}ge(null),d(!0);const te=Y.command.split(/\s+/),re=await K.startTask(te,6e4);if(!re.ok||!re.task){h(re.error||"The command could not be started."),d(!1);return}const ke=re.task.id,Pe={id:ke,command:Y.command,status:re.task.status,exitCode:re.task.exitCode,durationMs:re.task.durationMs,logs:re.task.logs??[]};o(Ue=>[...Ue,{role:"assistant",content:"",task:Pe}]);const Je=Ue=>o(vt=>vt.map(Ft=>Ft.task&&Ft.task.id===ke?{...Ft,task:{...Ft.task,...Ue}}:Ft));let pe=null;pe=K.subscribeTask(ke,{onLog:Ue=>o(vt=>vt.map(Ft=>Ft.task&&Ft.task.id===ke?{...Ft,task:{...Ft.task,logs:[...Ft.task.logs,Ue]}}:Ft)),onStatus:Ue=>{Je({status:Ue}),Ue!=="running"&&(K.getTask(ke).then(vt=>{vt!=null&&vt.task&&Je({exitCode:vt.task.exitCode,durationMs:vt.task.durationMs,logs:vt.task.logs??[]})}),pe==null||pe(),d(!1))}});const He=await K.getTask(ke);He!=null&&He.task&&Je({status:He.task.status,exitCode:He.task.exitCode,durationMs:He.task.durationMs,logs:He.task.logs??[]});const be=await K.getTask(ke);be!=null&&be.task&&be.task.status!=="running"&&(pe==null||pe(),Je({status:be.task.status,exitCode:be.task.exitCode,durationMs:be.task.durationMs,logs:be.task.logs??[]}),d(!1))},[]),yd=x.useCallback(I=>{ge(null),It(I,{skipResolve:!0})},[It]),Bl=x.useCallback(I=>{if(I.length===0)return;const E=qe?` in the attached project ${qe.path}`:"";It(`Commit exactly these files that I accepted on the diff card (and nothing else)${E}: ${I.join(", ")}. Show me a short confirmation before finishing.`)},[It,qe]),bd=x.useCallback(async I=>{await K.cancelTask(I)},[]),Zr=x.useCallback(async I=>{const E=Mt;if(!E)return;Xa(null),Vi(""),$l(new Set);const U=await K.chatRespond(Ae.current,E.questionId,I);U.ok||h(U.error||"The question could not be answered — try sending your message again.")},[Mt]),zl=x.useCallback(()=>{if(!Mt)return;const I=Qs.trim(),E=Mt.multiSelect?[...Vn]:[...Vn][0];Mt.multiSelect?Zr({index:[...Vn],...I?{custom:I}:{}}):Zr(I?{index:-1,custom:I}:E!==void 0?{index:E}:{index:-1})},[Mt,Vn,Qs,Zr]),xd=x.useCallback(()=>{Mt&&Zr({index:-1})},[Mt,Zr]),wd=x.useCallback(I=>{$l(E=>{const U=new Set(E);return Mt!=null&&Mt.multiSelect?U.has(I)?U.delete(I):U.add(I):(U.clear(),U.add(I)),U})},[Mt]),kd=x.useCallback(async()=>{var E;(E=Le.current)==null||E.call(Le),Le.current=null,Ae.current=dv(),fv(Ae.current),o([]),A([]),Ie.current=[],F([]),fe.current=[],ie(null),nt.current=null,me(null),Be.current=null,Q(null),Oe.current=null,ae([]),Ye.current=[],Lt.current="",gt(""),se(null),h(""),R(null),ge(null),Xa(null);const I=await K.listChatSessions();Array.isArray(I)&&ut(I)},[]),Fl=((Ul=[...s].reverse().find(I=>{var E;return I.role==="assistant"&&!I.error&&(((E=I.followups)==null?void 0:E.length)??0)>0}))==null?void 0:Ul.followups)??[];return i.jsxs("div",{className:"panel",children:[i.jsx(Re,{icon:"💬",title:"Chat with the agent",actions:i.jsxs("div",{className:"chat-head-actions",children:[W?i.jsx("span",{className:"admin-hint",children:W}):null,i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void kd(),disabled:u||s.length===0,children:"🗑 New conversation"})]})}),e!=null&&e.authenticated?Xi?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"chat-project-bar",children:qe?i.jsxs("div",{className:"chat-project-attached",children:[i.jsx("span",{className:"chat-project-icon",children:"📁"}),i.jsx("span",{className:"chat-project-name",children:qe.name}),i.jsxs("span",{className:"chat-project-meta",children:[qe.fileCount," files · ",qe.symbolCount," symbols",qe.truncated?" · truncated map":""]}),i.jsx("span",{className:"chat-project-path",title:qe.path,children:qe.path}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>Fi(null),children:"✕ detach"})]}):i.jsxs("div",{className:"chat-project-pick",children:[i.jsx("span",{className:"chat-project-icon",children:"📁"}),i.jsx("span",{className:"chat-project-hint",children:"Select Project Folder"}),dr.find(I=>I.kind==="cwd")?i.jsxs("span",{className:"chat-project-cwd",title:"Working directory used when no folder is attached",children:["⚙️ ",dr.find(I=>I.kind==="cwd").path]}):null,dr.length>0?i.jsx("span",{className:"chat-project-chips",children:dr.filter(I=>I.kind!=="cwd").slice(0,3).map(I=>i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void Pr(I.path),children:I.name},I.path))}):null,i.jsx("input",{className:"chat-project-input",value:Ka,onChange:I=>Ui(I.target.value),onKeyDown:I=>{I.key==="Enter"&&(I.preventDefault(),Pr(Ka))},placeholder:"or type a path, e.g. ~/code/my-app",disabled:u}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void Pr(Ka),disabled:u||!Ka.trim(),children:"Attach"}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>void fd(),title:"Pick a project folder using your system's folder picker (Finder / Explorer)",children:"🗂️ Browse"}),Ys?i.jsx("span",{className:"chat-project-error",children:Ys}):null,Wi?i.jsxs("div",{className:"chat-browse-popover",children:[i.jsxs("div",{className:"chat-browse-head",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>Hi(!1),title:"Close",children:"✕"}),i.jsx("div",{className:"chat-browse-breadcrumbs",children:va.length>0&&!_n?i.jsx("span",{className:"admin-hint",children:"Select a drive or home folder:"}):i.jsxs(i.Fragment,{children:[i.jsx("button",{type:"button",className:"chat-breadcrumb",onClick:()=>void Zi(),children:"🏠"}),ne.map((I,E)=>i.jsxs("span",{children:[i.jsx("span",{className:"chat-breadcrumb-sep",children:"/"}),i.jsx("button",{type:"button",className:"chat-breadcrumb",onClick:()=>void Ll(I.path),children:I.name})]},I.path))]})})]}),va.length>0&&!_n?i.jsx("div",{className:"chat-browse-drives",children:va.map(I=>i.jsx("button",{type:"button",className:"chat-browse-drive",onClick:()=>void Ll(I.path),children:I.name},I.path))}):null,Ya.length>5?i.jsx("div",{className:"chat-browse-search",children:i.jsx("input",{type:"text",className:"chat-browse-filter",placeholder:"🔍 Filter folders…",value:Se,onChange:I=>zt(I.target.value),autoFocus:!0})}):null,i.jsx("div",{className:"chat-browse-list",children:Ki?i.jsx("span",{className:"admin-hint",children:"Loading…"}):Ya.length===0?i.jsx("span",{className:"admin-hint",children:"No subdirectories found"}):Ya.filter(I=>!Se||I.name.toLowerCase().includes(Se.toLowerCase())).map(I=>i.jsxs("button",{type:"button",className:"chat-browse-entry",onClick:()=>void Ll(I.path),children:[i.jsx("span",{className:"chat-browse-entry-icon",children:"📁"}),i.jsx("span",{className:"chat-browse-entry-name",children:I.name}),I.modified?i.jsx("span",{className:"chat-browse-entry-date",children:new Date(I.modified).toLocaleDateString()}):null]},I.path))}),i.jsxs("div",{className:"chat-browse-foot",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>void Js(),title:"Refresh folder list",children:"🔄"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>{Hi(!1),Pr(_n)},disabled:!_n,children:"📁 Select this folder"})]})]}):null]})}),Yr&&(!qe||qe.path!==Yr)?i.jsxs("div",{className:"chat-session-project-banner",children:[i.jsxs("span",{children:["⚠️ This conversation was working in ",i.jsx("code",{children:Yr})]}),qe?i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void Pr(Yr),children:"📁 Switch to it"}):i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void Pr(Yr),children:"📁 Attach it"})]}):null,i.jsxs("div",{className:"chat-layout",children:[qt?i.jsxs("div",{className:"chat-sidebar",children:[i.jsxs("div",{className:"chat-sidebar-head",children:[i.jsx("span",{children:"📁 Sessions"}),i.jsxs("div",{className:"chat-sidebar-head-actions",children:[i.jsx("button",{type:"button",className:"chat-mini-action",title:"New chat",onClick:Zs,children:"+ New"}),i.jsx("button",{type:"button",className:"chat-mini-action",title:"Collapse history",onClick:()=>Rt(!1),children:"▸"})]})]}),i.jsx("input",{className:"chat-session-search",placeholder:"Search conversations…",value:Cr,onChange:I=>Tr(I.target.value)}),In.length===0?i.jsx("div",{className:"chat-sidebar-empty",children:"No past conversations yet."}):i.jsx("div",{className:"chat-sidebar-list",children:Zye(In,Cr).map(({label:I,items:E})=>i.jsxs("div",{className:"chat-session-group",children:[i.jsx("div",{className:"chat-session-group-label",children:I}),E.map(U=>i.jsx("div",{className:`chat-session-item${U.id===Ae.current?" chat-session-active":""}`,children:lr===U.id?i.jsxs("div",{className:"chat-session-rename",children:[i.jsx("input",{autoFocus:!0,value:Bt,onChange:Y=>qn(Y.target.value),onKeyDown:Y=>{Y.key==="Enter"&&dd(U.id),Y.key==="Escape"&&cr(null)},placeholder:"Session title"}),i.jsx("button",{type:"button",className:"chat-mini-action",onClick:()=>void dd(U.id),children:"✓"})]}):i.jsxs(i.Fragment,{children:[i.jsxs("button",{type:"button",className:"chat-session-main",onClick:()=>void Qr(U.id),title:U.preview||U.title,children:[i.jsx("span",{className:"chat-session-title",children:U.title}),i.jsx("span",{className:"chat-session-preview",children:U.firstUser||U.preview}),i.jsxs("span",{className:"chat-session-meta",children:[U.projectPath?`📁 ${U.projectPath.split("/").pop()} · `:"",U.turnCount," msg",U.turnCount===1?"":"s"," · ",new Date(U.updatedAt).toLocaleString()]})]}),i.jsxs("span",{className:"chat-session-actions",children:[i.jsx("button",{type:"button",className:"chat-mini-action",title:"Rename",onClick:()=>Yi(U),children:"✏️"}),i.jsx("button",{type:"button",className:"chat-mini-action",title:"Delete",onClick:()=>void Om(U.id),children:"🗑"})]})]})},U.id))]},I))})]}):i.jsx("div",{className:"chat-rail",children:i.jsx("button",{type:"button",className:"chat-rail-btn",onClick:()=>Rt(!0),title:"Show history",children:"📁"})}),i.jsxs("div",{className:"chat-main",children:[i.jsxs("div",{className:"chat-thread",ref:Xr,role:"log","aria-live":"polite",children:[s.length===0?i.jsxs("div",{className:"empty-state",children:[i.jsx("p",{className:"empty-state-title",children:"Say anything — the agent decides what to do (answer, fix code, plan, run the pipeline)."}),i.jsxs("div",{className:"empty-state-chips",children:[i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void It("what's the state of this project?"),children:"📋 assess this project"}),i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void It("run the test suite"),children:"🧪 run the tests"}),i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void It("stop the gateway"),children:"⏹ stop the gateway"}),i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void It("load the code-assessment skill and assess this project"),children:"🧠 load the code-assessment skill"}),i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void It("learn the workflow I just did as a skill"),children:"📚 learn a workflow as a skill"}),i.jsx("button",{type:"button",className:"chat-chip",onClick:()=>void It("publish the current version"),children:"🚀 publish the release"})]})]}):s.map((I,E)=>i.jsxs("div",{className:`chat-bubble chat-${I.role}${I.error?" chat-error":""}`,children:[i.jsx("div",{className:"chat-bubble-role",children:I.role==="user"?"You":"🤖 Agent"}),I.role==="assistant"?i.jsx("div",{className:"chat-bubble-text",children:i.jsx(D_,{text:I.content})}):i.jsx("div",{className:"chat-bubble-text",children:I.content}),I.role==="user"&&I.attachments&&I.attachments.length>0?i.jsxs("details",{className:"chat-steps",open:I.attachments.length===1,children:[i.jsxs("summary",{children:["📎 ",I.attachments.length," attachment",I.attachments.length===1?"":"s",":"," ",I.attachments.map(U=>U.name).join(", ")]}),I.attachments.map((U,Y)=>i.jsxs("div",{className:"chat-attach-content",children:[i.jsxs("div",{className:"admin-hint",children:[U.name," — ",kt(U.content.length)," chars"]}),i.jsx("pre",{children:U.content})]},Y))]}):null,I.role==="assistant"&&I.diff?i.jsxs("details",{className:"chat-steps",open:!0,children:[i.jsxs("summary",{children:["Changes: ",I.diff.summary]}),i.jsx(wc,{diff:I.diff,selectable:!0,onCommitAccepted:Bl})]}):null,I.role==="assistant"&&I.artifacts&&(I.artifacts.diffs.length>0||I.artifacts.results.length>0||I.artifacts.deploys.length>0)?i.jsxs(Fye,{children:[I.artifacts.diffs.map((U,Y)=>i.jsx("div",{"data-artifact-card":!0,tabIndex:0,role:"group","aria-label":`Diff: ${U.summary}`,className:"chat-artifact-item",children:qe?i.jsx(wc,{diff:U,selectable:!0,onCommitAccepted:Bl}):i.jsx(wc,{diff:U,lockedHint:"Attach a project to review and commit these changes."})},`diff-${Y}`)),I.artifacts.results.map((U,Y)=>i.jsx("div",{"data-artifact-card":!0,tabIndex:0,role:"group","aria-label":`Result: ${U.title}`,className:"chat-artifact-item",children:i.jsx(Bye,{result:U})},`result-${Y}`)),I.artifacts.deploys.map((U,Y)=>i.jsx("div",{"data-artifact-card":!0,tabIndex:0,role:"group","aria-label":`Deployment: ${U.url}`,className:"chat-artifact-item",children:i.jsx(zye,{deploy:U})},`deploy-${Y}`))]}):null,I.role==="assistant"&&I.task?i.jsx(Uye,{task:I.task,onCancel:I.task.status==="running"?()=>void bd(I.task.id):void 0}):null,I.role==="assistant"&&I.draft?i.jsxs("details",{className:"chat-steps",open:!0,children:[i.jsxs("summary",{children:["Skill draft: ",I.draft.name]}),i.jsx(W_,{draft:I.draft,onAccept:pd,onReject:Ji,onEdit:md})]}):null,I.role==="assistant"&&I.plan?i.jsxs("details",{className:"chat-steps",open:!0,children:[i.jsxs("summary",{children:["Plan: ",I.plan.goal]}),i.jsx(H_,{plan:I.plan})]}):null,I.role==="assistant"&&I.refused?i.jsx("div",{className:"chat-refused-line",children:"⛔ This turn did not run — the isolation it asked for could not be made. Nothing was written, and the reason is above."}):null,I.role==="assistant"&&I.needsProject?i.jsx("div",{className:"chat-refused-line",children:"📁 Nothing was run — attach a project folder above, then send the message again."}):null,I.role==="assistant"&&I.worktree?i.jsx(Vye,{worktree:I.worktree}):null,I.role==="assistant"&&I.resume?i.jsx(Yye,{resume:I.resume}):null,I.role==="assistant"&&I.turnReport?i.jsx(Xye,{report:I.turnReport}):null,I.role==="assistant"&&I.findings&&I.findings.length>0?i.jsx(q_,{findings:I.findings}):null,I.role==="assistant"&&I.tools&&I.tools.length>0?i.jsxs("details",{className:"chat-steps",open:!0,children:[i.jsxs("summary",{children:[I.tools.length," tool call",I.tools.length===1?"":"s"]}),i.jsx(G_,{tools:I.tools})]}):null,I.role==="assistant"&&I.steps&&I.steps.length>0?i.jsxs("details",{className:"chat-steps",children:[i.jsxs("summary",{children:[I.steps.length," step",I.steps.length===1?"":"s"]}),i.jsx("div",{className:"chat-step-line",children:I.steps.map((U,Y)=>i.jsx("div",{children:U.trim()},Y))})]}):null]},E)),u?i.jsxs("div",{className:"chat-bubble chat-assistant",children:[i.jsx("div",{className:"chat-bubble-role",children:"🤖 Agent"}),$?i.jsx(H_,{plan:$}):null,de?i.jsx(wc,{diff:de}):null,m&&u?i.jsx("div",{className:"chat-resume-line",children:"🌿 this turn is running in its own git worktree — the diff arrives with the answer"}):null,w&&u?i.jsx("div",{className:"chat-resume-line",children:"↩️ this turn is replaying the recorded steps of this ask that are unchanged — the count arrives with the answer"}):null,X.length>0?i.jsx(q_,{findings:X}):null,Te?i.jsx(W_,{draft:Te,onAccept:pd,onReject:Ji,onEdit:md}):null,ce.map(I=>i.jsx(Wye,{request:I,onSave:gd},I.skillName)),xe.map((I,E)=>i.jsx(Hye,{result:I},`${I.skillName}-${E}`)),i.jsx(G_,{tools:J,live:!0}),rt?i.jsx("div",{className:"chat-bubble-text chat-streaming",children:i.jsx(D_,{text:rt})}):null,i.jsx("div",{className:"chat-working",children:B.length>0?i.jsx("span",{className:"chat-working-lines",children:B.map((I,E)=>i.jsx("div",{className:"chat-step-line",children:I.trim()},E))}):i.jsxs(i.Fragment,{children:["💭 thinking… ",i.jsx("span",{className:"chat-dots"})]})})]}):null]}),f?i.jsx("div",{className:"admin-row-msg admin-row-msg-err",children:f}):null,he?i.jsxs("div",{className:"admin-row-msg chat-routing-notice",children:[i.jsxs("span",{children:["ℹ️ ",he]})," ",i.jsx("button",{className:"chat-routing-notice-dismiss",type:"button","aria-label":"Dismiss routing notice",onClick:()=>Ne(null),children:"✕"})]}):null,$e?i.jsxs("div",{className:"admin-row-msg chat-routing-notice",children:[i.jsxs("span",{children:["📁 ",$e]})," ",i.jsx("button",{className:"chat-routing-notice-dismiss",type:"button","aria-label":"Dismiss workspace notice",onClick:()=>Dt(null),children:"✕"})]}):null,p?i.jsx("div",{className:`admin-row-msg${p.kind==="err"?" admin-row-msg-err":""}`,children:p.text}):null,Z&&!u?i.jsxs("div",{className:"chat-retry-row",children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void It(Z),children:"↻ Retry"}),i.jsx("span",{className:"admin-hint",children:"Re-send the last message — the turn failed."})]}):null,je&&!u?i.jsx("div",{className:"chat-resolve-card",children:(Wl=je.top)!=null&&Wl.ambiguous&&((Hl=je.top.options)!=null&&Hl.length)?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"chat-resolve-head",children:[i.jsx("strong",{children:"🤔 Which do you mean?"}),' — "',je.ask,'" maps to more than one action.']}),i.jsx("div",{className:"chat-resolve-options",children:je.top.options.map(I=>i.jsxs("button",{className:"chat-chip",type:"button",onClick:()=>void It(I.command),children:[I.summary," — ",i.jsx("code",{children:I.command})]},I.command))}),i.jsx("div",{className:"chat-resolve-foot",children:i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>{ge(null)},children:"✕ Not that — ask the agent"})})]}):i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"chat-resolve-head",children:[i.jsx("strong",{children:"⚡ Run this command?"}),' — "',je.ask,'"']}),i.jsx("div",{className:"chat-resolve-cmd",children:i.jsx("code",{children:(Gl=je.top)==null?void 0:Gl.command})}),(ql=je.top)!=null&&ql.confirmation?i.jsx("div",{className:"admin-hint",children:"⚠ This changes running services/state."}):null,i.jsxs("div",{className:"chat-resolve-foot",children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void vd(je.ask),children:"▶ Run"}),i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>yd(je.ask),children:"✕ No — ask the agent"})]})]})}):null,Mt?i.jsxs("div",{className:"chat-resolve-card chat-question-card",children:[i.jsx("div",{className:"chat-resolve-head",children:i.jsxs("strong",{children:["🤔 ",Mt.question]})}),i.jsx("div",{className:"chat-resolve-options",children:Mt.choices.map((I,E)=>i.jsxs("button",{type:"button",className:`chat-chip${Vn.has(E)?" chat-chip-selected":""}`,onClick:()=>wd(E),children:[I.label,I.description?i.jsxs("span",{className:"admin-hint",children:[" — ",I.description]}):null]},`${I.label}-${E}`))}),i.jsx("input",{className:"chat-question-custom",type:"text",placeholder:"✏️ Or type your own answer…",value:Qs,onChange:I=>Vi(I.target.value),onKeyDown:I=>{I.key==="Enter"&&!I.shiftKey&&(I.preventDefault(),zl())}}),i.jsxs("div",{className:"chat-resolve-foot",children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:zl,children:Qs.trim()?"Send answer":Mt.multiSelect?"Submit":"Choose"}),i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:xd,children:"Skip — best judgment"})]})]}):null,Fl.length>0&&!u?i.jsxs("div",{className:"chat-followups",children:[i.jsx("span",{className:"admin-hint",children:"Next steps:"}),Fl.map((I,E)=>i.jsx("button",{className:"chat-chip",type:"button",onClick:()=>void It(I.prompt),children:I.label||I.prompt},E))]}):null,i.jsxs("form",{className:`chat-composer${hn?" chat-composer-drag":""}`,onSubmit:I=>{I.preventDefault(),It(l)},onDragOver:I=>{I.preventDefault(),Ha(!0)},onDragLeave:()=>Ha(!1),onDrop:I=>{var U;I.preventDefault(),Ha(!1);const E=Array.from(((U=I.dataTransfer)==null?void 0:U.files)??[]);for(const Y of E.slice(0,10))ud(Y)},children:[Kt?i.jsxs("div",{className:"chat-paste-offer",children:[i.jsxs("span",{className:"admin-hint",children:["📄 You pasted ",kt(Kt.text.length)," characters. Attach it as a file instead?"]}),i.jsx("button",{type:"button",className:"chat-chip",onClick:Tm,children:"Attach as text"}),i.jsx("button",{type:"button",className:"chat-mini-action",onClick:()=>{ur(null),ga.current=null},children:"Keep inline"})]}):null,Kn.length>0?i.jsx("div",{className:"chat-attach-row",children:Kn.map((I,E)=>i.jsxs("span",{className:"chat-attach-chip",title:I.encoding==="base64"?`${I.name} (${kt(I.content.length)} base64 chars — read on the server)`:`${I.name} (${kt(I.content.length)} chars)`,children:["📎 ",I.name,i.jsx("span",{className:"admin-hint",children:I.encoding==="base64"?`${Math.round(I.content.length*3/4096)} KB`:`${kt(I.content.length)}c`}),i.jsx("button",{type:"button",className:"chat-mini-action",onClick:()=>cd(E),children:"✕"})]},`${I.name}-${E}`))}):null,i.jsxs("div",{className:"chat-controls",children:[i.jsx("input",{ref:pn,type:"file",accept:".pdf,.docx,.xlsx,.pptx,.txt,.md,.markdown,.text,.log,.csv,.tsv,.json,.xml,.yaml,.yml,.html,.htm,text/*",style:{display:"none"},onChange:I=>{var U;const E=(U=I.target.files)==null?void 0:U[0];E&&ud(E),I.target.value=""}}),i.jsx("button",{type:"button",className:"chat-attach-btn",title:"Attach a file (up to 300 KB): PDF, DOCX, XLSX, PPTX or text — documents are read on the server",disabled:u||Kn.length>=10,onClick:()=>{var I;return(I=pn.current)==null?void 0:I.click()},children:"📎 attach"}),i.jsx("button",{type:"button",className:"chat-attach-btn","aria-label":"Download support bundle",title:"Download a support bundle for this chat: the session debug log (which backend served each turn) plus the conversation. Needs NUVIRA_DEBUG_LOG=1 in the dashboard process.",onClick:()=>void Pm(),children:"🐞 debug"}),i.jsxs("button",{type:"button",className:`chat-attach-btn${m?" chat-attach-btn-on":""}`,"aria-label":"Run turns in an isolated git worktree","aria-pressed":m,title:m?"Turns run in their own git worktree and report the diff — click to run in the project tree again":"Run turns in their own git worktree of the attached project, and report the diff against the base commit. Refuses rather than running in your tree when the directory cannot be isolated. Needs an attached project (or the server's own git working directory).",onClick:()=>{y(I=>!I),g(null)},children:["🌿",m?" isolated":" isolate"]}),i.jsxs("button",{type:"button",className:`chat-attach-btn${w?" chat-attach-btn-on":""}`,"aria-label":"Replay this ask's recorded steps instead of paying for them again","aria-pressed":w,title:w?"Recorded steps whose input is unchanged are replayed instead of paid for — click to run fresh again":"Replay the steps of an earlier run of this same ask whose input is unchanged, instead of paying for them again. The record is keyed by the ask and the directory; name a checkpoint id below to resume a specific one. A step whose input CHANGED is paid for again.",onClick:()=>{j(I=>!I),g(null)},children:["↩️",w?" resuming":" resume"]}),w?i.jsx("input",{className:"chat-resume-input",value:k,onChange:I=>b(I.target.value),placeholder:"checkpoint id (blank = this ask's record)",title:"Resume this specific checkpoint record. Blank resumes the record for this ask in this directory.","aria-label":"Checkpoint id to resume",disabled:u}):null,m?i.jsxs("button",{type:"button",className:`chat-attach-btn${v?" chat-attach-btn-on":""}`,"aria-pressed":v,title:v?"The worktree is KEPT after the turn so you can look inside it":"The worktree is measured and removed after each turn",onClick:()=>S(I=>!I),children:["📌",v?" keep":" drop"]}):null,i.jsxs("select",{className:"chat-model-picker","aria-label":"Model: Auto or a specific routable model",title:O?`Pinned to ${O.provider}/${O.model} for this chat. Choose Auto to let the agent route again.`:"Auto (default): the agent picks the best routable model each turn. Choose one to pin it for this chat.",value:O?`${O.provider}|${O.model}`:"",disabled:u,onChange:I=>{const E=I.target.value;if(!E){P(null);return}const U=E.indexOf("|");P({provider:E.slice(0,U),model:E.slice(U+1)})},children:[i.jsx("option",{value:"",children:"🤖 Auto (agent decides)"}),O&&!M.some(I=>I.provider===O.provider&&I.model===O.model)?i.jsxs("option",{value:`${O.provider}|${O.model}`,children:[O.provider,"/",O.model," · pinned"]}):null,M.map(I=>i.jsxs("option",{value:`${I.provider}|${I.model}`,children:[I.provider,"/",I.model," · ",I.band," (",I.capability.toFixed(2),")"]},`${I.provider}|${I.model}`))]}),O?i.jsx("button",{type:"button",className:`chat-attach-btn${z?" chat-attach-btn-on":""}`,"aria-label":"Strict model pin: use this model only","aria-pressed":z,disabled:u,title:z?`Strict: this chat runs on ${O.provider}/${O.model} only. If it is unavailable the turn stops instead of substituting another model.`:`Auto routing may substitute another model if ${O.provider}/${O.model} is unavailable. Turn on strict mode to work with this model only.`,onClick:()=>L(I=>!I),children:z?"🔒 strict":"🔓 auto-fallback"}):null,i.jsx("button",{type:"button",className:`chat-attach-btn${N==="max"?" chat-attach-btn-on":""}`,"aria-label":"Capability mode: balanced or max","aria-pressed":N==="max",disabled:u,title:N==="max"?"Max capability: every turn routes to a strong model (a reasoning floor — not merely “paid”), cost ceilings are lifted, paid models are always allowed, and the loop gets its longest reasoning budget. Click to return to balanced.":"Balanced (default): the best model for complex/critical work and cheaper models for simple work, escalating when a stall is detected. Click for max capability — cost is not a concern.",onClick:()=>void hd(),children:N==="max"?"⚡ max":"⚖️ balanced"}),T?i.jsx("span",{className:"admin-hint",children:T}):null]}),i.jsxs("div",{className:"chat-input-row",children:[i.jsx("textarea",{className:"chat-input-box",value:l,onChange:I=>c(I.target.value),onPaste:Cm,onKeyDown:I=>{I.key==="Enter"&&!I.shiftKey?(I.preventDefault(),It(l)):I.key==="ArrowUp"&&l===""&&En.current&&(I.preventDefault(),c(En.current))},placeholder:"Message the agent… (Enter to send · Shift+Enter for a new line · ↑ recalls last · 📎 attach a file or paste a large document)",disabled:u,maxLength:8e3,rows:1,autoFocus:!0}),u?i.jsx("button",{className:"admin-mini-btn chat-cancel-btn",type:"button",onClick:Dl,children:"⏹ Cancel"}):null,i.jsx("button",{className:"admin-refresh-btn",type:"submit",disabled:u||!l.trim()&&Kn.length===0,children:u?"⏳ Working…":"➤ Send"})]})]}),i.jsxs("p",{className:"admin-hint",children:["Each message runs the full agent loop in the dashboard process (same engine as"," ",i.jsx("code",{children:'buff chat "<prompt>"'}),") — the provider API keys must be configured in the dashboard process. Clarifications (",i.jsx("code",{children:"ask_user"}),") appear as a question card here — choose an answer or skip (best judgment)."]})]})]})]}):i.jsx("div",{className:"admin-login-hint",children:i.jsx("p",{children:"Your role can view the dashboard but not chat (requires admin or operator)."})}):i.jsxs("div",{className:"admin-login-hint",children:[i.jsx("p",{children:"Log in (admin or operator) to chat with the agent. Configure the dashboard admin credential first if this is a fresh setup."}),(e==null?void 0:e.configured)===!1?i.jsxs("p",{className:"admin-hint",children:["Run ",i.jsx("code",{children:"buff dashboard"})," once, or set ",i.jsx("code",{children:"BUFF_DASHBOARD_ADMIN_USER"})," / ",i.jsx("code",{children:"BUFF_DASHBOARD_ADMIN_PASSWORD"}),"."]}):null]})]})}const ebe={running:"⏳ running",done:"✅ done",failed:"❌ failed",cancelled:"⏹ cancelled",timeout:"⏰ timed out",error:"💥 error"};function m$({presets:e,customPlaceholder:t,timeoutMs:n=3e5,hint:r}){const[a,s]=x.useState(null),o=Vr(),[l,c]=x.useState(!1),[u,d]=x.useState(""),[f,h]=x.useState(""),[p,g]=x.useState(null),[m,y]=x.useState([]),v=x.useRef(null),S=x.useRef(null);x.useEffect(()=>{K.fetchAdminAuthStatus().then(b=>{s(b?{authenticated:b.authenticated,role:b.role??null}:{authenticated:!1,role:null})})},[o]),x.useEffect(()=>{var b,N;try{(N=(b=v.current)==null?void 0:b.scrollIntoView)==null||N.call(b,{block:"end"})}catch{}},[m]),x.useEffect(()=>()=>{var b;(b=S.current)==null||b.call(S)},[]);const w=(a==null?void 0:a.authenticated)===!0&&(a.role==="admin"||a.role==="operator"),j=x.useCallback(async(b,N)=>{var O;if(l)return;c(!0),d(""),y([]);const _=await K.startTask(b,N??n);if(!_.ok||!_.task){d(_.error||"Could not start the command."),c(!1);return}const T=_.task;g(T);const C=await K.getTask(T.id);C!=null&&C.task&&y(C.task.logs.map(P=>({stream:P.stream,text:P.text}))),(O=S.current)==null||O.call(S),S.current=K.subscribeTask(T.id,{onLog:P=>y(z=>[...z,{stream:P.stream,text:P.text}]),onStatus:P=>{g(z=>z&&{...z,status:P}),P!=="running"&&c(!1)}})},[l,n]),k=x.useCallback(async()=>{p&&await K.cancelTask(p.id)},[p]);return i.jsxs("div",{className:"ops-console",children:[a!=null&&a.authenticated?w?i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"ops-presets",children:e.map(b=>i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void j(b.args,b.timeoutMs),disabled:l,children:b.label},b.label))}),i.jsxs("div",{className:"ops-custom-row",children:[i.jsx("input",{type:"text",value:f,onChange:b=>h(b.target.value),placeholder:t,disabled:l,maxLength:160}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void j(f.trim().split(/\s+/)),disabled:l||!f.trim(),children:"Run"})]}),r?i.jsx("p",{className:"admin-hint",children:r}):null]}):i.jsx("div",{className:"admin-login-hint",children:"Your role can view but not run commands (requires admin or operator)."}):i.jsx("div",{className:"admin-login-hint",children:"Log in (admin or operator) to run commands."}),u?i.jsx("div",{className:"admin-row-msg admin-row-msg-err",children:u}):null,p?i.jsxs("div",{className:"ops-console-box",children:[i.jsxs("div",{className:"ops-console-head",children:[i.jsxs("span",{children:[p.command," · ",i.jsx("span",{className:p.status==="running"?"task-status-running":"",children:ebe[p.status]})]}),p.status==="running"?i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void k(),children:"⏹ Cancel"}):null]}),i.jsxs("pre",{className:"ops-console",role:"log",children:[m.length>0?m.map((b,N)=>i.jsx("div",{children:b.text},N)):i.jsx("div",{className:"admin-hint",children:"Waiting for output…"}),i.jsx("div",{ref:v})]})]}):null]})}const tbe=[{label:"⚡ Quick smoke",args:["eval","run","--tasks","quick","--format","text"]},{label:"⏱ Medium suite",args:["eval","run","--tasks","medium","--format","text"]},{label:"🐢 Slow suite",args:["eval","run","--tasks","slow","--format","text"]},{label:"🏆 M2B parity",args:["eval","run","--suite","m2b","--format","text"]},{label:"📦 Full suite",args:["eval","run","--suite","full","--format","text"]}];function K_(e){return typeof e!="number"?"—":`${Math.round(e*100)}%`}function nbe(e){return new Date(e).toLocaleString()}function rbe({data:e}){var n;const t=((n=e==null?void 0:e.evals)==null?void 0:n.runs)??[];return i.jsxs("div",{className:"panel",children:[i.jsx(Re,{icon:"🏆",title:"Evals — run buff eval from the GUI"}),i.jsx(m$,{presets:tbe,customPlaceholder:"e.g. eval run --tasks my-task --provider groq --model llama",timeoutMs:9e5,hint:i.jsxs(i.Fragment,{children:["Runs the real ",i.jsx("code",{children:"buff eval run"})," as an isolated process — same engine, same ledger, same results as the CLI. Long suites can take minutes; you can cancel mid-run."]})}),i.jsx("h2",{className:"section-subtitle",children:"📜 Past runs (auto-refreshes)"}),t.length>0?i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Started"}),i.jsx("th",{children:"Provider"}),i.jsx("th",{children:"Model"}),i.jsx("th",{children:"Tasks"}),i.jsx("th",{children:"Pass"}),i.jsx("th",{children:"Completion"}),i.jsx("th",{children:"Composite"}),i.jsx("th",{children:"Cost"})]})}),i.jsx("tbody",{children:t.map(r=>i.jsxs("tr",{children:[i.jsx("td",{children:nbe(r.startedAt)}),i.jsx("td",{className:"admin-provider-type",children:r.provider}),i.jsx("td",{children:r.model}),i.jsx("td",{children:r.summary.totalTasks}),i.jsxs("td",{children:[r.summary.tasksPassed,"/",r.summary.totalTasks]}),i.jsx("td",{children:K_(r.summary.completionRate)}),i.jsx("td",{children:K_(r.summary.avgCompositeScore)}),i.jsxs("td",{children:["$",(r.summary.totalCostUsd??0).toFixed(4)]})]},r.id))})]})}):i.jsx("div",{className:"empty-state",children:"No eval runs yet — start one above (or `buff eval run` from the CLI)."})]})}const abe=[{label:"🌐 Gateway status",args:["gateway","status"]},{label:"📮 Delivery ledger",args:["gateway","delivery"]},{label:"▶️ Start gateway (foreground)",args:["gateway","start","--no-events"],timeoutMs:0},{label:"⏰ Cron jobs",args:["admin","cron","list"]}];function ibe(){return i.jsxs("div",{className:"panel",children:[i.jsx(Re,{icon:"🌐",title:"Gateway ops — run buff gateway from the GUI"}),i.jsx(m$,{presets:abe,customPlaceholder:"e.g. admin cron run nightly or gateway alias add ops email:team@example.com",timeoutMs:3e5,hint:i.jsxs(i.Fragment,{children:["Each command runs as the real CLI in an isolated process (the P1 task runner) — the same engine as your terminal. ",i.jsx("code",{children:"gateway start"})," runs in the foreground ",i.jsx("strong",{children:"with no timeout"}),": it keeps running even after you switch tabs (the process lives on the dashboard server, not the page) and streams platform events until you press ",i.jsx("strong",{children:"Cancel"}),". The delivery ledger also has its own view in"," ",i.jsx("strong",{children:"Agent Hub → Channels"}),"."]})})]})}const hv={telegram:{icon:"✈️",category:"Chat",steps:["Open Telegram and search for @BotFather","Send /newbot and follow the prompts",'Give your bot a name (e.g. "My Agent Bot")','Give your bot a username ending in "bot"',"BotFather gives you a token — paste it in Step 2","Open your bot in Telegram and send /start"],testTarget:"telegram:"},discord:{icon:"🎮",category:"Chat",steps:["Go to discord.com/developers/applications",'Click "New Application" and give it a name','Go to Bot tab and click "Add Bot"',"Copy the bot token",'Enable "Message Content Intent"',"Invite bot to your server (OAuth2 URL generator)"],testTarget:"discord:"},slack:{icon:"💬",category:"Chat",steps:["Go to api.slack.com/apps","Create New App from scratch","Add Bot Token Scopes: chat:write, im:read, im:write","Install to workspace","Copy the Bot User OAuth Token (xoxb-...)"],testTarget:"slack:"},whatsapp:{icon:"📱",category:"Chat",steps:["Run: buff whatsapp pair (or from Gateway tab)","Scan the QR code with WhatsApp","Pairing completes automatically"],testTarget:""},whatsapp_cloud:{icon:"☁️",category:"Chat",steps:["Go to developers.facebook.com","Set up WhatsApp Cloud API","Copy token + Phone ID"],testTarget:"whatsapp_cloud:"},email:{icon:"📧",category:"Chat",steps:["Get SMTP credentials (Gmail, SendGrid, etc.)","For Gmail: use App Password at smtp.gmail.com:587","Paste SMTP host + user below"],testTarget:""},signal:{icon:"🔒",category:"Chat",steps:["Run signal-cli-rest-api Docker container","Register a Signal account","Paste account number below"],testTarget:""},dingtalk:{icon:"🔔",category:"Webhooks",steps:["Open DingTalk and create a group","Add custom robot and copy webhook URL","Paste URL below"],testTarget:""},feishu:{icon:"🐦",category:"Webhooks",steps:["Open Feishu and create a bot","Copy webhook URL and paste below"],testTarget:""},wecom:{icon:"🏢",category:"Webhooks",steps:["Open WeCom and create a group bot","Copy webhook URL and paste below"],testTarget:""},mattermost:{icon:"📋",category:"Webhooks",steps:["Open Mattermost, go to Integrations","Create incoming webhook and copy URL"],testTarget:""},matrix:{icon:"🔗",category:"Chat",steps:["Get your Matrix homeserver URL","Create a bot user and get access token","Paste URL + token below"],testTarget:""},webhook:{icon:"🪝",category:"Webhooks",steps:["Enter your webhook URL","The agent sends outbound webhooks to this URL"],testTarget:""},bluebubbles:{icon:"💙",category:"Chat",steps:["Set up BlueBubbles server","Copy server URL + password"],testTarget:""},ntfy:{icon:"📢",category:"Notifications",steps:["Choose an ntfy topic (or use ntfy.sh)","Paste the topic below"],testTarget:""},teams:{icon:"👥",category:"Webhooks",steps:["Open Microsoft Teams, go to channel","Connectors, Incoming Webhook, create","Copy webhook URL"],testTarget:""},google_chat:{icon:"💬",category:"Webhooks",steps:["Open Google Chat, space settings","Create webhook and copy URL"],testTarget:""},weixin:{icon:"🔴",category:"Chat",steps:["Get Weixin iLink bot token","Paste token below"],testTarget:""},sms:{icon:"📲",category:"Chat",steps:["Get Twilio account SID + auth token","Register a phone number","Paste credentials below"],testTarget:""},irc:{icon:"💻",category:"Chat",steps:["Choose an IRC server (e.g. irc.libera.chat)","Set nickname + channel and paste below"],testTarget:""},simplex:{icon:"📨",category:"Chat",steps:["Run local simplex-chat daemon","Paste WebSocket URL (ws://127.0.0.1:5225)"],testTarget:""},homeassistant:{icon:"🏠",category:"IoT",steps:["Open Home Assistant Profile","Create long-lived access token and paste below"],testTarget:""}};function sbe(){const[e,t]=x.useState(null),[n,r]=x.useState("all"),[a,s]=x.useState(null),[o,l]=x.useState(0),[c,u]=x.useState({}),[d,f]=x.useState(!1),[h,p]=x.useState(null),[g,m]=x.useState({status:"idle"}),[y,v]=x.useState(""),[S,w]=x.useState("Hello from agent-nuvira!"),[j,k]=x.useState(!1),[b,N]=x.useState(null),_=x.useRef(!0),T=x.useCallback(async()=>{const R=await K.getPlatformConfigs();_.current&&t(R)},[]);x.useEffect(()=>(T(),()=>{_.current=!1}),[T]);const C=R=>{s(R),l(0),u(Object.fromEntries(R.envVars.map(A=>[A.varName,A.value]))),p(null),m({status:"idle"});const B=hv[R.platform];v((B==null?void 0:B.testTarget)??""),w("Hello from agent-nuvira!"),N(null)},O=async()=>{if(!a)return;m({status:"checking"});const R=await K.verifyPlatformConfig(a.platform,c);R.ok?(m({status:"ok",info:R.info}),p({kind:"ok",text:"Verified! "+(R.info?"Connected as "+R.info+".":"Token is valid.")})):(m({status:"err",error:R.error}),p({kind:"err",text:R.error||"Verification failed."}))},P=async()=>{if(!a)return;f(!0),p(null);const R=await K.setPlatformConfig(a.platform,c);f(!1),R.ok?(p({kind:"ok",text:"Token saved! Verifying..."}),T(),l(2),O()):p({kind:"err",text:R.error||"Save failed."})},z=async()=>{if(!a||!y)return;k(!0),N(null);const R=await K.sendChannelMessage(y,S);k(!1),R.ok?N({kind:"ok",text:"Message sent via "+R.platform+"! Check your "+a.label+" app."}):N({kind:"err",text:R.error||"Send failed. Make sure the gateway is running (Gateway tab)."})};if(e===null)return i.jsx("div",{className:"empty-state",children:"Loading platforms..."});const L=e.filter(R=>R.configured).length,M=e.filter(R=>n==="configured"?R.configured:n==="unconfigured"?!R.configured:!0),D=a?hv[a.platform]:null;function W(R){return o===R?"wizard-step-dot active":"wizard-step-dot"}return i.jsxs("div",{className:"panel",children:[i.jsx(Re,{icon:"🌐",title:"Platforms — Messaging Gateway Onboarding"}),i.jsxs("div",{className:"platforms-summary",children:[i.jsxs("div",{className:"platforms-summary-stat",children:[i.jsx("span",{className:"platforms-summary-number",children:L}),i.jsx("span",{className:"platforms-summary-label",children:"configured"})]}),i.jsxs("div",{className:"platforms-summary-stat",children:[i.jsx("span",{className:"platforms-summary-number",children:e.length-L}),i.jsx("span",{className:"platforms-summary-label",children:"available"})]}),i.jsx("div",{className:"platforms-summary-filters",children:["all","configured","unconfigured"].map(R=>i.jsx("button",{type:"button",className:n===R?"platforms-filter-btn active":"platforms-filter-btn",onClick:()=>r(R),children:R==="all"?"All":R==="configured"?"Configured":"Not set up"},R))})]}),i.jsx("div",{className:"platforms-grid",children:M.map(R=>{const B=hv[R.platform];return i.jsxs("div",{className:R.configured?"platform-card configured":"platform-card",children:[i.jsxs("div",{className:"platform-card-head",children:[i.jsx("span",{className:"platform-card-icon",children:(B==null?void 0:B.icon)??"🔌"}),i.jsxs("div",{className:"platform-card-info",children:[i.jsx("span",{className:"platform-card-name",children:R.label}),i.jsx("span",{className:"platform-card-category",children:(B==null?void 0:B.category)??"Platform"})]}),i.jsx("span",{className:R.configured?"status-dot connected":"status-dot reconnecting"})]}),i.jsx("div",{className:"platform-card-vars",children:R.envVars.map(A=>i.jsxs("span",{className:A.set?"platform-var-chip set":"platform-var-chip",children:[A.varName," ",A.set?"done":"--"]},A.varName))}),i.jsxs("div",{className:"platform-card-actions",children:[R.configured?i.jsx("span",{className:"platform-card-badge",children:"Active"}):i.jsx("button",{type:"button",className:"wizard-start-btn",onClick:()=>C(R),children:"Setup"}),R.setupUrl?i.jsx("a",{href:R.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn platform-docs-link",children:"Docs"}):null]}),!R.configured&&R.setupHint?i.jsx("div",{className:"platform-card-hint",children:R.setupHint}):null]},R.platform)})}),i.jsxs("div",{className:"platforms-cli-hint",children:[i.jsx("span",{className:"admin-hint",children:"Prefer the terminal? "}),i.jsx("code",{children:"buff gateway setup telegram"}),i.jsx("span",{className:"admin-hint",children:" — same wizard from your CLI"})]}),a&&D?i.jsx("div",{className:"wizard-overlay",onClick:()=>s(null),children:i.jsxs("div",{className:"wizard-modal",onClick:R=>R.stopPropagation(),children:[i.jsxs("div",{className:"wizard-header",children:[i.jsx("span",{className:"wizard-icon",children:D.icon}),i.jsxs("span",{className:"wizard-title",children:["Getting Started: ",a.label]}),i.jsxs("div",{className:"wizard-steps-indicator",children:[i.jsx("span",{className:W(0),children:"1"}),i.jsx("span",{className:W(1),children:"2"}),i.jsx("span",{className:W(2),children:"3"})]}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>s(null),children:"X"})]}),i.jsxs("div",{className:"wizard-body",children:[o===0&&i.jsxs(i.Fragment,{children:[i.jsxs("p",{className:"wizard-section-title",children:["Step 1: Create your bot on ",a.label]}),i.jsx("ol",{className:"wizard-steps",children:D.steps.map((R,B)=>i.jsx("li",{children:R},B))}),i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>l(1),children:"I have my token — Step 2"}),a.setupUrl?i.jsx("a",{href:a.setupUrl,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn platform-docs-link",children:"Open docs"}):null]})]}),o===1&&i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"Step 2: Paste your token"}),a.envVars.map(R=>i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:R.prompt}),i.jsx("input",{type:R.secret?"password":"text",value:c[R.varName]??"",onChange:B=>u(A=>({...A,[R.varName]:B.target.value})),placeholder:R.secret?"paste your token here":"value",autoComplete:"off",spellCheck:!1,autoFocus:!0})]},R.varName)),h?i.jsx("div",{className:h.kind==="ok"?"admin-row-msg":"admin-row-msg admin-row-msg-err",children:h.text}):null,i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>l(0),children:"Back"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void P(),disabled:d,children:d?"Saving...":"Save & Verify"})]})]}),o===2&&i.jsxs(i.Fragment,{children:[i.jsx("p",{className:"wizard-section-title",children:"Step 3: Verify and test"}),g.status==="checking"&&i.jsx("div",{className:"wizard-verify-status",children:"Verifying token..."}),g.status==="ok"&&i.jsxs("div",{className:"wizard-verify-status ok",children:["Connected as ",g.info]}),g.status==="err"&&i.jsx("div",{className:"wizard-verify-status err",children:g.error}),g.status==="idle"&&(h==null?void 0:h.kind)==="ok"&&i.jsx("div",{className:"wizard-verify-status ok",children:h.text}),y&&i.jsxs("div",{className:"wizard-test-section",children:[i.jsx("p",{className:"wizard-section-title",children:"Send a test message:"}),i.jsx("div",{className:"wizard-test-row",children:i.jsx("input",{className:"wizard-test-input",value:y,onChange:R=>v(R.target.value),placeholder:"telegram:YOUR_CHAT_ID"})}),i.jsxs("div",{className:"wizard-test-row",children:[i.jsx("input",{className:"wizard-test-input",value:S,onChange:R=>w(R.target.value),placeholder:"Hello from agent-nuvira!"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void z(),disabled:j||!y,children:j?"Sending...":"Send test"})]}),b?i.jsx("div",{className:b.kind==="ok"?"admin-row-msg":"admin-row-msg admin-row-msg-err",children:b.text}):null]}),i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>l(1),children:"Edit token"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>s(null),children:"Done"})]}),!y&&i.jsxs("p",{className:"wizard-hint",children:["Token saved! Start the gateway from the Gateway tab, then send a message from your ",a.label," app."]})]})]})]})}):null]})}const obe=[{value:"us-east-1",label:"us-east-1 (N. Virginia) — most models"},{value:"us-west-2",label:"us-west-2 (Oregon) — most models"},{value:"eu-west-1",label:"eu-west-1 (Ireland) — EU coverage"},{value:"ap-southeast-1",label:"ap-southeast-1 (Singapore)"},{value:"ap-northeast-1",label:"ap-northeast-1 (Tokyo)"}],V_=[{name:"Anthropic Claude",models:["claude-haiku-4.5","claude-sonnet-4.6","claude-fable-5","claude-opus-4.6"],checked:!0},{name:"Meta Llama",models:["llama3-1-8b","llama3-1-70b","llama3-3-70b","llama4-scout","llama4-maverick"],checked:!0},{name:"Mistral AI",models:["mistral-large-3","devstral-2","ministral-3"],checked:!1},{name:"DeepSeek",models:["deepseek-v3.2","deepseek-r1"],checked:!1},{name:"Amazon Nova",models:["nova-pro","nova-lite"],checked:!1},{name:"OpenAI on Bedrock",models:["gpt-5.6-terra","gpt-oss-120b"],checked:!1},{name:"Qwen",models:["qwen3-coder-next","qwen3-32b"],checked:!1},{name:"Google Gemma",models:["gemma-3-12b"],checked:!1},{name:"xAI",models:["grok-4.6"],checked:!1}];function lbe({canWrite:e,sessionExpired:t}){const[n,r]=x.useState(null),[a,s]=x.useState(null),[o,l]=x.useState(!1),[c,u]=x.useState("overview"),d=x.useRef(!0),[f,h]=x.useState("bearer"),[p,g]=x.useState(""),[m,y]=x.useState(""),[v,S]=x.useState(""),[w,j]=x.useState("us-east-1"),[k,b]=x.useState(V_.filter(L=>L.checked).map(L=>L.name)),[N,_]=x.useState(!1),[T,C]=x.useState(null),O=x.useCallback(async()=>{const L=await K.getBedrockStatus();d.current&&r(L)},[]);x.useEffect(()=>(O(),()=>{d.current=!1}),[O]);const P=async()=>{l(!0),s(null);try{const L=await K.probeBedrock((n==null?void 0:n.region)||"us-east-1");if(!d.current)return;L.ok&&L.models&&(s(L.models),u("test"))}catch{}finally{d.current&&l(!1)}},z=async()=>{_(!0),C(null);try{const L={BEDROCK_REGION:w};f==="bearer"&&p?L.AWS_BEARER_TOKEN=p:f==="iam"&&(m&&(L.AWS_ACCESS_KEY_ID=m),v&&(L.AWS_SECRET_ACCESS_KEY=v));const M=await K.setupBedrock(L);if(!d.current)return;M.ok?(C({kind:"ok",text:"✅ Configuration saved! Running connectivity test…"}),u("overview"),await O(),setTimeout(()=>void P(),500)):C({kind:"err",text:M.error||"Save failed"})}catch{d.current&&C({kind:"err",text:"Could not reach the dashboard server."})}finally{d.current&&_(!1)}};return n===null?i.jsx("div",{className:"empty-state",children:"Loading Bedrock status…"}):i.jsxs("div",{className:"bedrock-onboarding",children:[i.jsx(Re,{icon:"🟠",title:"AWS Bedrock"}),i.jsxs("p",{className:"admin-subtitle",children:["Bedrock gives you access to Claude, Llama, Mistral, DeepSeek, and more — all through a single AWS account. Unlike other providers, Bedrock requires a ",i.jsx("strong",{children:"region"}),", ",i.jsx("strong",{children:"AWS credentials"}),", and explicit ",i.jsx("strong",{children:"model access approval"}),"."]}),T?i.jsx("div",{className:`admin-row-msg${T.kind==="ok"?"":" admin-row-msg-err"}`,children:T.text}):null,i.jsxs("div",{className:"bedrock-status-bar",children:[i.jsxs("div",{className:"bedrock-status-item",children:[i.jsx("span",{className:`status-dot ${n.configured?"connected":"reconnecting"}`}),i.jsx("span",{children:n.configured?"Configured":"Not configured"})]}),i.jsxs("div",{className:"bedrock-status-item",children:[i.jsx("span",{className:"bedrock-status-label",children:"Region:"}),i.jsx("code",{children:n.region})]}),i.jsxs("div",{className:"bedrock-status-item",children:[i.jsx("span",{className:"bedrock-status-label",children:"Auth:"}),i.jsx("code",{children:n.authMethod==="bearer"?"API Key":n.authMethod==="iam"?"IAM":"None"})]}),i.jsxs("div",{className:"bedrock-status-actions",children:[e?i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>u(c==="setup"?"overview":"setup"),children:c==="setup"?"✕ Cancel":"⚙ Setup Wizard"}):null,n.configured?i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void P(),disabled:o,children:o?"⏳ Probing…":"🔍 Test Models"}):null]})]}),c==="setup"&&i.jsxs("div",{className:"bedrock-setup-wizard",children:[i.jsx("h2",{className:"section-subtitle",children:"🚀 Bedrock Setup Wizard"}),i.jsxs("div",{className:"bedrock-wizard-step",children:[i.jsx("h4",{children:"Step 1: Authentication"}),i.jsxs("div",{className:"bedrock-auth-options",children:[i.jsxs("label",{className:`bedrock-auth-option ${f==="bearer"?"selected":""}`,children:[i.jsx("input",{type:"radio",name:"authMethod",checked:f==="bearer",onChange:()=>h("bearer")}),i.jsxs("div",{children:[i.jsx("strong",{children:"Bedrock API Key"}),i.jsx("span",{children:"Simpler — get from Bedrock → Settings → API keys"})]})]}),i.jsxs("label",{className:`bedrock-auth-option ${f==="iam"?"selected":""}`,children:[i.jsx("input",{type:"radio",name:"authMethod",checked:f==="iam",onChange:()=>h("iam")}),i.jsxs("div",{children:[i.jsx("strong",{children:"IAM Credentials"}),i.jsx("span",{children:"Full AWS SDK auth — AWS_ACCESS_KEY_ID + AWS_SECRET_ACCESS_KEY"})]})]})]}),f==="bearer"?i.jsxs("div",{className:"bedrock-wizard-fields",children:[i.jsxs("div",{className:"bedrock-setup-hint",children:[i.jsx("strong",{children:"How to get a Bedrock API key:"}),i.jsxs("ol",{children:[i.jsxs("li",{children:["Open ",i.jsx("a",{href:"https://console.aws.amazon.com/bedrock/",target:"_blank",rel:"noopener noreferrer",children:"AWS Bedrock Console"})]}),i.jsxs("li",{children:["Go to ",i.jsx("strong",{children:"Settings"})," → ",i.jsx("strong",{children:"API keys"})]}),i.jsx("li",{children:"Create a new key and paste it below"})]})]}),i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:"Bedrock API Key (Bearer token)"}),i.jsx("input",{type:"password",value:p,onChange:L=>g(L.target.value),placeholder:"••••••••••••",autoComplete:"off",spellCheck:!1})]})]}):i.jsxs("div",{className:"bedrock-wizard-fields",children:[i.jsxs("div",{className:"bedrock-setup-hint",children:[i.jsx("strong",{children:"IAM credentials"})," give full AWS SDK access. Create an IAM user with Bedrock permissions."]}),i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:"AWS_ACCESS_KEY_ID"}),i.jsx("input",{type:"text",value:m,onChange:L=>y(L.target.value),placeholder:"AKIA...",autoComplete:"off",spellCheck:!1})]}),i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:"AWS_SECRET_ACCESS_KEY"}),i.jsx("input",{type:"password",value:v,onChange:L=>S(L.target.value),placeholder:"••••••••••••",autoComplete:"off",spellCheck:!1})]})]})]}),i.jsxs("div",{className:"bedrock-wizard-step",children:[i.jsx("h4",{children:"Step 2: AWS Region"}),i.jsxs("p",{className:"admin-hint",children:["Models vary by region. ",i.jsx("strong",{children:"us-east-1"})," and ",i.jsx("strong",{children:"us-west-2"})," have the most models. ⚠️ Do NOT use eu-north-1 unless models are explicitly enabled there."]}),i.jsx("select",{className:"bedrock-region-select",value:w,onChange:L=>j(L.target.value),children:obe.map(L=>i.jsx("option",{value:L.value,children:L.label},L.value))})]}),i.jsxs("div",{className:"bedrock-wizard-step",children:[i.jsx("h4",{children:"Step 3: Model Access"}),i.jsx("p",{className:"admin-hint",children:"Bedrock requires you to request access for each model family."}),i.jsx("div",{className:"bedrock-model-access-hint",children:i.jsx("a",{href:`https://console.aws.amazon.com/bedrock/home?region=${w}#/modelaccess`,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn",children:"📖 Open Model Access in AWS Console"})}),i.jsx("div",{className:"bedrock-family-grid",children:V_.map(L=>i.jsxs("label",{className:`bedrock-family-card ${k.includes(L.name)?"selected":""}`,children:[i.jsx("input",{type:"checkbox",checked:k.includes(L.name),onChange:M=>{M.target.checked?b(D=>[...D,L.name]):b(D=>D.filter(W=>W!==L.name))}}),i.jsxs("div",{children:[i.jsx("strong",{children:L.name}),i.jsxs("span",{children:[L.models.length," model(s)"]})]})]},L.name))}),i.jsx("p",{className:"admin-hint",style:{marginTop:8},children:"In the AWS Console, select the families above and submit. Approval is usually instant for Anthropic and Meta models."})]}),i.jsxs("div",{className:"bedrock-wizard-actions",children:[i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void z(),disabled:N||f==="bearer"&&!p||f==="iam"&&(!m||!v),children:N?"⏳ Saving…":"💾 Save & Test"}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>u("overview"),children:"Cancel"})]})]}),c==="test"&&a&&i.jsxs("div",{className:"bedrock-probe-results",children:[i.jsxs("h2",{className:"section-subtitle",children:["🔍 Model Probe Results (",n.region,")"]}),i.jsx("div",{className:"bedrock-probe-grid",children:a.map(L=>i.jsxs("div",{className:`bedrock-probe-card bedrock-probe-${L.status}`,children:[i.jsx("span",{className:"bedrock-probe-icon",children:L.status==="accessible"?"✅":L.status==="permission-denied"?"🔒":L.status==="not-found"?"⚫":"❌"}),i.jsx("span",{className:"bedrock-probe-id",children:L.modelId}),i.jsx("span",{className:"bedrock-probe-status",children:L.status==="accessible"?"Ready":L.status==="permission-denied"?`Need access (HTTP ${L.httpStatus})`:L.status==="not-found"?"Not in this region":"Error"})]},L.modelId))}),a.some(L=>L.status==="permission-denied")&&i.jsxs("div",{className:"bedrock-probe-action",children:[i.jsxs("p",{children:["Some models exist in ",n.region," but access is not approved."]}),i.jsx("a",{href:`https://console.aws.amazon.com/bedrock/home?region=${n.region}#/modelaccess`,target:"_blank",rel:"noopener noreferrer",className:"admin-mini-btn",children:"🔓 Request Model Access in AWS Console →"})]}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>u("overview"),style:{marginTop:12},children:"← Back"})]}),!n.configured&&c==="overview"&&i.jsxs("div",{className:"bedrock-getting-started",children:[i.jsx("h2",{className:"section-subtitle",children:"📋 Getting Started with Bedrock"}),i.jsxs("div",{className:"bedrock-steps",children:[i.jsxs("div",{className:"bedrock-step",children:[i.jsx("span",{className:"bedrock-step-num",children:"1"}),i.jsxs("div",{children:[i.jsx("strong",{children:"Create an AWS account"})," (or use existing)",i.jsxs("span",{children:["New to AWS? Sign up at ",i.jsx("a",{href:"https://aws.amazon.com/",target:"_blank",rel:"noopener noreferrer",children:"aws.amazon.com"})]})]})]}),i.jsxs("div",{className:"bedrock-step",children:[i.jsx("span",{className:"bedrock-step-num",children:"2"}),i.jsxs("div",{children:[i.jsx("strong",{children:"Get Bedrock API key"}),i.jsx("span",{children:"Bedrock → Settings → API keys → Create key"})]})]}),i.jsxs("div",{className:"bedrock-step",children:[i.jsx("span",{className:"bedrock-step-num",children:"3"}),i.jsxs("div",{children:[i.jsx("strong",{children:"Request model access"}),i.jsx("span",{children:"Bedrock → Model access → Select Claude, Llama, etc. → Submit"})]})]}),i.jsxs("div",{className:"bedrock-step",children:[i.jsx("span",{className:"bedrock-step-num",children:"4"}),i.jsxs("div",{children:[i.jsx("strong",{children:"Configure in this wizard"}),i.jsx("span",{children:'Click "Setup Wizard" above to enter your credentials'})]})]})]})]}),n.configured&&c==="overview"&&!a&&i.jsx("div",{className:"bedrock-quick-status",children:i.jsxs("p",{className:"admin-hint",children:["Bedrock is configured. Click ",i.jsx("strong",{children:"🔍 Test Models"})," to verify connectivity and discover which models are accessible in ",n.region,"."]})})]})}const pv=["whatsapp","whatsapp_cloud","telegram","signal","slack","discord","email"];function cbe(){const[e,t]=x.useState([]),[n,r]=x.useState(!0),[a,s]=x.useState("all"),[o,l]=x.useState(null),[c,u]=x.useState(""),[d,f]=x.useState(""),[h,p]=x.useState(null),[g,m]=x.useState({}),[y,v]=x.useState({}),[S,w]=x.useState({}),[j,k]=x.useState(null),[b,N]=x.useState(!1),[_,T]=x.useState(!1),[C,O]=x.useState(!1),[P,z]=x.useState(12e4),L=x.useCallback(async()=>{r(!0);const Q=await K.getContacts();Q.ok&&Q.contacts&&t(Q.contacts);const X=await K.gatewayPolicies();if(X.ok&&X.policies){const ae={};for(const ce of pv){const H=X.policies[ce];H&&(ae[ce]={...H.outboundSenders!==void 0?{outboundSenders:H.outboundSenders}:{},...H.requireApprovedTarget!==void 0?{requireApprovedTarget:H.requireApprovedTarget}:{}})}m(ae),v(ae)}T(X.askUserWait===!0),O(X.askUserWait===!0),typeof X.askUserTimeoutMs=="number"&&z(X.askUserTimeoutMs),r(!1)},[]);x.useEffect(()=>{L()},[L]);const M=e.filter(Q=>a==="all"||Q.status===a),D=async Q=>{p(null);const X=await K.approveContact(Q.platform,Q.name);p(X.ok?{kind:"ok",text:`✅ ${Q.name} approved.`}:{kind:"err",text:X.error||"Failed."}),L()},W=async Q=>{p(null);const X=await K.rejectContact(Q.platform,Q.name);p(X.ok?{kind:"ok",text:`🚫 ${Q.name} rejected.`}:{kind:"err",text:X.error||"Failed."}),L()},R=async Q=>{p(null);const X=await K.deleteContact(Q.platform,Q.name);p(X.ok?{kind:"ok",text:`🗑️ ${Q.name} deleted.`}:{kind:"err",text:X.error||"Failed."}),L()},B=async()=>{if(!o)return;p(null);const Q=await K.updateContact(o.platform,o.id,{name:c,phone:d});p(Q.ok?{kind:"ok",text:`✅ ${c} updated.`}:{kind:"err",text:Q.error||"Failed."}),l(null),L()},A=Q=>Q==="approved"?i.jsx("span",{className:"contact-status-badge approved",children:"✅ Approved"}):Q==="pending"?i.jsx("span",{className:"contact-status-badge pending",children:"⏳ Pending"}):i.jsx("span",{className:"contact-status-badge rejected",children:"🚫 Rejected"}),J=Q=>({telegram:"✈️",whatsapp:"📱",whatsapp_cloud:"📱",email:"📧",slack:"💬",discord:"🎮"})[Q]||"🔌",F=Q=>Q?new Date(Q).toLocaleString():"—",$=Q=>{const X=(S[Q]??"").trim();X&&(m(ae=>{var xe;const ce={...ae[Q]??{}},H=ce.outboundSenders??((xe=y[Q])==null?void 0:xe.outboundSenders)??[];return H.some(we=>we.toLowerCase()===X.toLowerCase())||(ce.outboundSenders=[...H,X]),{...ae,[Q]:ce}}),w(ae=>({...ae,[Q]:""})))},ie=(Q,X)=>{m(ae=>{var xe;const ce={...ae[Q]??{}},H=ce.outboundSenders??((xe=y[Q])==null?void 0:xe.outboundSenders)??[];return ce.outboundSenders=H.filter(we=>we.toLowerCase()!==X.toLowerCase()),{...ae,[Q]:ce}})},de=Q=>{m(X=>{const ae={...X[Q]??{}};return ae.requireApprovedTarget=ae.requireApprovedTarget!==!0,{...X,[Q]:ae}})},me=Q=>{m(X=>{const ae={...X[Q]??{}};return delete ae.outboundSenders,{...X,[Q]:ae}})},Te=async()=>{N(!0),k(null);const Q={};for(const ce of pv){const H=g[ce]??{},xe=y[ce]??{};(JSON.stringify(H.outboundSenders??null)!==JSON.stringify(xe.outboundSenders??null)||!!H.requireApprovedTarget!=!!xe.requireApprovedTarget)&&(Q[ce]={...H.outboundSenders!==void 0?{outboundSenders:H.outboundSenders}:{outboundSenders:null},requireApprovedTarget:!!H.requireApprovedTarget})}const X=_!==C;if(Object.keys(Q).length===0&&!X){N(!1),k({kind:"ok",text:"No changes to save."});return}const ae=await K.saveGatewayPolicies(Q,void 0,void 0,{wait:_,timeoutMs:P});ae.ok?(k({kind:"ok",text:"✅ Send authority saved."}),L()):k({kind:"err",text:ae.error||"Failed to save send authority."}),N(!1)};return i.jsxs("div",{className:"panel contacts-page",children:[i.jsx(Re,{icon:"📇",title:"Contacts — Outbound Messaging Directory",description:"Manage who the bot can send messages to. Users auto-register on first Telegram message."}),h&&i.jsxs("div",{className:`admin-row-msg ${h.kind==="err"?"admin-row-msg-err":""}`,children:[h.text,i.jsx("button",{className:"admin-mini-btn",onClick:()=>p(null),children:"✕"})]}),i.jsxs("div",{className:"contacts-filters",children:[["all","approved","pending","rejected"].map(Q=>i.jsx("button",{type:"button",className:a===Q?"platforms-filter-btn active":"platforms-filter-btn",onClick:()=>s(Q),children:Q==="all"?`All (${e.length})`:Q==="approved"?`✅ Approved (${e.filter(X=>X.status==="approved").length})`:Q==="pending"?`⏳ Pending (${e.filter(X=>X.status==="pending").length})`:`🚫 Rejected (${e.filter(X=>X.status==="rejected").length})`},Q)),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void L(),children:"🔄 Refresh"})]}),n?i.jsx("div",{className:"empty-state",children:"Loading contacts..."}):M.length===0?i.jsxs("div",{className:"empty-state",children:[i.jsxs("p",{children:["No contacts",a!=="all"?` with status "${a}"`:"","."]}),i.jsx("p",{className:"admin-hint",children:'Contacts auto-register when users message the bot on Telegram. They appear here as "Pending" until you approve them.'})]}):i.jsx("div",{className:"contacts-table-wrapper",children:i.jsxs("table",{className:"contacts-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Platform"}),i.jsx("th",{children:"Name"}),i.jsx("th",{children:"ID"}),i.jsx("th",{children:"Phone"}),i.jsx("th",{children:"Status"}),i.jsx("th",{children:"Registered"}),i.jsx("th",{children:"Actions"})]})}),i.jsx("tbody",{children:M.map(Q=>i.jsxs("tr",{className:`contact-row status-${Q.status}`,children:[i.jsxs("td",{children:[J(Q.platform)," ",Q.platform]}),i.jsx("td",{className:"contact-name",children:Q.name}),i.jsx("td",{className:"contact-id",children:i.jsx("code",{children:Q.id})}),i.jsx("td",{className:"contact-phone",children:Q.phone||"—"}),i.jsx("td",{children:A(Q.status)}),i.jsx("td",{className:"contact-date",children:F(Q.registeredAt||Q.addedAt)}),i.jsxs("td",{className:"contact-actions",children:[Q.status!=="approved"&&i.jsx("button",{className:"admin-mini-btn contact-approve-btn",onClick:()=>void D(Q),children:"✅ Approve"}),Q.status!=="rejected"&&i.jsx("button",{className:"admin-mini-btn contact-reject-btn",onClick:()=>void W(Q),children:"🚫 Reject"}),i.jsx("button",{className:"admin-mini-btn",onClick:()=>{l(Q),u(Q.name),f(Q.phone||"")},children:"✏️ Edit"}),i.jsx("button",{className:"admin-mini-btn contact-delete-btn",onClick:()=>void R(Q),children:"🗑️"})]})]},`${Q.platform}:${Q.id}`))})]})}),i.jsxs("div",{className:"panel-header",style:{marginTop:28},children:[i.jsx("h2",{children:"🔐 Send authority — who may message others"}),i.jsxs("p",{className:"admin-hint",children:["Controls who can ask the agent to send a message to ",i.jsx("strong",{children:"someone else"})," through the gateway (e.g. “send this poem to my brother on WhatsApp”). This is separate from a contact’s approval status above, which only gates sending ",i.jsx("em",{children:"to"})," that person. Left empty, a platform ",i.jsx("strong",{children:"inherits"})," its allowed-users list (open). Add ",i.jsx("code",{children:"Allow-All"})," to allow everyone, or list specific senders to restrict it."]})]}),j&&i.jsxs("div",{className:`admin-row-msg ${j.kind==="err"?"admin-row-msg-err":""}`,children:[j.text,i.jsx("button",{className:"admin-mini-btn",onClick:()=>k(null),children:"✕"})]}),i.jsx("div",{className:"hub-permissions",children:pv.map(Q=>{const X=g[Q]??{},ae=X.outboundSenders??[],ce=X.outboundSenders===void 0;return i.jsxs("div",{className:"hub-card",children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsxs("span",{className:"hub-chip",children:[J(Q)," ",Q]}),ce?i.jsx("span",{className:"hub-chip",children:"open"}):i.jsx("span",{className:"hub-chip",children:"restricted"})]}),i.jsx("div",{className:"hub-alias-list",children:ce?i.jsx("span",{className:"admin-hint",children:"Open — anyone who can trigger the agent may send to others."}):ae.length===0?i.jsx("span",{className:"admin-hint",children:"(empty — nobody may send to others)"}):ae.map(H=>i.jsxs("div",{className:"hub-alias-row",children:[i.jsx("span",{className:"hub-chip",children:H}),i.jsx("button",{className:"admin-refresh-btn",disabled:b,onClick:()=>ie(Q,H),children:"✕"})]},`sa-${Q}-${H}`))}),i.jsxs("div",{className:"hub-send-form",children:[i.jsx("input",{type:"text","aria-label":`Allowed sender for ${Q}`,value:S[Q]??"",onChange:H=>w(xe=>({...xe,[Q]:H.target.value})),placeholder:"sender id, or Allow-All",disabled:b}),i.jsx("button",{className:"admin-refresh-btn",disabled:b||!(S[Q]??"").trim(),onClick:()=>$(Q),children:"+ Sender"}),ce?null:i.jsx("button",{className:"admin-refresh-btn",disabled:b,onClick:()=>me(Q),children:"↺ Reset to open"})]}),i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6,marginTop:6},children:[i.jsx("input",{type:"checkbox",checked:!!X.requireApprovedTarget,disabled:b,onChange:()=>de(Q)}),i.jsx("span",{className:"admin-hint",children:"Require approved recipients"})]})]},`sa-${Q}`)})}),i.jsxs("div",{className:"hub-card",style:{marginTop:16},children:[i.jsxs("div",{className:"hub-card-top",children:[i.jsx("span",{className:"hub-chip",children:"🧠 Clarifying questions"}),_?i.jsx("span",{className:"hub-chip",children:"wait for reply"}):i.jsx("span",{className:"hub-chip",children:"assume option 1"}),_!==C?i.jsx("span",{className:"hub-chip",children:"· unsaved"}):null]}),i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6,marginTop:6},children:[i.jsx("input",{type:"checkbox",checked:_,disabled:b,onChange:()=>T(Q=>!Q)}),i.jsxs("span",{className:"admin-hint",children:["When the agent asks a question on a channel, ",i.jsx("strong",{children:"wait for the sender's reply"})," before acting. Off (default): the question is sent and the ",i.jsx("em",{children:"first"})," option is assumed immediately — so a reply typed afterwards arrives too late to change anything."]})]}),_?i.jsxs("label",{style:{display:"inline-flex",alignItems:"center",gap:6,marginTop:6},children:[i.jsx("span",{className:"admin-hint",children:"Reply window (seconds)"}),i.jsx("input",{type:"number",min:5,max:600,value:Math.round(P/1e3),disabled:b,onChange:Q=>z(Math.max(5,Math.min(600,Number(Q.target.value)||120))*1e3),style:{width:90}}),i.jsx("span",{className:"admin-hint",children:"then the first option is used, and the timeout is logged."})]}):null]}),i.jsx("div",{style:{marginTop:12},children:i.jsx("button",{className:"admin-refresh-btn",disabled:b,onClick:()=>void Te(),children:"💾 Save send authority"})}),o&&i.jsx("div",{className:"wizard-overlay",onClick:()=>l(null),children:i.jsxs("div",{className:"wizard-modal",onClick:Q=>Q.stopPropagation(),children:[i.jsxs("div",{className:"wizard-header",children:[i.jsx("span",{className:"wizard-icon",children:"✏️"}),i.jsxs("span",{className:"wizard-title",children:["Edit Contact: ",o.name]}),i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>l(null),children:"✕"})]}),i.jsxs("div",{className:"wizard-body",children:[i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:"Name"}),i.jsx("input",{type:"text",value:c,onChange:Q=>u(Q.target.value)})]}),i.jsxs("label",{className:"hub-send-target",children:[i.jsx("span",{className:"admin-hint",children:"Phone (optional, for flexible lookup)"}),i.jsx("input",{type:"text",value:d,onChange:Q=>f(Q.target.value),placeholder:"+918800123456"})]}),i.jsxs("p",{className:"admin-hint",children:["Platform: ",i.jsx("strong",{children:o.platform})," | ID: ",i.jsx("code",{children:o.id})]}),i.jsxs("div",{className:"wizard-nav",children:[i.jsx("button",{type:"button",className:"admin-mini-btn",onClick:()=>l(null),children:"Cancel"}),i.jsx("button",{type:"button",className:"admin-refresh-btn",onClick:()=>void B(),children:"Save"})]})]})]})})]})}const Y_=["proven-dead","proof-expired","parked","never-verified"];function Bo(e){if(e<=0)return"never";const t=Math.floor(e/1e3),n=Math.floor(t/60),r=Math.floor(n/60),a=Math.floor(r/24);return a>30?`${a}d ago`:a>0?`${a}d ${r%24}h ago`:r>0?`${r}h ${n%60}m ago`:n>0?`${n}m ago`:`${t}s ago`}function ube(e){if(e<=0)return"never";const t=(Date.now()-e)/(24*60*60*1e3);return t<1?`${(t*24).toFixed(1)}h`:`${t.toFixed(2)}d`}function dbe({entry:e}){const t=Date.now(),n=t-e.lastProbedAt,r=t-e.lastVerifiedAt,a=t-e.lastUsedAt,s=Math.min(100,n/(30*24*60*60*1e3)*100),o=e.lastVerifiedAt>0?Math.min(100,r/(30*24*60*60*1e3)*100):-1,l=e.lastUsedAt>0?Math.min(100,a/(30*24*60*60*1e3)*100):-1;return i.jsxs("div",{className:"timeline-bar-container",children:[i.jsx("div",{className:"timeline-bar",title:`Last probed: ${Bo(n)}`,children:i.jsx("div",{className:"timeline-bar-fill probe",style:{width:`${s}%`}})}),o>=0&&i.jsx("div",{className:"timeline-bar small",title:`Last verified: ${Bo(r)}`,children:i.jsx("div",{className:"timeline-bar-fill verify",style:{width:`${o}%`}})}),l>=0&&i.jsx("div",{className:"timeline-bar small",title:`Last used: ${Bo(a)}`,children:i.jsx("div",{className:"timeline-bar-fill use",style:{width:`${l}%`}})})]})}function X_(e){return{fontSize:11,padding:"2px 8px",borderRadius:4,background:`${e}20`,color:e,border:`1px solid ${e}40`,whiteSpace:"nowrap"}}function fbe(){const[e,t]=x.useState(null),[n,r]=x.useState(!0),[a,s]=x.useState(null),[o,l]=x.useState("all"),[c,u]=x.useState("provider"),d=x.useRef(!0),f=o0(),h=x.useCallback(async()=>{try{const B=await fetch("/api/model-timeline");if(!B.ok)throw new Error("Failed to fetch timeline data");const A=await B.json();d.current&&(t(A),s(null))}catch(B){d.current&&s(B instanceof Error?B.message:"Failed to load timeline")}finally{d.current&&r(!1)}},[]),[p,g]=x.useState(null),[m,y]=x.useState(10),[v,S]=x.useState(!1),[w,j]=x.useState(null),k=x.useRef(!1),b=x.useCallback(async()=>{const B=await K.fetchVerifyBacklog();if(!d.current)return;g(B);const A=(B==null?void 0:B.status)==="running";k.current&&!A&&h(),k.current=A},[h]);x.useEffect(()=>{d.current=!0,h(),b();const B=setInterval(()=>void h(),3e4);return()=>{d.current=!1,clearInterval(B)}},[h,b]);const N=(p==null?void 0:p.status)==="running";x.useEffect(()=>{if(!N)return;const B=setInterval(()=>void b(),1e3);return()=>clearInterval(B)},[N,b]);const _=x.useCallback(async()=>{S(!0),j(null);const B=await K.startVerifyBacklog(m);if(d.current){if(B.state&&g(B.state),!B.ok){const A=B.refusal??B.error??"Could not start the run.";j({text:A,kind:B.refusal?"info":"error"})}S(!1)}},[m]);if(n)return i.jsxs("div",{className:"admin-header",children:[i.jsx(Re,{icon:"📅",title:"Model Discovery Timeline"}),i.jsxs("div",{className:"loading-state",children:[i.jsx("div",{className:"loading-spinner"}),i.jsx("p",{children:"Loading timeline..."})]})]});if(a)return i.jsxs("div",{className:"admin-header",children:[i.jsx(Re,{icon:"📅",title:"Model Discovery Timeline"}),i.jsx("div",{className:"admin-row-msg admin-row-msg-err",children:a})]});if(e&&!e.counts)return i.jsxs("div",{className:"admin-header",children:[i.jsx(Re,{icon:"📅",title:"Model Discovery Timeline"}),i.jsxs("div",{className:"admin-row-msg admin-row-msg-err",children:["This dashboard server predates the reachability view. Restart it (",i.jsx("code",{children:"nuvira dashboard stop"}),", then start it again) and reload this page."]})]});const T=(e==null?void 0:e.entries)??[],C=e==null?void 0:e.counts,O=e==null?void 0:e.reachabilityCopy,P=e==null?void 0:e.freshnessCopy,z=C?Y_.reduce((B,A)=>B+(C[A]??0),0):0,L=[{key:"tracked-models",icon:"🧠",value:at((e==null?void 0:e.totalModels)??0),label:"Tracked models (registry)",tone:"accent"},{key:"tracked-providers",icon:"🏢",value:at((f==null?void 0:f.trackedProviders)??0),label:"Tracked providers (registry)",tone:"accent"}];f&&L.push({key:"listed-models",icon:"📡",value:at(f.listedModels),label:"Listed models (live probe)",tone:"warn"},{key:"listed-providers",icon:"🛰️",value:at(f.listedProviders),label:"Listed providers (live probe)",tone:"warn"}),L.push({key:"routable",icon:"✅",value:at((C==null?void 0:C.routable)??0),label:"Routable now",tone:"ok"},{key:"not-routable",icon:"🚫",value:at(z),label:"Not routable",tone:"danger"});const M=T.filter(B=>o==="routable"?B.reachability==="routable":o==="not-routable"?B.reachability!=="routable":!0),D=[...M].sort((B,A)=>c==="provider"?B.provider.localeCompare(A.provider)||B.model.localeCompare(A.model):A.lastProbedAt-B.lastProbedAt),W=new Map;for(const B of D){const A=W.get(B.provider);A?A.push(B):W.set(B.provider,[B])}const R=B=>({background:B?"var(--accent-green)":"var(--bg-hover)",border:`1px solid ${B?"var(--accent-green)":"var(--border)"}`,padding:"4px 12px",fontSize:12,cursor:"pointer"});return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"📅",title:"Model Discovery Timeline"}),i.jsxs("p",{className:"section-description",children:["The registry's age profile: when each tracked model was last probed, last ",i.jsx("em",{children:"verified"}),", and last used — and which ones routing can actually reach. The Models page answers “is it usable right now”; this one answers “what is ageing out”."]}),i.jsx(Bi,{tiles:L}),C?i.jsx("div",{style:{display:"flex",gap:14,flexWrap:"wrap",marginBottom:14,fontSize:11},children:Y_.map(B=>{const A=O==null?void 0:O[B];return i.jsxs("span",{title:A==null?void 0:A.blurb,children:[i.jsx("span",{style:{color:(A==null?void 0:A.color)??"var(--text-secondary)"},children:"■"})," ",i.jsxs("span",{style:{color:"var(--text-secondary)"},children:[(A==null?void 0:A.label)??B,": ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:C[B]??0})]})]},B)})}):null,p?i.jsxs("div",{style:{background:"var(--bg-card)",border:"1px solid var(--border)",borderRadius:8,padding:"12px 14px",marginBottom:16},"data-testid":"verify-backlog-panel",children:[i.jsxs("div",{style:{display:"flex",alignItems:"center",gap:10,flexWrap:"wrap"},children:[i.jsx("span",{style:{fontWeight:600,color:"var(--text-primary)"},children:"Work the backlog down"}),i.jsxs("span",{style:{fontSize:11,color:"var(--text-secondary)",flex:1,minWidth:260},children:["Each check is a real 1-token generation against one of your provider keys — not a listing lookup. A never-verified model is an ",i.jsx("em",{children:"unknown"}),", not a broken one: a check either proves it routable or marks it proven dead. Runs are bounded and one at a time."]}),i.jsxs("label",{style:{fontSize:11,color:"var(--text-secondary)",display:"flex",alignItems:"center",gap:6},children:["How many",i.jsx("input",{type:"number",min:1,max:p.maxCount??25,value:m,disabled:v||N,"aria-label":"how many models to verify",onChange:B=>y(Number(B.target.value)),style:{width:64,background:"var(--bg-primary)",color:"var(--text-primary)",border:"1px solid var(--border)",borderRadius:4,padding:"3px 6px",fontSize:12}})]}),i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:v||N||!(m>0),onClick:()=>void _(),style:{background:"var(--accent-green)",border:"1px solid var(--accent-green)",padding:"4px 12px",fontSize:12,cursor:v||N?"default":"pointer"},"data-testid":"verify-backlog-start",children:N?"⏳ Verifying…":v?"Starting…":`▶ Verify next ${m} now`})]}),N?i.jsxs("div",{className:"env-var-notice","data-testid":"verify-backlog-progress",children:["Probing"," ",i.jsx("code",{children:p.current?`${p.current.provider}/${p.current.model}`:"…"})," ","— ",p.processed,"/",p.planned," done · ",p.verified," verified · ",p.unavailable," proven dead"]}):null,!N&&p.status==="done"?i.jsxs("div",{className:"env-var-notice","data-testid":"verify-backlog-summary",children:["✅ ",p.verified," verified · ⛔ ",p.unavailable," proven unavailable · ⚠️ ",p.errored," errored · ⏭"," ",p.skipped," skipped",p.remaining!==null?` — ${p.remaining} still never verified`:""]}):null,(p.results??[]).length>0?i.jsx("div",{style:{display:"flex",gap:10,flexWrap:"wrap",marginTop:8},children:(p.results??[]).map(B=>i.jsxs("span",{style:{fontSize:11,color:"var(--text-secondary)"},title:B.outcome==="verified"?"Proven routable — a 1-token call succeeded":B.outcome==="unavailable"?"Proven dead — the provider refused it (403/404), re-probing will not help":B.outcome==="skipped"?"Skipped — verified recently enough":"Errored — transient, still unknown, will be retried next run",children:[B.outcome==="verified"?"✅":B.outcome==="unavailable"?"⛔":B.outcome==="skipped"?"⏭":"⚠️"," ",i.jsxs("code",{children:[B.provider,"/",B.model]})]},`${B.provider}:${B.model}`))}):null,w?i.jsx("div",{className:`env-var-notice${w.kind==="error"?" env-var-notice-error":""}`,"data-testid":"verify-backlog-message",children:w.text}):p.status==="idle"&&p.refusal?i.jsx("div",{className:"env-var-notice","data-testid":"verify-backlog-message",children:p.refusal}):null]}):null,i.jsxs("div",{style:{display:"flex",gap:8,marginBottom:16,flexWrap:"wrap"},children:[i.jsx("div",{style:{display:"flex",gap:4},children:["all","routable","not-routable"].map(B=>i.jsx("button",{className:`admin-refresh-btn ${o===B?"active":""}`,onClick:()=>l(B),style:R(o===B),children:B==="all"?"All":B==="routable"?"Routable":"Not routable"},B))}),i.jsx("div",{style:{display:"flex",gap:4},children:["provider","lastProbed"].map(B=>i.jsxs("button",{className:`admin-refresh-btn ${c===B?"active":""}`,onClick:()=>u(B),style:R(c===B),children:["Sort: ",B==="lastProbed"?"Last seen":"Provider"]},B))}),i.jsx("button",{className:"admin-refresh-btn",onClick:()=>void h(),style:{background:"var(--bg-hover)",border:"1px solid var(--border)",padding:"4px 12px",fontSize:12,cursor:"pointer"},children:"🔄 Refresh"})]}),i.jsxs("div",{style:{display:"flex",gap:16,marginBottom:4,fontSize:11,color:"var(--text-secondary)",flexWrap:"wrap"},children:[i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-blue)"},children:"■"})," Probe (last seen in the provider's catalog)"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-green)"},children:"■"})," Verified (last success)"]}),i.jsxs("span",{children:[i.jsx("span",{style:{color:"var(--accent-yellow)"},children:"■"})," Used (last invocation)"]})]}),i.jsxs("div",{style:{marginBottom:12,fontSize:11,color:"var(--text-secondary)"},children:[i.jsx("strong",{style:{color:"var(--text-primary)"},children:"Fresh"})," means the provider still lists it."," ",i.jsx("strong",{style:{color:"var(--text-primary)"},children:"Routable"})," means a turn has been proven to work on it within"," ",(e==null?void 0:e.freshDays)??7," days. A fresh model that was never verified is an unknown, not a failure — background spot-checks work through those a few at a time."]}),i.jsx("div",{style:{display:"flex",flexDirection:"column",gap:8},children:Array.from(W.entries()).map(([B,A])=>{const J=A.filter(F=>F.reachability==="routable").length;return i.jsxs("div",{style:{background:"var(--bg-card)",borderRadius:8,border:"1px solid var(--border)",overflow:"hidden"},children:[i.jsxs("div",{style:{padding:"10px 14px",borderBottom:"1px solid var(--border)",display:"flex",alignItems:"center",gap:8},children:[i.jsx("span",{style:{fontSize:16},children:B==="groq"?"⚡":B==="gemini"?"🌀":B==="local"?"💻":"🤖"}),i.jsx("span",{style:{fontWeight:600,color:"var(--text-primary)"},children:B}),i.jsxs("span",{style:{fontSize:12,color:"var(--text-secondary)"},children:["(",A.length," shown · ",J," routable)"]})]}),i.jsx("div",{style:{padding:"8px 14px"},children:A.map(F=>{const $=Date.now(),ie=O==null?void 0:O[F.reachability],de=P==null?void 0:P[F.freshness],me=(ie==null?void 0:ie.color)??"var(--text-secondary)";return i.jsxs("div",{"data-testid":`timeline-row-${F.provider}-${F.model}`,style:{display:"flex",alignItems:"center",gap:12,padding:"6px 0",borderBottom:"1px solid var(--border-light)"},children:[i.jsxs("div",{style:{flex:1,minWidth:0},children:[i.jsx("div",{style:{fontSize:13,color:"var(--text-primary)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:F.model}),i.jsxs("div",{style:{fontSize:11,color:"var(--text-secondary)",display:"flex",gap:12,flexWrap:"wrap"},children:[i.jsxs("span",{children:["Probed: ",Bo($-F.lastProbedAt)]}),i.jsxs("span",{children:["Verified: ",F.lastVerifiedAt>0?Bo($-F.lastVerifiedAt):"never"]}),F.lastUsedAt>0&&i.jsxs("span",{children:["Used: ",Bo($-F.lastUsedAt)]}),F.latencyMs!==void 0&&i.jsxs("span",{children:[F.latencyMs,"ms"]}),F.errorRate>0&&i.jsxs("span",{style:{color:F.errorRate>.5?"var(--accent-red)":"var(--accent-yellow)"},children:["err ",(F.errorRate*100).toFixed(0),"%"]}),F.daysSinceVerify!==null&&F.daysSinceVerify>7&&i.jsxs("span",{style:{color:"var(--accent-yellow)"},children:["proof ",ube(F.lastVerifiedAt)," old"]})]})]}),i.jsx(dbe,{entry:F}),de&&i.jsx("span",{style:X_(de.color),title:de.blurb,children:de.label}),i.jsx("span",{style:X_(me),title:(ie==null?void 0:ie.blurb)??F.reachability,"data-testid":`reachability-${F.provider}-${F.model}`,children:((ie==null?void 0:ie.label)??F.reachability).toUpperCase()})]},F.model)})})]},B)})}),M.length===0&&i.jsx("div",{style:{textAlign:"center",padding:"40px 20px",color:"var(--text-secondary)"},children:o==="routable"&&T.length>0?"No model is routable right now — every tracked model is unverified, parked, expired or dead. The Models page shows what each provider would offer live.":"No models match the current filter"})]})}const Q_=7*24*60*60*1e3;function Z_(e){const t=Math.max(0,Math.round((Date.now()-e)/6e4));if(t<1)return"just now";if(t<60)return`${t}m ago`;const n=Math.round(t/60);return n<24?`${n}h ago`:`${Math.round(n/24)}d ago`}function J_(e){return(e||"").split(/[\\/]/).filter(Boolean).slice(-2).join("/")||e}function hbe(){const[e,t]=x.useState(null),[n,r]=x.useState(!1),[a,s]=x.useState(!1),[o,l]=x.useState(null),c=x.useCallback(async()=>{const p=await K.fetchContinuity();t(p),r(!0)},[]);x.useEffect(()=>{let p=!0;return K.fetchContinuity().then(g=>{p&&(t(g),r(!0))}),()=>{p=!1}},[]);const u=x.useCallback(async(p,g,m)=>{s(!0),l(null);const y=await K.clearContinuity(p,g,m);y.ok?l(`Removed ${y.removed??0} record(s).`):l(y.error||"Could not clear that."),await c(),s(!1)},[c]);if(!n)return i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"🔗 Continuity"}),i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading continuity data…"})})]});const d=e===null,f=(e==null?void 0:e.sessions)??[],h=(e==null?void 0:e.recall)??[];return i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"🔗 Continuity"}),i.jsx("p",{className:"memory-namespace-note",children:"The conversation snapshots that let a crashed or killed turn be resumed, and the index of past asks used for semantic recall. Both are history — they never decide that work is done. Turn the switches on or off on the Process Environment page."}),d?i.jsxs("p",{className:"memory-namespace-note",children:["Continuity data is unavailable — this dashboard server has no ",i.jsx("code",{children:"/api/continuity"})," endpoint."]}):i.jsxs(i.Fragment,{children:[i.jsxs("p",{className:"memory-backend",children:["Session store: ",i.jsx("code",{children:e.toggles.sessionStore?"ON":"OFF"})," · ","Semantic recall: ",i.jsx("code",{children:e.toggles.sessionRecall?"ON":"OFF"})]}),o?i.jsx("div",{className:"env-var-notice",children:o}):null,i.jsxs("h3",{className:"section-subtitle",children:["Stored sessions (",f.length,")"]}),f.length===0?i.jsx("p",{className:"memory-namespace-note",children:"No session snapshots yet."}):i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"memory-list",children:f.map(p=>i.jsxs("div",{className:"memory-item",children:[i.jsxs("span",{className:"memory-project",children:[p.open?"↩️ OPEN":"✓ closed"," · ",p.goal]}),i.jsxs("span",{className:"memory-count",children:[J_(p.cwd)," · ",p.steps," step(s) · ",Z_(p.savedAt)]}),i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:a,"aria-label":`Forget session ${p.goal}`,onClick:()=>void u("session",p.id),children:"🗑️ Forget"})]},p.id))}),i.jsxs("div",{className:"admin-row-actions",children:[i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:a,title:"Delete only session snapshots saved more than 7 days ago",onClick:()=>void u("sessions",void 0,Q_),children:"🗑️ Forget older than a week"}),i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:a||f.length===0,onClick:()=>void u("sessions"),children:"🗑️ Forget all sessions"})]})]}),i.jsxs("h3",{className:"section-subtitle",children:["Recalled past asks (",h.length,")"]}),h.length===0?i.jsx("p",{className:"memory-namespace-note",children:"Nothing indexed for recall yet."}):i.jsxs(i.Fragment,{children:[i.jsx("div",{className:"memory-list",children:h.map(p=>i.jsxs("div",{className:"memory-item",children:[i.jsxs("span",{className:"memory-project",children:[p.outcome,": ",p.goal]}),i.jsxs("span",{className:"memory-count",children:[J_(p.projectPath)," · ",Z_(p.savedAt)]}),i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:a,"aria-label":`Forget recall entry ${p.goal}`,onClick:()=>void u("recall-entry",p.id),children:"🗑️ Forget"})]},p.id))}),i.jsxs("div",{className:"admin-row-actions",children:[i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:a,title:"Delete only recall entries indexed more than 7 days ago",onClick:()=>void u("recall",void 0,Q_),children:"🗑️ Forget older than a week"}),i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:a||h.length===0,onClick:()=>void u("recall"),children:"🗑️ Forget all recall entries"})]})]})]})]})}function rs(e){return e==null?"0":e>=1e6?(e/1e6).toFixed(1)+"M":e>=1e3?(e/1e3).toFixed(1)+"K":kt(e)}function pbe(e){return e==null?"0%":(e*100).toFixed(1)+"%"}const eA={"faiss-native":"native FAISS","faiss-ivf":"FAISS-style IVF-flat ANN",json:"exact flat cosine (JSON)"};function mbe({data:e}){var c,u;if(!e)return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"💾",title:"Memory Store"}),i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading memory data..."})})]});const{memory:t,health:n}=e,r=Object.entries(t.byFingerprint||{}).sort(([,d],[,f])=>f-d),a=Object.entries(((c=t.facts)==null?void 0:c.byProject)||{}).sort(([,d],[,f])=>f-d),s=[...t.vectorNamespaces||[]].sort((d,f)=>f.entries-d.entries),o=t.recall||{total:0,today:0,last7d:0},l=[{key:"trajectories",icon:"🧭",value:rs(t.total),label:"Trajectories",tone:"accent"},{key:"avg-score",icon:"⭐",value:pbe(t.avgScore),label:"Avg Score",tone:"ok"},{key:"facts",icon:"📌",value:rs((u=t.facts)==null?void 0:u.total),label:"Facts",tone:"warn"},{key:"recall",icon:"🔁",value:rs(o.total),label:"Recall Hits",tone:"ok"},{key:"patterns",icon:"🧩",value:rs(n==null?void 0:n.patterns),label:"Coding Patterns",tone:"warn"},{key:"feedback",icon:"👍",value:rs(n==null?void 0:n.feedback),label:"Feedback Ratings",tone:"ok"}];return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"💾",title:"Memory Store"}),i.jsx(Bi,{tiles:l}),i.jsxs("p",{className:"memory-backend",children:["Memory tier: ",i.jsx("code",{children:t.backend||"local"})," · ","Vector index: ",i.jsx("code",{children:t.vectorBackend||"unknown"}),t.vectorBackend&&eA[t.vectorBackend]?` (${eA[t.vectorBackend]})`:"",o.last7d>0?` · ${rs(o.last7d)} recall(s) this week, ${rs(o.today)} today`:" · no recalls yet"]}),i.jsx(hbe,{}),r.length>0&&i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"By Project Type"}),i.jsx("div",{className:"memory-list",children:r.map(([d,f])=>i.jsxs("div",{className:"memory-item",children:[i.jsx("span",{className:"memory-project",children:d}),i.jsxs("span",{className:"memory-count",children:[f," trajectory(ies)"]})]},d))})]}),a.length>0&&i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"Facts by Project"}),i.jsx("div",{className:"memory-list",children:a.map(([d,f])=>i.jsxs("div",{className:"memory-item",children:[i.jsx("span",{className:"memory-project",children:d}),i.jsxs("span",{className:"memory-count",children:[f," fact(s)"]})]},d))})]}),s.length>0&&i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"Vector Index by Namespace"}),i.jsxs("p",{className:"memory-namespace-note",children:["Each namespace is its own index file. ",i.jsx("code",{children:"default"})," holds only successful trajectories and indexed sessions — facts, repo chunks and the model registry have their own namespaces — so a small ",i.jsx("code",{children:"default"})," count is corpus size, not a broken index."]}),i.jsx("div",{className:"memory-list",children:s.map(d=>i.jsxs("div",{className:"memory-item",children:[i.jsx("span",{className:"memory-project",children:d.name}),i.jsxs("span",{className:"memory-count",children:[d.entries," vector(s)"]})]},d.name))})]})]})}function mv(e){const t=e.replace(/[\\/]+$/,""),n=Math.max(t.lastIndexOf("/"),t.lastIndexOf("\\"));return n>=0?t.slice(n+1):t}function gbe(){const[e,t]=x.useState({configured:!1,authenticated:!1,role:null}),n=Vr(),[r,a]=x.useState(null),[s,o]=x.useState(null),[l,c]=x.useState(null),[u,d]=x.useState(""),[f,h]=x.useState(""),[p,g]=x.useState(!1),[m,y]=x.useState(""),[v,S]=x.useState(""),[w,j]=x.useState(null),[k,b]=x.useState(!1),N=e.authenticated&&(e.role==="admin"||e.role==="operator"),_=x.useCallback(async()=>{const P=await K.fetchKnowledge();a(P)},[]);x.useEffect(()=>{K.fetchAdminAuthStatus().then(P=>{t(P?{configured:P.configured,authenticated:P.authenticated,role:P.role??null}:{configured:!1,authenticated:!1,role:null})}),_()},[_,n]);const T=x.useCallback(async()=>{var z;o(null),c(null);const P=f.split(`
|
|
207
|
+
`).map(L=>L.trim()).filter(Boolean);if(!u.trim()||P.length===0){o("A tag and at least one file or folder path are required.");return}g(!0);try{const L=await K.knowledgeIngest(u,P);if(!L.ok)o(L.error||"Ingest failed.");else{const M=(z=L.skipped)!=null&&z.length?` Skipped: ${L.skipped.map(D=>`${mv(D.path)} (${D.reason})`).join("; ")}`:"";c(`Ingested ${L.files??0} document(s) / ${L.chunks??0} chunk(s) under '${L.tag}'.${M}`),h(""),await _()}}finally{g(!1)}},[u,f,_]),C=x.useCallback(async()=>{if(o(null),j(null),!m.trim()||!v.trim()){o("A tag and a question are required.");return}b(!0);try{const P=await K.knowledgeQuery(m,v);P.ok?j(P.hits??[]):o(P.error||"Query failed.")}finally{b(!1)}},[m,v]),O=x.useCallback(async P=>{o(null),c(null);const z=await K.knowledgeForget(P);z.ok?c(`Removed knowledge tag '${P}'.`):o(z.error||`Could not remove '${P}'.`),await _()},[_]);return i.jsxs("div",{children:[i.jsx(Re,{icon:"📚",title:"Knowledge Base",description:"Tag your own documents once; answer questions scoped to a tag. The data part comes from your documents, the general part from the model."}),i.jsxs("div",{className:"env-var-header",children:[i.jsx("span",{className:"env-var-title",children:"Documents and vectors live in ~/.nuvira/memory — never in a repository or package."}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void _(),children:"↻ Refresh"})]}),e.authenticated?null:i.jsx("div",{className:"admin-hint",children:e.configured?"Log in to view or manage knowledge tags.":"Set up an admin account to manage knowledge tags."}),s?i.jsx("div",{className:"admin-error",children:s}):null,l?i.jsx("div",{className:"admin-hint",children:l}):null,i.jsx("h2",{className:"section-title",children:"Tags"}),r&&r.length===0?i.jsx("div",{className:"admin-hint",children:"No knowledge tags yet. Ingest a document below to create one."}):null,r&&r.length>0?i.jsx("div",{className:"admin-table-wrapper",children:i.jsxs("table",{className:"admin-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Tag"}),i.jsx("th",{children:"Chunks"}),i.jsx("th",{children:"Documents"}),N?i.jsx("th",{}):null]})}),i.jsx("tbody",{children:r.map(P=>i.jsxs("tr",{children:[i.jsx("td",{children:P.tag}),i.jsx("td",{children:P.chunkCount}),i.jsx("td",{children:P.documents.map(z=>i.jsxs("div",{title:z.path,children:[mv(z.path)," (",z.chunks," chunk",z.chunks===1?"":"s",")"]},z.path))}),N?i.jsx("td",{children:i.jsx("button",{className:"admin-mini-danger",type:"button",onClick:()=>void O(P.tag),"aria-label":`Remove knowledge tag ${P.tag}`,children:"Forget"})}):null]},P.tag))})]})}):null,N?i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-title",children:"Ingest under a tag"}),i.jsx("div",{className:"admin-hint",children:"One file or folder path per line (PDF, DOCX, XLSX, PPTX, Markdown, CSV, JSON, plain text). Tags are normalized: “Dheeraj Health Report” becomes “dheeraj-health-report”."}),i.jsxs("div",{className:"admin-gate-form",children:[i.jsx("input",{className:"admin-input",type:"text",placeholder:"tag (e.g. dheeraj-health-report)",value:u,onChange:P=>d(P.target.value),"aria-label":"Knowledge tag"}),i.jsx("textarea",{className:"admin-input",rows:3,placeholder:`/path/to/labs.pdf
|
|
208
|
+
/path/to/notes/`,value:f,onChange:P=>h(P.target.value),"aria-label":"Paths to ingest"}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void T(),disabled:p,children:p?"Ingesting…":"Ingest"})]})]}):null,i.jsx("h2",{className:"section-title",children:"Ask a tagged knowledge base"}),i.jsxs("div",{className:"admin-gate-form",children:[i.jsx("input",{className:"admin-input",type:"text",placeholder:"tag",list:"knowledge-tags",value:m,onChange:P=>y(P.target.value),"aria-label":"Tag to query"}),i.jsx("datalist",{id:"knowledge-tags",children:(r??[]).map(P=>i.jsx("option",{value:P.tag},P.tag))}),i.jsx("input",{className:"admin-input",type:"text",placeholder:"what is my LDL and how do I lower it",value:v,onChange:P=>S(P.target.value),"aria-label":"Question"}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void C(),disabled:k,children:k?"Searching…":"Query"})]}),w&&w.length===0?i.jsx("div",{className:"admin-hint",children:"No passages matched that tag — check the tag name, or ingest documents first."}):null,w&&w.length>0?i.jsx("div",{children:w.map((P,z)=>i.jsxs("div",{className:"admin-summary-card",children:[i.jsxs("div",{className:"admin-summary-label",children:[mv(P.sourcePath)," · chunk ",P.chunkIndex+1," · sim ",P.similarity.toFixed(3)]}),i.jsx("div",{className:"admin-summary-value",style:{whiteSpace:"pre-wrap",fontWeight:400},children:P.text.slice(0,600)})]},`${P.sourcePath}-${P.chunkIndex}-${z}`))}):null]})}const vbe=7*24*60*60*1e3;function ybe(e){return new Date(e).toLocaleDateString("en-US",{month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}function bbe({data:e}){const[t,n]=x.useState(null),[r,a]=x.useState(!1),[s,o]=x.useState(null),l=t??(e==null?void 0:e.history),c=x.useCallback(async(d,f={})=>{a(!0),o(null);const h=await K.clearHistory(d,f);h.ok?o(d==="all"?`Removed ${h.removed??0} conversation(s).`:d==="older"?h.removed?`Removed ${h.removed} conversation(s) older than a week.`:"Nothing older than a week — nothing removed.":`Removed ${h.removed?h.removed:0} conversation(s).`):o(h.error||"Could not delete that.");const p=await K.fetchHistory();p&&n(p),a(!1)},[]);if(!l)return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"📝",title:"Conversation History"}),i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading history..."})})]});const u=l.recent||[];return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"📝",title:"Conversation History"}),i.jsxs("div",{className:"history-stats",children:[i.jsxs("span",{className:"history-count",children:["Total: ",i.jsx("strong",{children:l.total})," sessions"]}),i.jsxs("div",{className:"admin-row-actions",children:[i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:r,title:"Delete only conversations started more than 7 days ago",onClick:()=>void c("older",{olderThanMs:vbe}),children:"🗑️ Forget older than a week"}),i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:r||l.total===0,onClick:()=>{window.confirm("Delete ALL stored conversations? This cannot be undone.")&&c("all")},children:"🗑️ Clear all history"})]})]}),s?i.jsx("div",{className:"env-var-notice",children:s}):null,i.jsx("div",{className:"history-list",children:u.length===0?i.jsx("div",{className:"empty-state",children:"No conversations recorded yet."}):u.map(d=>i.jsxs("div",{className:"history-item",children:[i.jsx("div",{className:"history-summary",children:d.summary||"Untitled"}),i.jsxs("div",{className:"history-meta",children:[i.jsxs("span",{children:["📅 ",ybe(d.startedAt)]}),i.jsxs("span",{children:["🤖 ",d.provider||"--"]}),i.jsxs("span",{children:["💬 ",d.messageCount||0," msgs"]}),d.tags&&d.tags.length>0&&i.jsxs("span",{children:["🏷️ ",d.tags.map(f=>i.jsx("span",{className:"history-tag",children:f},f))]}),i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:r,"aria-label":`Forget conversation ${d.summary||d.id}`,onClick:()=>void c("session",{id:d.id}),children:"🗑️ Forget"})]})]},d.id))})]})}function xbe(e){const t=Math.max(0,Math.round((Date.now()-e)/6e4));if(t<1)return"just now";if(t<60)return`${t}m ago`;const n=Math.round(t/60);return n<24?`${n}h ago`:`${Math.round(n/24)}d ago`}function wbe(){const[e,t]=x.useState([]),[n,r]=x.useState(""),[a,s]=x.useState(""),[o,l]=x.useState(null),[c,u]=x.useState(!1),[d,f]=x.useState(!1),[h,p]=x.useState(null),[g,m]=x.useState(null),[y,v]=x.useState(""),[S,w]=x.useState(""),j=x.useCallback(async(_,T)=>{const C=await K.fetchDecisions(_,T);l(C),u(!0)},[]);x.useEffect(()=>{let _=!0;return K.listProjects().then(T=>{var O,P;if(!_)return;t(T);const C=((O=T.find(z=>z.kind==="cwd"))==null?void 0:O.path)??((P=T[0])==null?void 0:P.path)??"";r(C),j(C)}),()=>{_=!1}},[j]);const k=x.useCallback(()=>{n&&j(n,a.trim()||void 0)},[n,a,j]),b=x.useCallback(async _=>{if(!n||!y.trim())return;f(!0),p(null),await K.reviseDecision(n,_,y.trim(),S.trim()||void 0)?(p(`Revised ${_} — the previous answer is kept in its history.`),m(null),v(""),w(""),await j(n,a.trim()||void 0)):p("Could not revise that decision — it may no longer exist."),f(!1)},[n,y,S,a,j]),N=(o==null?void 0:o.decisions)??[];return i.jsxs(i.Fragment,{children:[i.jsx(Re,{icon:"🧭",title:"Decisions",description:"The choices the agent asked YOU to make (ask_user), kept so you can refer back and revise them. Written to the project's .nuvira/decisions.jsonl — never a substitute for asking."}),c?o===null?i.jsxs("p",{className:"memory-namespace-note",children:["Decision data is unavailable — this dashboard server has no ",i.jsx("code",{children:"/api/decisions"})," endpoint."]}):i.jsxs(i.Fragment,{children:[i.jsx("h2",{className:"section-subtitle",children:"Workspace"}),e.length>1?i.jsxs("label",{className:"memory-backend",children:["Project:"," ",i.jsx("select",{value:n,onChange:_=>{r(_.target.value),j(_.target.value,a.trim()||void 0)},children:e.map(_=>i.jsxs("option",{value:_.path,children:[_.name," (",_.kind,")"]},_.path))})]}):i.jsx("p",{className:"memory-backend",children:i.jsx("code",{children:o.dir})}),i.jsxs("div",{className:"admin-row-actions",children:[i.jsx("input",{type:"search",value:a,placeholder:"Find decisions relevant to an ask…","aria-label":"Search decisions relevant to an ask",onChange:_=>s(_.target.value),onKeyDown:_=>{_.key==="Enter"&&k()}}),i.jsx("button",{className:"admin-mini-btn",type:"button",disabled:!n,onClick:k,children:"🔎 Search"}),o.relevant?i.jsx("button",{className:"admin-mini-btn",type:"button",disabled:!n,onClick:()=>{s(""),j(n)},children:"✕ Clear"}):null]}),h?i.jsx("div",{className:"env-var-notice",children:h}):null,i.jsx("h2",{className:"section-subtitle",children:o.relevant?`Relevant decisions (${N.length})`:`Recorded decisions (${N.length})`}),N.length===0?i.jsx("p",{className:"memory-namespace-note",children:o.relevant?"No recorded decision matches that ask.":"None yet — a decision is recorded when the agent has to ask you one."}):i.jsx("div",{className:"memory-list",children:N.map(_=>{var T;return i.jsxs("div",{className:"memory-item",children:[i.jsxs("div",{children:[i.jsxs("span",{className:"memory-project",children:[_.status==="revised"?"✏️":"✅"," ",_.question]}),i.jsxs("div",{className:"memory-count",children:["→ ",_.answer||"(none)"," · ",xbe(_.at)," · ",_.source," · ",_.id,_.status==="revised"?` · revised ${((T=_.revisions)==null?void 0:T.length)??0}×`:""]}),_.choices&&_.choices.length>0?i.jsxs("div",{className:"memory-count",children:["offered: ",_.choices.join(" | ")]}):null]}),g===_.id?i.jsxs("div",{children:[i.jsx("input",{type:"text",value:y,placeholder:"New answer","aria-label":`New answer for ${_.question}`,onChange:C=>v(C.target.value)}),i.jsx("input",{type:"text",value:S,placeholder:"Why it changed (optional)","aria-label":`Note for ${_.question}`,onChange:C=>w(C.target.value)}),i.jsx("button",{className:"admin-mini-btn",type:"button",disabled:d||!y.trim(),onClick:()=>void b(_.id),children:"💾 Save"}),i.jsx("button",{className:"admin-mini-btn",type:"button",disabled:d,onClick:()=>{m(null),v(""),w("")},children:"✕ Cancel"})]}):i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>{m(_.id),v(_.answer),w("")},children:"✏️ Revise"})]},_.id)})})]}):i.jsx("div",{className:"loading-state",children:i.jsx("p",{children:"Loading decisions…"})})]})}function kbe({onFetch:e,onClear:t,onExport:n}){const[r,a]=x.useState([]),[s,o]=x.useState(!1),[l,c]=x.useState(""),[u,d]=x.useState(""),[f,h]=x.useState(null),[p,g]=x.useState(null);x.useEffect(()=>{m()},[l,u]);const m=async()=>{o(!0);try{const j=await e({skillName:l||void 0,status:u||void 0,limit:100});a(j);const k=j.length,b=j.filter(T=>T.status==="success").length,N=j.filter(T=>T.status==="failure").length,_=k>0?Math.round(j.reduce((T,C)=>T+C.durationMs,0)/k):0;g({total:k,success:b,failure:N,avgDuration:_})}catch(j){console.error("Failed to fetch execution history:",j)}finally{o(!1)}},y=async j=>{if(n)try{const k=await n(j),b=new Blob([k],{type:j==="json"?"application/json":"text/csv"}),N=URL.createObjectURL(b),_=document.createElement("a");_.href=N,_.download=`execution-history.${j}`,_.click(),URL.revokeObjectURL(N)}catch(k){console.error("Failed to export history:",k)}},v=async()=>{if(t&&confirm("Are you sure you want to clear all execution history?"))try{await t(),a([]),g(null)}catch(j){console.error("Failed to clear history:",j)}},S=j=>{switch(j){case"success":return"✅";case"failure":return"❌";case"timeout":return"⏰";case"rejected":return"🚫";case"error":return"💥";default:return"❓"}},w=j=>{switch(j){case"python":return"🐍";case"node":return"🟢";case"shell":return"🖥️";case"ruby":return"💎";case"go":return"🔵";case"rust":return"🦀";default:return"📜"}};return i.jsxs("div",{className:"execution-history",children:[i.jsx(Re,{icon:"📜",title:"Execution History",actions:i.jsxs("div",{className:"execution-history-actions",children:[i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>y("json"),children:"📥 Export JSON"}),i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>y("csv"),children:"📥 Export CSV"}),t&&i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",onClick:v,children:"🗑️ Clear"})]})}),p&&i.jsxs("div",{className:"execution-history-stats",children:[i.jsxs("div",{className:"stat-item",children:[i.jsx("span",{className:"stat-value",children:p.total}),i.jsx("span",{className:"stat-label",children:"Total"})]}),i.jsxs("div",{className:"stat-item stat-success",children:[i.jsx("span",{className:"stat-value",children:p.success}),i.jsx("span",{className:"stat-label",children:"Success"})]}),i.jsxs("div",{className:"stat-item stat-failure",children:[i.jsx("span",{className:"stat-value",children:p.failure}),i.jsx("span",{className:"stat-label",children:"Failed"})]}),i.jsxs("div",{className:"stat-item",children:[i.jsxs("span",{className:"stat-value",children:[p.avgDuration,"ms"]}),i.jsx("span",{className:"stat-label",children:"Avg Duration"})]})]}),i.jsxs("div",{className:"execution-history-filters",children:[i.jsx("input",{className:"env-var-input",type:"text","aria-label":"Filter by skill name",placeholder:"Filter by skill name...",value:l,onChange:j=>c(j.target.value)}),i.jsxs("select",{className:"env-var-input","aria-label":"Filter by status",value:u,onChange:j=>d(j.target.value),children:[i.jsx("option",{value:"",children:"All statuses"}),i.jsx("option",{value:"success",children:"Success"}),i.jsx("option",{value:"failure",children:"Failure"}),i.jsx("option",{value:"timeout",children:"Timeout"}),i.jsx("option",{value:"rejected",children:"Rejected"}),i.jsx("option",{value:"error",children:"Error"})]})]}),i.jsx("div",{className:"execution-history-list",children:s?i.jsx("div",{className:"execution-history-empty",children:"Loading..."}):r.length===0?i.jsx("div",{className:"execution-history-empty",children:"No execution history found. Execute a skill to see results here."}):r.map(j=>i.jsxs("div",{className:`execution-history-entry ${j.status}`,onClick:()=>h((f==null?void 0:f.id)===j.id?null:j),children:[i.jsxs("div",{className:"entry-header",children:[i.jsx("span",{className:"entry-icon",children:S(j.status)}),i.jsx("span",{className:"entry-skill",children:j.skillName}),i.jsxs("span",{className:"entry-runtime",children:[w(j.runtime)," ",j.runtime]}),i.jsxs("span",{className:"entry-duration",children:[j.durationMs,"ms"]}),i.jsx("span",{className:"entry-time",children:new Date(j.timestamp).toLocaleString()}),i.jsx("span",{className:"entry-expand",children:(f==null?void 0:f.id)===j.id?"▼":"▶"})]}),(f==null?void 0:f.id)===j.id&&i.jsxs("div",{className:"entry-details",children:[i.jsxs("div",{className:"entry-detail-row",children:[i.jsx("span",{className:"detail-label",children:"Status:"}),i.jsx("span",{className:"detail-value",children:j.status})]}),i.jsxs("div",{className:"entry-detail-row",children:[i.jsx("span",{className:"detail-label",children:"Runtime:"}),i.jsx("span",{className:"detail-value",children:j.runtime})]}),i.jsxs("div",{className:"entry-detail-row",children:[i.jsx("span",{className:"detail-label",children:"Duration:"}),i.jsxs("span",{className:"detail-value",children:[j.durationMs,"ms"]})]}),j.exitCode!==void 0&&i.jsxs("div",{className:"entry-detail-row",children:[i.jsx("span",{className:"detail-label",children:"Exit Code:"}),i.jsx("span",{className:"detail-value",children:j.exitCode})]}),j.error&&i.jsxs("div",{className:"entry-detail-row",children:[i.jsx("span",{className:"detail-label",children:"Error:"}),i.jsx("span",{className:"detail-value entry-error",children:j.error})]}),j.command&&i.jsxs("div",{className:"entry-detail-row",children:[i.jsx("span",{className:"detail-label",children:"Command:"}),i.jsx("code",{className:"detail-value",children:j.command})]})]})]},j.id))})]})}function Sbe({envVars:e,onSave:t,onDelete:n,onTest:r,readOnly:a=!1}){const[s,o]=x.useState(null),[l,c]=x.useState(""),[u,d]=x.useState(!1),[f,h]=x.useState(""),[p,g]=x.useState(""),[m,y]=x.useState(null),[v,S]=x.useState({}),w=[...e].sort((N,_)=>N.requiredBy&&!_.requiredBy?-1:!N.requiredBy&&_.requiredBy?1:N.name.localeCompare(_.name)),j=N=>{t(N,l),o(null),c("")},k=()=>{f&&p&&(t(f,p),h(""),g(""),d(!1))},b=async N=>{if(r){y(N);try{const _=await r(N);S(T=>({...T,[N]:_}))}catch{S(_=>({..._,[N]:!1}))}finally{y(null)}}};return i.jsxs("div",{className:"env-var-editor",children:[i.jsxs("div",{className:"env-var-header",children:[i.jsx("h2",{className:"env-var-title",children:"🔐 Environment Variables"}),!a&&i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>d(!u),children:u?"✕ Cancel":"+ Add Variable"})]}),u&&!a&&i.jsxs("div",{className:"env-var-add-form",children:[i.jsx("input",{className:"env-var-input",type:"text",placeholder:"Variable name (e.g., MY_API_KEY)",value:f,onChange:N=>h(N.target.value)}),i.jsx("input",{className:"env-var-input",type:"password",placeholder:"Value",value:p,onChange:N=>g(N.target.value)}),i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:!f||!p,onClick:k,children:"💾 Save"})]}),i.jsx("div",{className:"env-var-list",children:w.length===0?i.jsx("div",{className:"env-var-empty",children:"No environment variables configured. Add one to get started."}):w.map(N=>i.jsxs("div",{className:`env-var-row ${N.isSet?"env-var-set":"env-var-missing"} ${N.isProviderCredential?"env-var-blocked":""}`,children:[i.jsxs("div",{className:"env-var-row-header",children:[i.jsxs("span",{className:"env-var-name",children:[N.name,N.requiredBy&&i.jsxs("span",{className:"env-var-required-badge",children:["required by ",N.requiredBy]}),N.isProviderCredential&&i.jsx("span",{className:"env-var-blocked-badge",children:"🔒 provider credential (blocked)"})]}),i.jsx("span",{className:"env-var-status",children:N.isSet?"✅ Set":"❌ Not set"})]}),N.description&&i.jsx("div",{className:"env-var-description",children:N.description}),s===N.name?i.jsxs("div",{className:"env-var-edit",children:[i.jsx("input",{className:"env-var-input",type:"password",value:l,onChange:_=>c(_.target.value),placeholder:"Enter new value..."}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>j(N.name),children:"💾 Save"}),i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>o(null),children:"Cancel"})]}):i.jsxs("div",{className:"env-var-actions",children:[!a&&!N.isProviderCredential&&i.jsx("button",{className:"admin-mini-btn",type:"button",onClick:()=>{o(N.name),c("")},children:"✏️ Edit"}),r&&i.jsx("button",{className:"admin-mini-btn",type:"button",disabled:m===N.name,onClick:()=>b(N.name),children:m===N.name?"⏳ Testing...":"🧪 Test"}),!a&&i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",onClick:()=>n(N.name),children:"🗑️ Delete"}),v[N.name]!==void 0&&i.jsx("span",{className:`env-var-test-result ${v[N.name]?"env-var-test-pass":"env-var-test-fail"}`,children:v[N.name]?"✅ Valid":"❌ Invalid"})]})]},N.name))}),i.jsx("div",{className:"env-var-help",children:i.jsxs("p",{children:[i.jsx("strong",{children:"Tip:"})," Environment variables are stored in ",i.jsx("code",{children:"~/.nuvira/.env"})," and injected into skill executions. Provider credentials (ANTHROPIC_API_KEY, OPENAI_API_KEY, etc.) are automatically blocked from skill execution for security."]})})]})}function jbe(){const[e,t]=x.useState({configured:!1,authenticated:!1,role:null}),n=Vr(),[r,a]=x.useState([]),[s,o]=x.useState(!0),[l,c]=x.useState(null),[u,d]=x.useState(null),f=e.authenticated&&(e.role==="admin"||e.role==="operator"),h=x.useCallback(async()=>{o(!0);const y=await K.fetchSkillEnv();a(y),o(!1)},[]);x.useEffect(()=>{K.fetchAdminAuthStatus().then(y=>{t(y?{configured:y.configured,authenticated:y.authenticated,role:y.role??null}:{configured:!1,authenticated:!1,role:null})}),h()},[h,n]);const p=x.useCallback(async(y,v)=>{var j;c(null),d(null);const S=await K.saveSecrets({[y]:v}),w=(j=S.refused)==null?void 0:j.find(k=>k.name===y);!S.ok||w?c(w?Nbe(y,w.reason):S.error||`Could not save ${y}.`):d(`Saved ${y}.`),await h()},[h]),g=x.useCallback(async y=>{c(null),d(null);const v=await K.deleteSkillEnvVar(y);v.ok?d(v.removed?`Deleted ${y}.`:`${y} was not stored in the env file.`):c(v.error||`Could not delete ${y}.`),await h()},[h]),m=x.useCallback(async y=>{const v=await K.testSkillEnvVar(y);return v.ok?(c(null),d(v.detail||`${y}: ${v.usable?"usable by skills":"not usable by skills"}`),v.usable===!0):(c(v.error||`Could not test ${y}.`),!1)},[]);return i.jsxs("div",{children:[i.jsx(Re,{icon:"🔐",title:"Skill Environment Variables"}),i.jsxs("div",{className:"env-var-header",children:[i.jsx("span",{className:"env-var-title",children:"Values are masked; only names and set/unset state are shown."}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void h(),children:"↻ Refresh"})]}),i.jsxs("div",{className:"admin-hint",children:["Secrets here are injected into skill executions that declare them (",i.jsx("code",{children:"required_environment_variables"}),"). Provider credentials are listed but locked — they belong to provider setup, and skills never receive them."]}),e.authenticated?null:i.jsx("div",{className:"admin-hint",children:e.configured?"Log in to view or edit skill secrets.":"Set up an admin account to manage skill secrets."}),e.authenticated&&!f?i.jsx("div",{className:"admin-hint",children:"Read-only — admins and operators can change these values."}):null,l?i.jsx("div",{className:"env-var-notice env-var-notice-error",children:l}):null,u?i.jsx("div",{className:"env-var-notice",children:u}):null,s?i.jsx("div",{className:"loading-state",children:"Loading…"}):i.jsx(Sbe,{envVars:r,onSave:(y,v)=>void p(y,v),onDelete:y=>void g(y),onTest:m,readOnly:!f})]})}function Nbe(e,t){switch(t){case"provider-credential":return`${e} is a provider credential — configure it in provider setup instead. Skills never receive it.`;case"invalid-name":return`${e} is not a valid environment variable name.`;case"write-failed":return`${e} could not be written to the env file.`;default:return`${e} was not saved (${t}).`}}const Ebe=[{id:"turn",title:"Turn behaviour",blurb:"How each turn runs. Unset means nobody has asked for anything, which is not the same as asking for no."},{id:"observability",title:"Observability",blurb:"What a run records about itself. Both are off by default and off unless asked for."},{id:"hooks",title:"Tool hooks",blurb:"A command run around every tool call, with the call on stdin as JSON. For a phase, a value here REPLACES the hooks declared in tools.hooks."}];function _be(){const[e,t]=x.useState({configured:!1,authenticated:!1,role:null}),n=Vr(),[r,a]=x.useState([]),[s,o]=x.useState(!0),[l,c]=x.useState(null),[u,d]=x.useState(null),[f,h]=x.useState({}),[p,g]=x.useState(null),m=e.authenticated&&(e.role==="admin"||e.role==="operator"),y=x.useCallback(async()=>{o(!0),a(await K.fetchProcessEnv()),o(!1)},[]);x.useEffect(()=>{K.fetchAdminAuthStatus().then(w=>{t(w?{configured:w.configured,authenticated:w.authenticated,role:w.role??null}:{configured:!1,authenticated:!1,role:null})}),y()},[y,n]);const v=x.useCallback(async(w,j)=>{g(w),c(null),d(null);const k=await K.saveProcessEnvVar(w,j);if(!k.ok||!k.row)c(k.error||`Could not set ${w}.`);else{const b=k.row;a(N=>N.map(_=>_.name===b.name?b:_)),h(N=>({...N,[w]:""})),d(`${w} = ${b.fileValue}. Takes effect on the next turn; the dashboard picked it up immediately.`)}g(null)},[]),S=x.useCallback(async w=>{g(w),c(null),d(null);const j=await K.deleteProcessEnvVar(w);if(!j.ok||!j.row)c(j.error||`Could not unset ${w}.`);else{const k=j.row;a(b=>b.map(N=>N.name===k.name?k:N)),h(b=>({...b,[w]:""})),d(j.removed?`${w} removed from the env file. ${k.unsetMeans}`:`${w} had no line in the env file. ${k.unsetMeans}`)}g(null)},[]);return i.jsxs("div",{children:[i.jsx(Re,{icon:"🌱",title:"Process Environment"}),i.jsxs("div",{className:"env-var-header",children:[i.jsx("span",{className:"env-var-title",children:"These are the switches Agent-Nuvira reads for how a run behaves. Values are written to the credential env file and are not masked — do not put a secret in a hook command."}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void y(),children:"↻ Refresh"})]}),i.jsxs("div",{className:"admin-hint",children:["A value exported in your shell ",i.jsx("strong",{children:"wins over this file"}),", for the dashboard and for every CLI run in that shell. A row that says ",i.jsx("em",{children:"shell value wins"})," is reporting exactly that, and writes here will not change it."]}),e.authenticated?null:i.jsx("div",{className:"admin-hint",children:e.configured?"Log in to view or change the process environment.":"Set up an admin account to change the process environment."}),e.authenticated&&!m?i.jsx("div",{className:"admin-hint",children:"Read-only — admins and operators can change these values."}):null,l?i.jsx("div",{className:"env-var-notice env-var-notice-error",children:l}):null,u?i.jsx("div",{className:"env-var-notice",children:u}):null,s?i.jsx("div",{className:"loading-state",children:"Loading…"}):Ebe.map(w=>{const j=r.filter(k=>k.group===w.id);return j.length===0?null:i.jsxs("section",{className:"process-env-group",children:[i.jsx("h3",{className:"process-env-group-title",children:w.title}),i.jsx("p",{className:"process-env-group-blurb",children:w.blurb}),i.jsx("div",{className:"env-var-list",children:j.map(k=>i.jsx(Abe,{row:k,draft:f[k.name]??"",busy:p===k.name,readOnly:!m,onDraft:b=>h(N=>({...N,[k.name]:b})),onSet:b=>void v(k.name,b),onUnset:()=>void S(k.name)},k.name))})]},w.id)})]})}function Abe({row:e,draft:t,busy:n,readOnly:r,onDraft:a,onSet:s,onUnset:o}){const l=e.state==="on",c=e.state!=="unset",u=f=>`admin-mini-btn${f?" process-env-active":""}`,d=e.kind==="flag"&&e.fileValue!==null&&e.fileValue!=="1"&&e.fileValue!=="0"?e.fileValue:null;return i.jsxs("div",{className:`env-var-row ${c?"env-var-set":"env-var-missing"}`,"data-testid":`process-env-row-${e.name}`,children:[i.jsxs("div",{className:"env-var-row-header",children:[i.jsxs("span",{className:"env-var-name",children:[e.name,e.shadowed?i.jsxs("span",{className:"env-var-blocked-badge",children:["⚠️ shell value wins: ",e.processValue]}):null]}),i.jsxs("span",{className:"env-var-status",children:[e.kind==="flag"?l?"✅ On":c?"⭕ Off":"➖ Unset":c?"✅ Set":"➖ Unset",d?` (${d})`:""]})]}),i.jsxs("div",{className:"env-var-description",children:[i.jsx("strong",{children:e.label})," — ",e.description]}),i.jsxs("div",{className:"env-var-description",children:["Unset: ",e.unsetMeans]}),e.cliEquivalent?i.jsxs("div",{className:"env-var-description",children:["Same switch: ",i.jsx("code",{children:e.cliEquivalent})]}):null,e.warning?i.jsxs("div",{className:"env-var-warning",children:["⚠️ ",e.warning]}):null,r?null:i.jsxs("div",{className:"env-var-actions",children:[e.kind==="flag"?i.jsxs(i.Fragment,{children:[i.jsx("button",{className:u(l),type:"button",disabled:n,onClick:()=>s("1"),children:"On"}),i.jsx("button",{className:u(c&&!l),type:"button",disabled:n,onClick:()=>s("0"),children:"Off"}),i.jsx("button",{className:u(!c),type:"button",disabled:n,onClick:o,children:"Unset"})]}):null,e.kind==="text"||e.acceptsValue?i.jsxs(i.Fragment,{children:[i.jsx("input",{className:"env-var-input",type:"text",value:t,placeholder:e.placeholder,disabled:n,onChange:f=>a(f.target.value),"aria-label":`${e.name} value`}),i.jsxs("button",{className:"admin-mini-btn",type:"button",disabled:n||t.trim()==="",onClick:()=>s(t),children:["💾 ",e.valueLabel??"Save"]})]}):null,e.kind==="text"?i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:n,onClick:o,children:"🗑️ Unset"}):null]})]})}const tA={before_tool_call:"🛑",after_tool_call:"✅",failed_tool_call:"❌",on_session_end:"🏁"};function nA(e){const t={};for(const n of e.split(`
|
|
209
|
+
`)){const r=n.trim();if(!r)continue;const a=r.indexOf("=");if(a<=0)continue;const s=r.slice(0,a).trim(),o=r.slice(a+1).trim();s&&o&&(t[s]=o)}return Object.keys(t).length>0?t:void 0}function Cbe(e){const t=e.when??{},n=[];if(t.tool&&n.push(`tool ${t.tool}`),t.surface&&n.push(`surface ${t.surface}`),t.cwdPrefix&&n.push(`cwd ${t.cwdPrefix}*`),t.argsMatch)for(const[a,s]of Object.entries(t.argsMatch))n.push(`${a}=${s}`);const r=n.length>0?n.join(" · "):"every call";switch(e.action.kind){case"deny":return`${r} → deny${e.action.reason?`: ${e.action.reason}`:""}`;case"notify":return`${r} → notify: ${e.action.message}`;case"scan-args":return`${r} → scan args for secrets${e.action.denyOnHit?" (deny on hit)":""}`}}function Tbe(){const e=Vr(),[t,n]=x.useState({configured:!1,authenticated:!1,role:null}),[r,a]=x.useState(null),[s,o]=x.useState(!0),[l,c]=x.useState(null),[u,d]=x.useState(null),[f,h]=x.useState(!1),[p,g]=x.useState([]),[m,y]=x.useState(""),[v,S]=x.useState(""),[w,j]=x.useState("before_tool_call"),[k,b]=x.useState("deny"),[N,_]=x.useState(""),[T,C]=x.useState(""),[O,P]=x.useState(""),[z,L]=x.useState(""),[M,D]=x.useState(""),[W,R]=x.useState("hook fired: {tool}"),[B,A]=x.useState(!1),J=t.authenticated&&(t.role==="admin"||t.role==="operator"),F=x.useCallback(async()=>{o(!0);const H=await K.fetchHooks();H?(a(H),g(H.hooks)):c("Could not load hooks — the dashboard server may be older than this bundle."),o(!1)},[]);x.useEffect(()=>{K.fetchAdminAuthStatus().then(H=>{n(H?{configured:H.configured,authenticated:H.authenticated,role:H.role??null}:{configured:!1,authenticated:!1,role:null})}),F()},[F,e]);const $=(r==null?void 0:r.events)??["before_tool_call","after_tool_call","failed_tool_call","on_session_end"],ie=(r==null?void 0:r.eventDescriptions)??{},de=(r==null?void 0:r.actionKinds)??["deny","notify","scan-args"],me=(r==null?void 0:r.actionDescriptions)??{},Te=x.useMemo(()=>p.some(H=>H.id===m.trim()),[p,m]),Q=/^[a-z0-9][a-z0-9-]{0,63}$/.test(m.trim()),X=Q&&!Te&&v.trim().length>0,ae=x.useCallback(()=>{c(null),d(null);const H={...N.trim()?{tool:N.trim()}:{},...T.trim()?{surface:T.trim()}:{},...O.trim()?{cwdPrefix:O.trim()}:{},...nA(z)?{argsMatch:nA(z)}:{}},xe=k==="deny"?{kind:"deny",...M.trim()?{reason:M.trim()}:{}}:k==="notify"?{kind:"notify",message:W.trim()||"hook fired: {tool}"}:{kind:"scan-args",denyOnHit:B,...M.trim()?{reason:M.trim()}:{}},we={id:m.trim(),label:v.trim(),event:w,enabled:!0,...Object.keys(H).length>0?{when:H}:{},action:xe,source:"user",updatedAt:Date.now()};g(je=>[...je,we]),y(""),S(""),_(""),C(""),P(""),L(""),D(""),A(!1)},[m,v,w,k,N,T,O,z,M,W,B]),ce=x.useCallback(async()=>{h(!0),c(null),d(null);const H=await K.saveHooks(p);H.ok?(g(H.hooks??p),d(`Saved ${(H.hooks??p).length} hook(s). They are in force on the next tool call.`)):c(H.error||"Could not save hooks."),h(!1)},[p]);return i.jsxs("div",{children:[i.jsx(Re,{icon:"🪝",title:"Hooks",description:"Declarative lifecycle rules bound to nuvira's own seams. A hook is DATA, not code: its only possible actions are deny, notify and secret-scan. There is no run-command action and no third-party script — nothing here executes."}),i.jsxs("div",{className:"env-var-header",children:[i.jsxs("span",{className:"env-var-title",children:[p.length," declared · ",p.filter(H=>H.enabled).length," enabled",r!=null&&r.file?i.jsxs(i.Fragment,{children:[" · stored at ",i.jsx("code",{children:r.file})]}):null]}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void F(),children:"↻ Refresh"}),J?i.jsxs("button",{className:"admin-refresh-btn",type:"button",disabled:f,onClick:()=>void ce(),children:["💾 ",f?"Saving…":"Save hooks"]}):null]}),t.authenticated?null:i.jsx("div",{className:"admin-hint",children:t.configured?"Log in to view or change hooks.":"Set up an admin account to change hooks."}),t.authenticated&&!J?i.jsx("div",{className:"admin-hint",children:"Read-only — admins and operators can change hooks."}):null,l?i.jsx("div",{className:"env-var-notice env-var-notice-error",children:l}):null,u?i.jsx("div",{className:"env-var-notice",children:u}):null,i.jsxs("section",{className:"panel",children:[i.jsx("h2",{className:"section-title",children:"How it works"}),i.jsxs("p",{className:"admin-hint",children:["When a seam fires, nuvira tests each enabled hook whose event matches, in order, and the FIRST ",i.jsx("code",{children:"deny"})," ","wins. Every action is implemented natively, so a bad hook can at worst block a call or print a line — it can never run code, reach the network, or read a credential."]}),i.jsxs("table",{className:"chat-plan-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Seam"}),i.jsx("th",{children:"When it fires"})]})}),i.jsx("tbody",{children:$.map(H=>i.jsxs("tr",{children:[i.jsxs("td",{children:[tA[H]," ",i.jsx("code",{children:H})]}),i.jsx("td",{children:ie[H]??""})]},H))})]}),i.jsxs("table",{className:"chat-plan-table",children:[i.jsx("thead",{children:i.jsxs("tr",{children:[i.jsx("th",{children:"Action"}),i.jsx("th",{children:"What it can do"})]})}),i.jsx("tbody",{children:de.map(H=>i.jsxs("tr",{children:[i.jsx("td",{children:i.jsx("code",{children:H})}),i.jsx("td",{children:me[H]??""})]},H))})]})]}),i.jsxs("section",{className:"panel",children:[i.jsx("h2",{className:"section-title",children:"Declared hooks"}),s?i.jsx("div",{className:"loading-state",children:"Loading…"}):p.length===0?i.jsx("div",{className:"admin-hint",children:"No hooks declared. Add one below — it stays a draft until you Save."}):i.jsx("div",{className:"env-var-list",children:p.map(H=>i.jsxs("div",{className:`env-var-row ${H.enabled?"env-var-set":"env-var-missing"}`,"data-testid":`hook-row-${H.id}`,children:[i.jsxs("div",{className:"env-var-row-header",children:[i.jsxs("span",{className:"env-var-name",children:[tA[H.event]," ",i.jsx("code",{children:H.id})," — ",H.label,H.source==="builtin"?i.jsx("span",{className:"hub-chip",children:"builtin"}):null]}),i.jsx("span",{className:"env-var-status",children:H.event})]}),i.jsx("div",{className:"env-var-description",children:Cbe(H)}),J?i.jsxs("div",{className:"env-var-actions",children:[i.jsx("button",{className:`admin-mini-btn${H.enabled?" process-env-active":""}`,type:"button",onClick:()=>g(xe=>xe.map(we=>we.id===H.id?{...we,enabled:!we.enabled}:we)),children:H.enabled?"✅ Enabled":"⭕ Disabled"}),H.source==="builtin"?i.jsx("span",{className:"admin-hint",children:"Built-in default — disable it to switch it off; it cannot be deleted."}):i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",onClick:()=>g(xe=>xe.filter(we=>we.id!==H.id)),children:"🗑️ Remove"})]}):null]},H.id))})]}),J?i.jsxs("section",{className:"panel",children:[i.jsx("h2",{className:"section-title",children:"Add a hook"}),i.jsxs("div",{className:"env-var-row",children:[i.jsx("div",{className:"env-var-row-header",children:i.jsxs("span",{className:"env-var-name",children:[i.jsx("input",{className:"env-var-input",type:"text",value:m,placeholder:"id (e.g. block-rm-rf)","aria-label":"Hook id",onChange:H=>y(H.target.value)}),i.jsx("input",{className:"env-var-input",type:"text",value:v,placeholder:"label","aria-label":"Hook label",onChange:H=>S(H.target.value)})]})}),m.trim()&&!Q?i.jsx("div",{className:"env-var-warning",children:"⚠️ id must be lowercase letters, digits and hyphens."}):null,Te?i.jsx("div",{className:"env-var-warning",children:"⚠️ that id is already declared."}):null,i.jsxs("div",{className:"env-var-description",children:[i.jsxs("label",{children:["Seam:"," ",i.jsx("select",{value:w,"aria-label":"Hook event",onChange:H=>j(H.target.value),children:$.map(H=>i.jsx("option",{value:H,children:H},H))})]})," ",i.jsxs("label",{children:["Action:"," ",i.jsx("select",{value:k,"aria-label":"Hook action",onChange:H=>b(H.target.value),children:de.map(H=>i.jsx("option",{value:H,disabled:H==="deny"&&w!=="before_tool_call",children:H},H))})]})]}),i.jsxs("div",{className:"env-var-description",children:["Match (blank = every call):"," ",i.jsx("input",{className:"env-var-input",type:"text",value:N,placeholder:"tool glob (run_*)","aria-label":"Tool glob",onChange:H=>_(H.target.value)})," ",i.jsx("input",{className:"env-var-input",type:"text",value:T,placeholder:"surface glob","aria-label":"Surface glob",onChange:H=>C(H.target.value)})," ",i.jsx("input",{className:"env-var-input",type:"text",value:O,placeholder:"cwd prefix","aria-label":"Cwd prefix",onChange:H=>P(H.target.value)})]}),i.jsxs("div",{className:"env-var-description",children:["Arg match (one ",i.jsx("code",{children:"key=glob"})," per line, optional):"," ",i.jsx("textarea",{className:"env-var-input",value:z,placeholder:"command=rm -rf*","aria-label":"Arg match",onChange:H=>L(H.target.value)})]}),k==="notify"?i.jsxs("div",{className:"env-var-description",children:["Message:"," ",i.jsx("input",{className:"env-var-input",type:"text",value:W,"aria-label":"Notify message",onChange:H=>R(H.target.value)})," ",i.jsxs("span",{className:"admin-hint",children:["{tool} {surface} {event}"," are interpolated."]})]}):i.jsxs("div",{className:"env-var-description",children:[k==="deny"?"Reason":"Reason (when denied)",":"," ",i.jsx("input",{className:"env-var-input",type:"text",value:M,"aria-label":"Reason",onChange:H=>D(H.target.value)})]}),k==="scan-args"&&w==="before_tool_call"?i.jsxs("label",{className:"env-var-description",children:[i.jsx("input",{type:"checkbox",checked:B,onChange:H=>A(H.target.checked)})," Block the call when a secret shape is found"]}):null,i.jsxs("div",{className:"env-var-actions",children:[i.jsx("button",{className:"admin-refresh-btn",type:"button",disabled:!X,onClick:ae,children:"➕ Add to draft"}),i.jsx("span",{className:"admin-hint",children:"Nothing is in force until you press Save hooks."})]})]})]}):null]})}const Obe={read:{label:"read",className:"cap-effect-read"},"local-write":{label:"local write",className:"cap-effect-local"},"local-state":{label:"machine state",className:"cap-effect-local"},external:{label:"off-machine",className:"cap-effect-external"},destructive:{label:"destructive",className:"cap-effect-destructive"}};function Pbe(e){return Obe[e]??{label:e,className:"cap-effect-local"}}function Rbe(){const[e,t]=x.useState(null),[n,r]=x.useState([]),[a,s]=x.useState({authenticated:!1,role:null}),o=Vr(),[l,c]=x.useState(!0),[u,d]=x.useState(null),[f,h]=x.useState(null),[p,g]=x.useState(null),[m,y]=x.useState(""),[v,S]=x.useState(""),[w,j]=x.useState(""),k=a.authenticated&&(a.role==="admin"||a.role==="operator"),b=x.useCallback(async()=>{c(!0);const[M,D]=await Promise.all([K.fetchCapabilities(),K.fetchSessionGrants()]);d(M?null:"Could not read capabilities from the server."),t(M),r(D??[]),c(!1)},[]);x.useEffect(()=>{K.fetchAdminAuthStatus().then(M=>{s(M?{authenticated:M.authenticated,role:M.role??null}:{authenticated:!1,role:null})}),b()},[b,o]);const N=x.useCallback(async M=>{g(M),d(null),await K.revokeSessionGrant(M)?r(W=>W.filter(R=>R.sessionId!==M)):d(`Could not end the grant for ${M}.`),g(null)},[]),_=x.useCallback(M=>{M&&t(D=>D&&{...D,learnedCommands:M})},[]),T=x.useCallback(async()=>{const M=m.trim(),D=v.trim();if(!M||!D)return;g("__save__"),d(null),h(null);const W=await K.saveLearnedCommand(M,D,w.trim()||void 0);W.ok?(_(W.commands),y(""),S(""),j(""),h(`Learned "${M}" for this machine.`)):d(W.error||"Could not save the command."),g(null)},[m,v,w,_]),C=x.useCallback(async M=>{g(M),d(null),h(null);const D=await K.forgetLearnedCommand(M);D.ok?(_(D.commands),h(`Forgot "${M}" on this machine.`)):d(D.error||`Could not forget "${M}".`),g(null)},[_]),O=(e==null?void 0:e.readyCount)??0,P=(e==null?void 0:e.blockedCount)??0,z=(e==null?void 0:e.missingExecutables)??[],L=(e==null?void 0:e.learnedCommands)??[];return i.jsxs("div",{children:[i.jsx(Re,{icon:"🧰",title:"Capabilities"}),i.jsxs("div",{className:"env-var-header",children:[i.jsx("span",{className:"env-var-title",children:"What the agent can do on this machine, read from the same declarations the model discovers. A missing executable blocks a verb; a credential that is not an environment variable does not — it may live in the vault."}),i.jsx("button",{className:"admin-refresh-btn",type:"button",onClick:()=>void b(),children:"↻ Refresh"})]}),u?i.jsx("div",{className:"env-var-notice env-var-notice-error",children:u}):null,f?i.jsx("div",{className:"env-var-notice",children:f}):null,l?i.jsx("div",{className:"loading-state",children:"Loading…"}):e?i.jsxs(i.Fragment,{children:[i.jsxs("div",{className:"cap-summary","data-testid":"cap-summary",children:[i.jsxs("span",{className:"cap-tile cap-tile-ok","data-testid":"cap-tile-ready",children:[i.jsx("strong",{children:O})," ready"]}),i.jsxs("span",{className:`cap-tile${P>0?" cap-tile-blocked":""}`,"data-testid":"cap-tile-blocked",children:[i.jsx("strong",{children:P})," blocked"]}),i.jsxs("span",{className:`cap-tile${z.length>0?" cap-tile-blocked":""}`,"data-testid":"cap-tile-missing",children:[i.jsx("strong",{children:z.length})," missing executable",z.length===1?"":"s"]}),i.jsxs("span",{className:"cap-tile","data-testid":"cap-tile-grants",children:[i.jsx("strong",{children:n.length})," live session grant",n.length===1?"":"s"]})]}),i.jsxs("section",{className:"cap-section","data-testid":"cap-missing",children:[i.jsx("h3",{className:"cap-section-title",children:"Missing executables"}),z.length===0?i.jsx("p",{className:"cap-empty",children:"Every executable the curated verbs need is on PATH."}):i.jsx("ul",{className:"cap-missing-list",children:z.map(M=>i.jsxs("li",{className:"cap-missing-row",children:[i.jsx("code",{className:"cap-missing-bins",children:M.anyOf.join(" or ")}),i.jsxs("span",{className:"cap-missing-for",children:["needed by ",M.forRefs.join(", ")]}),i.jsx("span",{className:"cap-missing-remedy",children:M.remedy})]},M.anyOf.join("|")))})]}),i.jsxs("section",{className:"cap-section","data-testid":"cap-verbs",children:[i.jsx("h3",{className:"cap-section-title",children:"Curated verbs"}),i.jsx("div",{className:"cap-verb-list",children:e.verbs.map(M=>i.jsx(Mbe,{verb:M},M.id))})]}),i.jsxs("section",{className:"cap-section","data-testid":"cap-learned",children:[i.jsxs("h3",{className:"cap-section-title",children:["Learned commands (",L.length,")"]}),i.jsx("p",{className:"cap-section-blurb",children:"Commands derived for this machine, keyed by what they do — recorded by the model or observed from a labelled run. They are HINTS: the agent still checks presence before running one. Add or replace one with the same verb below."}),L.length===0?i.jsx("p",{className:"cap-empty",children:"Nothing learned yet — the agent records a command when it derives one, or when a labelled run succeeds."}):i.jsx("ul",{className:"cap-learned-list",children:L.map(M=>i.jsxs("li",{className:"cap-learned-row","data-testid":`cap-learned-${M.verb}`,children:[i.jsx("span",{className:"cap-learned-verb",children:M.verb}),i.jsx("span",{className:"cap-badge cap-effect-local",children:M.os}),i.jsx("span",{className:"cap-badge cap-effect-read",children:M.source}),i.jsx("code",{className:"cap-learned-cmd",children:M.command}),M.note?i.jsx("span",{className:"cap-learned-note",children:M.note}):null,k?i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:p===M.verb,onClick:()=>void C(M.verb),children:"Forget"}):null]},`${M.verb}|${M.os}`))}),k?i.jsxs("div",{className:"cap-learned-form",children:[i.jsx("input",{className:"env-var-input",type:"text","aria-label":"learned verb",placeholder:"verb (e.g. install java)",value:m,disabled:p==="__save__",onChange:M=>y(M.target.value)}),i.jsx("input",{className:"env-var-input",type:"text","aria-label":"learned command",placeholder:"command (e.g. brew install openjdk)",value:v,disabled:p==="__save__",onChange:M=>S(M.target.value)}),i.jsx("input",{className:"env-var-input",type:"text","aria-label":"learned note",placeholder:"note (optional)",value:w,disabled:p==="__save__",onChange:M=>j(M.target.value)}),i.jsx("button",{className:"admin-mini-btn",type:"button",disabled:!m.trim()||!v.trim()||p==="__save__",onClick:()=>void T(),children:"💾 Learn"})]}):i.jsx("div",{className:"admin-hint",children:"Read-only — admins and operators can add or remove learned commands."})]}),i.jsxs("section",{className:"cap-section","data-testid":"cap-grants",children:[i.jsx("h3",{className:"cap-section-title",children:"Live session grants"}),n.length===0?i.jsx("p",{className:"cap-empty",children:"No live session grants — off-machine actions will ask."}):i.jsx("ul",{className:"cap-grant-list",children:n.map(M=>i.jsxs("li",{className:"cap-grant-row","data-testid":`cap-grant-${M.sessionId}`,children:[i.jsx("code",{className:"cap-grant-id",children:M.sessionId}),i.jsx("span",{className:"cap-grant-cats",children:M.categories.join(", ")||"(no categories)"}),i.jsx("button",{className:"admin-mini-btn admin-mini-btn-danger",type:"button",disabled:p===M.sessionId,onClick:()=>void N(M.sessionId),children:"End"})]},M.sessionId))})]})]}):i.jsx("div",{className:"admin-hint",children:"Capabilities are unavailable right now."})]})}function Mbe({verb:e}){const t=Pbe(e.effect);return i.jsxs("div",{className:`cap-verb${e.ready?" cap-verb-ready":" cap-verb-blocked"}`,"data-testid":`cap-verb-${e.ref}`,children:[i.jsxs("div",{className:"cap-verb-header",children:[i.jsx("span",{className:"cap-verb-name",children:e.name}),i.jsx("span",{className:`cap-badge ${t.className}`,children:t.label}),i.jsx("span",{className:`cap-badge ${e.ready?"cap-effect-read":"cap-effect-destructive"}`,children:e.ready?"✅ ready":"⛔ blocked"}),e.grantable?i.jsxs("span",{className:"cap-badge cap-effect-local",children:["grantable: ",e.grantable]}):null]}),i.jsx("div",{className:"cap-verb-does",children:e.does}),e.gaps.length>0?i.jsx("ul",{className:"cap-verb-gaps",children:e.gaps.map(n=>i.jsx("li",{children:n},n))}):null,e.ask.length>0?i.jsxs("div",{className:"cap-verb-ask",children:["Will ask for: ",e.ask.join(", ")]}):null,e.onThisMachine?i.jsxs("div",{className:"cap-verb-cmd",children:["On this machine: ",i.jsx("code",{children:e.onThisMachine.command}),e.onThisMachine.note?i.jsxs("span",{className:"cap-verb-note",children:[" — ",e.onThisMachine.note]}):null]}):null,e.undo?i.jsxs("div",{className:"cap-verb-undo",children:["Undo: ",e.undo]}):null]})}function Ibe(){const[e,t]=x.useState(null),[n,r]=x.useState(!1),[a,s]=x.useState("--"),[o,l]=x.useState(!1),u=Ri().pathname==="/chat",[d,f]=x.useState(u);x.useEffect(()=>{u&&f(!0)},[u]);const h=x.useCallback(m=>{t(m),s(new Date().toLocaleTimeString())},[]),p=x.useCallback(m=>{r(m)},[]),g=x.useCallback(async()=>{l(!0);try{const m=await K.fetchAll();m&&h(m)}finally{l(!1)}},[h]);return x.useEffect(()=>{K.fetchAll().then(v=>{v&&h(v)});const m=K.subscribe(h),y=K.onConnectionChange(p);return K.connect(),()=>{m(),y(),K.disconnect()}},[h,p]),i.jsxs(gB,{connected:n,lastUpdated:a,onRefresh:g,refreshing:o,children:[d&&i.jsx("div",{style:{display:u?void 0:"none"},children:i.jsx(Jye,{})}),i.jsx("div",{style:{display:u?"none":void 0},children:i.jsxs($2,{children:[i.jsx(Ke,{path:"/",element:i.jsx(Jk,{to:"/overview",replace:!0})}),i.jsx(Ke,{path:"/overview",element:i.jsx(Xie,{data:e,onRefresh:g,refreshing:o})}),i.jsx(Ke,{path:"/chat",element:null}),i.jsx(Ke,{path:"/dag",element:i.jsx(ose,{data:e})}),i.jsx(Ke,{path:"/costs",element:i.jsx(cse,{data:e})}),i.jsx(Ke,{path:"/benchmarks",element:i.jsx(dse,{data:e})}),i.jsx(Ke,{path:"/models",element:i.jsx(eoe,{})}),i.jsx(Ke,{path:"/models/timeline",element:i.jsx(fbe,{})}),i.jsx(Ke,{path:"/routing",element:i.jsx(Ioe,{data:e})}),i.jsx(Ke,{path:"/requests",element:i.jsx(zoe,{data:e})}),i.jsx(Ke,{path:"/traces",element:i.jsx(Zoe,{})}),i.jsx(Ke,{path:"/hub",element:i.jsx(mle,{})}),i.jsx(Ke,{path:"/capabilities",element:i.jsx(Rbe,{})}),i.jsx(Ke,{path:"/tasks",element:i.jsx(Sle,{})}),i.jsx(Ke,{path:"/evals",element:i.jsx(rbe,{data:e})}),i.jsx(Ke,{path:"/platforms",element:i.jsx(sbe,{})}),i.jsx(Ke,{path:"/bedrock",element:i.jsx(lbe,{canWrite:!0,sessionExpired:m=>console.error(m)})}),i.jsx(Ke,{path:"/contacts",element:i.jsx(cbe,{})}),i.jsx(Ke,{path:"/gateway",element:i.jsx(ibe,{})}),i.jsx(Ke,{path:"/env",element:i.jsx(jbe,{})}),i.jsx(Ke,{path:"/process-env",element:i.jsx(_be,{})}),i.jsx(Ke,{path:"/hooks",element:i.jsx(Tbe,{})}),i.jsx(Ke,{path:"/memory",element:i.jsx(mbe,{data:e})}),i.jsx(Ke,{path:"/knowledge",element:i.jsx(gbe,{})}),i.jsx(Ke,{path:"/history",element:i.jsx(bbe,{data:e})}),i.jsx(Ke,{path:"/decisions",element:i.jsx(wbe,{})}),i.jsx(Ke,{path:"/executions",element:i.jsx(kbe,{onFetch:m=>K.fetchExecutionAudit(m)})}),i.jsx(Ke,{path:"/system",element:i.jsx(gse,{data:e,connected:n,lastUpdated:a})}),i.jsx(Ke,{path:"/admin",element:i.jsx(ale,{})}),i.jsx(Ke,{path:"/help",element:i.jsx(Qie,{})}),i.jsx(Ke,{path:"*",element:i.jsx(Jk,{to:"/overview",replace:!0})})]})})]})}Jx(TT());mT(document.getElementById("root")).render(i.jsx(x.StrictMode,{children:i.jsx(H2,{children:i.jsx(Ibe,{})})}));
|
|
210
|
+
//# sourceMappingURL=index-zjbdJnO-.js.map
|