@zaip-ai/cli 1.3.8 → 1.4.1
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 +58 -3
- package/dist/commands/init.d.ts +1 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +17 -6
- package/dist/commands/init.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/services/adapters.js +4 -4
- package/dist/services/adapters.js.map +1 -1
- package/dist/services/codex-config-template.d.ts +2 -2
- package/dist/services/codex-config-template.d.ts.map +1 -1
- package/dist/services/codex-config-template.js +3 -3
- package/dist/services/codex-config-template.js.map +1 -1
- package/dist/services/codex-rules.d.ts +1 -1
- package/dist/services/codex-rules.d.ts.map +1 -1
- package/dist/services/codex-rules.js +9 -24
- package/dist/services/codex-rules.js.map +1 -1
- package/dist/services/delivery-git-preflight.d.ts +23 -0
- package/dist/services/delivery-git-preflight.d.ts.map +1 -0
- package/dist/services/delivery-git-preflight.js +69 -0
- package/dist/services/delivery-git-preflight.js.map +1 -0
- package/dist/services/doctor.d.ts.map +1 -1
- package/dist/services/doctor.js +13 -1
- package/dist/services/doctor.js.map +1 -1
- package/dist/services/install-agents-template.d.ts.map +1 -1
- package/dist/services/install-agents-template.js +22 -28
- package/dist/services/install-agents-template.js.map +1 -1
- package/dist/services/install-profile.d.ts +8 -0
- package/dist/services/install-profile.d.ts.map +1 -0
- package/dist/services/install-profile.js +56 -0
- package/dist/services/install-profile.js.map +1 -0
- package/dist/services/logger.d.ts.map +1 -1
- package/dist/services/logger.js +6 -5
- package/dist/services/logger.js.map +1 -1
- package/dist/services/stack-git.d.ts +9 -0
- package/dist/services/stack-git.d.ts.map +1 -0
- package/dist/services/stack-git.js +188 -0
- package/dist/services/stack-git.js.map +1 -0
- package/dist/services/stack-plan.d.ts +3 -1
- package/dist/services/stack-plan.d.ts.map +1 -1
- package/dist/services/stack-plan.js +15 -1
- package/dist/services/stack-plan.js.map +1 -1
- package/dist/services/stack-terraform.d.ts +13 -0
- package/dist/services/stack-terraform.d.ts.map +1 -0
- package/dist/services/stack-terraform.js +274 -0
- package/dist/services/stack-terraform.js.map +1 -0
- package/dist/services/template-manifest.d.ts.map +1 -1
- package/dist/services/template-manifest.js +14 -1
- package/dist/services/template-manifest.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/templates/.agents/.env.example +34 -0
- package/templates/{README.md → .agents/README.md} +124 -60
- package/templates/.agents/config/agents/catalog.yaml +23 -23
- package/templates/.agents/config/clients/codex/agents/zaip-agent-analyst.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-auditor.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-backend.toml +5 -4
- package/templates/.agents/config/clients/codex/agents/zaip-agent-brand-strategist.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-builder.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-cloud-engineer.toml +10 -7
- package/templates/.agents/config/clients/codex/agents/zaip-agent-data-analyst.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-designer.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-finalizer.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-frontend.toml +5 -4
- package/templates/.agents/config/clients/codex/agents/zaip-agent-general-operations.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-governance-compliance.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-growth-strategist.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-integrator.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-marketing-analyst.toml +5 -4
- package/templates/.agents/config/clients/codex/agents/zaip-agent-orchestrator.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-refactoring-specialist.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-reviewer.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-sales-specialist.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-security-auditor.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-task-executor.toml +1 -0
- package/templates/.agents/config/clients/codex/agents/zaip-agent-website-developer.toml +5 -4
- package/templates/.agents/config/clients/codex/agents/zaip-agent-writer.toml +1 -0
- package/templates/.agents/config/pricing/models.json +25 -1
- package/templates/.agents/config/project.yaml +2 -0
- package/templates/.agents/dashboard/.zaip-managed.json +200 -88
- package/templates/.agents/dashboard/DATA-DICTIONARY.md +1 -1
- package/templates/.agents/dashboard/README.md +58 -19
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{CostCalculationGuidePage-DwVZOmMV.js → CostCalculationGuidePage-snUCQYTC.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{DashboardHelpDialog-VcLx9iOO.js → DashboardHelpDialog-oZVlf-l5.js} +72 -8
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{PricingSettingsDialog-CyjMXkm8.js → PricingSettingsDialog-BPtVUGgs.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-3Awyaovx.js +3 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{TraceabilityWorkspace-DFZwIXSC.js → TraceabilityWorkspace-BYjVOHI_.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-DbaLbU2q.js +68 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{icons-vendor-DXBOtWNI.js → icons-vendor-TPUT2IUt.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-Cmlx8OYH.css +1 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-ZJFXmK7m.js +2 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{react-vendor-DaNXQPyk.js → react-vendor-Ct48XHGL.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{traceability-I4AKqVDX.js → traceability-BDe4_Ubl.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/index.html +6 -6
- package/templates/.agents/dashboard/apps/frontend/src/App.tsx +73 -67
- package/templates/.agents/dashboard/apps/frontend/src/AppLoadingBoundary.tsx +35 -7
- package/templates/.agents/dashboard/apps/frontend/src/AppWorkBoard.ts +55 -0
- package/templates/.agents/dashboard/apps/frontend/src/ProjectStackEditor.tsx +11 -0
- package/templates/.agents/dashboard/apps/frontend/src/app-loading-boundary.css +98 -0
- package/templates/.agents/dashboard/apps/frontend/src/cost-period-refresh.test.ts +5 -5
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-api-reconciliation.ts +33 -0
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-api.test.ts +75 -0
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-api.ts +7 -8
- package/templates/.agents/dashboard/apps/frontend/src/project-settings-model.ts +14 -2
- package/templates/.agents/dashboard/apps/frontend/src/project-settings.test.ts +35 -0
- package/templates/.agents/dashboard/apps/frontend/src/snapshot-coherence.test.ts +78 -2
- package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.test.ts +28 -0
- package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.ts +8 -5
- package/templates/.agents/dashboard/apps/frontend/src/use-app-effects.ts +180 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/contracts.ts +7 -4
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorContent.tsx +13 -7
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorPage.tsx +14 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTableDisplay.ts +211 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.test.ts +152 -157
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.tsx +155 -142
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/InvocationManifestQuery.test.ts +145 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/period-cost-groups.ts +7 -5
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-compact-cost-page.ts +4 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-group-page.ts +4 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-run-page.ts +4 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-summary-projection.ts +4 -4
- package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportAction.test.ts +79 -1
- package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportAction.tsx +105 -11
- package/templates/.agents/dashboard/packages/local-runtime/dist/server.cjs +482 -332
- package/templates/.agents/dashboard/packages/local-runtime/dist/sqlite-read-model.cjs +430 -285
- package/templates/.agents/dashboard/packages/local-runtime/scripts/build-sqlite-runtime.mjs +14 -2
- package/templates/.agents/dashboard/packages/local-runtime/scripts/rebuild-sqlite-read-model.mjs +6 -26
- package/templates/.agents/dashboard/packages/local-runtime/scripts/validate-sqlite-read-model.mjs +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/scripts/verify-persistent-launch.mjs +268 -0
- package/templates/.agents/dashboard/packages/local-runtime/server.mjs +482 -332
- package/templates/.agents/dashboard/packages/local-runtime/src/project-settings.test.ts +90 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/project-settings.ts +112 -22
- package/templates/.agents/dashboard/packages/local-runtime/src/server-agent-assets.ts +39 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-browser-lease.ts +33 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-reconciliation-refresh.test.ts +148 -11
- package/templates/.agents/dashboard/packages/local-runtime/src/server-reconciliation-result.test.ts +68 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-refresh.test.ts +19 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-refresh.ts +39 -43
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-revision.test.ts +42 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-revision.ts +26 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-synchronization.ts +34 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-startup.ts +30 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-work-reconciliation.test.ts +89 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-work-reconciliation.ts +88 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-workspace.ts +68 -7
- package/templates/.agents/dashboard/packages/local-runtime/src/server.test.ts +11 -5
- package/templates/.agents/dashboard/packages/local-runtime/src/server.ts +129 -99
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-agent-productivity.test.ts +111 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-agent-productivity.ts +140 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-agent-page.test.ts +127 -4
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-agent-page.ts +145 -5
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-aggregates.ts +156 -23
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-group-projection.ts +18 -9
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-invocation-projection.ts +52 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-first-fold-persistence.ts +35 -13
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-force-canonical.test.ts +56 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-incremental-cache.test.ts +29 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-incremental-cache.ts +136 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-incremental-refresh.test.ts +251 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-operations-projection.ts +22 -7
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-cache.test-support.ts +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-canonical-parsing.ts +42 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-canonical.ts +793 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-multi-provider-duration.test.ts +270 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-multi-provider-fixture.ts +3 -2
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-multi-provider.test.ts +18 -4
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-source-fingerprint.test.ts +87 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-source-fingerprint.ts +105 -16
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model.test.ts +131 -59
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model.ts +1000 -1115
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-snapshot-cache.ts +13 -92
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-launch-claims.test.mjs +79 -0
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-launch-page.mjs +27 -0
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-lifecycle.mjs +6 -6
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-prerequisites.mjs +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-refresh.mjs +2 -10
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-server.mjs +142 -0
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard.mjs +231 -239
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard.test.mjs +18 -29
- package/templates/.agents/dashboard/packages/windows-launcher/Program.cs +6 -0
- package/templates/.agents/dashboard/zaip-dashboard-windows.exe +0 -0
- package/templates/.agents/requirements/autonomous-assurance.md +1 -1
- package/templates/.agents/requirements/cloud-hostinger-autonomy.md +47 -0
- package/templates/.agents/requirements/comparative-audit.md +1 -1
- package/templates/.agents/requirements/context-engine.md +1 -1
- package/templates/.agents/requirements/cost-observability.md +1 -1
- package/templates/.agents/requirements/dashboard-launch.md +2 -2
- package/templates/.agents/requirements/data-export.md +1 -1
- package/templates/.agents/requirements/design-system.md +1 -1
- package/templates/.agents/requirements/execution-engine.md +1 -1
- package/templates/.agents/requirements/kanban-dashboard.md +1 -1
- package/templates/.agents/requirements/model-orchestration.md +1 -1
- package/templates/.agents/requirements/public-distribution.md +1 -1
- package/templates/.agents/requirements/software-architecture.md +1 -1
- package/templates/.agents/requirements/strategic-improvements.md +1 -1
- package/templates/.agents/requirements/work-lifecycle.md +1 -1
- package/templates/.agents/requirements/zaip-strategic-95.md +1 -1
- package/templates/.agents/rules/autonomy-decision.md +1 -1
- package/templates/.agents/rules/cloud-hostinger-autonomy.md +21 -0
- package/templates/.agents/rules/core.md +5 -4
- package/templates/.agents/rules/local-sqlite-storage.md +18 -0
- package/templates/.agents/rules/meta-mcp.md +21 -0
- package/templates/.agents/rules/workflow.md +1 -0
- package/templates/.agents/runtime/bin/zaip.mjs +305 -137
- package/templates/.agents/runtime/checksums.sha256 +2 -2
- package/templates/.agents/runtime/provenance.json +2 -2
- package/templates/.agents/skills/zaip-skill-api-to-mcp/SKILL.md +4 -0
- package/templates/.agents/skills/zaip-skill-brand-governance/SKILL.md +25 -9
- package/templates/.agents/skills/zaip-skill-brand-governance/references/brandbook-framework.md +2 -2
- package/templates/.agents/skills/zaip-skill-brand-governance/references/brandbook-standards.md +2 -2
- package/templates/.agents/skills/zaip-skill-change/references/observable-evidence.md +15 -0
- package/templates/.agents/skills/zaip-skill-dashboard-sqlite/SKILL.md +13 -5
- package/templates/.agents/skills/zaip-skill-data-analyst/SKILL.md +10 -5
- package/templates/.agents/skills/zaip-skill-execution/SKILL.md +5 -4
- package/templates/.agents/skills/zaip-skill-frontend-launcher/SKILL.md +4 -3
- package/templates/.agents/skills/zaip-skill-frontend-launcher/references/launcher-contract.md +5 -3
- package/templates/.agents/skills/zaip-skill-github-deploy/SKILL.md +5 -5
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/preflight.mjs +78 -13
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/preflight.test.mjs +59 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/yaml-parser.mjs +157 -0
- package/templates/.agents/skills/zaip-skill-growth-strategy-revops/SKILL.md +11 -6
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/SKILL.md +17 -0
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/agents/openai.yaml +7 -0
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/autonomous-cloud-inputs.example.json +41 -0
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/autonomous-runner.md +84 -0
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/operational-contract.md +19 -0
- package/templates/.agents/skills/zaip-skill-local-credentials/SKILL.md +43 -0
- package/templates/.agents/skills/zaip-skill-local-credentials/agents/openai.yaml +6 -0
- package/templates/.agents/skills/zaip-skill-local-credentials/references/dotenv-resolution.md +47 -0
- package/templates/.agents/skills/zaip-skill-marketing/SKILL.md +8 -3
- package/templates/.agents/skills/zaip-skill-meta-ads/SKILL.md +16 -0
- package/templates/.agents/skills/zaip-skill-meta-ads/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-meta-ads/references/setup.md +3 -0
- package/templates/.agents/skills/zaip-skill-meta-ads-setup/SKILL.md +24 -0
- package/templates/.agents/skills/zaip-skill-meta-ads-setup/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-meta-ads-setup/references/diagnostics.md +13 -0
- package/templates/.agents/skills/zaip-skill-meta-ads-setup/references/official-sources.md +10 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-api-health/SKILL.md +12 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-api-health/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-api-health/references/LICENSE +21 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-api-health/references/upstream.md +77 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-api-integration/SKILL.md +12 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-api-integration/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-api-integration/references/LICENSE +21 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-api-integration/references/upstream.md +126 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-app-health-check/SKILL.md +12 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-app-health-check/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-app-health-check/references/LICENSE +21 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-app-health-check/references/upstream.md +67 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-app-review-prep/SKILL.md +12 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-app-review-prep/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-app-review-prep/references/LICENSE +21 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-app-review-prep/references/upstream.md +69 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-compliance-check/SKILL.md +12 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-compliance-check/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-compliance-check/references/LICENSE +21 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-compliance-check/references/upstream.md +79 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-debug-access-token/SKILL.md +14 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-debug-access-token/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-debug-access-token/references/LICENSE +21 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-debug-access-token/references/upstream.md +144 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-debug-webhooks/SKILL.md +12 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-debug-webhooks/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-debug-webhooks/references/LICENSE +21 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-debug-webhooks/references/upstream.md +83 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-search-docs/SKILL.md +10 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-search-docs/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-search-docs/references/LICENSE +21 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-search-docs/references/setup.md +11 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-search-docs/references/upstream.md +55 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-webhook-setup/SKILL.md +12 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-webhook-setup/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-webhook-setup/references/LICENSE +21 -0
- package/templates/.agents/skills/zaip-skill-meta-devtools-webhook-setup/references/upstream.md +56 -0
- package/templates/.agents/skills/zaip-skill-sales-methodology/SKILL.md +12 -7
- package/templates/.agents/skills/zaip-skill-sqlite-read-model/SKILL.md +11 -4
- package/templates/.agents/skills/zaip-skill-tool-setup/SKILL.md +6 -4
- package/templates/.agents/skills/zaip-skill-tool-setup/references/codex-config.md +4 -2
- package/templates/.agents/skills/zaip-skill-tool-setup/references/secrets.md +1 -0
- package/templates/.agents/tools/catalog.yaml +6 -0
- package/templates/.agents/tools/cloud-runner-dns.mjs +28 -0
- package/templates/.agents/tools/cloud-runner-terraform.mjs +212 -0
- package/templates/.agents/tools/cloud-runner.integration.test.mjs +239 -0
- package/templates/.agents/tools/cloud-runner.mjs +786 -0
- package/templates/.agents/tools/cloud-runner.test.mjs +534 -0
- package/templates/.agents/tools/cloud-terraform-plan-policy.mjs +262 -0
- package/templates/.agents/tools/mcp/development/meta-devtools/README.md +14 -0
- package/templates/.agents/tools/mcp/development/meta-devtools/manifest.yaml +28 -0
- package/templates/.agents/tools/mcp/infra/cloudflare/manifest.yaml +2 -3
- package/templates/.agents/tools/mcp/infra/hostinger/manifest.yaml +1 -3
- package/templates/.agents/tools/mcp/marketing/meta-ads/README.md +15 -13
- package/templates/.agents/tools/mcp/marketing/meta-ads/manifest.yaml +15 -10
- package/templates/.agents/tools/profiles/development.yaml +3 -0
- package/templates/infra/terraform/.terraform.lock.hcl +42 -0
- package/templates/infra/terraform/README.md +31 -0
- package/templates/infra/terraform/backend.tf.json +13 -0
- package/templates/infra/terraform/deployment-inputs.example.yaml +22 -0
- package/templates/infra/terraform/fixtures/approved-targets.json +32 -0
- package/templates/infra/terraform/fixtures/plan-approved.json +67 -0
- package/templates/infra/terraform/main.tf +77 -0
- package/templates/infra/terraform/outputs.tf +20 -0
- package/templates/infra/terraform/terraform.tfvars.example +26 -0
- package/templates/infra/terraform/variables.tf +91 -0
- package/templates/infra/terraform/versions.tf +18 -0
- package/templates/scripts/validate-cloud-hostinger-contract.mjs +89 -0
- package/templates/scripts/validate-cloud-terraform-plan.mjs +1 -0
- package/templates/template-manifest.json +599 -167
- package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-BwnJpl02.js +0 -3
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-C09KmlSw.js +0 -68
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-Dyo_wpL4.js +0 -2
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-hPPfVGQv.css +0 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-stale-seed.ts +0 -50
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import{t as e}from"./rolldown-runtime-D9-fqq9M.js";var t=e((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.portal`),r=Symbol.for(`react.fragment`),i=Symbol.for(`react.strict_mode`),a=Symbol.for(`react.profiler`),o=Symbol.for(`react.consumer`),s=Symbol.for(`react.context`),c=Symbol.for(`react.forward_ref`),l=Symbol.for(`react.suspense`),u=Symbol.for(`react.memo`),d=Symbol.for(`react.lazy`),f=Symbol.for(`react.activity`),p=Symbol.iterator;function m(e){return typeof e!=`object`||!e?null:(e=p&&e[p]||e[`@@iterator`],typeof e==`function`?e:null)}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},g=Object.assign,_={};function v(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if(typeof e!=`object`&&typeof e!=`function`&&e!=null)throw Error(`takes an object of state variables to update or a function which returns an object of state variables.`);this.updater.enqueueSetState(this,e,t,`setState`)},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,`forceUpdate`)};function y(){}y.prototype=v.prototype;function b(e,t,n){this.props=e,this.context=t,this.refs=_,this.updater=n||h}var x=b.prototype=new y;x.constructor=b,g(x,v.prototype),x.isPureReactComponent=!0;var S=Array.isArray;function C(){}var w={H:null,A:null,T:null,S:null},T=Object.prototype.hasOwnProperty;function E(e,n,r){var i=r.ref;return{$$typeof:t,type:e,key:n,ref:i===void 0?null:i,props:r}}function D(e,t){return E(e.type,t,e.props)}function O(e){return typeof e==`object`&&!!e&&e.$$typeof===t}function k(e){var t={"=":`=0`,":":`=2`};return`$`+e.replace(/[=:]/g,function(e){return t[e]})}var ee=/\/+/g;function A(e,t){return typeof e==`object`&&e&&e.key!=null?k(``+e.key):t.toString(36)}function te(e){switch(e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason;default:switch(typeof e.status==`string`?e.then(C,C):(e.status=`pending`,e.then(function(t){e.status===`pending`&&(e.status=`fulfilled`,e.value=t)},function(t){e.status===`pending`&&(e.status=`rejected`,e.reason=t)})),e.status){case`fulfilled`:return e.value;case`rejected`:throw e.reason}}throw e}function j(e,r,i,a,o){var s=typeof e;(s===`undefined`||s===`boolean`)&&(e=null);var c=!1;if(e===null)c=!0;else switch(s){case`bigint`:case`string`:case`number`:c=!0;break;case`object`:switch(e.$$typeof){case t:case n:c=!0;break;case d:return c=e._init,j(c(e._payload),r,i,a,o)}}if(c)return o=o(e),c=a===``?`.`+A(e,0):a,S(o)?(i=``,c!=null&&(i=c.replace(ee,`$&/`)+`/`),j(o,r,i,``,function(e){return e})):o!=null&&(O(o)&&(o=D(o,i+(o.key==null||e&&e.key===o.key?``:(``+o.key).replace(ee,`$&/`)+`/`)+c)),r.push(o)),1;c=0;var l=a===``?`.`:a+`:`;if(S(e))for(var u=0;u<e.length;u++)a=e[u],s=l+A(a,u),c+=j(a,r,i,s,o);else if(u=m(e),typeof u==`function`)for(e=u.call(e),u=0;!(a=e.next()).done;)a=a.value,s=l+A(a,u++),c+=j(a,r,i,s,o);else if(s===`object`){if(typeof e.then==`function`)return j(te(e),r,i,a,o);throw r=String(e),Error(`Objects are not valid as a React child (found: `+(r===`[object Object]`?`object with keys {`+Object.keys(e).join(`, `)+`}`:r)+`). If you meant to render a collection of children, use an array instead.`)}return c}function ne(e,t,n){if(e==null)return e;var r=[],i=0;return j(e,r,``,``,function(e){return t.call(n,e,i++)}),r}function re(e){if(e._status===-1){var t=e._result;t=t(),t.then(function(t){(e._status===0||e._status===-1)&&(e._status=1,e._result=t)},function(t){(e._status===0||e._status===-1)&&(e._status=2,e._result=t)}),e._status===-1&&(e._status=0,e._result=t)}if(e._status===1)return e._result.default;throw e._result}var M=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},N={map:ne,forEach:function(e,t,n){ne(e,function(){t.apply(this,arguments)},n)},count:function(e){var t=0;return ne(e,function(){t++}),t},toArray:function(e){return ne(e,function(e){return e})||[]},only:function(e){if(!O(e))throw Error(`React.Children.only expected to receive a single React element child.`);return e}};e.Activity=f,e.Children=N,e.Component=v,e.Fragment=r,e.Profiler=a,e.PureComponent=b,e.StrictMode=i,e.Suspense=l,e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=w,e.__COMPILER_RUNTIME={__proto__:null,c:function(e){return w.H.useMemoCache(e)}},e.cache=function(e){return function(){return e.apply(null,arguments)}},e.cacheSignal=function(){return null},e.cloneElement=function(e,t,n){if(e==null)throw Error(`The argument must be a React element, but you passed `+e+`.`);var r=g({},e.props),i=e.key;if(t!=null)for(a in t.key!==void 0&&(i=``+t.key),t)!T.call(t,a)||a===`key`||a===`__self`||a===`__source`||a===`ref`&&t.ref===void 0||(r[a]=t[a]);var a=arguments.length-2;if(a===1)r.children=n;else if(1<a){for(var o=Array(a),s=0;s<a;s++)o[s]=arguments[s+2];r.children=o}return E(e.type,i,r)},e.createContext=function(e){return e={$$typeof:s,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null},e.Provider=e,e.Consumer={$$typeof:o,_context:e},e},e.createElement=function(e,t,n){var r,i={},a=null;if(t!=null)for(r in t.key!==void 0&&(a=``+t.key),t)T.call(t,r)&&r!==`key`&&r!==`__self`&&r!==`__source`&&(i[r]=t[r]);var o=arguments.length-2;if(o===1)i.children=n;else if(1<o){for(var s=Array(o),c=0;c<o;c++)s[c]=arguments[c+2];i.children=s}if(e&&e.defaultProps)for(r in o=e.defaultProps,o)i[r]===void 0&&(i[r]=o[r]);return E(e,a,i)},e.createRef=function(){return{current:null}},e.forwardRef=function(e){return{$$typeof:c,render:e}},e.isValidElement=O,e.lazy=function(e){return{$$typeof:d,_payload:{_status:-1,_result:e},_init:re}},e.memo=function(e,t){return{$$typeof:u,type:e,compare:t===void 0?null:t}},e.startTransition=function(e){var t=w.T,n={};w.T=n;try{var r=e(),i=w.S;i!==null&&i(n,r),typeof r==`object`&&r&&typeof r.then==`function`&&r.then(C,M)}catch(e){M(e)}finally{t!==null&&n.types!==null&&(t.types=n.types),w.T=t}},e.unstable_useCacheRefresh=function(){return w.H.useCacheRefresh()},e.use=function(e){return w.H.use(e)},e.useActionState=function(e,t,n){return w.H.useActionState(e,t,n)},e.useCallback=function(e,t){return w.H.useCallback(e,t)},e.useContext=function(e){return w.H.useContext(e)},e.useDebugValue=function(){},e.useDeferredValue=function(e,t){return w.H.useDeferredValue(e,t)},e.useEffect=function(e,t){return w.H.useEffect(e,t)},e.useEffectEvent=function(e){return w.H.useEffectEvent(e)},e.useId=function(){return w.H.useId()},e.useImperativeHandle=function(e,t,n){return w.H.useImperativeHandle(e,t,n)},e.useInsertionEffect=function(e,t){return w.H.useInsertionEffect(e,t)},e.useLayoutEffect=function(e,t){return w.H.useLayoutEffect(e,t)},e.useMemo=function(e,t){return w.H.useMemo(e,t)},e.useOptimistic=function(e,t){return w.H.useOptimistic(e,t)},e.useReducer=function(e,t,n){return w.H.useReducer(e,t,n)},e.useRef=function(e){return w.H.useRef(e)},e.useState=function(e){return w.H.useState(e)},e.useSyncExternalStore=function(e,t,n){return w.H.useSyncExternalStore(e,t,n)},e.useTransition=function(){return w.H.useTransition()},e.version=`19.2.7`})),n=e(((e,n)=>{n.exports=t()})),r=e((e=>{var t=n();function r(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;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.`}function i(){}var a={d:{f:i,r:function(){throw Error(r(522))},D:i,C:i,L:i,m:i,X:i,S:i,M:i},p:0,findDOMNode:null},o=Symbol.for(`react.portal`);function s(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var c=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function l(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=a,e.createPortal=function(e,t){var n=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(r(299));return s(e,t,null,n)},e.flushSync=function(e){var t=c.T,n=a.p;try{if(c.T=null,a.p=2,e)return e()}finally{c.T=t,a.p=n,a.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,a.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&a.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin),i=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?a.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:i,fetchPriority:o}):n===`script`&&a.d.X(e,{crossOrigin:r,integrity:i,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`)if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=l(t.as,t.crossOrigin);a.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??a.d.M(e)},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin);a.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`)if(t){var n=l(t.as,t.crossOrigin);a.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else a.d.m(e)},e.requestFormReset=function(e){a.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return c.H.useFormState(e,t,n)},e.useFormStatus=function(){return c.H.useHostTransitionStatus()},e.version=`19.2.7`})),i=e(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=r()})),a=n(),o=e((e=>{var t=Symbol.for(`react.transitional.element`),n=Symbol.for(`react.fragment`);function r(e,n,r){var i=null;if(r!==void 0&&(i=``+r),n.key!==void 0&&(i=``+n.key),`key`in n)for(var a in r={},n)a!==`key`&&(r[a]=n[a]);else r=n;return n=r.ref,{$$typeof:t,type:e,key:i,ref:n===void 0?null:n,props:r}}e.Fragment=n,e.jsx=r,e.jsxs=r})),s=e(((e,t)=>{t.exports=o()})),c=s(),l=new URL(`/assets/logo_novo_azul-BBx5pA2B.png`,``+import.meta.url).href;function u({filters:e,filtersActive:t=!1,lastUpdatedAt:n,loading:r,locale:i,onLocaleChange:o,onRefresh:s,repositoryName:u,settings:f,title:v}){let[y,b]=(0,a.useState)(!1),[x,S]=(0,a.useState)(!1),[C,w]=(0,a.useState)(!1),T=i===`pt-BR`?{filters:`Filtros`,language:`Idioma`,refresh:`Atualizar`,refreshing:`Atualizando…`,settings:`Configurações`,updated:`Atualizado`,waiting:`Aguardando atualização`}:{filters:`Filters`,language:`Language`,refresh:`Refresh`,refreshing:`Refreshing…`,settings:`Settings`,updated:`Updated`,waiting:`Waiting for refresh`},E=n===null?T.waiting:`${T.updated} ${new Intl.DateTimeFormat(i,{dateStyle:`short`,timeStyle:`medium`}).format(new Date(n))}`,D=e=>{o(e),S(!1)},O=u?.includes(`/`)?`https://github.com/${u}`:null;return(0,c.jsxs)(`nav`,{"aria-label":`${u?`${v} ${u}`:v} menu`,className:`dashboard-header`,children:[(0,c.jsxs)(`div`,{className:`dashboard-header-brand`,children:[(0,c.jsxs)(`strong`,{children:[(0,c.jsx)(`span`,{children:v}),u?O?(0,c.jsxs)(`a`,{"aria-label":`Abrir ${u} no GitHub`,className:`dashboard-header-repository`,href:O,rel:`noreferrer`,target:`_blank`,children:[(0,c.jsx)(m,{}),(0,c.jsx)(`span`,{children:u})]}):(0,c.jsxs)(`span`,{className:`dashboard-header-repository`,children:[(0,c.jsx)(m,{}),(0,c.jsx)(`span`,{children:u})]}):null]}),(0,c.jsx)(`small`,{children:E})]}),(0,c.jsx)(`img`,{alt:`ZAIP`,className:`dashboard-header-logo`,src:l}),(0,c.jsxs)(`div`,{className:`dashboard-header-actions`,children:[(0,c.jsx)(`button`,{"aria-label":T.refresh,className:`dashboard-header-icon dashboard-header-refresh`,disabled:r,onClick:s,type:`button`,children:(0,c.jsx)(p,{})}),(0,c.jsxs)(`div`,{className:`dashboard-header-anchor dashboard-header-filter-action`,children:[(0,c.jsxs)(`button`,{className:`dashboard-header-button${y||t?` is-active`:``}`,onClick:()=>{b(e=>!e),S(!1),w(!1)},type:`button`,children:[(0,c.jsx)(h,{}),` `,T.filters]}),y?(0,c.jsx)(`div`,{className:`dashboard-header-popup dashboard-header-filter-popup`,children:e}):null]}),(0,c.jsxs)(`div`,{className:`dashboard-header-anchor dashboard-header-locale-action`,children:[(0,c.jsxs)(`button`,{className:`dashboard-header-button${x?` is-active`:``}`,onClick:()=>{S(e=>!e),b(!1),w(!1)},type:`button`,children:[(0,c.jsx)(d,{locale:i}),i===`pt-BR`?`PT-BR`:`EN-US`,(0,c.jsx)(g,{})]}),x?(0,c.jsxs)(`div`,{className:`dashboard-header-popup dashboard-header-locale-popup`,children:[(0,c.jsxs)(`button`,{onClick:()=>D(`pt-BR`),type:`button`,children:[(0,c.jsx)(d,{locale:`pt-BR`}),` Português do Brasil`,i===`pt-BR`?(0,c.jsx)(`span`,{children:`✓`}):null]}),(0,c.jsxs)(`button`,{onClick:()=>D(`en-US`),type:`button`,children:[(0,c.jsx)(d,{locale:`en-US`}),` English`,i===`en-US`?(0,c.jsx)(`span`,{children:`✓`}):null]})]}):null]}),f===void 0?null:(0,c.jsxs)(`div`,{className:`dashboard-header-anchor dashboard-header-settings-action`,children:[(0,c.jsx)(`button`,{"aria-label":T.settings,className:`dashboard-header-icon${C?` is-active`:``}`,onClick:()=>{w(e=>!e),b(!1),S(!1)},type:`button`,children:(0,c.jsx)(_,{})}),C?(0,c.jsxs)(`div`,{className:`dashboard-header-popup dashboard-header-settings-popup`,children:[(0,c.jsxs)(`div`,{className:`dashboard-header-mobile-settings`,children:[(0,c.jsx)(`small`,{children:E}),(0,c.jsxs)(`button`,{disabled:r,onClick:s,type:`button`,children:[(0,c.jsx)(p,{}),` `,r?T.refreshing:T.refresh]}),(0,c.jsxs)(`label`,{children:[(0,c.jsx)(`span`,{children:T.language}),(0,c.jsxs)(`select`,{onChange:e=>o(e.target.value),value:i,children:[(0,c.jsx)(`option`,{value:`pt-BR`,children:`Português do Brasil`}),(0,c.jsx)(`option`,{value:`en-US`,children:`English`})]})]}),(0,c.jsxs)(`div`,{className:`dashboard-header-mobile-filters`,children:[(0,c.jsx)(`strong`,{children:T.filters}),e]})]}),(0,c.jsx)(`div`,{className:`dashboard-header-settings-content`,children:f})]}):null]})]})]})}function d({locale:e}){return e===`pt-BR`?(0,c.jsxs)(`svg`,{"aria-hidden":`true`,className:`dashboard-header-flag`,viewBox:`0 0 24 24`,children:[(0,c.jsx)(`rect`,{fill:`#18864b`,height:`24`,rx:`5`,width:`24`}),(0,c.jsx)(`path`,{d:`m12 3.8 8.2 8.2L12 20.2 3.8 12 12 3.8Z`,fill:`#f6d64a`}),(0,c.jsx)(`circle`,{cx:`12`,cy:`12`,fill:`#1b4f9c`,r:`4.2`}),(0,c.jsx)(`path`,{d:`M8.8 11.2c1.9-1 4.5-1 6.4 0`,fill:`none`,stroke:`#fff`,strokeWidth:`.8`})]}):(0,c.jsxs)(`svg`,{"aria-hidden":`true`,className:`dashboard-header-flag`,viewBox:`0 0 24 24`,children:[(0,c.jsx)(`rect`,{fill:`#fff`,height:`24`,rx:`5`,width:`24`}),(0,c.jsx)(`path`,{d:`M0 3h24v3H0Zm0 6h24v3H0Zm0 6h24v3H0Z`,fill:`#bd3d44`}),(0,c.jsx)(`path`,{d:`M0 0h11v11H0Z`,fill:`#192f6b`})]})}function f({children:e,className:t=``}){return(0,c.jsx)(`svg`,{"aria-hidden":`true`,className:`dashboard-header-svg ${t}`,fill:`none`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`2`,viewBox:`0 0 24 24`,children:e})}function p(){return(0,c.jsxs)(f,{children:[(0,c.jsx)(`path`,{d:`M21 12a9 9 0 0 1-15.2 6.5L3 16`}),(0,c.jsx)(`path`,{d:`M3 21v-5h5`}),(0,c.jsx)(`path`,{d:`M3 12a9 9 0 0 1 15.2-6.5L21 8`}),(0,c.jsx)(`path`,{d:`M21 3v5h-5`})]})}function m(){return(0,c.jsx)(`svg`,{"aria-hidden":`true`,className:`dashboard-header-github`,viewBox:`0 0 24 24`,children:(0,c.jsx)(`path`,{d:`M12 2C6.48 2 2 6.58 2 12.23c0 4.52 2.87 8.35 6.84 9.71.5.1.68-.22.68-.49 0-.24-.01-1.05-.02-1.9-2.78.62-3.37-1.2-3.37-1.2-.45-1.18-1.11-1.49-1.11-1.49-.91-.64.07-.63.07-.63 1 .07 1.53 1.06 1.53 1.06.9 1.57 2.34 1.12 2.91.86.09-.66.35-1.12.64-1.37-2.22-.26-4.56-1.14-4.56-5.06 0-1.12.39-2.03 1.03-2.75-.1-.26-.45-1.3.1-2.71 0 0 .84-.28 2.75 1.05A9.32 9.32 0 0 1 12 6.97c.85 0 1.7.12 2.5.34 1.91-1.33 2.75-1.05 2.75-1.05.55 1.41.2 2.45.1 2.71.64.72 1.03 1.63 1.03 2.75 0 3.93-2.34 4.79-4.57 5.05.36.32.68.94.68 1.9 0 1.38-.01 2.49-.01 2.83 0 .27.18.59.69.49A10.25 10.25 0 0 0 22 12.23C22 6.58 17.52 2 12 2Z`,fill:`currentColor`})})}function h(){return(0,c.jsx)(f,{children:(0,c.jsx)(`path`,{d:`M3 6h18M7 12h10m-7 6h4`})})}function g(){return(0,c.jsx)(f,{className:`dashboard-header-chevron`,children:(0,c.jsx)(`path`,{d:`m6 9 6 6 6-6`})})}function _(){return(0,c.jsxs)(f,{children:[(0,c.jsx)(`path`,{d:`M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.09a2 2 0 0 1 1 1.74v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.38a2 2 0 0 0-.73-2.73l-.15-.09a2 2 0 0 1-1-1.74v-.51a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2Z`}),(0,c.jsx)(`circle`,{cx:`12`,cy:`12`,r:`3`})]})}var v=i();function y({rows:e,columns:t,rowKey:n,onRowClick:r,defaultSort:i=null,sortable:o=!1,showColumnInfo:s=!1,scrollLabel:l,locale:u=`pt-BR`,pageSize:d=100,emptyMessage:f=u===`pt-BR`?`Nenhum dado disponível.`:`No data available.`}){let[p,m]=(0,a.useState)(i),[h,g]=(0,a.useState)(0),[_,y]=(0,a.useState)(null);(0,a.useEffect)(()=>{if(_===null)return;let e=()=>y(null);return window.addEventListener(`scroll`,e,!0),window.addEventListener(`resize`,e),()=>{window.removeEventListener(`scroll`,e,!0),window.removeEventListener(`resize`,e)}},[_]);let w=(0,a.useMemo)(()=>t.filter(e=>!e.hidden),[t]),T=(0,a.useMemo)(()=>{if(p===null)return e;let n=t.find(e=>e.key===p.key);return n?[...e].sort((e,t)=>{let r=S(n.sortValue?.(e)??x(n.render(e)),n.sortValue?.(t)??x(n.render(t)));return p.direction===`asc`?r:-r}):e},[t,e,p]),E=d===null||d<=0?1:Math.max(1,Math.ceil(T.length/d)),D=Math.min(h,E-1),O=d===null||d<=0?T:T.slice(D*d,(D+1)*d);return(0,a.useEffect)(()=>g(0),[]),e.length===0?(0,c.jsx)(`p`,{className:`ui-empty`,children:f}):(0,c.jsxs)(`section`,{"aria-label":l,className:`ui-table-wrap`,role:l?`region`:void 0,tabIndex:l?0:void 0,children:[(0,c.jsxs)(`table`,{className:`ui-table`,children:[(0,c.jsx)(`thead`,{children:(0,c.jsx)(`tr`,{children:w.map(e=>(0,c.jsx)(`th`,{"aria-sort":p?.key===e.key?p.direction===`asc`?`ascending`:`descending`:`none`,className:e.align===`right`?`is-number`:void 0,children:e.label&&(o||s)?(0,c.jsxs)(`span`,{className:`ui-table-heading`,children:[(0,c.jsx)(`span`,{className:`ui-table-label`,children:e.label}),o?(0,c.jsx)(`button`,{"aria-label":u===`pt-BR`?`Ordenar por ${e.label}`:`Sort by ${e.label}`,className:`ui-table-sort`,onClick:()=>m(t=>({key:e.key,direction:t?.key===e.key&&t.direction===`asc`?`desc`:`asc`})),type:`button`,children:(0,c.jsx)(`span`,{"aria-hidden":`true`,className:`ui-table-sort-indicator`,children:p?.key===e.key?p.direction===`asc`?`↑`:`↓`:`↕`})}):null,s?(0,c.jsx)(`button`,{"aria-label":u===`pt-BR`?`Informação sobre ${e.label}`:`Information about ${e.label}`,className:`ui-table-info`,onBlur:()=>y(null),onFocus:t=>b(t.currentTarget,e.description??C(e.label,u),y),onMouseEnter:t=>b(t.currentTarget,e.description??C(e.label,u),y),onMouseLeave:()=>y(null),type:`button`,children:`i`}):null]}):e.label},e.key))})}),(0,c.jsx)(`tbody`,{children:O.map(e=>(0,c.jsx)(`tr`,{className:r===void 0?void 0:`ui-table-row-action`,onClick:r===void 0?void 0:()=>r(e),onKeyDown:r===void 0?void 0:t=>{(t.key===`Enter`||t.key===` `)&&(t.preventDefault(),r(e))},tabIndex:r===void 0?void 0:0,children:w.map(t=>(0,c.jsx)(`td`,{className:t.align===`right`?`is-number`:void 0,children:t.render(e)},t.key))},n(e)))}),w.some(e=>e.footer!==void 0)?(0,c.jsx)(`tfoot`,{children:(0,c.jsx)(`tr`,{children:w.map(e=>(0,c.jsx)(`td`,{className:e.align===`right`?`is-number`:void 0,children:e.footer},e.key))})}):null]}),E>1?(0,c.jsxs)(`nav`,{"aria-label":u===`pt-BR`?`Paginação da tabela`:`Table pagination`,className:`ui-table-pagination`,children:[(0,c.jsx)(`button`,{disabled:D===0,onClick:()=>g(e=>Math.max(0,e-1)),type:`button`,children:u===`pt-BR`?`Anterior`:`Previous`}),(0,c.jsxs)(`span`,{children:[u===`pt-BR`?`Página`:`Page`,` `,D+1,` / `,E]}),(0,c.jsx)(`button`,{disabled:D+1>=E,onClick:()=>g(e=>Math.min(E-1,e+1)),type:`button`,children:u===`pt-BR`?`Próxima`:`Next`})]}):null,_&&typeof document<`u`?(0,v.createPortal)((0,c.jsx)(`div`,{className:`ui-table-tooltip`,role:`tooltip`,style:{bottom:_.bottom,left:_.left,top:_.top},children:_.text}),document.body):null]})}function b(e,t,n){let r=e.getBoundingClientRect();n({text:t,left:Math.min(Math.max(r.left+r.width/2,176),window.innerWidth-176),...window.innerHeight-r.bottom<260?{bottom:window.innerHeight-r.top+9}:{top:r.bottom+9}})}function x(e){return typeof e==`number`||typeof e==`string`?e:Array.isArray(e)?e.map(x).filter(Boolean).join(` `):e&&typeof e==`object`&&`props`in e?x(e.props?.children??null):null}function S(e,t){return e===null?t===null?0:1:t===null?-1:typeof e==`number`&&typeof t==`number`?e-t:new Intl.Collator(void 0,{numeric:!0,sensitivity:`base`}).compare(String(e),String(t))}function C(e,t){let n=e.toLocaleLowerCase(t);return t===`pt-BR`?`Mostra ${n} para cada linha. Clique no título para ordenar em ordem crescente ou decrescente.`:`Shows ${n} for each row. Click the column title to sort in ascending or descending order.`}function w(e,t=`pt-BR`){return e===null?`0`:e>=36e5?`${new Intl.NumberFormat(t,{maximumFractionDigits:1}).format(e/36e5)} h`:e>=6e4?`${Math.round(e/6e4)} min`:`${Math.round(e/1e3)} ${t===`pt-BR`?`seg`:`sec`}`}function T(e,t=`pt-BR`){return e===null?`0`:e<36e5?w(e,t):`${new Intl.NumberFormat(t,{maximumFractionDigits:1}).format(e/36e5)} h`}function E(e,t=`pt-BR`,n=1){if(e===null)return`0`;let r=[{threshold:0x38d7ea4c68000,suffix:`Q`},{threshold:0xe8d4a51000,suffix:`T`},{threshold:1e9,suffix:`B`},{threshold:1e6,suffix:`M`},{threshold:1e3,suffix:`mil`}].find(({threshold:t})=>Math.abs(e)>=t);return r?`${new Intl.NumberFormat(t,{maximumFractionDigits:n}).format(e/r.threshold)} ${r.suffix}`:new Intl.NumberFormat(t,{notation:`compact`,maximumFractionDigits:n}).format(e)}function D(e,t=`pt-BR`,n){return e===null?`0`:new Intl.NumberFormat(t,{maximumFractionDigits:n}).format(e)}function O(e,t,n=`pt-BR`){return e===null?`0`:new Intl.NumberFormat(n,{style:`currency`,currency:t,minimumFractionDigits:2,maximumFractionDigits:2}).format(e)}function k(e,t=`pt-BR`){return e===null?t===`pt-BR`?`indisponível`:`unavailable`:new Intl.DateTimeFormat(t,{dateStyle:`short`,timeStyle:`medium`}).format(new Date(e))}function ee(e,t=`pt-BR`){return new Intl.NumberFormat(t,{style:`percent`,maximumFractionDigits:1}).format(e)}function A({ariaLabel:e,metrics:t}){return(0,c.jsx)(`section`,{"aria-label":e,className:`period-average-summary`,children:(0,c.jsx)(`div`,{className:`period-average-grid`,children:t.map(e=>(0,c.jsxs)(`article`,{children:[(0,c.jsx)(`span`,{children:e.label}),(0,c.jsx)(`strong`,{children:e.value})]},e.label))})})}function te(e,t){return e===null?t===`pt-BR`?`Indisponível`:`Unavailable`:e===0?t===`pt-BR`?`0 seg`:`0 sec`:w(e,t)}function j(e){if(typeof e.source_duration_ms==`number`&&e.source_duration_ms>=0)return e.source_duration_ms;let t=e.duration_provenance;return typeof e.duration_ms==`number`&&e.duration_ms>=0&&(t===`observed`||t===`reconciled`||t===`legacy_inferred`)?e.duration_ms:null}function ne(e,t){return e.provenance===`in_progress`?t===`pt-BR`?`Em andamento`:`In progress`:e.durationMs===null||e.provenance===`unavailable`?t===`pt-BR`?`Sem atribuição temporal`:`No temporal attribution`:te(e.durationMs,t)}function re(e){let t=j(e);if(t!==null)return{durationMs:t,provenance:`factual`};if(e.status===`running`)return{durationMs:null,provenance:`in_progress`};let n=N({...e,status:e.status??``});return n==null?{durationMs:null,provenance:`unavailable`}:{durationMs:n,provenance:`lifecycle_elapsed`}}function M(e){if(e.started_at===null||e.finished_at===null)return null;let t=Date.parse(e.started_at),n=Date.parse(e.finished_at);return Number.isFinite(t)&&Number.isFinite(n)&&n>=t?n-t:null}function N(e){if([`completed`,`failed`,`cancelled`].includes(e.status))return M(e)}function ie(e,t){return e===void 0?`—`:te(e,t)}function P({details:e,locale:t,onClose:n}){let r=ue(t),i=e.kind===`change`||e.kind===`decision`?e.row.title:e.row.id;return(0,v.createPortal)((0,c.jsx)(`dialog`,{className:`operations-status-dialog-backdrop`,onMouseDown:e=>e.currentTarget===e.target&&n(),open:!0,children:(0,c.jsxs)(`section`,{"aria-label":`${r.details} ${L(e.kind,t)}`,"aria-modal":`true`,className:`operations-status-dialog operations-entity-details`,role:`dialog`,children:[(0,c.jsxs)(`header`,{children:[(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`span`,{children:L(e.kind,t)}),(0,c.jsx)(`h2`,{children:i}),(0,c.jsx)(`p`,{children:e.row.id})]}),(0,c.jsx)(`button`,{"aria-label":t===`pt-BR`?`Fechar`:`Close`,onClick:n,type:`button`,children:`×`})]}),(0,c.jsxs)(`div`,{className:`operations-entity-details-scroll`,children:[e.kind===`change`?(0,c.jsx)(F,{locale:t,row:e.row}):null,e.kind===`decision`?(0,c.jsx)(ae,{locale:t,row:e.row}):null,e.kind===`execution`?(0,c.jsx)(oe,{locale:t,row:e.row}):null,e.kind===`run`?(0,c.jsx)(se,{locale:t,row:e.row}):null]})]})}),document.body)}function F({row:e,locale:t}){let n=ue(t);return(0,c.jsx)(ce,{items:[[n.status,e.status],[n.risk,e.risk],[n.origin,I(e.source)],[n.created,k(e.created_at,t)],[n.tasks,String(e.task_ids.length)],[n.requirements,le(e.requirement_ids)],[n.acceptanceCriteria,le(e.acceptance_ids)],[n.result,e.result??`—`],[n.file,e.artifact_path]]})}function ae({row:e,locale:t}){let n=ue(t);return(0,c.jsx)(ce,{items:[[n.origin,e.origin],[n.scopeType,e.scope_type],[n.scope,e.scope_id],[n.created,k(e.created_at,t)],[n.file,e.artifact_path]]})}function oe({row:e,locale:t}){let n=ue(t);return(0,c.jsx)(ce,{items:[[n.status,e.status],[n.workStatus,e.work_status],[n.origin,I(e.origin)],[n.created,k(e.created_at,t)],[n.tasksInDag,String(e.dag.nodes.length)],[t===`pt-BR`?`Invocações do orquestrador`:`Orchestrator invocations`,String(e.orchestrator_run_count)],[t===`pt-BR`?`Invocações delegadas`:`Delegated invocations`,String(e.subagent_run_count)],[t===`pt-BR`?`Tasks finalizadas`:`Finalized Tasks`,`${e.finalized_task_count}/${e.task_count} (${e.finalizer_run_count} ${t===`pt-BR`?`chamadas finalizadoras`:`finalizer calls`})`],[n.topologicalOrder,le(e.dag.topological_order)],[n.dependencies,e.dag.nodes.map(e=>`${e.task_id}: ${le(e.depends_on)}`).join(`
|
|
2
|
+
`)||`—`],[n.result,e.result??`—`],[n.file,e.artifact_path]]})}function se({row:e,locale:t}){let n=ue(t);return(0,c.jsx)(ce,{items:[[n.status,e.status],[n.phase,e.phase],[n.entrypoint,e.entrypoint],[n.type,e.work_type],[t===`pt-BR`?`Tipo da chamada`:`Call type`,e.run_kind===`run`?t===`pt-BR`?`Invocação do orquestrador`:`Orchestrator invocation`:t===`pt-BR`?`Invocação delegada`:`Delegated invocation`],[t===`pt-BR`?`Propósito`:`Purpose`,e.run_purpose],[t===`pt-BR`?`Exige finalizador`:`Requires finalizer`,e.requires_finalizer?`sim`:`não`],[t===`pt-BR`?`Invocação pai`:`Parent invocation`,e.parent_run_id??`—`],[n.client,e.client],[n.agent,e.agent_name],[n.provider,e.provider??`—`],[t===`pt-BR`?`Modelo planejado`:`Planned model`,e.model],[t===`pt-BR`?`Effort planejado`:`Planned effort`,e.reasoning_effort??`—`],[t===`pt-BR`?`Modelo efetivo`:`Effective model`,e.effective_config_mixed?t===`pt-BR`?`Misto`:`Mixed`:e.effective_model??`—`],[t===`pt-BR`?`Effort efetivo`:`Effective effort`,e.effective_config_mixed?t===`pt-BR`?`Misto`:`Mixed`:e.effective_reasoning_effort??`—`],[`Task`,e.task_id??`—`],[`SPEC`,e.spec_id??`—`],[`PRD`,e.prd_id??`—`],[`Change`,e.change_id??`—`],[`Execution`,e.execution_id??`—`],[n.start,k(e.started_at,t)],[n.end,k(e.finished_at,t)],[n.duration,te(j(e),t)],[n.lifecycleElapsed,ie(N(e),t)],[`Tokens`,E(e.usage.total.tokens.total,t)],[n.costBrl,O(e.usage.total.cost.brl,`BRL`,t)],[n.costUsd,O(e.usage.total.cost.usd,`USD`,t)],[n.file,e.artifact_path]]})}function ce({items:e}){return(0,c.jsx)(`dl`,{className:`operations-entity-detail-grid`,children:e.map(([e,t])=>(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`dt`,{children:e}),(0,c.jsx)(`dd`,{children:t})]},e))})}function I(e){return e.type===`task`?`Task: ${e.task_id}`:e.type===`spec`?`SPEC: ${e.spec_id}`:e.type===`interaction`?`Conversation: ${e.conversation_id}`:`PRD: ${e.prd_id}${`spec_id`in e&&e.spec_id?` · SPEC: ${e.spec_id}`:``}`}function le(e){return e.length===0?`—`:e.join(`, `)}function L(e,t){return(t===`pt-BR`?{change:`Mudança`,decision:`Decisão`,execution:`Execução ZAIP`,run:`Invocação de Agente`}:{change:`Change`,decision:`Decision`,execution:`Execution`,run:`Agent Invocation`})[e]}function ue(e){return e===`pt-BR`?{details:`Detalhes de`,status:`Status`,risk:`Risco`,origin:`Origem`,created:`Criada`,tasks:`Tasks`,requirements:`Requisitos`,acceptanceCriteria:`Critérios de aceite`,result:`Resultado`,file:`Arquivo`,scopeType:`Tipo de escopo`,scope:`Escopo`,workStatus:`Status do trabalho`,tasksInDag:`Tasks na DAG`,topologicalOrder:`Ordem topológica`,dependencies:`Dependências`,phase:`Fase`,entrypoint:`Entrada`,type:`Tipo`,client:`Cliente`,agent:`Agente`,provider:`Provider`,model:`Modelo`,start:`Início`,end:`Fim`,duration:`Tempo`,lifecycleElapsed:`Tempo decorrido`,costBrl:`Custo BRL`,costUsd:`Custo USD`}:{details:`Details for`,status:`Status`,risk:`Risk`,origin:`Origin`,created:`Created`,tasks:`Tasks`,requirements:`Requirements`,acceptanceCriteria:`Acceptance criteria`,result:`Result`,file:`File`,scopeType:`Scope type`,scope:`Scope`,workStatus:`Work status`,tasksInDag:`Tasks in DAG`,topologicalOrder:`Topological order`,dependencies:`Dependencies`,phase:`Phase`,entrypoint:`Entrypoint`,type:`Type`,client:`Client`,agent:`Agent`,provider:`Provider`,model:`Model`,start:`Start`,end:`End`,duration:`Time`,lifecycleElapsed:`Elapsed time`,costBrl:`Cost BRL`,costUsd:`Cost USD`}}function de(e,t){let n=e.filter(e=>e.kind===`interaction`&&e.origin.type===`interaction`),r=new Map;for(let e of n){let t=e.origin.type===`interaction`?e.origin.conversation_id:``;r.set(t,[...r.get(t)??[],e])}return[...r].map(([e,n])=>{let r=new Set(n.map(e=>e.id)),i=[...new Map(t.filter(t=>t.conversation_id===e||r.has(t.execution_id??``)).map(e=>[e.id,e])).values()],a=[...n.map(e=>e.created_at),...i.map(e=>e.started_at)].filter(e=>e!==null).sort().at(-1)??``,o=i.filter(e=>e.run_kind!==`subrun`&&e.parent_run_id==null).map(e=>re(e)),s=o.flatMap(({durationMs:e,provenance:t})=>t===`factual`&&e!==null?[e]:[]),c=o.flatMap(({durationMs:e,provenance:t})=>t===`lifecycle_elapsed`&&e!==null?[e]:[]),l=e=>{let t=e.filter(e=>e!==null);return t.length===0?null:t.reduce((e,t)=>e+t,0)},u=[...n].sort((e,t)=>(t.created_at??``).localeCompare(e.created_at??``))[0],d=i.map(e=>e.lifecycle_elapsed_ms).find(e=>e!==void 0),f=s.length>0?`factual`:c.length>0?`lifecycle_elapsed`:`unavailable`;return{id:e,latest_started_at:a??``,run_count:i.length,execution_count:n.length,status:u.status,duration_ms:s.length>0?s.reduce((e,t)=>e+t,0):c.length>0?c.reduce((e,t)=>e+t,0):null,duration_provenance:f,total_tokens:l(i.map(e=>e.usage?.total.tokens.total??null)),cost_brl:l(i.map(e=>e.usage?.total.cost.brl??null)),models:pe(i.flatMap(e=>R(e.effective_model??e.model))),reasoning_efforts:pe(i.flatMap(e=>R(e.effective_reasoning_effort??e.reasoning_effort))),...d===void 0?{}:{lifecycle_elapsed_ms:fe(u.status)&&typeof d==`number`?d:null}}}).sort((e,t)=>t.latest_started_at.localeCompare(e.latest_started_at))}function fe(e){return e===`completed`||e===`failed`||e===`cancelled`}function pe(e){return[...new Set(e.filter(z))].sort()}function R(e){return typeof e==`string`?e.split(`,`).map(e=>e.trim()):[]}function z(e){return e!==``&&e.toLowerCase()!==`unknown`}function me(e,t){return e.map((e,n)=>({row:e,index:n,timestamp:Date.parse(t(e)??``)})).sort((e,t)=>{let n=Number.isFinite(e.timestamp)?e.timestamp:-1/0;return(Number.isFinite(t.timestamp)?t.timestamp:-1/0)-n||e.index-t.index}).map(({row:e})=>e)}function B({rows:e,locale:t}){let[n,r]=(0,a.useState)(null);return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(y,{columns:[{key:`created`,label:`Criada`,render:e=>k(e.created_at)},{key:`title`,label:`Change`,render:e=>(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`strong`,{children:e.title}),(0,c.jsx)(`small`,{children:e.id})]})},{key:`status`,label:`Status`,render:e=>(0,c.jsx)(Ee,{status:e.status})},{key:`risk`,label:`Risco`,render:e=>(0,c.jsx)(De,{risk:e.risk})},{key:`tasks`,label:`Tasks`,render:e=>e.task_ids.length,align:`right`},{key:`path`,label:`Arquivo`,render:e=>e.artifact_path}],locale:t,rowKey:e=>e.id,onRowClick:r,rows:me(e,e=>e.created_at),showColumnInfo:!0,sortable:!0}),n?(0,c.jsx)(P,{details:{kind:`change`,row:n},locale:t,onClose:()=>r(null)}):null]})}function he({rows:e,locale:t,canonical:n=!0}){let[r,i]=(0,a.useState)(null),[o,s]=(0,a.useState)(`all`);if(!n||!Se(e))return(0,c.jsx)(we,{locale:t,kind:`executions`});let l=me(e.filter(e=>o===`all`||e.kind===o),e=>e.created_at);return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)(`div`,{className:`operations-execution-table`,children:[(0,c.jsx)(`div`,{className:`operations-toolbar operations-run-kind-toolbar`,children:(0,c.jsx)(`nav`,{"aria-label":t===`pt-BR`?`Tipo de execução`:`Execution type`,children:[`all`,`interaction`,`delivery`].map(e=>(0,c.jsx)(`button`,{className:o===e?`is-active`:void 0,onClick:()=>s(e),type:`button`,children:V(e,t)},e))})}),(0,c.jsx)(y,{columns:[{key:`created`,label:`Data de criação`,render:e=>k(e.created_at)},{key:`id`,label:t===`pt-BR`?`Execução`:`Execution`,render:e=>(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`strong`,{children:V(e.kind??`delivery`,t)}),(0,c.jsx)(`small`,{children:e.id})]})},{key:`status`,label:`Status`,render:e=>(0,c.jsx)(Ee,{status:e.status})},{key:`origin`,label:`Origem`,render:e=>(0,c.jsx)(Oe,{entrypoint:e.origin.type===`interaction`?`conversation`:e.origin.type})},{key:`duration`,label:t===`pt-BR`?`Tempo`:`Time`,render:e=>ne({durationMs:e.duration_ms,provenance:e.duration_ms===null&&e.status===`running`?`in_progress`:`factual`},t),align:`right`},{key:`tokens`,label:`Tokens`,render:e=>E(e.total_tokens??null,t),align:`right`},{key:`cost`,label:t===`pt-BR`?`Custo`:`Cost`,render:e=>O(e.cost_brl??null,`BRL`,t),align:`right`},{key:`runs`,label:t===`pt-BR`?`Invocações do orquestrador`:`Orchestrator invocations`,render:e=>ge(e.orchestrator_run_count),align:`right`},{key:`finalizers`,label:t===`pt-BR`?`Finalizadores`:`Finalizers`,render:e=>`${ge(e.finalized_task_count)}/${ge(e.task_count)}`,align:`right`},{key:`tasks`,label:t===`pt-BR`?`Tarefas`:`Tasks`,render:e=>ge(e.task_count),align:`right`},{key:`specs`,label:`SPEC`,render:e=>ge(e.spec_count),align:`right`},{key:`prds`,label:`PRD`,render:e=>ge(e.prd_count),align:`right`}],locale:t,rowKey:e=>e.id,onRowClick:i,rows:l,showColumnInfo:!0,sortable:!0})]}),r?(0,c.jsx)(P,{details:{kind:`execution`,row:r},locale:t,onClose:()=>i(null)}):null]})}function V(e,t){return t===`pt-BR`?e===`all`?`Todas`:e===`interaction`?`Interações`:`Execuções de entrega`:e===`all`?`All`:e===`interaction`?`Interactions`:`Delivery executions`}function ge(e){return typeof e==`number`&&Number.isFinite(e)&&e>=0?e:0}function _e(e){return e.agent.toLowerCase()===`codex`?`codex`:e.agent_name||e.agent||`—`}function ve(e){return(e.parent_run_id??e.task_id??e.conversation_id)||`—`}function ye({rows:e,locale:t}){let[n,r]=(0,a.useState)(null),[i,o]=(0,a.useState)(`all`),s=me(e.filter(e=>i===`all`||e.run_kind===i),e=>e.started_at),l=e=>e==null?`—`:new Intl.NumberFormat(t,{maximumFractionDigits:3}).format(e),u=e=>e==null?`—`:`${l(e)} / 1M`,d=e=>e==null?`—`:`${l(e)}×`,f=e=>e==null?`—`:O(e,`USD`,t),p=e=>e===`observed`?t===`pt-BR`?`Observada`:`Observed`:e===`reconciled`?t===`pt-BR`?`Reconciliada`:`Reconciled`:e===`estimated`?t===`pt-BR`?`Estimada por tokens`:`Token-estimated`:e===`legacy_inferred`?t===`pt-BR`?`Inferida histórica`:`Legacy inferred`:`—`;return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`div`,{className:`operations-toolbar operations-run-kind-toolbar`,children:(0,c.jsx)(`nav`,{"aria-label":t===`pt-BR`?`Tipo de chamada de agente`:`Agent call type`,children:[`all`,`run`,`subrun`].map(e=>(0,c.jsx)(`button`,{className:i===e?`is-active`:void 0,onClick:()=>o(e),type:`button`,children:e===`all`?t===`pt-BR`?`Todas`:`All`:e===`run`?t===`pt-BR`?`Invocações do orquestrador`:`Orchestrator invocations`:t===`pt-BR`?`Invocações delegadas`:`Delegated invocations`},e))})}),(0,c.jsx)(y,{columns:[{key:`created`,label:`Data de criação`,render:e=>k(e.started_at)},{key:`id`,label:t===`pt-BR`?`Invocação`:`Agent invocation`,render:e=>(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`strong`,{children:e.id}),(0,c.jsx)(`small`,{children:ve(e)})]})},{key:`kind`,label:t===`pt-BR`?`Tipo`:`Type`,render:e=>e.run_kind===`run`?t===`pt-BR`?`Invocação do orquestrador`:`Orchestrator invocation`:t===`pt-BR`?`Invocação delegada`:`Delegated invocation`},{key:`agent`,label:t===`pt-BR`?`Agente`:`Agent`,render:e=>(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`strong`,{children:_e(e)}),(0,c.jsx)(`small`,{children:[e.agent_persona,e.agent_job].filter(Boolean).join(` · `)||`—`})]})},{key:`status`,label:`Status`,render:e=>(0,c.jsx)(Ee,{status:e.status})},{key:`origin`,label:t===`pt-BR`?`Origem`:`Origin`,render:e=>(0,c.jsx)(Oe,{entrypoint:e.entrypoint})},{key:`phase`,label:t===`pt-BR`?`Propósito`:`Purpose`,render:e=>be(e.run_purpose,t)},{key:`duration`,label:t===`pt-BR`?`Tempo total`:`Total time`,render:e=>ne(re(e),t)},{key:`duration_provenance`,label:t===`pt-BR`?`Fonte do tempo`:`Time source`,render:e=>{let n=re(e);return n.provenance===`lifecycle_elapsed`?t===`pt-BR`?`Tempo decorrido`:`Lifecycle elapsed`:n.provenance===`in_progress`?t===`pt-BR`?`Em andamento`:`In progress`:p(e.duration_provenance)}},{key:`llm_calls`,label:t===`pt-BR`?`Chamadas LLM`:`LLM calls`,render:e=>l(e.llm_call_count??e.call_count),align:`right`},{key:`provider`,label:`Provider`,render:e=>e.provider??`—`},{key:`model`,label:`Modelo`,render:e=>e.model||`—`},{key:`effort`,label:`Effort`,render:e=>e.effective_reasoning_effort??e.reasoning_effort??`—`},{key:`service_tier`,label:t===`pt-BR`?`Velocidade API`:`API speed`,render:e=>e.service_tier??`default`},{key:`input_tokens`,label:`Input`,render:e=>E(e.input_tokens??null,t),align:`right`},{key:`cached_tokens`,label:`Cache`,render:e=>E(e.cached_input_tokens??null,t),align:`right`},{key:`uncached_tokens`,label:t===`pt-BR`?`Input s/ cache`:`Uncached input`,render:e=>E(e.uncached_input_tokens??null,t),align:`right`},{key:`output_tokens`,label:`Output`,render:e=>E(e.output_tokens??null,t),align:`right`},{key:`reasoning_tokens`,label:`Reasoning`,render:e=>E(e.reasoning_tokens??null,t),align:`right`},{key:`tokens`,label:t===`pt-BR`?`Tokens totais`:`Total tokens`,render:e=>E(e.usage.total.tokens.total,t),align:`right`},{key:`input_rate`,label:t===`pt-BR`?`Tarifa input USD`:`Input rate USD`,render:e=>u(e.input_rate_usd_per_million),align:`right`},{key:`cached_rate`,label:t===`pt-BR`?`Tarifa cache USD`:`Cache rate USD`,render:e=>u(e.cached_input_rate_usd_per_million),align:`right`},{key:`output_rate`,label:t===`pt-BR`?`Tarifa output USD`:`Output rate USD`,render:e=>u(e.output_rate_usd_per_million),align:`right`},{key:`context_multiplier`,label:t===`pt-BR`?`Mult. contexto E/S`:`Context mult. I/O`,render:e=>`${d(e.context_input_multiplier)} / ${d(e.context_output_multiplier)}`},{key:`speed_multiplier`,label:t===`pt-BR`?`Mult. velocidade`:`Speed mult.`,render:e=>d(e.speed_cost_multiplier)},{key:`pricing_scenario`,label:t===`pt-BR`?`Cenário de preço`:`Pricing scenario`,render:e=>e.pricing_scenario===`standard_long_context_fallback`?t===`pt-BR`?`Standard (contexto longo)`:`Standard (long context)`:e.pricing_scenario??`—`},{key:`input_cost`,label:t===`pt-BR`?`Custo input USD`:`Input cost USD`,render:e=>f(e.input_cost_usd),align:`right`},{key:`cache_cost`,label:t===`pt-BR`?`Custo cache USD`:`Cache cost USD`,render:e=>f(e.cached_input_cost_usd),align:`right`},{key:`output_cost`,label:t===`pt-BR`?`Custo output USD`:`Output cost USD`,render:e=>f(e.output_cost_usd),align:`right`},{key:`reasoning_cost`,label:t===`pt-BR`?`Custo reasoning USD`:`Reasoning cost USD`,render:e=>f(e.reasoning_cost_usd),align:`right`},{key:`calculated_cost`,label:t===`pt-BR`?`Custo calculado USD`:`Calculated cost USD`,render:e=>f(e.calculated_cost_usd),align:`right`},{key:`canonical_cost`,label:t===`pt-BR`?`Custo canônico USD`:`Canonical cost USD`,render:e=>f(e.cost_usd),align:`right`},{key:`cost_variance`,label:t===`pt-BR`?`Diferença USD`:`Difference USD`,render:e=>f(e.cost_variance_usd),align:`right`},{key:`fx_rate`,label:`USD/BRL`,render:e=>l(e.fx_rate),align:`right`},{key:`cost`,label:t===`pt-BR`?`Custo total BRL`:`Total cost BRL`,render:e=>O(e.usage.total.cost.brl,`BRL`,t),align:`right`}],locale:t,rowKey:e=>e.id,onRowClick:r,rows:s,showColumnInfo:!0,sortable:!0}),n?(0,c.jsx)(P,{details:{kind:`run`,row:n},locale:t,onClose:()=>r(null)}):null]})}function be(e,t){return t===`pt-BR`?{intake:`Entrada`,orchestration:`Orquestração`,execution:`Execução`,review:`Revisão`,audit:`Auditoria`,finalization:`Finalização`}[e]:e}function xe({rows:e,executions:t,locale:n,canonical:r=!0}){if(!r||!Ce(t,e))return(0,c.jsx)(we,{locale:n,kind:`conversations`});let i=de(t,e);return(0,c.jsx)(y,{columns:[{key:`created`,label:n===`pt-BR`?`Data e hora`:`Date and time`,render:e=>k(e.latest_started_at)},{key:`conversation`,label:n===`pt-BR`?`Conversa`:`Conversation`,render:e=>(0,c.jsx)(`strong`,{children:e.id})},{key:`status`,label:`Status`,render:e=>(0,c.jsx)(Ee,{status:e.status})},{key:`runs`,label:n===`pt-BR`?`Invocações`:`Invocations`,render:e=>e.run_count,align:`right`},{key:`executions`,label:n===`pt-BR`?`Execuções`:`Executions`,render:e=>e.execution_count,align:`right`},{key:`duration`,label:n===`pt-BR`?`Tempo`:`Time`,render:e=>ne({durationMs:e.duration_ms,provenance:e.duration_ms===null&&e.status===`running`?`in_progress`:e.duration_provenance},n)},{key:`duration_provenance`,label:n===`pt-BR`?`Fonte do tempo`:`Time source`,render:e=>e.duration_provenance===`factual`?`Factual`:e.duration_provenance===`lifecycle_elapsed`?n===`pt-BR`?`Tempo decorrido`:`Lifecycle elapsed`:`—`},{key:`tokens`,label:`Tokens`,render:e=>E(e.total_tokens,n),align:`right`},{key:`cost`,label:n===`pt-BR`?`Custo`:`Cost`,render:e=>O(e.cost_brl,`BRL`,n),align:`right`},{key:`reasoning_efforts`,label:n===`pt-BR`?`Esforços`:`Reasoning efforts`,render:e=>e.reasoning_efforts.length>0?e.reasoning_efforts.join(`, `):`—`},{key:`models`,label:n===`pt-BR`?`Modelos`:`Models`,render:e=>e.models.length>0?e.models.join(`, `):`—`}],locale:n,rowKey:e=>e.id,rows:i,showColumnInfo:!0,sortable:!0})}function Se(e){return e.every(e=>e.id.trim().length>0)}function Ce(e,t){return Se(e)&&e.filter(e=>e.kind===`interaction`&&e.origin.type===`interaction`).every(e=>e.origin.conversation_id.trim().length>0)&&t.every(e=>e.id.trim().length>0&&e.conversation_id.trim().length>0)}function we({kind:e,locale:t}){return(0,c.jsx)(`p`,{className:`operations-empty`,role:`status`,children:t===`pt-BR`?`Aguardando linhas canônicas de ${e===`conversations`?`conversas`:`execuções`}.`:`Waiting for canonical ${e} rows.`})}function Te({rows:e,locale:t}){let[n,r]=(0,a.useState)(null);return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(y,{columns:[{key:`date`,label:`Data de criação`,render:e=>k(e.created_at)},{key:`title`,label:`Decisão`,render:e=>(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`strong`,{children:e.title}),(0,c.jsx)(`small`,{children:e.id})]})},{key:`origin`,label:`Origem`,render:e=>(0,c.jsx)(H,{origin:e.origin})},{key:`stage`,label:`Fase`,render:e=>(0,c.jsx)(ke,{scopeType:e.scope_type})},{key:`scope`,label:`Escopo`,render:e=>`${e.scope_type}: ${e.scope_id}`}],locale:t,rowKey:e=>e.id,onRowClick:r,rows:me(e,e=>e.created_at),showColumnInfo:!0,sortable:!0}),n?(0,c.jsx)(P,{details:{kind:`decision`,row:n},locale:t,onClose:()=>r(null)}):null]})}function Ee({status:e}){return(0,c.jsx)(`span`,{className:`operations-table-status is-${e}`,children:e})}function De({risk:e}){return(0,c.jsx)(`span`,{className:`operations-table-risk is-${e}`,children:e})}function Oe({entrypoint:e}){let t=e===`prd`?`PRD`:e===`spec`?`SPEC`:e===`task`?`Tarefa`:`Conversa`;return(0,c.jsx)(`span`,{className:`operations-table-entry is-${e}`,children:t})}function H({origin:e}){return(0,c.jsx)(`span`,{className:`operations-table-decision-origin is-${e}`,children:e})}function ke({scopeType:e}){let t=e===`change`?`planning`:`execution`;return(0,c.jsx)(`span`,{className:`operations-table-stage is-${t}`,children:t===`planning`?`Planejamento`:`Execução`})}var Ae;function U(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,"_zod",{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,"name",{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,"init",{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,"name",{value:e}),o}var je=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},Me=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(Ae=globalThis).__zod_globalConfig??(Ae.__zod_globalConfig={});var Ne=globalThis.__zod_globalConfig;function W(e){return e&&Object.assign(Ne,e),Ne}function Pe(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function Fe(e,t){return typeof t==`bigint`?t.toString():t}function Ie(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}throw Error(`cached value already set`)}}}function Le(e){return e==null}function Re(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}var ze=Symbol(`evaluating`);function G(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==ze)return r===void 0&&(r=ze,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function K(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function q(...e){let t={};for(let n of e){let e=Object.getOwnPropertyDescriptors(n);Object.assign(t,e)}return Object.defineProperties({},t)}function J(e){return JSON.stringify(e)}function Be(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var Ve=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function He(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var Ue=Ie(()=>{if(Ne.jitless||typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function We(e){if(He(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(He(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function Ge(e){return We(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}var Ke=new Set([`string`,`number`,`symbol`]);function qe(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function Je(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function Y(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Ye(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}-Number.MAX_VALUE,Number.MAX_VALUE;function Xe(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return Je(e,q(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return K(this,`shape`,e),e},checks:[]}))}function Ze(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return Je(e,q(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return K(this,`shape`,r),r},checks:[]}))}function Qe(e,t){if(!We(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e in t)if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return Je(e,q(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return K(this,`shape`,n),n}}))}function $e(e,t){if(!We(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return Je(e,q(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return K(this,`shape`,n),n}}))}function et(e,t){if(e._zod.def.checks?.length)throw Error(`.merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.`);return Je(e,q(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return K(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function tt(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(`.partial() cannot be used on object schemas containing refinements`);return Je(t,q(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return K(this,`shape`,i),i},checks:[]}))}function nt(e,t,n){return Je(t,q(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return K(this,`shape`,i),i}}))}function rt(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function it(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function at(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function ot(e){return typeof e==`string`?e:e?.message}function st(e,t,n){let r=e.message?e.message:ot(e.inst?._zod.def?.error?.(e))??ot(t?.error?.(e))??ot(n.customError?.(e))??ot(n.localeError?.(e))??`Invalid input`,{inst:i,continue:a,input:o,...s}=e;return s.path??=[],s.message=r,t?.reportInput&&(s.input=o),s}function ct(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function lt(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}var ut=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,Fe,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},dt=U(`$ZodError`,ut),ft=U(`$ZodError`,ut,{Parent:Error});function pt(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function mt(e,t=e=>e.message){let n={_errors:[]},r=(e,i=[])=>{for(let a of e.issues)if(a.code===`invalid_union`&&a.errors.length)a.errors.map(e=>r({issues:e},[...i,...a.path]));else if(a.code===`invalid_key`)r({issues:a.issues},[...i,...a.path]);else if(a.code===`invalid_element`)r({issues:a.issues},[...i,...a.path]);else{let e=[...i,...a.path];if(e.length===0)n._errors.push(t(a));else{let r=n,i=0;for(;i<e.length;){let n=e[i];i===e.length-1?(r[n]=r[n]||{_errors:[]},r[n]._errors.push(t(a))):r[n]=r[n]||{_errors:[]},r=r[n],i++}}}};return r(e),n}var ht=e=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new je;if(o.issues.length){let t=new((i?.Err)??e)(o.issues.map(e=>st(e,a,W())));throw Ve(t,i?.callee),t}return o.value},gt=e=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new((i?.Err)??e)(o.issues.map(e=>st(e,a,W())));throw Ve(t,i?.callee),t}return o.value},_t=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new je;return a.issues.length?{success:!1,error:new(e??dt)(a.issues.map(e=>st(e,i,W())))}:{success:!0,data:a.value}},vt=_t(ft),yt=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>st(e,i,W())))}:{success:!0,data:a.value}},bt=yt(ft),xt=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return ht(e)(t,n,i)},St=e=>(t,n,r)=>ht(e)(t,n,r),Ct=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return gt(e)(t,n,i)},wt=e=>async(t,n,r)=>gt(e)(t,n,r),Tt=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return _t(e)(t,n,i)},Et=e=>(t,n,r)=>_t(e)(t,n,r),Dt=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return yt(e)(t,n,i)},Ot=e=>async(t,n,r)=>yt(e)(t,n,r),kt=/^[cC][0-9a-z]{6,}$/,At=/^[0-9a-z]+$/,jt=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Mt=/^[0-9a-vA-V]{20}$/,Nt=/^[A-Za-z0-9]{27}$/,Pt=/^[a-zA-Z0-9_-]{21}$/,Ft=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,It=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,Lt=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Rt=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,zt=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;function Bt(){return new RegExp(zt,`u`)}var Vt=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Ht=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Ut=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Wt=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Gt=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Kt=/^[A-Za-z0-9_-]*$/,qt=/^https?$/,Jt=/^\+[1-9]\d{6,14}$/,Yt=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`,Xt=RegExp(`^${Yt}$`);function Zt(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Qt(e){return RegExp(`^${Zt(e)}$`)}function $t(e){let t=Zt({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${Yt}T(?:${r})$`)}var en=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},tn=/^[^A-Z]*$/,nn=/^[^a-z]*$/,rn=U(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),an=U(`$ZodCheckMaxLength`,(e,t)=>{var n;rn.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Le(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=ct(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),on=U(`$ZodCheckMinLength`,(e,t)=>{var n;rn.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Le(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=ct(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),sn=U(`$ZodCheckLengthEquals`,(e,t)=>{var n;rn.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!Le(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=ct(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),cn=U(`$ZodCheckStringFormat`,(e,t)=>{var n,r;rn.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),ln=U(`$ZodCheckRegex`,(e,t)=>{cn.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),un=U(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=tn,cn.init(e,t)}),dn=U(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=nn,cn.init(e,t)}),fn=U(`$ZodCheckIncludes`,(e,t)=>{rn.init(e,t);let n=qe(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),pn=U(`$ZodCheckStartsWith`,(e,t)=>{rn.init(e,t);let n=RegExp(`^${qe(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),mn=U(`$ZodCheckEndsWith`,(e,t)=>{rn.init(e,t);let n=RegExp(`.*${qe(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),hn=U(`$ZodCheckOverwrite`,(e,t)=>{rn.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),gn=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
|
|
3
|
+
`).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[``]).map(e=>` ${e}`)];return new e(...t,n.join(`
|
|
4
|
+
`))}},_n={major:4,minor:4,patch:3},vn=U(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=_n;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=rt(e),i;for(let a of t){if(a._zod.def.when){if(it(e)||!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new je;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=rt(e,t))});else{if(e.issues.length===t)continue;r||=rt(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(rt(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new je;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new je;return o.then(e=>t(e,r,a))}return t(o,r,a)}}G(e,`~standard`,()=>({validate:t=>{try{let n=vt(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return bt(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),yn=U(`$ZodString`,(e,t)=>{vn.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??en(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),X=U(`$ZodStringFormat`,(e,t)=>{cn.init(e,t),yn.init(e,t)}),bn=U(`$ZodGUID`,(e,t)=>{t.pattern??=It,X.init(e,t)}),xn=U(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=Lt(e)}else t.pattern??=Lt();X.init(e,t)}),Sn=U(`$ZodEmail`,(e,t)=>{t.pattern??=Rt,X.init(e,t)}),Cn=U(`$ZodURL`,(e,t)=>{X.init(e,t),e._zod.check=n=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===qt.source&&!/^https?:\/\//i.test(r)){n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid URL format`,input:n.value,inst:e,continue:!t.abort});return}let i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),wn=U(`$ZodEmoji`,(e,t)=>{t.pattern??=Bt(),X.init(e,t)}),Tn=U(`$ZodNanoID`,(e,t)=>{t.pattern??=Pt,X.init(e,t)}),En=U(`$ZodCUID`,(e,t)=>{t.pattern??=kt,X.init(e,t)}),Dn=U(`$ZodCUID2`,(e,t)=>{t.pattern??=At,X.init(e,t)}),On=U(`$ZodULID`,(e,t)=>{t.pattern??=jt,X.init(e,t)}),kn=U(`$ZodXID`,(e,t)=>{t.pattern??=Mt,X.init(e,t)}),An=U(`$ZodKSUID`,(e,t)=>{t.pattern??=Nt,X.init(e,t)}),jn=U(`$ZodISODateTime`,(e,t)=>{t.pattern??=$t(t),X.init(e,t)}),Mn=U(`$ZodISODate`,(e,t)=>{t.pattern??=Xt,X.init(e,t)}),Nn=U(`$ZodISOTime`,(e,t)=>{t.pattern??=Qt(t),X.init(e,t)}),Pn=U(`$ZodISODuration`,(e,t)=>{t.pattern??=Ft,X.init(e,t)}),Fn=U(`$ZodIPv4`,(e,t)=>{t.pattern??=Vt,X.init(e,t),e._zod.bag.format=`ipv4`}),In=U(`$ZodIPv6`,(e,t)=>{t.pattern??=Ht,X.init(e,t),e._zod.bag.format=`ipv6`,e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}}),Ln=U(`$ZodCIDRv4`,(e,t)=>{t.pattern??=Ut,X.init(e,t)}),Rn=U(`$ZodCIDRv6`,(e,t)=>{t.pattern??=Wt,X.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function zn(e){if(e===``)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var Bn=U(`$ZodBase64`,(e,t)=>{t.pattern??=Gt,X.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{zn(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function Vn(e){if(!Kt.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return zn(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var Hn=U(`$ZodBase64URL`,(e,t)=>{t.pattern??=Kt,X.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{Vn(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),Un=U(`$ZodE164`,(e,t)=>{t.pattern??=Jt,X.init(e,t)});function Wn(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var Gn=U(`$ZodJWT`,(e,t)=>{X.init(e,t),e._zod.check=n=>{Wn(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),Kn=U(`$ZodUnknown`,(e,t)=>{vn.init(e,t),e._zod.parse=e=>e}),qn=U(`$ZodNever`,(e,t)=>{vn.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)});function Jn(e,t,n){e.issues.length&&t.issues.push(...at(n,e.issues)),t.value[n]=e.value}var Yn=U(`$ZodArray`,(e,t)=>{vn.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>Jn(t,n,e))):Jn(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function Xn(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...at(n,e.issues))}if(!o&&!i){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}function Zn(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=Ye(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Qn(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin===`optional`,d=c.optout===`optional`;for(let i in t){if(i===`__proto__`||s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>Xn(e,n,i,t,u,d))):Xn(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}var $n=U(`$ZodObject`,(e,t)=>{if(vn.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,"shape",{get:()=>{let n={...e};return Object.defineProperty(t,"shape",{value:n}),n}})}let n=Ie(()=>Zn(t));G(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=He,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optin===`optional`,i=n._zod.optout===`optional`,a=n._zod.run({value:s[e],issues:[]},o);a instanceof Promise?c.push(a.then(n=>Xn(n,t,e,s,r,i))):Xn(a,t,e,s,r,i)}return i?Qn(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),er=U(`$ZodObjectJIT`,(e,t)=>{$n.init(e,t);let n=e._zod.parse,r=Ie(()=>Zn(t)),i=e=>{let t=new gn([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=J(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let r of n.keys){let n=a[r],o=J(r),s=e[r],c=s?._zod?.optin===`optional`,l=s?._zod?.optout===`optional`;t.write(`const ${n} = ${i(r)};`),c&&l?t.write(`
|
|
5
|
+
if (${n}.issues.length) {
|
|
6
|
+
if (${o} in input) {
|
|
7
|
+
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
8
|
+
...iss,
|
|
9
|
+
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
10
|
+
})));
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
if (${n}.value === undefined) {
|
|
15
|
+
if (${o} in input) {
|
|
16
|
+
newResult[${o}] = undefined;
|
|
17
|
+
}
|
|
18
|
+
} else {
|
|
19
|
+
newResult[${o}] = ${n}.value;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
`):c?t.write(`
|
|
23
|
+
if (${n}.issues.length) {
|
|
24
|
+
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
25
|
+
...iss,
|
|
26
|
+
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
27
|
+
})));
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
if (${n}.value === undefined) {
|
|
31
|
+
if (${o} in input) {
|
|
32
|
+
newResult[${o}] = undefined;
|
|
33
|
+
}
|
|
34
|
+
} else {
|
|
35
|
+
newResult[${o}] = ${n}.value;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
`):t.write(`
|
|
39
|
+
const ${n}_present = ${o} in input;
|
|
40
|
+
if (${n}.issues.length) {
|
|
41
|
+
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
42
|
+
...iss,
|
|
43
|
+
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
44
|
+
})));
|
|
45
|
+
}
|
|
46
|
+
if (!${n}_present && !${n}.issues.length) {
|
|
47
|
+
payload.issues.push({
|
|
48
|
+
code: "invalid_type",
|
|
49
|
+
expected: "nonoptional",
|
|
50
|
+
input: undefined,
|
|
51
|
+
path: [${o}]
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
if (${n}_present) {
|
|
56
|
+
if (${n}.value === undefined) {
|
|
57
|
+
newResult[${o}] = undefined;
|
|
58
|
+
} else {
|
|
59
|
+
newResult[${o}] = ${n}.value;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
`)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=He,s=!Ne.jitless,c=s&&Ue.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??=r.value;let p=d.value;return o(p)?s&&c&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),d=a(d,f),l?Qn([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function tr(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!rt(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>st(e,r,W())))}),t)}var nr=U(`$ZodUnion`,(e,t)=>{vn.init(e,t),G(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),G(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),G(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),G(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>Re(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>tr(t,r,e,i)):tr(o,r,e,i)}}),rr=U(`$ZodIntersection`,(e,t)=>{vn.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>ar(e,t,n)):ar(e,i,a)}});function ir(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(We(e)&&We(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=ir(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=ir(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function ar(e,t,n){let r=new Map,i;for(let n of t.issues)if(n.code===`unrecognized_keys`){i??=n;for(let e of n.keys)r.has(e)||r.set(e,{}),r.get(e).l=!0}else e.issues.push(n);for(let t of n.issues)if(t.code===`unrecognized_keys`)for(let e of t.keys)r.has(e)||r.set(e,{}),r.get(e).r=!0;else e.issues.push(t);let a=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(a.length&&i&&e.issues.push({...i,keys:a}),rt(e))return e;let o=ir(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}var or=U(`$ZodEnum`,(e,t)=>{vn.init(e,t);let n=Pe(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>Ke.has(typeof e)).map(e=>typeof e==`string`?qe(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),sr=U(`$ZodTransform`,(e,t)=>{vn.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new Me(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n.fallback=!0,n));if(i instanceof Promise)throw new je;return n.value=i,n.fallback=!0,n}});function cr(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var lr=U(`$ZodOptional`,(e,t)=>{vn.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,G(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),G(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Re(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=e.value,i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(e=>cr(e,r)):cr(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),ur=U(`$ZodExactOptional`,(e,t)=>{lr.init(e,t),G(e._zod,`values`,()=>t.innerType._zod.values),G(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),dr=U(`$ZodNullable`,(e,t)=>{vn.init(e,t),G(e._zod,`optin`,()=>t.innerType._zod.optin),G(e._zod,`optout`,()=>t.innerType._zod.optout),G(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${Re(e.source)}|null)$`):void 0}),G(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),fr=U(`$ZodDefault`,(e,t)=>{vn.init(e,t),e._zod.optin=`optional`,G(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>pr(e,t)):pr(r,t)}});function pr(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var mr=U(`$ZodPrefault`,(e,t)=>{vn.init(e,t),e._zod.optin=`optional`,G(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),hr=U(`$ZodNonOptional`,(e,t)=>{vn.init(e,t),G(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>gr(t,e)):gr(i,e)}});function gr(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}var _r=U(`$ZodCatch`,(e,t)=>{vn.init(e,t),e._zod.optin=`optional`,G(e._zod,`optout`,()=>t.innerType._zod.optout),G(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>st(e,n,W()))},input:e.value}),e.issues=[],e.fallback=!0),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>st(e,n,W()))},input:e.value}),e.issues=[],e.fallback=!0),e)}}),vr=U(`$ZodPipe`,(e,t)=>{vn.init(e,t),G(e._zod,`values`,()=>t.in._zod.values),G(e._zod,`optin`,()=>t.in._zod.optin),G(e._zod,`optout`,()=>t.out._zod.optout),G(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>yr(e,t.in,n)):yr(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>yr(e,t.out,n)):yr(r,t.out,n)}});function yr(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}var br=U(`$ZodReadonly`,(e,t)=>{vn.init(e,t),G(e._zod,`propValues`,()=>t.innerType._zod.propValues),G(e._zod,`values`,()=>t.innerType._zod.values),G(e._zod,`optin`,()=>t.innerType?._zod?.optin),G(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(xr):xr(r)}});function xr(e){return e.value=Object.freeze(e.value),e}var Sr=U(`$ZodCustom`,(e,t)=>{rn.init(e,t),vn.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>Cr(t,n,r,e));Cr(i,n,r,e)}});function Cr(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(lt(e))}}var wr,Tr=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function Er(){return new Tr}(wr=globalThis).__zod_globalRegistry??(wr.__zod_globalRegistry=Er());var Dr=globalThis.__zod_globalRegistry;function Or(e,t){return new e({type:`string`,...Y(t)})}function kr(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...Y(t)})}function Ar(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...Y(t)})}function jr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...Y(t)})}function Mr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...Y(t)})}function Nr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...Y(t)})}function Pr(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...Y(t)})}function Fr(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...Y(t)})}function Ir(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...Y(t)})}function Lr(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...Y(t)})}function Rr(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...Y(t)})}function zr(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...Y(t)})}function Br(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...Y(t)})}function Vr(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...Y(t)})}function Hr(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...Y(t)})}function Ur(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...Y(t)})}function Wr(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...Y(t)})}function Gr(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...Y(t)})}function Kr(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...Y(t)})}function qr(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...Y(t)})}function Jr(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...Y(t)})}function Yr(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...Y(t)})}function Xr(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...Y(t)})}function Zr(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...Y(t)})}function Qr(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...Y(t)})}function $r(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...Y(t)})}function ei(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...Y(t)})}function ti(e){return new e({type:`unknown`})}function ni(e,t){return new e({type:`never`,...Y(t)})}function ri(e,t){return new an({check:`max_length`,...Y(t),maximum:e})}function ii(e,t){return new on({check:`min_length`,...Y(t),minimum:e})}function ai(e,t){return new sn({check:`length_equals`,...Y(t),length:e})}function oi(e,t){return new ln({check:`string_format`,format:`regex`,...Y(t),pattern:e})}function si(e){return new un({check:`string_format`,format:`lowercase`,...Y(e)})}function ci(e){return new dn({check:`string_format`,format:`uppercase`,...Y(e)})}function li(e,t){return new fn({check:`string_format`,format:`includes`,...Y(t),includes:e})}function ui(e,t){return new pn({check:`string_format`,format:`starts_with`,...Y(t),prefix:e})}function di(e,t){return new mn({check:`string_format`,format:`ends_with`,...Y(t),suffix:e})}function fi(e){return new hn({check:`overwrite`,tx:e})}function pi(e){return fi(t=>t.normalize(e))}function mi(){return fi(e=>e.trim())}function hi(){return fi(e=>e.toLowerCase())}function gi(){return fi(e=>e.toUpperCase())}function _i(){return fi(e=>Be(e))}function vi(e,t,n){return new e({type:`array`,element:t,...Y(n)})}function yi(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...Y(n)})}function bi(e,t){let n=xi(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(lt(e,t.value,n._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=t.value,r.inst??=n,r.continue??=!n._zod.def.abort,t.issues.push(lt(r))}},e(t.value,t)),t);return n}function xi(e,t){let n=new rn({check:`custom`,...Y(t)});return n._zod.check=e,n}function Si(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??Dr,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,external:e?.external??void 0}}function Ci(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,Ci(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),t.io===`input`&&Ei(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&`_prefault`in o.schema&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function wi(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${a}`}}if(t[1]===n)return{ref:`#`};let i=`#/${r}/`,a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
|
|
64
|
+
|
|
65
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function Ti(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref&&n.def)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,o[e.defId]=e.def)}e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:Oi(t,`input`,e.processors),output:Oi(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function Ei(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return Ei(r.element,n);if(r.type===`set`)return Ei(r.valueType,n);if(r.type===`lazy`)return Ei(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type==="default"||r.type===`prefault`)return Ei(r.innerType,n);if(r.type===`intersection`)return Ei(r.left,n)||Ei(r.right,n);if(r.type===`record`||r.type===`map`)return Ei(r.keyType,n)||Ei(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:Ei(r.in,n)||Ei(r.out,n);if(r.type===`object`){for(let e in r.shape)if(Ei(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(Ei(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(Ei(e,n))return!0;return!!(r.rest&&Ei(r.rest,n))}return!1}var Di=(e,t={})=>n=>{let r=Si({...n,processors:t});return Ci(e,r),wi(r,e),Ti(r,e)},Oi=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=Si({...i??{},target:a,io:t,processors:n});return Ci(e,o),wi(o,e),Ti(o,e)},ki={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},Ai=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=ki[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},ji=(e,t,n,r)=>{n.not={}},Mi=(e,t,n,r)=>{let i=e._zod.def,a=Pe(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},Ni=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},Pi=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},Fi=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=Ci(a.element,t,{...r,path:[...r.path,`items`]})},Ii=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=Ci(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=Ci(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},Li=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>Ci(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},Ri=(e,t,n,r)=>{let i=e._zod.def,a=Ci(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=Ci(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},zi=(e,t,n,r)=>{let i=e._zod.def,a=Ci(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},Bi=(e,t,n,r)=>{let i=e._zod.def;Ci(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Vi=(e,t,n,r)=>{let i=e._zod.def;Ci(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},Hi=(e,t,n,r)=>{let i=e._zod.def;Ci(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},Ui=(e,t,n,r)=>{let i=e._zod.def;Ci(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},Wi=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;Ci(o,t,r);let s=t.seen.get(e);s.ref=o},Gi=(e,t,n,r)=>{let i=e._zod.def;Ci(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Ki=(e,t,n,r)=>{let i=e._zod.def;Ci(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},qi=U(`ZodISODateTime`,(e,t)=>{jn.init(e,t),Z.init(e,t)});function Ji(e){return Zr(qi,e)}var Yi=U(`ZodISODate`,(e,t)=>{Mn.init(e,t),Z.init(e,t)});function Xi(e){return Qr(Yi,e)}var Zi=U(`ZodISOTime`,(e,t)=>{Nn.init(e,t),Z.init(e,t)});function Qi(e){return $r(Zi,e)}var $i=U(`ZodISODuration`,(e,t)=>{Pn.init(e,t),Z.init(e,t)});function ea(e){return ei($i,e)}var ta=U(`ZodError`,(e,t)=>{dt.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>mt(e,t)},flatten:{value:t=>pt(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,Fe,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,Fe,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),na=ht(ta),ra=gt(ta),ia=_t(ta),aa=yt(ta),oa=xt(ta),sa=St(ta),ca=Ct(ta),la=wt(ta),ua=Tt(ta),da=Et(ta),fa=Dt(ta),pa=Ot(ta),ma=new WeakMap;function ha(e,t,n){let r=Object.getPrototypeOf(e),i=ma.get(r);if(i||(i=new Set,ma.set(r,i)),!i.has(t)){i.add(t);for(let e in n){let t=n[e];Object.defineProperty(r,e,{configurable:!0,enumerable:!1,get(){let n=t.bind(this);return Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:n}),n},set(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:t})}})}}}var ga=U(`ZodType`,(e,t)=>(vn.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:Oi(e,`input`),output:Oi(e,`output`)}}),e.toJSONSchema=Di(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(t,n)=>na(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>ia(e,t,n),e.parseAsync=async(t,n)=>ra(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>aa(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>oa(e,t,n),e.decode=(t,n)=>sa(e,t,n),e.encodeAsync=async(t,n)=>ca(e,t,n),e.decodeAsync=async(t,n)=>la(e,t,n),e.safeEncode=(t,n)=>ua(e,t,n),e.safeDecode=(t,n)=>da(e,t,n),e.safeEncodeAsync=async(t,n)=>fa(e,t,n),e.safeDecodeAsync=async(t,n)=>pa(e,t,n),ha(e,`ZodType`,{check(...e){let t=this.def;return this.clone(q(t,{checks:[...t.checks??[],...e.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return Je(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(xo(e,t))},superRefine(e,t){return this.check(So(e,t))},overwrite(e){return this.check(fi(e))},optional(){return no(this)},exactOptional(){return io(this)},nullable(){return oo(this)},nullish(){return no(oo(this))},nonoptional(e){return po(this,e)},array(){return Wa(this)},or(e){return Ja([this,e])},and(e){return Xa(this,e)},transform(e){return _o(this,eo(e))},default(e){return co(this,e)},prefault(e){return uo(this,e)},catch(e){return ho(this,e)},pipe(e){return _o(this,e)},readonly(){return yo(this)},describe(e){let t=this.clone();return Dr.add(t,{description:e}),t},meta(...e){if(e.length===0)return Dr.get(this);let t=this.clone();return Dr.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e){return e(this)}}),Object.defineProperty(e,"description",{get(){return Dr.get(e)?.description},configurable:!0}),e)),_a=U(`_ZodString`,(e,t)=>{yn.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ai(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,ha(e,`_ZodString`,{regex(...e){return this.check(oi(...e))},includes(...e){return this.check(li(...e))},startsWith(...e){return this.check(ui(...e))},endsWith(...e){return this.check(di(...e))},min(...e){return this.check(ii(...e))},max(...e){return this.check(ri(...e))},length(...e){return this.check(ai(...e))},nonempty(...e){return this.check(ii(1,...e))},lowercase(e){return this.check(si(e))},uppercase(e){return this.check(ci(e))},trim(){return this.check(mi())},normalize(...e){return this.check(pi(...e))},toLowerCase(){return this.check(hi())},toUpperCase(){return this.check(gi())},slugify(){return this.check(_i())}})}),va=U(`ZodString`,(e,t)=>{yn.init(e,t),_a.init(e,t),e.email=t=>e.check(kr(ba,t)),e.url=t=>e.check(Fr(Ca,t)),e.jwt=t=>e.check(Xr(Ra,t)),e.emoji=t=>e.check(Ir(wa,t)),e.guid=t=>e.check(Ar(xa,t)),e.uuid=t=>e.check(jr(Sa,t)),e.uuidv4=t=>e.check(Mr(Sa,t)),e.uuidv6=t=>e.check(Nr(Sa,t)),e.uuidv7=t=>e.check(Pr(Sa,t)),e.nanoid=t=>e.check(Lr(Ta,t)),e.guid=t=>e.check(Ar(xa,t)),e.cuid=t=>e.check(Rr(Ea,t)),e.cuid2=t=>e.check(zr(Da,t)),e.ulid=t=>e.check(Br(Oa,t)),e.base64=t=>e.check(qr(Fa,t)),e.base64url=t=>e.check(Jr(Ia,t)),e.xid=t=>e.check(Vr(ka,t)),e.ksuid=t=>e.check(Hr(Aa,t)),e.ipv4=t=>e.check(Ur(ja,t)),e.ipv6=t=>e.check(Wr(Ma,t)),e.cidrv4=t=>e.check(Gr(Na,t)),e.cidrv6=t=>e.check(Kr(Pa,t)),e.e164=t=>e.check(Yr(La,t)),e.datetime=t=>e.check(Ji(t)),e.date=t=>e.check(Xi(t)),e.time=t=>e.check(Qi(t)),e.duration=t=>e.check(ea(t))});function ya(e){return Or(va,e)}var Z=U(`ZodStringFormat`,(e,t)=>{X.init(e,t),_a.init(e,t)}),ba=U(`ZodEmail`,(e,t)=>{Sn.init(e,t),Z.init(e,t)}),xa=U(`ZodGUID`,(e,t)=>{bn.init(e,t),Z.init(e,t)}),Sa=U(`ZodUUID`,(e,t)=>{xn.init(e,t),Z.init(e,t)}),Ca=U(`ZodURL`,(e,t)=>{Cn.init(e,t),Z.init(e,t)}),wa=U(`ZodEmoji`,(e,t)=>{wn.init(e,t),Z.init(e,t)}),Ta=U(`ZodNanoID`,(e,t)=>{Tn.init(e,t),Z.init(e,t)}),Ea=U(`ZodCUID`,(e,t)=>{En.init(e,t),Z.init(e,t)}),Da=U(`ZodCUID2`,(e,t)=>{Dn.init(e,t),Z.init(e,t)}),Oa=U(`ZodULID`,(e,t)=>{On.init(e,t),Z.init(e,t)}),ka=U(`ZodXID`,(e,t)=>{kn.init(e,t),Z.init(e,t)}),Aa=U(`ZodKSUID`,(e,t)=>{An.init(e,t),Z.init(e,t)}),ja=U(`ZodIPv4`,(e,t)=>{Fn.init(e,t),Z.init(e,t)}),Ma=U(`ZodIPv6`,(e,t)=>{In.init(e,t),Z.init(e,t)}),Na=U(`ZodCIDRv4`,(e,t)=>{Ln.init(e,t),Z.init(e,t)}),Pa=U(`ZodCIDRv6`,(e,t)=>{Rn.init(e,t),Z.init(e,t)}),Fa=U(`ZodBase64`,(e,t)=>{Bn.init(e,t),Z.init(e,t)}),Ia=U(`ZodBase64URL`,(e,t)=>{Hn.init(e,t),Z.init(e,t)}),La=U(`ZodE164`,(e,t)=>{Un.init(e,t),Z.init(e,t)}),Ra=U(`ZodJWT`,(e,t)=>{Gn.init(e,t),Z.init(e,t)}),za=U(`ZodUnknown`,(e,t)=>{Kn.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Ba(){return ti(za)}var Va=U(`ZodNever`,(e,t)=>{qn.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ji(e,t,n,r)});function Ha(e){return ni(Va,e)}var Ua=U(`ZodArray`,(e,t)=>{Yn.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Fi(e,t,n,r),e.element=t.element,ha(e,`ZodArray`,{min(e,t){return this.check(ii(e,t))},nonempty(e){return this.check(ii(1,e))},max(e,t){return this.check(ri(e,t))},length(e,t){return this.check(ai(e,t))},unwrap(){return this.element}})});function Wa(e,t){return vi(Ua,e,t)}var Ga=U(`ZodObject`,(e,t)=>{er.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ii(e,t,n,r),G(e,`shape`,()=>t.shape),ha(e,`ZodObject`,{keyof(){return Qa(Object.keys(this._zod.def.shape))},catchall(e){return this.clone({...this._zod.def,catchall:e})},passthrough(){return this.clone({...this._zod.def,catchall:Ba()})},loose(){return this.clone({...this._zod.def,catchall:Ba()})},strict(){return this.clone({...this._zod.def,catchall:Ha()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(e){return Qe(this,e)},safeExtend(e){return $e(this,e)},merge(e){return et(this,e)},pick(e){return Xe(this,e)},omit(e){return Ze(this,e)},partial(...e){return tt(to,this,e[0])},required(...e){return nt(fo,this,e[0])}})});function Ka(e,t){return new Ga({type:`object`,shape:e??{},...Y(t)})}var qa=U(`ZodUnion`,(e,t)=>{nr.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Li(e,t,n,r),e.options=t.options});function Ja(e,t){return new qa({type:`union`,options:e,...Y(t)})}var Ya=U(`ZodIntersection`,(e,t)=>{rr.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ri(e,t,n,r)});function Xa(e,t){return new Ya({type:`intersection`,left:e,right:t})}var Za=U(`ZodEnum`,(e,t)=>{or.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Mi(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new Za({...t,checks:[],...Y(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new Za({...t,checks:[],...Y(r),entries:i})}});function Qa(e,t){return new Za({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...Y(t)})}var $a=U(`ZodTransform`,(e,t)=>{sr.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Pi(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new Me(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(lt(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(lt(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n.fallback=!0,n)):(n.value=i,n.fallback=!0,n)}});function eo(e){return new $a({type:`transform`,transform:e})}var to=U(`ZodOptional`,(e,t)=>{lr.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ki(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function no(e){return new to({type:`optional`,innerType:e})}var ro=U(`ZodExactOptional`,(e,t)=>{ur.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ki(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function io(e){return new ro({type:`optional`,innerType:e})}var ao=U(`ZodNullable`,(e,t)=>{dr.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>zi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function oo(e){return new ao({type:`nullable`,innerType:e})}var so=U(`ZodDefault`,(e,t)=>{fr.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Vi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function co(e,t){return new so({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():Ge(t)}})}var lo=U(`ZodPrefault`,(e,t)=>{mr.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Hi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function uo(e,t){return new lo({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():Ge(t)}})}var fo=U(`ZodNonOptional`,(e,t)=>{hr.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Bi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function po(e,t){return new fo({type:`nonoptional`,innerType:e,...Y(t)})}var mo=U(`ZodCatch`,(e,t)=>{_r.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ui(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ho(e,t){return new mo({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var go=U(`ZodPipe`,(e,t)=>{vr.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Wi(e,t,n,r),e.in=t.in,e.out=t.out});function _o(e,t){return new go({type:`pipe`,in:e,out:t})}var vo=U(`ZodReadonly`,(e,t)=>{br.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Gi(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function yo(e){return new vo({type:`readonly`,innerType:e})}var bo=U(`ZodCustom`,(e,t)=>{Sr.init(e,t),ga.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ni(e,t,n,r)});function xo(e,t={}){return yi(bo,e,t)}function So(e,t){return bi(e,t)}function Co(e){if(!Number.isSafeInteger(e.totalRows)||e.totalRows<0)throw TypeError(`totalRows must be a non-negative safe integer`);return Object.freeze({...e,version:2,filters:Object.freeze({...e.filters})})}var wo={health:`/api/v2/health`,snapshot:`/api/v2/snapshot`,refreshProjection:`/api/v2/refresh-projection`,reconcileOpenWork:`/api/v2/reconcile-open-work`,operations:`/api/v2/operations`,costMonitor:`/api/v2/cost-monitor`,agentCatalog:`/api/v2/agent-catalog`,projectSettings:`/api/v2/project-settings`,workPriority:`/api/v2/work-priority`,prd:e=>`/api/v2/prds/${encodeURIComponent(e)}`,spec:e=>`/api/v2/specs/${encodeURIComponent(e)}`,task:e=>`/api/v2/tasks/${encodeURIComponent(e)}`,taskTrace:e=>`/api/v2/tasks/${encodeURIComponent(e)}/trace`};Ka({from:ya().datetime({offset:!0}).nullable(),to:ya().datetime({offset:!0}).nullable()}).strict();var To=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),Eo=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),Do={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},Oo=(0,a.forwardRef)(({color:e=`currentColor`,size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:i=``,children:o,iconNode:s,...c},l)=>(0,a.createElement)(`svg`,{ref:l,...Do,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:Eo(`lucide`,i),...c},[...s.map(([e,t])=>(0,a.createElement)(e,t)),...Array.isArray(o)?o:[o]])),ko=(e,t)=>{let n=(0,a.forwardRef)(({className:n,...r},i)=>(0,a.createElement)(Oo,{ref:i,iconNode:t,className:Eo(`lucide-${To(e)}`,n),...r}));return n.displayName=`${e}`,n},Ao=ko(`ArrowLeft`,[[`path`,{d:`m12 19-7-7 7-7`,key:`1l729n`}],[`path`,{d:`M19 12H5`,key:`x3x0zl`}]]),jo=ko(`ArrowRight`,[[`path`,{d:`M5 12h14`,key:`1ays0h`}],[`path`,{d:`m12 5 7 7-7 7`,key:`xquz4c`}]]),Mo=ko(`Boxes`,[[`path`,{d:`M2.97 12.92A2 2 0 0 0 2 14.63v3.24a2 2 0 0 0 .97 1.71l3 1.8a2 2 0 0 0 2.06 0L12 19v-5.5l-5-3-4.03 2.42Z`,key:`lc1i9w`}],[`path`,{d:`m7 16.5-4.74-2.85`,key:`1o9zyk`}],[`path`,{d:`m7 16.5 5-3`,key:`va8pkn`}],[`path`,{d:`M7 16.5v5.17`,key:`jnp8gn`}],[`path`,{d:`M12 13.5V19l3.97 2.38a2 2 0 0 0 2.06 0l3-1.8a2 2 0 0 0 .97-1.71v-3.24a2 2 0 0 0-.97-1.71L17 10.5l-5 3Z`,key:`8zsnat`}],[`path`,{d:`m17 16.5-5-3`,key:`8arw3v`}],[`path`,{d:`m17 16.5 4.74-2.85`,key:`8rfmw`}],[`path`,{d:`M17 16.5v5.17`,key:`k6z78m`}],[`path`,{d:`M7.97 4.42A2 2 0 0 0 7 6.13v4.37l5 3 5-3V6.13a2 2 0 0 0-.97-1.71l-3-1.8a2 2 0 0 0-2.06 0l-3 1.8Z`,key:`1xygjf`}],[`path`,{d:`M12 8 7.26 5.15`,key:`1vbdud`}],[`path`,{d:`m12 8 4.74-2.85`,key:`3rx089`}],[`path`,{d:`M12 13.5V8`,key:`1io7kd`}]]),No=ko(`CircleDot`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}]]),Po=ko(`Clock3`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`polyline`,{points:`12 6 12 12 16.5 12`,key:`1aq6pp`}]]),Fo=ko(`Coins`,[[`circle`,{cx:`8`,cy:`8`,r:`6`,key:`3yglwk`}],[`path`,{d:`M18.09 10.37A6 6 0 1 1 10.34 18`,key:`t5s6rm`}],[`path`,{d:`M7 6h1v4`,key:`1obek4`}],[`path`,{d:`m16.71 13.88.7.71-2.82 2.82`,key:`1rbuyh`}]]),Io=ko(`Download`,[[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`polyline`,{points:`7 10 12 15 17 10`,key:`2ggqvy`}],[`line`,{x1:`12`,x2:`12`,y1:`15`,y2:`3`,key:`1vk2je`}]]),Lo=ko(`FileCode2`,[[`path`,{d:`M4 22h14a2 2 0 0 0 2-2V7l-5-5H6a2 2 0 0 0-2 2v4`,key:`1pf5j1`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`m5 12-3 3 3 3`,key:`oke12k`}],[`path`,{d:`m9 18 3-3-3-3`,key:`112psh`}]]),Ro=ko(`FileText`,[[`path`,{d:`M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z`,key:`1rqfz7`}],[`path`,{d:`M14 2v4a2 2 0 0 0 2 2h4`,key:`tnqrlb`}],[`path`,{d:`M10 9H8`,key:`b1mrlr`}],[`path`,{d:`M16 13H8`,key:`t4e002`}],[`path`,{d:`M16 17H8`,key:`z1uh3a`}]]),zo=ko(`GitBranch`,[[`line`,{x1:`6`,x2:`6`,y1:`3`,y2:`15`,key:`17qcm7`}],[`circle`,{cx:`18`,cy:`6`,r:`3`,key:`1h7g24`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}],[`path`,{d:`M18 9a9 9 0 0 1-9 9`,key:`n2h4wq`}]]),Bo=ko(`Layers`,[[`path`,{d:`M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z`,key:`zw3jo`}],[`path`,{d:`M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12`,key:`1wduqc`}],[`path`,{d:`M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17`,key:`kqbvx6`}]]),Vo=ko(`ListChecks`,[[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`path`,{d:`m3 7 2 2 4-4`,key:`1obspn`}],[`path`,{d:`M13 6h8`,key:`15sg57`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 18h8`,key:`oe0vm4`}]]),Ho=ko(`LoaderCircle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),Uo=ko(`RotateCw`,[[`path`,{d:`M21 12a9 9 0 1 1-9-9c2.52 0 4.93 1 6.74 2.74L21 8`,key:`1p45f6`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}]]),Wo=ko(`Route`,[[`circle`,{cx:`6`,cy:`19`,r:`3`,key:`1kj8tv`}],[`path`,{d:`M9 19h8.5a3.5 3.5 0 0 0 0-7h-11a3.5 3.5 0 0 1 0-7H15`,key:`1d8sl`}],[`circle`,{cx:`18`,cy:`5`,r:`3`,key:`gq8acd`}]]),Go=ko(`X`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),Ko=ko(`Zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]);function qo(e){if(typeof e!=`object`||!e||Array.isArray(e))return!1;let t=e;return typeof t.account_id==`string`&&(typeof t.login_snapshot==`string`||t.login_snapshot===null)}function Jo(e){if(!Array.isArray(e))return`—`;let t=e.filter(qo);return t.length===0?`—`:t.map(({account_id:e,login_snapshot:t})=>t===null||t.length===0?e:`${t} (${e})`).join(`; `)}function Yo({progress:e,keepOpen:t=!0}){return(0,c.jsxs)(`aside`,{"aria-live":`polite`,className:`export-progress`,role:`status`,children:[(0,c.jsx)(`strong`,{children:`Exportação em andamento`}),(0,c.jsx)(`progress`,{max:100,value:e,"aria-label":`Progresso da exportação`}),t&&(0,c.jsx)(`span`,{children:`Mantenha a página aberta.`}),(0,c.jsxs)(`span`,{children:[Math.round(e),`%`]})]})}function Xo(){return(0,c.jsx)(`aside`,{"aria-live":`polite`,className:`export-success`,role:`status`,children:`Exportação concluída.`})}var Zo=new TextEncoder,Qo=4294967295,$o=Uint32Array.from({length:256},(e,t)=>{let n=t;for(let e=0;e<8;e++)n=n>>>1^(n&1?3988292384:0);return n>>>0}),es=class{writable;metas=[];offset=0;closed=!1;constructor(e){this.writable=e}entry(e){let t=as(e),n=this.put(ss(t)),r=4294967295,i=0,a=!1;return{ready:n,write:async e=>{if(await n,a)throw Error(`ZIP entry is already closed`);if(i+e.length>Qo)throw RangeError(`ZIP32 entry size exceeded`);r=fs(e,r),i+=e.length,await this.put(e)},close:async()=>{if(await n,a)return;a=!0;let o=(r^4294967295)>>>0;await this.put(cs(o,i)),this.metas.push({name:e,crc:o,size:i,offset:this.offset-i-16-t.length-30})},abort:e=>this.writable.abort?.(e)??Promise.resolve()}}async close(){if(this.closed)return;this.closed=!0;let e=this.offset;for(let e of this.metas)await this.put(ls(e));await this.put(us(this.metas.length,this.offset-e,e)),await this.writable.close()}async abort(e){this.closed=!0,await this.writable.abort?.(e)}async put(e){if(this.offset+e.length>Qo)throw RangeError(`ZIP32 size exceeded`);await this.writable.ready,await this.writable.write(e),this.offset+=e.length}};async function ts(e){if(e.headers.length===0||e.headers.length>16384)throw RangeError(`XLSX supports columns A through XFD`);let t=rs(ns(e.headers,e.rows));await is([os(`[Content_Types].xml`,`<?xml version="1.0"?><Types xmlns="http://schemas.openxmlformats.org/package/2006/content-types"><Default Extension="rels" ContentType="application/vnd.openxmlformats-package.relationships+xml"/><Default Extension="xml" ContentType="application/xml"/><Override PartName="/xl/workbook.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml"/><Override PartName="/xl/worksheets/sheet1.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml"/><Override PartName="/xl/styles.xml" ContentType="application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml"/></Types>`),os(`_rels/.rels`,`<?xml version="1.0"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/officeDocument" Target="xl/workbook.xml"/></Relationships>`),os(`xl/workbook.xml`,`<?xml version="1.0"?><workbook xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"><sheets><sheet name="Export" sheetId="1" r:id="rId1"/></sheets></workbook>`),os(`xl/_rels/workbook.xml.rels`,`<?xml version="1.0"?><Relationships xmlns="http://schemas.openxmlformats.org/package/2006/relationships"><Relationship Id="rId1" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/worksheet" Target="worksheets/sheet1.xml"/><Relationship Id="rId2" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/styles" Target="styles.xml"/></Relationships>`),os(`xl/styles.xml`,`<?xml version="1.0"?><styleSheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><fonts count="2"><font/><font><b/></font></fonts><fills count="1"><fill><patternFill patternType="none"/></fill></fills><borders count="1"><border/></borders><cellStyleXfs count="1"><xf/></cellStyleXfs><cellXfs count="2"><xf fontId="0" fillId="0" borderId="0" xfId="0"/><xf fontId="1" fillId="0" borderId="0" xfId="0" applyFont="1"/></cellXfs></styleSheet>`),{name:`xl/worksheets/sheet1.xml`,chunks:t}],e.writable)}async function*ns(e,t){let n=ps(e.length);yield as(`<?xml version="1.0"?><worksheet xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main"><sheetViews><sheetView workbookViewId="0"><pane ySplit="1" topLeftCell="A2" activePane="bottomLeft" state="frozen"/></sheetView></sheetViews><sheetData><row r="1">`),yield as(e.map((e,t)=>hs(`${ps(t+1)}1`,e,1)).join(``)),yield as(`</row>`);let r=1;for await(let e of t){if(++r>1000001)throw RangeError(`A worksheet cannot exceed 1,000,000 data rows`);yield as(`<row r="${r}">${e.values.map((e,t)=>hs(`${ps(t+1)}${r}`,e,0)).join(``)}</row>`)}yield as(`</sheetData><autoFilter ref="A1:${n}1"/></worksheet>`)}async function*rs(e,t=64*1024){let n=[],r=0,i=()=>{let e=new Uint8Array(r),t=0;for(let r of n)e.set(r,t),t+=r.length;return n=[],r=0,e};for await(let a of e){if(a.length>=t){r&&(yield i()),yield a;continue}r+a.length>t&&r&&(yield i()),n.push(a),r+=a.length}r&&(yield i())}async function is(e,t){let n=new es(t);try{for(let t of e){let e=n.entry(t.name);for await(let n of t.chunks)await e.write(n);await e.close()}await n.close()}catch(e){throw await n.abort(e),e}}var as=e=>Zo.encode(e),os=(e,t)=>({name:e,chunks:(async function*(){yield as(t)})()}),ss=e=>ds(30,e,t=>{t.setUint32(0,67324752,!0),t.setUint16(4,20,!0),t.setUint16(6,8,!0),t.setUint16(26,e.length,!0)}),cs=(e,t)=>{let n=new Uint8Array(16),r=new DataView(n.buffer);return r.setUint32(0,134695760,!0),r.setUint32(4,e,!0),r.setUint32(8,t,!0),r.setUint32(12,t,!0),n},ls=e=>ds(46,as(e.name),t=>{t.setUint32(0,33639248,!0),t.setUint16(4,20,!0),t.setUint16(6,20,!0),t.setUint16(8,8,!0),t.setUint32(16,e.crc,!0),t.setUint32(20,e.size,!0),t.setUint32(24,e.size,!0),t.setUint16(28,as(e.name).length,!0),t.setUint32(42,e.offset,!0)}),us=(e,t,n)=>{let r=new Uint8Array(22),i=new DataView(r.buffer);return i.setUint32(0,101010256,!0),i.setUint16(8,e,!0),i.setUint16(10,e,!0),i.setUint32(12,t,!0),i.setUint32(16,n,!0),r},ds=(e,t,n)=>{let r=new Uint8Array(e+t.length);return n(new DataView(r.buffer)),r.set(t,e),r},fs=(e,t)=>{for(let n of e)t=($o[(t^n)&255]??0)^t>>>8;return t>>>0},ps=e=>{let t=``;for(;e;)e--,t=String.fromCharCode(65+e%26)+t,e=Math.floor(e/26);return t},ms=e=>String(e??``).replace(/[&<>"']/g,e=>({"&":`&`,"<":`<`,">":`>`,'"':`"`,"'":`'`})[e]??e),hs=(e,t,n)=>typeof t==`number`?`<c r="${e}" s="${n}"><v>${t}</v></c>`:`<c r="${e}" s="${n}" t="inlineStr"><is><t>${ms(t)}</t></is></c>`;async function gs(e){let t=e.maxRowsPerFile??1e6;if(!Number.isSafeInteger(t)||t<1||t>1e6)throw TypeError(`maxRowsPerFile must be from 1 through 1,000,000`);let n=Math.max(1,Math.ceil(e.snapshot.totalRows/t)),r=_s(e.snapshot.pages())[Symbol.asyncIterator](),i=1,a=0,o=-1,s=async()=>{let s=i++,c=0;await ts({headers:e.headers,rows:(async function*(){for(;c<t&&a<e.snapshot.totalRows;){let n=await r.next();if(n.done)throw RangeError(`Snapshot ended before totalRows`);c+=1,a+=1,yield{values:e.headers.map(e=>n.value[e])};let i=Math.floor(a/e.snapshot.totalRows*100);(i!==o||a===e.snapshot.totalRows||c===t)&&(o=i,e.progress?.({processed:a,total:e.snapshot.totalRows,percent:i,part:s}))}})(),writable:e.writable(s,n)})};if(e.snapshot.totalRows===0){await s(),e.progress?.({processed:0,total:0,percent:100,part:1});return}for(;a<e.snapshot.totalRows;)await s();if(!(await r.next()).done)throw RangeError(`Snapshot exceeded totalRows`)}async function*_s(e){for await(let t of e)for(let e of t)yield e}var vs=!1,ys=0;async function bs(e,t){let n=globalThis.showSaveFilePicker;if(n===void 0)throw Error(`Seu navegador não suporta salvar o arquivo de exportação.`);let r=e?`.zip`:`.xlsx`;return n({id:`zaip_export_${Date.now().toString(36).slice(-8)}_${(ys++%1679616).toString(36).padStart(4,`0`)}`,startIn:`downloads`,suggestedName:`${t}${r}`,types:[{description:e?`Arquivo ZIP`:`Pasta de trabalho Excel`,accept:{[e?`application/zip`:`application/vnd.openxmlformats-officedocument.spreadsheetml.sheet`]:[r]}}]})}function xs(e,t=new Date){let n=Object.fromEntries(new Intl.DateTimeFormat(`en-CA`,{timeZone:`America/Sao_Paulo`,year:`numeric`,month:`2-digit`,day:`2-digit`,hour:`2-digit`,minute:`2-digit`,hourCycle:`h23`}).formatToParts(t).filter(e=>e.type!==`literal`).map(e=>[e.type,e.value]));return`${`${n.year}-${n.month}-${n.day}-${n.hour}-${n.minute}`}-${e.normalize(`NFD`).replace(/[\u0300-\u036f]/g,``).replace(/[^a-z0-9]+/gi,`-`).replace(/^-|-$/g,``).toLowerCase()||`export`}`}function Ss(e,t,n=new Date){return`${xs(e,n)}-part-${t}.xlsx`}function Cs(e){let t=e.createWritable().then(e=>e.getWriter());return{get ready(){return t.then(e=>e.ready)},async write(e){await(await t).write(e.slice().buffer)},async close(){await(await t).close()},async abort(e){await(await t).abort(e)}}}function ws(e){return typeof e==`object`&&!!e&&`name`in e&&e.name===`AbortError`}var Ts=class{state={status:`idle`,progress:0,error:null,message:null,completedFiles:[]};listeners=new Set;subscribe(e){return this.listeners.add(e),e(this.state),()=>this.listeners.delete(e)}setState(e){this.state=e;for(let t of this.listeners)t(e)}async start(e){if(vs||this.state.status===`running`)throw Error(`An export is already running`);vs=!0;let t=!1,n=new Date,r=xs(e.view,n),i=[];try{let a=e.snapshot.totalRows>1e6,o=await bs(a,r),s=Cs(o);t=!0,this.setState({status:`running`,progress:0,error:null,message:`Mantenha a página aberta enquanto a exportação é concluída.`,completedFiles:i});let c=a?new es(s):void 0;await gs({snapshot:e.snapshot,headers:e.headers,writable:t=>{let r=Ss(e.view,t,n),i=c?.entry(r)??s;return{...i,async close(){await i.close()}}},progress:({percent:e})=>{this.setState({...this.state,progress:Math.max(this.state.progress,e)})}}),c!==void 0&&await c.close(),i.push(o.name),vs=!1,this.setState({...this.state,status:`completed`,progress:100,message:null})}catch(e){throw t?this.setState({...this.state,status:`failed`,error:e instanceof Error?e.message:String(e),message:null}):ws(e)||this.setState({...this.state,status:`failed`,error:e instanceof Error?e.message:String(e)}),e}finally{vs=!1}}},Es=4e3,Ds=[`key`,`prds`,`specs`,`tasks`,`conversations`,`runs`,`tests`,`evidences`,`tokens`,`cost`,`duration_hours`],Os=[`type`,`id`,`title`,`status`,`risk`,`developers`,`occurred_at`,`duration_hours`,`tokens`,`cost_brl`],ks=[`id`,`kind`,`status`,`origin`,`task_id`,`conversation_id`,`created_at`,`finished_at`,`duration_hours`,`tokens`,`cost_brl`,`invocations`],As=[`run_id`,`execution_id`,`conversation_id`,`task_id`,`origin`,`run_role`,`run_purpose`,`phase`,`status`,`agent`,`provider`,`model`,`reasoning_effort`,`started_at`,`finished_at`,`duration_hours`,`input_tokens`,`cached_input_tokens`,`output_tokens`,`reasoning_tokens`,`total_tokens`,`estimated_usd`,`estimated_brl`],js=[`id`,`title`,`status`,`occurred_at`,`invocations`,`duration_hours`,`tokens`,`cost_brl`],Ms=[`key`,`label`,`invocations`,`tasks`,`tokens`,`cost_usd`,`cost_brl`,`duration_hours`],Ns=[`Persona`,`Cargo`,`Zaip Agentes`,`PRDs`,`SPECs`,`Tarefas`,`Runs`,`Testes`,`Evidências`,`Tempo`,`Tokens`,`Custos`],Ps=[`model`,`prds`,`specs`,`tasks`,`conversations`,`runs`,`tests`,`evidences`,`duration_hours`,`tokens`,`costs`],Fs=[`account_id`,`login_snapshot`,`prd_count`,`spec_count`,`task_count`,`run_count`,`test_count`,`evidence_count`,`total_duration_hours`,`total_tokens`,`total_cost_brl`,`duration_covered_runs`,`token_covered_runs`,`brl_covered_runs`],Is=[`conversation_id`,`status`,`risk`,`started_at`,`finished_at`,`model`,`reasoning_effort`,`invocations`,`duration_hours`,`tokens`,`cost_brl`],Ls=[`id`,`title`,`status`,`risk`,`source_type`,`source_id`,`requirement_ids_json`,`acceptance_ids_json`,`task_ids_json`,`occurred_at`],Rs=[`id`,`title`,`origin`,`scope_type`,`scope_id`,`occurred_at`];async function*zs(e,t=Qs){let n=new Set;for await(let r of e.pages()){let e=r.filter(e=>{let t=typeof e.id==`string`?e.id:typeof e.run_id==`string`?e.run_id:typeof e.agent_invocation_id==`string`?e.agent_invocation_id:typeof e.key==`string`?e.key:JSON.stringify(e);return n.has(t)?!1:(n.add(t),!0)});e.length>0&&(yield t(e))}}function Bs(e){return e.map(e=>{let t=Zs(e.telemetry),n=Zs(Zs(e.usage)?.total),r=Zs(n?.tokens),i=Zs(n?.cost),a=Zs(e.metrics),o=Zs(a?.duration),s=Zs(a?.total_tokens),c=Zs(a?.cost),l=Q(e.duration_ms)??Q(t?.duration_ms)??Q(e.total_duration)??Q(o?.known_sum);return{type:e.kind??e.entity_kind,id:e.id,title:e.title,status:e.work_status??e.status??e.lifecycle_status,risk:e.risk??null,developers:Jo(e.developers),occurred_at:e.occurred_at??e.created_at??e.updated_at??null,duration_hours:l===null?null:l/36e5,tokens:Q(e.total_tokens)??Q(t?.tokens)??Q(r?.total)??Q(s?.known_sum),cost_brl:Q(e.cost_brl)??Q(e.total_cost_brl)??Q(t?.cost_brl)??Q(i?.brl)??Q(c?.known_sum)}})}function Vs(e){return e.map(e=>{let t=Zs(e.origin),n=typeof t?.type==`string`?t.type:typeof e.origin_type==`string`?e.origin_type:null,r=Xs(e);return{id:e.id??e.execution_id??null,kind:e.kind??e.execution_kind??null,status:e.status??null,origin:n,task_id:e.task_id??(n===`task`?t?.task_id??null:null),conversation_id:e.conversation_id??(n===`interaction`?t?.conversation_id??null:null),created_at:e.created_at??e.started_at??null,finished_at:e.finished_at??null,duration_hours:r===null?null:r/36e5,tokens:Q(e.total_tokens),cost_brl:Q(e.cost_brl)??Q(e.total_cost_brl),invocations:Q(e.orchestrator_run_count)??Q(e.invocation_count)??null}})}function Hs(e){return e.map(e=>{let t=Xs(e);return{run_id:e.run_id??e.agent_invocation_id??e.id??null,execution_id:e.execution_id??null,conversation_id:e.conversation_id??null,task_id:e.task_id??null,origin:e.origin??e.invocation_kind??null,run_role:e.run_role??e.zaip_agent_role??null,run_purpose:e.run_purpose??e.purpose??null,phase:e.phase??null,status:e.status??null,agent:e.agent??e.zaip_agent??null,provider:e.provider??null,model:e.model??null,reasoning_effort:e.reasoning_effort??null,started_at:e.started_at??e.source_started_at??e.occurred_at??null,finished_at:e.finished_at??e.source_finished_at??null,duration_hours:t===null?null:t/36e5,input_tokens:Q(e.input_tokens),cached_input_tokens:Q(e.cached_input_tokens),output_tokens:Q(e.output_tokens),reasoning_tokens:Q(e.reasoning_tokens),total_tokens:Q(e.total_tokens),estimated_usd:Q(e.estimated_usd)??Q(e.cost_usd),estimated_brl:Q(e.estimated_brl)??Q(e.cost_brl)}})}function Us(e){return e.map(e=>{let t=Zs(e.metrics),n=Zs(t?.duration),r=Zs(t?.total_tokens),i=Zs(t?.cost),a=Q(n?.known_sum)??Q(e.total_duration);return{id:e.id??null,title:e.title??null,status:e.status??null,occurred_at:e.occurred_at??null,invocations:Q(e.run_count)??Q(e.invocation_count),duration_hours:a===null?null:a/36e5,tokens:Q(r?.known_sum)??Q(e.total_tokens),cost_brl:Q(i?.known_sum)??Q(e.total_cost_brl)}})}function Ws(e){return e.map(e=>{let t=Q(e.duration_ms)??Q(e.total_duration);return{key:e.key??null,label:e.label??null,invocations:Q(e.run_count)??Q(e.invocation_count),tasks:Q(e.task_count),tokens:Q(e.total_tokens),cost_usd:Q(e.estimated_usd)??Q(e.total_cost_usd),cost_brl:Q(e.estimated_brl)??Q(e.total_cost_brl),duration_hours:t===null?null:t/36e5}})}function Gs(e){return e.map(e=>{let t=Q(e.duration_ms)??Q(e.total_duration);return{Persona:e.persona??null,Cargo:e.job??null,"Zaip Agentes":e.label??e.key??null,PRDs:Q(e.prd_count)??0,SPECs:Q(e.spec_count)??0,Tarefas:Q(e.task_count)??0,Runs:Q(e.run_count)??Q(e.invocation_count)??0,Testes:Q(e.test_count)??Q(e.validation_count)??0,Evidências:Q(e.evidence_count)??0,Tempo:(t??0)/36e5,Tokens:Q(e.total_tokens)??0,Custos:Q(e.estimated_brl)??Q(e.total_cost_brl)??0}})}function Ks(e){return e.map(e=>{let t=Q(e.duration_ms)??Q(e.total_duration);return{model:e.label??e.model??e.key??null,prds:Q(e.prd_count)??0,specs:Q(e.spec_count)??0,tasks:Q(e.task_count)??0,conversations:Q(e.conversation_count)??0,runs:Q(e.run_count)??Q(e.invocation_count)??0,tests:Q(e.test_count)??Q(e.validation_count)??0,evidences:Q(e.evidence_count)??0,duration_hours:t===null?0:t/36e5,tokens:Q(e.total_tokens)??0,costs:Q(e.estimated_brl)??Q(e.total_cost_brl)??0}})}function qs(e){return e.map(e=>{let t=Q(e.total_duration_ms);return{account_id:e.account_id??null,login_snapshot:e.login_snapshot??null,prd_count:Q(e.prd_count),spec_count:Q(e.spec_count),task_count:Q(e.task_count),run_count:Q(e.run_count),test_count:Q(e.test_count),evidence_count:Q(e.evidence_count),total_duration_hours:t===null?null:t/36e5,total_tokens:Q(e.total_tokens),total_cost_brl:Q(e.total_cost_brl),duration_covered_runs:Q(e.duration_covered_runs),token_covered_runs:Q(e.token_covered_runs),brl_covered_runs:Q(e.brl_covered_runs)}})}function Js(e){return e.map(e=>({conversation_id:e.conversation_id??e.id??null,status:e.status??null,risk:e.risk??null,started_at:e.started_at??null,finished_at:e.finished_at??null,model:e.model??null,reasoning_effort:e.reasoning_effort??null,invocations:Q(e.invocation_count),duration_hours:(Q(e.total_duration)??Q(e.duration_ms))===null?null:Number(Q(e.total_duration)??Q(e.duration_ms))/36e5,tokens:Q(e.total_tokens),cost_brl:Q(e.total_cost_brl)??Q(e.cost_brl)}))}function Ys(e,t){return e.map(e=>Object.fromEntries(t.map(t=>[t,e[t]??null])))}function Xs(e){return Q(e.duration_ms)??Q(e.source_duration_ms)}function Zs(e){return typeof e==`object`&&e&&!Array.isArray(e)?e:null}function Q(e){return typeof e==`number`?e:null}function Qs(e){return e.map(e=>Object.fromEntries($s(e).map(([e,t])=>{let n=tc(e);return n===null?[e,typeof t==`object`&&t?JSON.stringify(t):t]:[n,typeof t==`number`?t/36e5:t]})))}function $s(e){let t=ec(e),n=Object.keys(t);return Ds.some(e=>n.includes(e))?Ds.filter(e=>n.includes(e)).map(e=>[e,t[e]]):Object.entries(e)}function ec(e){return(`key`in e||`period_key`in e)&&(`prd_count`in e||`spec_count`in e||`run_count`in e||`total_run_count`in e||`costBrl`in e||`total_cost_brl`in e||`durationMs`in e||`operations_total_duration`in e||`tasksCreated`in e)?{key:e.key??e.period_key,prds:e.prds??e.prd_count,specs:e.specs??e.spec_count,tasks:e.tasks??e.tasksCreated??e.task_count,runs:e.runs??e.run_count??e.total_run_count??e.invocation_count,tests:e.tests??e.test_count??e.validation_count,evidences:e.evidences??e.evidence_count,duration_hours:typeof(e.durationMs??e.duration_ms??e.operations_total_duration??e.total_duration)==`number`?Number(e.durationMs??e.duration_ms??e.operations_total_duration??e.total_duration)/36e5:e.durationMs??e.duration_ms??e.operations_total_duration??e.total_duration??null,tokens:e.tokens??e.total_tokens,cost:e.cost??(`costBrl`in e?e.costBrl:`total_cost_brl`in e?e.total_cost_brl:e.estimated_brl)}:(Object.keys(e).some(e=>e!==`key`&&Ds.includes(e)),e)}function tc(e){return e===`durationMs`?`durationHours`:e.endsWith(`DurationMs`)?`${e.slice(0,-2)}Hours`:e===`duration_ms`?`duration_hours`:e.endsWith(`_duration_ms`)?`${e.slice(0,-2)}hours`:null}function nc(e,t){let n=[],r=new Set,i=/-(daily|monthly|annual|yearly)$/.test(e),a=/-work-(kanban|list)$/.test(e),o=/-executions$/.test(e),s=e===`cost-executions`,c=/-(?:agentCalls|agent-calls|runs)$/.test(e),l=e===`operations-conversations`,u=/-(?:tasks|specs|prds|conversations)$/.test(e)&&!l,d=e===`cost-models`,f=e===`cost-agents`,p=/-(?:agents|models|providers)$/.test(e),m=e===`cost-developers`,h=e===`operations-changes`,g=e===`operations-decisions`;i&&n.push(...Ds),a&&n.push(...Os),o&&!s&&n.push(...ks),s&&n.push(...js),c&&n.push(...As),u&&n.push(...js),f?n.push(...Ns):d?n.push(...Ps):p&&n.push(...Ms),m&&n.push(...Fs),l&&n.push(...Is),h&&n.push(...Ls),g&&n.push(...Rs);for(let e of n)r.add(e);if(!(a||s||o||c||u||p||m||l||h||g))for(let e of t)for(let[t]of $s(e)){let e=tc(t)??t;r.has(e)||(r.add(e),n.push(e))}return n.length===0&&n.push(`result`),n}function rc({filters:e,pageSource:t,rows:n,view:r}){let i=(0,a.useRef)(null);i.current===null&&(i.current=new Ts);let[o,s]=(0,a.useState)(i.current.state),[l,u]=(0,a.useState)(!1),[d,f]=(0,a.useState)(!1),[p,m]=(0,a.useState)(null);(0,a.useEffect)(()=>i.current?.subscribe(s),[]),(0,a.useEffect)(()=>{if(o.status!==`completed`){u(!1);return}u(!0);let e=setTimeout(()=>u(!1),Es);return()=>clearTimeout(e)},[o.status]);let h=nc(r,n),g=/-work-(kanban|list)$/.test(r),_=/-executions$/.test(r),v=r===`cost-executions`,y=/-(?:agentCalls|agent-calls|runs)$/.test(r),b=r===`operations-conversations`,x=/-(?:tasks|specs|prds|conversations)$/.test(r)&&!b,S=r===`cost-models`,C=r===`cost-agents`,w=/-(?:agents|models|providers)$/.test(r),T=r===`cost-developers`,E=r===`operations-changes`,D=r===`operations-decisions`,O=async()=>{let i=t===void 0?void 0:`prepare`in t?await t.prepare():t;return Co({id:globalThis.crypto?.randomUUID?.()??`export-${Date.now()}`,createdAt:new Date().toISOString(),view:r,filters:e,totalRows:i?.totalRows??n.length,pages:async function*(){if(i!==void 0){yield*zs(i,g?Bs:b?Js:E?e=>Ys(e,Ls):D?e=>Ys(e,Rs):v?Us:_?Vs:y?Hs:x?Us:C?Gs:S?Ks:w?Ws:T?qs:Qs);return}for(let e=0;e<n.length;e+=500)yield(g?Bs:b?Js:E?e=>Ys(e,Ls):D?e=>Ys(e,Rs):v?Us:_?Vs:y?Hs:x?Us:C?Gs:S?Ks:w?Ws:T?qs:Qs)(n.slice(e,e+500))}})};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)(`button`,{"aria-label":`Exportar Excel`,className:`excel-export-action`,disabled:d||o.status===`running`,onClick:()=>{m(null),f(!0),O().then(e=>i.current?.start({snapshot:e,headers:h,view:r})).catch(e=>{m(e instanceof Error?e.message:String(e))}).finally(()=>f(!1))},type:`button`,children:[(0,c.jsx)(Io,{"aria-hidden":`true`,size:16}),`Exportar Excel`]}),d||o.status===`running`?(0,c.jsx)(Yo,{progress:o.progress}):null,l?(0,c.jsx)(Xo,{}):null,o.status===`failed`?(0,c.jsxs)(`p`,{role:`alert`,children:[`Falha ao exportar: `,o.error]}):null,p===null?null:(0,c.jsxs)(`p`,{role:`alert`,children:[`Falha ao preparar exportação: `,p]})]})}var ic=1e3,ac=60*ic,oc=60*ac,sc=24*oc,cc=7*sc,lc=30*sc,uc=6*oc,dc=new Set([`completed`,`blocked`,`failed`,`cancelled`]);function fc(e,t,n,r=Date.now()){if(e===null||dc.has(t))return null;let i=Date.parse(e);if(!Number.isFinite(i))return null;let a=Math.max(0,r-i),o=t===`executing`||t===`verifying`;return{label:pc(a,o,n),alert:o&&a>uc}}function pc(e,t,n){let r=n===`pt-BR`?`Há`:`Ago`,i=mc(e,t,n);return n===`pt-BR`?`${r} ${i}`:`${i} ${r}`}function mc(e,t,n){let r=Math.max(1,Math.round(e/ic));if(r<60)return`${r} seg`;let i=Math.round(e/ac);if(i<60)return`${i} min`;let a=Math.round(e/oc);if(a<24)return`${a} h`;let o=Math.round(e/sc);if(t||o<7)return`${o} d`;let s=Math.round(e/cc);if(s<4)return n===`pt-BR`?`${s} sem`:`${s} w`;let c=Math.max(1,Math.round(e/lc));return n===`pt-BR`?c===1?`1 mês`:`${c} meses`:`${c} mo`}function hc(e,t){return gc(e,t,t===`pt-BR`?`Criada`:`Created`)}function gc(e,t,n){let r=new Date(e);return Number.isNaN(r.getTime())?``:`${n} · ${new Intl.DateTimeFormat(t,{dateStyle:`short`,timeStyle:`medium`}).format(r)}`}function _c(e,t=`pt-BR`){return e>=36e5?`${Math.round(e/36e5)} h`:e>=6e4?`${Math.round(e/6e4)} min`:`${Math.round(e/1e3)} ${t===`pt-BR`?`seg`:`sec`}`}function vc(e){return _c(e)}function yc(e,t){return e.filter(e=>e.kind===`spec`&&e.parent_id===t)}function bc(e,t,n){let r=new Map(t.map(e=>[e.id,e])),i=new Map(e.planned_tasks.map(e=>[e.id,e]));return[...new Set([...e.planned_tasks.map(e=>e.id),...e.task_ids])].map(e=>({id:e,task:r.get(e)??null,preview:i.get(e)??null,usage:n.get(e)}))}var xc={durationMs:null,tokens:null,costBrl:null};function Sc(e){return{durationMs:e.duration_ms,tokens:e.usage.total.coverage.tokens>0?e.usage.total.tokens.total:null,costBrl:e.usage.total.coverage.brl>0?e.usage.total.cost.brl:null}}function Cc({locale:e,usage:t}){return(0,c.jsx)(`dl`,{className:`operations-macro-usage-strip`,children:[{icon:(0,c.jsx)(Po,{size:17}),label:e===`pt-BR`?`Tempo total`:`Total time`,value:t.durationMs===null?`—`:_c(t.durationMs,e)},{icon:(0,c.jsx)(Ko,{size:17}),label:`Tokens`,value:E(t.tokens,e)},{icon:(0,c.jsx)(Fo,{size:17}),label:e===`pt-BR`?`Custo`:`Cost`,value:O(t.costBrl,`BRL`,e)}].map(e=>(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`span`,{"aria-hidden":`true`,children:e.icon}),(0,c.jsx)(`dt`,{children:e.label}),(0,c.jsx)(`dd`,{children:e.value})]},e.label))})}function wc({locale:e,usage:t}){let n=[t.durationMs===null?`—`:_c(t.durationMs,e),E(t.tokens,e),O(t.costBrl,`BRL`,e)];return(0,c.jsx)(`dl`,{className:`operations-macro-mini-usage`,children:(e===`pt-BR`?[`Tempo`,`Tokens`,`Custo`]:[`Time`,`Tokens`,`Cost`]).map((e,t)=>(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`dt`,{children:e}),(0,c.jsx)(`dd`,{children:n[t]})]},e))})}var Tc={"en-US":{draft:`Definition (PRD + Requirements)`,planned:`Planned (SPEC + Changes)`,executing:`Executing (Tasks)`,verifying:`Verifying (Tests + Review)`,completed:`Completed`,blocked:`Blocked`,failed:`Failed`,cancelled:`Cancelled`},"pt-BR":{draft:`Definição (PRD + Requisitos)`,planned:`Planejamento (SPEC + Mudanças)`,executing:`Execução (Tarefas)`,verifying:`Verificação (Testes + Revisão)`,completed:`Concluído`,blocked:`Bloqueado`,failed:`Falhado`,cancelled:`Cancelado`}};function Ec(e,t){return Tc[t][e]}function Dc(e,t){return t===`en-US`?e===`lite`?`Lite`:e===`standard`?`Standard`:`Critical`:e===`lite`?`Leve`:e===`standard`?`Padrão`:`Crítico`}var Oc=[`task`,`spec`,`prd`];function kc(e,t){return t.find(t=>t.id===e.change_id)?.source.type??(e.spec_id===null?`task`:`spec`)}function Ac(e){return e===`task`?`Task-first`:e===`spec`?`SPEC`:`PRD`}function jc(e,t,n){return t===``||kc(e,n)===t}function Mc(){let[e,t]=(0,a.useState)(()=>Date.now());return(0,a.useEffect)(()=>{let e=window.setInterval(()=>t(Date.now()),1e3);return()=>window.clearInterval(e)},[]),e}function Nc(e,t=e,n){let[r,i]=(0,a.useState)(10),o=(0,a.useRef)(null);return(0,a.useEffect)(()=>{let a=o.current;if(a===null||r>=e&&e>=t)return;let s=new IntersectionObserver(a=>{a.some(e=>e.isIntersecting)&&(r<e?i(t=>Math.min(e,t+10)):e<t&&n?.())},{rootMargin:`320px 0px`});return s.observe(a),()=>s.disconnect()},[e,t,r,n]),{hasMore:r<e||e<t,sentinelRef:o,visibleCount:Math.min(r,e)}}function Pc(e,t=[]){let n=new Set(t.filter(e=>e.telemetry!==null&&e.telemetry!==void 0).map(e=>e.id)),r=new Map(t.flatMap(e=>e.telemetry===null||e.telemetry===void 0?[]:[[e.id,{durationMs:e.telemetry.duration_ms,tokens:e.telemetry.tokens,costBrl:e.telemetry.cost_brl}]]));for(let t of e){if(t.task_id===null||n.has(t.task_id))continue;let e=r.get(t.task_id)??{durationMs:null,tokens:null,costBrl:null};r.set(t.task_id,{durationMs:Fc(e.durationMs,t.phase===`execution`&&t.parent_run_id==null?j(t):null),tokens:Fc(e.tokens,t.usage.total.tokens.total),costBrl:Fc(e.costBrl,t.usage.total.cost.brl)})}return r}function Fc(e,t){return e===null&&t===null?null:(e??0)+(t??0)}var Ic=[`definition`,`planning`,`ready`,`executing`,`verifying`,`completed`,`blocked`,`cancelled`,`failed`];function Lc(e){return e.status===`completed`?`completed`:e.status===`cancelled`?`cancelled`:e.status===`failed`?`failed`:e.status===`blocked`?`blocked`:e.is_active===!0||e.status===`executing`?`executing`:e.status===`verifying`?`verifying`:(e.attempt_count??0)>0||e.started_at!=null||e.execution_started===!0?`executing`:e.status===`draft`?`definition`:e.status===`planned`?`ready`:null}function Rc(e,t){if(e.lifecycle_status===`cancelled`)return`cancelled`;if(e.lifecycle_status===`failed`)return`failed`;if(e.lifecycle_status===`blocked`)return`blocked`;if(e.lifecycle_status===`delivered`||e.lifecycle_status===`completed`)return`completed`;if(e.lifecycle_status===`ready`)return`ready`;if(e.kind===`prd`&&e.lifecycle_status===`draft`)return`definition`;if(e.kind===`spec`&&e.lifecycle_status===`draft`)return`planning`;if(e.work_status===`cancelled`)return`cancelled`;if(e.work_status===`failed`)return`failed`;if(e.work_status===`blocked`)return`blocked`;if(e.work_status===`completed`)return`completed`;if(e.is_active||t.some(t=>e.task_ids.includes(t.id)&&t.is_active))return`executing`;if(e.lifecycle_status===`verifying`||e.work_status===`verifying`)return`verifying`;if(e.work_status===`executing`){let n=t.filter(t=>e.task_ids.includes(t.id));return n.some(e=>e.status===`verifying`)&&n.every(e=>e.status===`verifying`||e.status===`completed`)?`verifying`:`executing`}return e.lifecycle_status===`active`?`executing`:`planning`}function zc(e,t){return t===`task`?e.kind===`task`&&e.row.spec_id!==null:t===`standalone-task`?e.kind===`task`&&e.row.spec_id===null:t===`all`||e.kind===t}function Bc(e,t,n){let r=e.kind===`prd`?t.filter(t=>t.parent_id===e.id):[],i=new Set(r.map(e=>e.id)),a=new Set(e.task_ids);if(e.kind===`spec`)for(let t of n)t.spec_id===e.id&&a.add(t.id);else{for(let e of r)for(let t of e.task_ids)a.add(t);for(let e of n)e.spec_id!==null&&i.has(e.spec_id)&&a.add(e.id)}let o=n.filter(e=>a.has(e.id));return{completedSpecs:r.filter(Hc).length,totalSpecs:r.length,completedTasks:o.filter(e=>e.status===`completed`).length,totalTasks:Math.max(o.length,e.planned_tasks.length)}}function Vc(e,t){let n=`Tasks ${t.completedTasks}/${t.totalTasks}`;return e===`prd`?`SPECs ${t.completedSpecs}/${t.totalSpecs} · ${n}`:n}function Hc(e){return e.lifecycle_status===`delivered`||e.work_status===`completed`}function Uc(e,t){return{"pt-BR":{definition:`Definição (PRD + Requisitos)`,planning:`Planejamento (SPEC + Change)`,ready:`Pronto para Executar`,executing:`Execução`,verifying:`Verificação`,completed:`Concluído`,blocked:`Bloqueado`,cancelled:`Cancelado`,failed:`Falhado`},"en-US":{definition:`Definition (PRDs)`,planning:`Planning`,ready:`Ready to Execute`,executing:`Executing`,verifying:`Verifying`,completed:`Completed`,blocked:`Blocked`,cancelled:`Cancelled`,failed:`Failed`}}[t][e]}function Wc({label:e,locale:t,onClose:n,onOpenDocument:r,onOpenTrace:i,row:o,runs:s,specs:l,tasks:u}){let d=(0,a.useRef)(null),f=(0,a.useRef)(null),[p,m]=(0,a.useState)(e===`SPEC`?o:null),h=(0,a.useMemo)(()=>yc(l,o.id),[o.id,l]),g=(0,a.useMemo)(()=>Pc(s),[s]);(0,a.useEffect)(()=>{let e=d.current;if(e!==null)return e.open||e.showModal(),()=>{e.open&&e.close()}},[]);let _=e=>{f.current?.scrollTo({top:0}),m(e)},v=e===`PRD`&&p===null,y=p??o,b=bc(y,u,g);return(0,c.jsx)(`dialog`,{className:`operations-status-dialog-backdrop operations-macro-dialog-backdrop`,onCancel:e=>{e.preventDefault(),n()},onMouseDown:e=>{e.currentTarget===e.target&&n()},ref:d,children:(0,c.jsxs)(`section`,{"aria-label":`${t===`pt-BR`?`Detalhes do`:`Details for`} ${e}`,"aria-modal":`true`,className:`operations-macro-planning-dialog`,"data-kind":v?`prd`:`spec`,role:`dialog`,children:[(0,c.jsxs)(`header`,{className:`operations-macro-dialog-header`,children:[(0,c.jsxs)(`div`,{className:`operations-macro-heading`,children:[(0,c.jsx)(`span`,{className:`operations-macro-heading-icon`,"aria-hidden":`true`,children:v?(0,c.jsx)(Bo,{size:23}):(0,c.jsx)(Lo,{size:23})}),(0,c.jsxs)(`div`,{children:[(0,c.jsxs)(`div`,{className:`operations-macro-kicker`,children:[(0,c.jsx)(`span`,{children:v?`PRD`:`SPEC`}),(0,c.jsx)(`i`,{}),(0,c.jsx)(`span`,{children:Uc(Rc(y,u),t)})]}),(0,c.jsx)(`h2`,{children:y.title}),(0,c.jsx)(`p`,{title:y.id,children:y.id})]})]}),r?(0,c.jsxs)(`button`,{className:`operations-macro-document-open`,onClick:()=>{n(),r(y.kind,y.id)},type:`button`,children:[(0,c.jsx)(Ro,{"aria-hidden":`true`,size:16}),t===`pt-BR`?`Ler ${v?`PRD`:`SPEC`} completa`:`Read full ${v?`PRD`:`SPEC`}`]}):null,(0,c.jsx)(`button`,{"aria-label":t===`pt-BR`?`Fechar`:`Close`,className:`operations-macro-close`,onClick:n,type:`button`,children:(0,c.jsx)(Go,{"aria-hidden":`true`,size:20})})]}),(0,c.jsxs)(`div`,{className:`operations-macro-dialog-scroll`,ref:f,children:[e===`PRD`&&p!==null?(0,c.jsxs)(`button`,{className:`operations-macro-back`,onClick:()=>_(null),type:`button`,children:[(0,c.jsx)(Ao,{"aria-hidden":`true`,size:16}),(0,c.jsxs)(`span`,{children:[t===`pt-BR`?`Voltar ao PRD`:`Back to PRD`,(0,c.jsx)(`small`,{children:o.title})]})]}):null,(0,c.jsx)(Cc,{locale:t,usage:Sc(y)}),(0,c.jsx)(Gc,{locale:t,row:y}),v?(0,c.jsx)(qc,{locale:t,onSelectSpec:_,specs:h,tasks:u}):(0,c.jsx)(Jc,{locale:t,onOpenTrace:i,row:y,tasks:b,...e===`PRD`?{parentPrd:o}:{}})]})]})})}function Gc({locale:e,row:t}){return(0,c.jsx)(`dl`,{className:`operations-macro-overview-cards`,children:[{icon:(0,c.jsx)(Vo,{size:17}),label:`Tasks`,value:t.task_count},{icon:(0,c.jsx)(Wo,{size:17}),label:`Runs`,value:t.run_count},{icon:(0,c.jsx)(zo,{size:17}),label:e===`pt-BR`?`Execuções`:`Executions`,value:t.execution_count},{icon:(0,c.jsx)(No,{size:17}),label:e===`pt-BR`?`Estado`:`State`,value:Kc(t.lifecycle_status,e)}].map(e=>(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`span`,{"aria-hidden":`true`,children:e.icon}),(0,c.jsx)(`dt`,{children:e.label}),(0,c.jsx)(`dd`,{children:e.value})]},e.label))})}function Kc(e,t){return{"pt-BR":{draft:`Rascunho`,planned:`Planejado`,ready:`Pronto`,active:`Ativo`,executing:`Em execução`,verifying:`Em verificação`,delivered:`Entregue`,completed:`Concluído`,blocked:`Bloqueado`,failed:`Falhado`,cancelled:`Cancelado`},"en-US":{draft:`Draft`,planned:`Planned`,ready:`Ready`,active:`Active`,executing:`Executing`,verifying:`Verifying`,delivered:`Delivered`,completed:`Completed`,blocked:`Blocked`,failed:`Failed`,cancelled:`Cancelled`}}[t][e]??e}function qc({locale:e,onSelectSpec:t,specs:n,tasks:r}){return(0,c.jsxs)(`section`,{className:`operations-macro-section operations-prd-specs`,children:[(0,c.jsx)(Yc,{count:n.length,description:e===`pt-BR`?`Selecione uma SPEC para ver suas Tasks e abrir a rastreabilidade completa.`:`Select a SPEC to see its Tasks and open the complete trace.`,icon:(0,c.jsx)(Mo,{size:19}),title:e===`pt-BR`?`SPECs deste PRD`:`SPECs in this PRD`}),n.length>0?(0,c.jsx)(`div`,{className:`operations-prd-spec-grid`,children:n.map((n,i)=>(0,c.jsxs)(`button`,{onClick:()=>t(n),type:`button`,children:[(0,c.jsx)(`span`,{className:`operations-prd-spec-index`,children:String(i+1).padStart(2,`0`)}),(0,c.jsxs)(`div`,{className:`operations-prd-spec-copy`,children:[(0,c.jsx)(`span`,{children:Uc(Rc(n,r),e)}),(0,c.jsx)(`strong`,{children:n.title}),(0,c.jsx)(`code`,{title:n.id,children:n.id})]}),(0,c.jsx)(wc,{locale:e,usage:Sc(n)}),(0,c.jsxs)(`span`,{className:`operations-prd-spec-action`,children:[(0,c.jsxs)(`small`,{children:[Math.max(n.task_count,n.planned_tasks.length),` Tasks`]}),(0,c.jsx)(jo,{"aria-hidden":`true`,size:18})]})]},n.id))}):(0,c.jsx)(Xc,{text:e===`pt-BR`?`Este PRD ainda não possui SPEC vinculada.`:`This PRD does not have a linked SPEC yet.`})]})}function Jc({locale:e,onOpenTrace:t,parentPrd:n,row:r,tasks:i}){return(0,c.jsxs)(c.Fragment,{children:[n?(0,c.jsxs)(`div`,{className:`operations-spec-parent`,children:[(0,c.jsx)(Bo,{"aria-hidden":`true`,size:16}),(0,c.jsx)(`span`,{children:e===`pt-BR`?`Parte do PRD`:`Part of PRD`}),(0,c.jsx)(`strong`,{children:n.title})]}):null,(0,c.jsxs)(`section`,{className:`operations-macro-section operations-spec-tasks`,children:[(0,c.jsx)(Yc,{count:i.length,description:e===`pt-BR`?`Cada Task mantém sua telemetria e leva ao Trace completo do ciclo.`:`Each Task preserves its telemetry and opens the full lifecycle trace.`,icon:(0,c.jsx)(Wo,{size:19}),title:e===`pt-BR`?`Fluxo de Tasks`:`Task flow`}),i.length>0?(0,c.jsx)(`div`,{className:`operations-spec-task-list`,children:i.map(({id:n,preview:r,task:i,usage:a},o)=>(0,c.jsxs)(`button`,{disabled:i===null,onClick:()=>{i!==null&&t(n)},type:`button`,children:[(0,c.jsxs)(`span`,{className:`operations-spec-task-sequence`,children:[(0,c.jsx)(`i`,{}),String(o+1).padStart(2,`0`)]}),(0,c.jsxs)(`div`,{className:`operations-spec-task-copy`,children:[(0,c.jsx)(`span`,{children:i?Ec(i.status,e):e===`pt-BR`?`Planejada`:`Planned`}),(0,c.jsx)(`strong`,{children:i?.title??r?.title??n}),i===null&&r?.objective?(0,c.jsx)(`small`,{children:r.objective}):null,(0,c.jsx)(`code`,{title:n,children:n})]}),(0,c.jsx)(wc,{locale:e,usage:a??xc}),(0,c.jsxs)(`span`,{className:`operations-spec-task-action`,children:[i?e===`pt-BR`?`Abrir Trace`:`Open Trace`:e===`pt-BR`?`Materializa ao finalizar`:`Materializes when finalized`,i?(0,c.jsx)(jo,{"aria-hidden":`true`,size:17}):null]})]},n))}):(0,c.jsx)(Xc,{text:e===`pt-BR`?`Esta SPEC ainda não possui Task materializada.`:`This SPEC does not have a materialized Task yet.`})]}),(0,c.jsxs)(`div`,{className:`operations-macro-document`,children:[(0,c.jsx)(Ro,{"aria-hidden":`true`,size:17}),(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`span`,{children:e===`pt-BR`?`Documento registrado`:`Registered document`}),(0,c.jsx)(`code`,{title:r.artifact_path,children:r.artifact_path})]})]})]})}function Yc({count:e,description:t,icon:n,title:r}){return(0,c.jsxs)(`header`,{className:`operations-macro-section-heading`,children:[(0,c.jsx)(`span`,{"aria-hidden":`true`,children:n}),(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`h3`,{children:r}),(0,c.jsx)(`p`,{children:t})]}),(0,c.jsx)(`strong`,{children:e})]})}function Xc({text:e}){return(0,c.jsxs)(`div`,{className:`operations-macro-empty`,children:[(0,c.jsx)(Lo,{"aria-hidden":`true`,size:21}),(0,c.jsx)(`p`,{children:e})]})}var Zc=`America/Sao_Paulo`,Qc={"2026-08-02":4809511,"2026-08-01":8894527,"2026-07-31":9472804,"2026-07-30":5167818,"2026-07-29":11336221,"2026-07-28":8262282,"2026-07-27":4862150,"2026-07-26":970899,"2026-07-25":7465970,"2026-07-24":9041538,"2026-07-23":19750,"2026-07-22":1371560,"2026-07-21":14992543,"2026-07-20":3168460,"2026-07-19":929990,"2026-07-18":9232700,"2026-07-17":16882853,"2026-07-16":20054785,"2026-07-15":35459620,"2026-07-14":24078852,"2026-07-13":22611635,"2026-07-12":8339738,"2026-07-11":1859980},$c={cutoff:`2026-08-02T03:14:00.000Z`,cutoffDay:`2026-08-02`,durationMs:Object.values(Qc).reduce((e,t)=>e+t,0),costXlsxSha256:`C3EE0495667289FB81DD8F9268697CEB7692433C14CB19934C89B5F39129902A`,operationsXlsxSha256:`94E9577A7CA27F7FDD277D81E34156296CB28FE39CF6D7636B259EBBB7E56BCC`};function el(e){return e!=null&&Date.parse(e)>=Date.parse($c.cutoff)}function tl(e,t){if(e==null)return null;let n=new Date(e);if(Number.isNaN(n.getTime()))return null;let r=new Intl.DateTimeFormat(`en-CA`,{timeZone:Zc,year:`numeric`,month:`2-digit`,day:`2-digit`}).formatToParts(n),i=e=>r.find(t=>t.type===e)?.value,a=i(`year`),o=i(`month`),s=i(`day`);return a===void 0||o===void 0||s===void 0?null:t===`year`?a:t===`month`?`${a}-${o}`:`${a}-${o}-${s}`}function nl(e,t,n=new Date){let r=e?.map(e=>e.key).filter((t,n,r)=>/^\d{4}-\d{2}-\d{2}$/.test(t)&&(e[n].estimated_brl!==null||e[n].estimated_usd!==null)).sort()[0];return r===void 0?t:{start:r,end:hl(n)}}function rl(e,t=new Date){let n=e.reduce((e,t)=>Math.min(e,Date.parse(t.created_at)),1/0);return{start:hl(Number.isFinite(n)?new Date(n):t),end:hl(t)}}function il(e,t,n=new Date){if(e.length>0)return rl(e,n);let r=t.filter(e=>/^\d{4}-\d{2}-\d{2}$/.test(e)).sort();return r.length===0?rl(e,n):{start:r[0],end:r.at(-1)}}function al(e,t=new Date){let n=dl(t),r=dl(t);if(e===`yesterday`)return r=fl(n,-1),ul(r,r);if(e===`this-week`)return ul(fl(n,-ml(n)),n);if(e===`last-week`){let e=fl(n,-ml(n));return ul(fl(e,-7),fl(e,-1))}return e===`this-month`?ul(new Date(Date.UTC(n.getUTCFullYear(),n.getUTCMonth(),1,12)),n):e===`last-month`?ul(new Date(Date.UTC(n.getUTCFullYear(),n.getUTCMonth()-1,1,12)),new Date(Date.UTC(n.getUTCFullYear(),n.getUTCMonth(),0,12))):e===`last-3-months`?ul(pl(n,-3),n):e===`last-6-months`?ul(pl(n,-6),n):e===`this-year`?ul(new Date(Date.UTC(n.getUTCFullYear(),0,1,12)),n):e===`last-year`?ul(new Date(Date.UTC(n.getUTCFullYear()-1,0,1,12)),new Date(Date.UTC(n.getUTCFullYear()-1,11,31,12))):ul(n,n)}function ol(e,t,n){return sl(e??n,t)}function sl(e,t){if(e==null)return!1;let n=tl(e,`day`);return n!==null&&n>=t.start&&n<=t.end}function cl(e,t,n){return t===`all`||sl(e,n)}function ll(e,t,n){return cl(e.finished_at??e.started_at,t,n)}function ul(e,t){return{start:hl(e),end:hl(t)}}function dl(e){let t=tl(e.toISOString(),`day`);if(t===null)throw RangeError(`Invalid Operations date anchor`);return new Date(`${t}T12:00:00.000Z`)}function fl(e,t){let n=new Date(e);return n.setUTCDate(n.getUTCDate()+t),n}function pl(e,t){let n=e.getUTCDate(),r=new Date(Date.UTC(e.getUTCFullYear(),e.getUTCMonth()+t,1,12)),i=new Date(Date.UTC(r.getUTCFullYear(),r.getUTCMonth()+1,0,12)).getUTCDate();return r.setUTCDate(Math.min(n,i)),r}function ml(e){return(e.getUTCDay()+6)%7}function hl(e){let t=tl(e.toISOString(),`day`);if(t===null)throw RangeError(`Invalid Operations date value`);return t}var gl={"pt-BR":{all:`Todo o Período`,custom:`Personalizado`,today:`Hoje`,yesterday:`Ontem`,"this-week":`Esta Semana`,"last-week":`Semana Passada`,"this-month":`Este Mês`,"last-month":`Mês Passado`,"last-3-months":`Últimos 3 meses`,"last-6-months":`Últimos 6 meses`,"this-year":`Este Ano`,"last-year":`Último ano`},"en-US":{all:`All Time`,custom:`Custom`,today:`Today`,yesterday:`Yesterday`,"this-week":`This Week`,"last-week":`Last Week`,"this-month":`This Month`,"last-month":`Last Month`,"last-3-months":`Last 3 months`,"last-6-months":`Last 6 months`,"this-year":`This Year`,"last-year":`Last year`}},_l=Object.keys(gl[`pt-BR`]);function vl(e,t){return e===`all`?{disabled:!0,start:t.start,end:t.end}:{disabled:!1,start:t.start,end:t.end}}function yl({ariaLabelSuffix:e=``,dateRange:t,defaultDateRange:n,locale:r,onDateRangeChange:i,onPresetChange:a,preset:o}){let s=vl(o,t);return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)(`label`,{className:`operations-toolbar-field operations-date-field`,children:[(0,c.jsx)(`span`,{children:r===`pt-BR`?`Data inicial`:`Start date`}),(0,c.jsx)(`input`,{"aria-label":`${r===`pt-BR`?`Data inicial`:`Start date`}${e}`,disabled:s.disabled,onInput:e=>{let n=e.currentTarget.value;i({start:n,end:n>t.end?n:t.end})},type:`date`,value:s.start})]}),(0,c.jsxs)(`label`,{className:`operations-toolbar-field operations-date-field`,children:[(0,c.jsx)(`span`,{children:r===`pt-BR`?`Data final`:`End date`}),(0,c.jsx)(`input`,{"aria-label":`${r===`pt-BR`?`Data final`:`End date`}${e}`,disabled:s.disabled,onInput:e=>{let n=e.currentTarget.value;i({start:n<t.start?n:t.start,end:n})},type:`date`,value:s.end})]}),(0,c.jsxs)(`label`,{className:`operations-toolbar-field operations-period-field`,children:[(0,c.jsx)(`span`,{children:r===`pt-BR`?`Período`:`Period`}),(0,c.jsx)(`select`,{"aria-label":`${r===`pt-BR`?`Período`:`Period`}${e}`,onChange:e=>{let r=e.target.value;if(r===`all`){a(r,n);return}if(r===`custom`){a(r,t);return}a(r,al(r))},value:o,children:_l.map(e=>(0,c.jsx)(`option`,{value:e,children:gl[r][e]},e))})]})]})}function bl({locale:e}){return e===`pt-BR`?(0,c.jsxs)(`svg`,{"aria-hidden":`true`,className:`operations-locale-flag`,viewBox:`0 0 24 24`,children:[(0,c.jsx)(`rect`,{fill:`#18864b`,height:`24`,rx:`5`,width:`24`}),(0,c.jsx)(`path`,{d:`m12 3.8 8.2 8.2L12 20.2 3.8 12 12 3.8Z`,fill:`#f6d64a`}),(0,c.jsx)(`circle`,{cx:`12`,cy:`12`,fill:`#1b4f9c`,r:`4.2`}),(0,c.jsx)(`path`,{d:`M8.8 11.2c1.9-1 4.5-1 6.4 0`,fill:`none`,stroke:`#fff`,strokeWidth:`.8`})]}):(0,c.jsxs)(`svg`,{"aria-hidden":`true`,className:`operations-locale-flag`,viewBox:`0 0 24 24`,children:[(0,c.jsx)(`rect`,{fill:`#fff`,height:`24`,rx:`5`,width:`24`}),(0,c.jsx)(`path`,{d:`M0 3h24v3H0Zm0 6h24v3H0Zm0 6h24v3H0Z`,fill:`#bd3d44`}),(0,c.jsx)(`path`,{d:`M0 0h11v11H0Z`,fill:`#192f6b`})]})}function xl(){return(0,c.jsx)(`svg`,{"aria-hidden":`true`,className:`operations-nav-svg`,fill:`none`,viewBox:`0 0 24 24`,children:(0,c.jsx)(`path`,{d:`M20 11a8.1 8.1 0 1 0 2 5.3M20 4v7h-7`})})}function Sl(){return(0,c.jsx)(`svg`,{"aria-hidden":`true`,className:`operations-nav-svg`,fill:`none`,viewBox:`0 0 24 24`,children:(0,c.jsx)(`path`,{d:`M4 6h16M7 12h10m-7 6h4`})})}function Cl(){return(0,c.jsx)(`svg`,{"aria-hidden":`true`,className:`operations-nav-svg operations-locale-chevron`,fill:`none`,viewBox:`0 0 24 24`,children:(0,c.jsx)(`path`,{d:`m6 9 6 6 6-6`})})}function wl(){return(0,c.jsx)(`svg`,{"aria-hidden":`true`,className:`operations-reset-icon`,fill:`none`,viewBox:`0 0 24 24`,children:(0,c.jsx)(`path`,{d:`M3 12a9 9 0 1 0 3-6.7M3 4v6h6`})})}function Tl(){return(0,c.jsx)(`svg`,{"aria-hidden":`true`,fill:`none`,viewBox:`0 0 20 20`,children:(0,c.jsx)(`path`,{d:`m6 6 8 8M14 6l-8 8`})})}var El={"pt-BR":{"work-kanban":`Visão de Quadro (Kanban)`,"work-list":`Visão de Lista`,changes:`Mudanças`,executions:`Execuções`,runs:`Invocações de agentes`,conversations:`Conversas`,decisions:`Decisões`,daily:`Diário`,monthly:`Mensal`,yearly:`Anual`},"en-US":{"work-kanban":`Work (Kanban)`,"work-list":`Work (List)`,changes:`Changes`,executions:`Executions`,runs:`Agent invocations`,conversations:`Conversations`,decisions:`Decisions`,daily:`Daily`,monthly:`Monthly`,yearly:`Annual`}};function Dl({locale:e,onChange:t,view:n}){return(0,c.jsx)(`nav`,{"aria-label":`Entidades do ciclo de trabalho`,children:[`work-kanban`,`work-list`].map(r=>(0,c.jsx)(`button`,{"aria-pressed":n===r,className:n===r?`is-active`:void 0,onClick:()=>t(r),type:`button`,children:El[e][r]},r))})}function Ol({entityPage:e,locale:t,onChange:n}){return(0,c.jsxs)(`div`,{"aria-live":`polite`,className:`operations-page-controls`,children:[e.error?(0,c.jsx)(`span`,{children:e.error}):null,e.loading?(0,c.jsx)(`span`,{children:t===`pt-BR`?`Carregando…`:`Loading…`}):null,(0,c.jsx)(`button`,{disabled:e.loading||e.offset===0,onClick:()=>n?.(Math.max(0,e.offset-100)),type:`button`,children:t===`pt-BR`?`Anterior`:`Previous`}),(0,c.jsx)(`button`,{disabled:e.loading||e.total===null||e.offset+100>=e.total,onClick:()=>n?.(e.offset+100),type:`button`,children:t===`pt-BR`?`Próxima`:`Next`})]})}function kl({detail:e,operations:t,locale:n=`pt-BR`,onClose:r,onOpenTrace:i,summary:a=!1,summaryRunCount:o=null}){let s=jl(n),l=t.runs.filter(t=>t.task_id===e.task.id),u=t.decisions.filter(t=>t.scope_type===`change`&&t.scope_id===e.task.change_id),d=e.task.telemetry?{durationMs:e.task.telemetry.duration_ms,tokens:e.task.telemetry.tokens,costBrl:e.task.telemetry.cost_brl}:Al(l),f=e.task.spec_id!==null&&e.task.spec_id.trim()!==``,p=e.task.change_id.trim()!==``;return(0,v.createPortal)((0,c.jsx)(`div`,{className:`operations-dialog-backdrop`,children:(0,c.jsxs)(`section`,{"aria-label":s.aria,"aria-modal":`true`,className:`operations-dialog`,role:`dialog`,children:[(0,c.jsxs)(`header`,{children:[(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`small`,{children:e.task.id}),(0,c.jsx)(`h2`,{children:e.task.title}),(0,c.jsx)(`p`,{children:e.task.objective})]}),(0,c.jsx)(`button`,{"aria-label":s.close,onClick:r,type:`button`,children:`×`})]}),(0,c.jsxs)(`div`,{className:`operations-dialog-scroll`,children:[(0,c.jsxs)(`dl`,{className:`operations-detail-grid`,children:[(0,c.jsx)(Ml,{label:s.status,value:Ec(e.task.status,n)}),(0,c.jsx)(Ml,{label:s.risk,value:Dc(e.task.risk,n)}),!a||f?(0,c.jsx)(Ml,{label:`SPEC`,value:e.task.spec_id??`Task-first`}):null,!a||p?(0,c.jsx)(Ml,{label:`Change`,value:e.task.change_id}):null,!a||o!==null?(0,c.jsx)(Ml,{label:`Runs`,value:String(a?o:l.length)}):null,(0,c.jsx)(Ml,{label:s.duration,value:te(d.durationMs,n)}),(0,c.jsx)(Ml,{label:`Tokens`,value:d.tokens===null?n===`pt-BR`?`Indisponível`:`Unavailable`:E(d.tokens,n)}),(0,c.jsx)(Ml,{label:n===`pt-BR`?`Custo`:`Cost`,value:d.costBrl===null?n===`pt-BR`?`Indisponível`:`Unavailable`:new Intl.NumberFormat(n,{style:`currency`,currency:`BRL`}).format(d.costBrl)}),(0,c.jsx)(Ml,{label:s.updated,value:k(e.task.updated_at,n)})]}),!a||e.task.acceptance_ids.length>0?(0,c.jsxs)(`section`,{children:[(0,c.jsx)(`h3`,{children:s.acceptanceCriteria}),(0,c.jsx)(`div`,{className:`operations-tags`,children:e.task.acceptance_ids.map(e=>(0,c.jsx)(`span`,{children:e},e))})]}):null,a?null:(0,c.jsxs)(`section`,{children:[(0,c.jsx)(`h3`,{children:s.decisions}),u.length===0?(0,c.jsx)(`p`,{children:s.noDecisions}):u.map(e=>(0,c.jsxs)(`p`,{children:[(0,c.jsxs)(`strong`,{children:[e.origin,`:`]}),` `,e.title]},e.id))]}),!a&&e.body?(0,c.jsxs)(`section`,{children:[(0,c.jsx)(`h3`,{children:s.description}),(0,c.jsx)(`pre`,{children:e.body})]}):null]}),(0,c.jsxs)(`footer`,{children:[!a&&e.artifact_path?(0,c.jsx)(`span`,{children:e.artifact_path}):null,(0,c.jsx)(`button`,{onClick:()=>i(e.task.id),type:`button`,children:s.openTraceability})]})]})}),document.body)}function Al(e){let t=e.filter(e=>e.phase===`execution`&&e.parent_run_id==null);return{durationMs:t.length===0||t.some(e=>j(e)===null)?null:t.reduce((e,t)=>e+(j(t)??0),0),tokens:e.length===0||e.some(e=>e.usage.total.tokens.total===null)?null:e.reduce((e,t)=>e+(t.usage.total.tokens.total??0),0),costBrl:e.length===0||e.some(e=>e.usage.total.cost.brl===null)?null:e.reduce((e,t)=>e+(t.usage.total.cost.brl??0),0)}}function jl(e){return e===`pt-BR`?{aria:`Detalhes da task`,close:`Fechar`,status:`Status`,risk:`Risco`,duration:`Duração`,updated:`Atualizada`,acceptanceCriteria:`Critérios de aceite`,decisions:`Decisões`,noDecisions:`Nenhuma decisão registrada.`,description:`Descrição`,openTraceability:`Abrir rastreabilidade`}:{aria:`Task details`,close:`Close`,status:`Status`,risk:`Risk`,duration:`Duration`,updated:`Updated`,acceptanceCriteria:`Acceptance criteria`,decisions:`Decisions`,noDecisions:`No decisions recorded.`,description:`Description`,openTraceability:`Open traceability`}}function Ml({label:e,value:t}){return(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`dt`,{children:e}),(0,c.jsx)(`dd`,{children:t})]})}function Nl({allPrds:e,allSpecs:t,allTasks:n,boardTotals:r,boardKindTotals:i,boardStates:o,changes:s,locale:l,onOpenDocument:u,onOpenTask:d,onPriorityChange:f,onLoadMore:p,onTypeChange:m,prds:h,runs:g,specs:_,tasks:v}){let y=Mc(),[b,x]=(0,a.useState)(`all`),[S,C]=(0,a.useState)(null),[w,T]=(0,a.useState)(null),[E,D]=(0,a.useState)(null),[O,k]=(0,a.useState)(``),[ee,A]=(0,a.useState)(null),[te,j]=(0,a.useState)(null),ne=(0,a.useMemo)(()=>Pc([],v),[v]),re=(0,a.useMemo)(()=>Ul([...e.map(e=>({kind:`prd`,row:e})),...t.map(e=>({kind:`spec`,row:e})),...n.map(e=>({kind:`task`,row:e}))],te),[e,t,n,te]),M=(0,a.useMemo)(()=>re.filter(e=>zc(e,b)),[re,b]),N=(0,a.useMemo)(()=>new Map([...h,..._].map(e=>[e.id,Bc(e,t,n)])),[t,n,h,_]),ie=S===null?[]:M.filter(e=>Hl(e,n)===S),P=e=>{C(null),e.kind===`task`?D(e.row):T(e.row)};return(0,c.jsxs)(`section`,{className:`operations-unified-work`,children:[(0,c.jsx)(Fl,{locale:l,onChange:e=>{x(e),m?.(e)},value:b}),(0,c.jsx)(`section`,{"aria-label":l===`pt-BR`?`Kanban de trabalho`:`Work Kanban`,className:`operations-board operations-work-board`,children:Ic.map(e=>{let t=M.filter(t=>Hl(t,n)===e);return(0,c.jsx)(Il,{changes:s,globalItems:re,items:t,locale:l,nowMs:y,onOpenColumn:()=>{k(``),C(e)},onLoadMore:p===void 0?void 0:()=>p(e),onOpenItem:P,onPriorityChange:async e=>{let t=te;j(e);try{await f(e)}catch{j(t)}},onDragEnd:()=>A(null),onDragStart:A,draggedId:ee,progressByMacro:N,stage:e,totalItems:b===`all`?i?.[e]?.all??r?.[e]??t.length:b===`task`||b===`standalone-task`||b===`prd`||b===`spec`?i?.[e]?.[b]??t.length:t.length,state:o?.[e],totalsByTask:ne},e)})}),S?(0,c.jsx)(Vl,{items:ie,locale:l,onClose:()=>C(null),onOpenItem:P,onQueryChange:k,query:O,stage:S}):null,w?(0,c.jsx)(Wc,{label:w.kind===`prd`?`PRD`:`SPEC`,locale:l,onClose:()=>T(null),onOpenDocument:u,onOpenTrace:e=>{T(null),d(e)},row:w,runs:g,specs:t,tasks:n}):null,E?(0,c.jsx)(kl,{detail:{task:E,body:``,artifact_path:E.artifact_path},locale:l,onClose:()=>D(null),onOpenTrace:e=>{D(null),d(e)},operations:{decisions:[],runs:g},summary:!0,summaryRunCount:Pl(E)}):null]})}function Pl(e){let t=e.run_count;return typeof t==`number`&&Number.isInteger(t)&&t>=0?t:null}function Fl({locale:e,onChange:t,value:n}){let r=e===`pt-BR`?{task:`Tarefas`,all:`Tudo`,prd:`PRDs`,spec:`SPECs`,"standalone-task":`Tarefa Avulsa`}:{task:`Tasks`,all:`All`,prd:`PRDs`,spec:`SPECs`,"standalone-task":`Standalone Tasks`};return(0,c.jsx)(`nav`,{"aria-label":e===`pt-BR`?`Filtrar tipo de trabalho`:`Filter work type`,className:`operations-work-type-filters`,children:[`all`,`task`,`standalone-task`,`prd`,`spec`].map(e=>(0,c.jsx)(`button`,{className:n===e?`is-active`:void 0,onClick:()=>t(e),type:`button`,children:r[e]},e))})}function Il({changes:e,globalItems:t,items:n,totalItems:r,state:i,locale:a,nowMs:o,onOpenColumn:s,onLoadMore:l,onOpenItem:u,onPriorityChange:d,onDragEnd:f,onDragStart:p,draggedId:m,progressByMacro:h,stage:g,totalsByTask:_}){let{hasMore:v,sentinelRef:y,visibleCount:b}=Nc(n.length,r,l);return(0,c.jsxs)(`article`,{className:`operations-column is-${g}`,children:[(0,c.jsxs)(`header`,{children:[(0,c.jsx)(`button`,{className:`operations-column-trigger`,onClick:s,type:`button`,children:Uc(g,a)}),(0,c.jsx)(`button`,{"aria-label":`${r} — ${Uc(g,a)}`,className:`operations-column-count`,onClick:s,type:`button`,children:r})]}),(0,c.jsxs)(`div`,{className:`operations-column-body`,children:[n.slice(0,b).map((r,i)=>(0,c.jsx)(Ll,{changes:e,item:r,locale:a,nowMs:o,onOpen:()=>u(r),onMove:e=>{let r=i+e;if(r<0||r>=n.length)return;let a=[...n];[a[i],a[r]]=[a[r],a[i]],d(zl(t,n,a))},onDrop:()=>{let e=n.findIndex(e=>e.row.id===m);if(e<0||e===i)return;let r=[...n],[a]=r.splice(e,1);a!==void 0&&(r.splice(i,0,a),d(zl(t,n,r)))},onDragEnd:f,onDragStart:()=>p(r.row.id),order:i+1,progress:h.get(r.row.id),stage:g,totalsByTask:_},r.row.id)),n.length===0&&!i?.loading?(0,c.jsx)(`p`,{className:`operations-empty`,children:a===`pt-BR`?`Sem itens`:`No items`}):null,v?(0,c.jsx)(`div`,{"aria-live":`polite`,className:`operations-infinite-sentinel`,ref:y,role:i?.error?`alert`:`status`,children:i?.error?(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`span`,{children:i.error}),(0,c.jsx)(`button`,{onClick:l,type:`button`,children:`Tentar novamente`})]}):i?.loading?`Carregando mais…`:`${b} de ${r} · carregando mais…`}):null]})]})}function Ll({changes:e,item:t,locale:n,nowMs:r,onOpen:i,onMove:a,onDrop:o,onDragEnd:s,onDragStart:l,order:u,progress:d,stage:f,totalsByTask:p}){let m=fc(t.row.created_at,Kl(f),n,r),h=t.kind===`task`?t.row:null,g=t.kind===`task`?null:t.row,_=h?kc(h,e):t.kind,v=_===`task`?`Tarefa Avulsa`:t.kind.toUpperCase(),y=h?p.get(h.id):null,b=g?[g.duration_ms,g.usage.total.tokens.total,g.usage.total.cost.brl]:[y?.durationMs??null,y?.tokens??null,y?.costBrl??null];return(0,c.jsxs)(`article`,{className:`operations-task-card operations-work-card is-kind-${_}`,draggable:f===`ready`,onDragEnd:f===`ready`?s:void 0,onDragOver:f===`ready`?e=>e.preventDefault():void 0,onDragStart:f===`ready`?l:void 0,onDrop:f===`ready`?e=>{e.preventDefault(),o()}:void 0,children:[(0,c.jsxs)(`button`,{"aria-label":Rl(n,t.row.title),className:`operations-work-card-open`,onClick:i,type:`button`,children:[f===`ready`?(0,c.jsx)(`span`,{className:`operations-work-card-first-line`,children:(0,c.jsxs)(`span`,{className:`operations-work-order`,children:[`#`,u]})}):null,(0,c.jsx)(`span`,{className:`operations-work-kind is-${t.kind}`,children:v}),u===1&&f===`ready`?(0,c.jsx)(`span`,{className:`operations-work-next`,children:`Próximo`}):null,f===`ready`?null:(0,c.jsx)(`span`,{className:`operations-work-status is-${f}`,children:ql(f,n)}),h?(0,c.jsx)(`span`,{className:`operations-risk is-${h.risk}`,children:Dc(h.risk,n)}):null,(0,c.jsx)(`strong`,{title:t.row.title,children:t.row.title})]}),f===`ready`?(0,c.jsxs)(`div`,{className:`operations-work-reorder`,children:[(0,c.jsx)(`button`,{"aria-label":n===`pt-BR`?`Mover acima`:`Move up`,onClick:()=>a(-1),type:`button`,children:`↑`}),(0,c.jsx)(`button`,{"aria-label":n===`pt-BR`?`Mover abaixo`:`Move down`,onClick:()=>a(1),type:`button`,children:`↓`})]}):null,(0,c.jsx)(`small`,{title:t.row.id,children:t.row.id}),t.row.created_at?(0,c.jsx)(`small`,{className:`operations-card-created`,children:hc(t.row.created_at,n)}):null,m?(0,c.jsx)(`span`,{className:`operations-elapsed-badge${m.alert?` is-alert`:``}`,children:m.label}):null,g?(0,c.jsx)(`span`,{className:`operations-work-card-counts`,children:Vc(g.kind,d??{completedSpecs:0,totalSpecs:0,completedTasks:0,totalTasks:0})}):null,(0,c.jsx)(`dl`,{className:`operations-task-usage operations-macro-usage`,children:[[n===`pt-BR`?`Tempo`:`Time`,b[0]==null?`—`:_c(b[0])],[`Tokens`,b[1]==null?`—`:E(b[1])],[n===`pt-BR`?`Custo`:`Cost`,b[2]==null?`—`:O(b[2],`BRL`)]].map(([e,t])=>(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`dt`,{children:e}),(0,c.jsx)(`dd`,{children:t})]},e))})]})}function Rl(e,t){return e===`pt-BR`?`Abrir ${t}`:`Open ${t}`}function zl(e,t,n){let r=new Set(t.map(e=>e.row.id)),i=n.map(e=>e.row.id),a=0;return e.map(e=>r.has(e.row.id)?i[a++]??e.row.id:e.row.id)}function Bl(e,t){let n=t.trim().toLocaleLowerCase();return n?e.filter(e=>[e.row.id,e.row.title,e.kind].some(e=>e.toLocaleLowerCase().includes(n))):[...e]}function Vl({items:e,locale:t,onClose:n,onOpenItem:r,onQueryChange:i,query:a,stage:o}){let s=Bl(e,a);return(0,v.createPortal)((0,c.jsx)(`dialog`,{className:`operations-status-dialog-backdrop`,onMouseDown:e=>e.currentTarget===e.target&&n(),open:!0,children:(0,c.jsxs)(`section`,{"aria-label":Uc(o,t),"aria-modal":`true`,className:`operations-status-dialog`,role:`dialog`,children:[(0,c.jsxs)(`header`,{children:[(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`span`,{children:t===`pt-BR`?`Coluna de trabalho`:`Work column`}),(0,c.jsx)(`h2`,{children:Uc(o,t)}),(0,c.jsxs)(`p`,{children:[e.length,` itens`]})]}),(0,c.jsx)(`button`,{"aria-label":t===`pt-BR`?`Fechar`:`Close`,onClick:n,type:`button`,children:`×`})]}),(0,c.jsxs)(`label`,{className:`operations-status-dialog-search`,children:[(0,c.jsx)(`span`,{children:t===`pt-BR`?`Buscar itens`:`Search items`}),(0,c.jsx)(`input`,{autoFocus:!0,onChange:e=>i(e.target.value),placeholder:t===`pt-BR`?`Título, ID ou tipo`:`Title, ID, or type`,type:`search`,value:a})]}),(0,c.jsxs)(`div`,{className:`operations-status-task-list`,children:[s.map(e=>(0,c.jsxs)(`button`,{onClick:()=>r(e),type:`button`,children:[(0,c.jsxs)(`span`,{className:`operations-status-task-main`,children:[(0,c.jsx)(`strong`,{children:e.row.title}),(0,c.jsx)(`small`,{children:e.row.id})]}),(0,c.jsx)(`span`,{className:`operations-work-kind is-${e.kind}`,children:e.kind===`task`?`TASK`:e.kind.toUpperCase()}),(0,c.jsxs)(`span`,{className:`operations-status-task-action`,children:[t===`pt-BR`?`Ver detalhes`:`View details`,` →`]})]},`${e.kind}:${e.row.id}`)),s.length===0?(0,c.jsx)(`p`,{className:`operations-empty`,children:t===`pt-BR`?`Nenhum item encontrado nesta coluna.`:`No items found in this column.`}):null]})]})}),document.body)}function Hl(e,t){return e.kind===`task`?Lc(e.row):Rc(e.row,t)}function Ul(e,t=null){let n=t===null?null:new Map(t.map((e,t)=>[e,t]));return e.sort((e,t)=>Wl(n?.get(e.row.id)??e.row.manual_order,n?.get(t.row.id)??t.row.manual_order)||Gl(e).localeCompare(Gl(t))||e.row.id.localeCompare(t.row.id))}function Wl(e,t){return e!=null&&t!=null?e-t:e==null?t==null?0:1:-1}function Gl(e){return e.kind===`task`?e.row.updated_at:e.row.updated_at??e.row.created_at??``}function Kl(e){return e===`definition`?`draft`:e===`planning`||e===`ready`?`planned`:e===`blocked`?`blocked`:e}function ql(e,t){return{"pt-BR":{definition:`Definição`,planning:`Planejamento`,ready:`Pronto para executar`,executing:`Executando`,verifying:`Em verificação`,completed:`Concluído`,blocked:`Bloqueado`,cancelled:`Cancelado`,failed:`Falhado`},"en-US":{definition:`Definition`,planning:`Planning`,ready:`Ready to execute`,executing:`Running`,verifying:`Verifying`,completed:`Completed`,blocked:`Blocked`,cancelled:`Cancelled`,failed:`Failed`}}[t][e]}function Jl(e,t=`—`){return typeof e==`string`&&e.length>0?e:t}function Yl(e){return typeof e==`number`&&Number.isFinite(e)?e:null}function Xl(e,t){let n=Jl(e,``);return n===`task`||n===`standalone-task`||n===`prd`||n===`spec`?(t===`pt-BR`?{task:`Tarefas`,"standalone-task":`Tarefa Avulsa`,prd:`PRD`,spec:`SPEC`}:{task:`Tasks`,"standalone-task":`Standalone Task`,prd:`PRD`,spec:`SPEC`})[n]:Jl(e)}function Zl({loading:e,locale:t,onPageChange:n,onTypeChange:r,page:i}){return(0,c.jsxs)(`section`,{"aria-busy":e||void 0,className:`operations-unified-work operations-work-list`,children:[(0,c.jsx)(Fl,{locale:t,onChange:r,value:i.typeFilter}),(0,c.jsx)(`div`,{className:`operations-work-list-table`,children:(0,c.jsx)(y,{columns:[{key:`item`,label:`Item`,render:e=>(0,c.jsxs)(`span`,{className:`operations-work-list-identity`,children:[(0,c.jsx)(`strong`,{children:Jl(e.title,Jl(e.id))}),(0,c.jsx)(`small`,{children:Jl(e.id)})]}),sortValue:e=>Jl(e.title,Jl(e.id))},{key:`status`,label:`Status`,render:e=>Jl(e.status),sortValue:e=>Jl(e.status)},{key:`type`,label:t===`pt-BR`?`Tipo`:`Type`,render:e=>Xl(e.kind??e.entity_kind,t),sortValue:e=>Jl(e.kind??e.entity_kind)},{key:`risk`,label:t===`pt-BR`?`Risco`:`Risk`,render:e=>Jl(e.risk),sortValue:e=>Jl(e.risk)},{key:`developers`,label:t===`pt-BR`?`Desenvolvedor`:`Developer`,render:e=>Jo(e.developers),sortValue:e=>Jo(e.developers)},{key:`time`,label:t===`pt-BR`?`Tempo`:`Time`,render:e=>{let t=Yl(e.total_duration);return t===null?`—`:_c(t)},sortValue:e=>Yl(e.total_duration),align:`right`},{key:`tokens`,label:`Tokens`,render:e=>{let t=Yl(e.total_tokens);return t===null?`—`:E(t)},sortValue:e=>Yl(e.total_tokens),align:`right`},{key:`cost`,label:t===`pt-BR`?`Custo`:`Cost`,render:e=>{let t=Yl(e.total_cost_brl);return t===null?`—`:O(t,`BRL`)},sortValue:e=>Yl(e.total_cost_brl),align:`right`}],defaultSort:{key:`item`,direction:`asc`},emptyMessage:e?t===`pt-BR`?`Carregando itens…`:`Loading items…`:t===`pt-BR`?`Nenhum item de trabalho encontrado.`:`No work items found.`,locale:t,rowKey:e=>Jl(e.id),rows:i.rows,scrollLabel:t===`pt-BR`?`Lista paginada de itens de trabalho.`:`Paged work item list.`,sortable:!0})}),(0,c.jsxs)(`nav`,{"aria-label":t===`pt-BR`?`Paginação da lista de trabalho`:`Work list pagination`,className:`ui-table-pagination`,children:[i.error?(0,c.jsx)(`span`,{role:`alert`,children:i.error}):null,e?(0,c.jsx)(`span`,{role:`status`,children:t===`pt-BR`?`Atualizando…`:`Updating…`}):null,(0,c.jsx)(`button`,{disabled:e||i.offset===0,onClick:()=>n(Math.max(0,i.offset-i.limit)),type:`button`,children:t===`pt-BR`?`Anterior`:`Previous`}),(0,c.jsx)(`output`,{"aria-live":`polite`,children:i.total===null?`…`:`${i.offset+(i.rows.length===0?0:1)}–${Math.min(i.offset+i.limit,i.total)} ${t===`pt-BR`?`de`:`of`} ${i.total}`}),(0,c.jsx)(`button`,{disabled:e||!i.hasMore,onClick:()=>n(i.offset+i.limit),type:`button`,children:t===`pt-BR`?`Próxima`:`Next`})]})]})}function Ql(e){let t=new Map;for(let n of e)t.has(n.id)||t.set(n.id,n);return[...t.values()].filter(e=>(e.phase===void 0||e.phase===`execution`)&&(e.parent_run_id===void 0||e.parent_run_id===null))}function $l(e){let t=new Map;for(let n of e)t.has(n.id)||t.set(n.id,n);return[...t.values()]}function eu(e){return e!==null&&e>=0?e:null}function tu(e){return eu(e.source_duration_ms??null)}function nu(e){let t=e.filter(e=>e!==null);return t.length===0?null:t.reduce((e,t)=>e+t,0)}function ru(e){let t=Ql(e);return{runs:t,durationMs:nu(t.map(tu)),tokens:nu(t.map(e=>e.usage.total.tokens.total)),costBrl:nu(t.map(e=>e.usage.total.cost.brl))}}function iu(e){let t=$l(e);return{runs:t,durationMs:nu(t.map(tu)),tokens:nu(t.map(e=>e.usage.total.tokens.total)),costBrl:nu(t.map(e=>e.usage.total.cost.brl))}}function au(e){let t=iu(e);return{runs:t.runs,tokens:t.tokens,costBrl:t.costBrl}}function ou(e,t,n,r=!1,i){let a=new Map,o=new Map,s=new Map,c=lu(e.runs,t,r,i),l=new Set((e.evidences??[]).map(e=>e.id)),u=e=>{let t=a.get(e);if(t!==void 0)return t;let n={key:e,prds:0,specs:0,tasks:0,tasksCreated:0,tasksActive:0,taskDaysActive:0,runs:0,tests:0,evidences:0,durationMs:null,tokens:null,costBrl:null};return a.set(e,n),o.set(e,new Set),s.set(e,new Set),n},d=e=>{let n=_u(e,t);return n===null?null:u(n)};for(let t of e.prds){let e=d(t.created_at);e!==null&&(e.prds+=1)}for(let t of e.specs){let e=d(t.created_at);e!==null&&(e.specs+=1)}for(let t of e.tasks){let n=d(t.created_at);if(n===null)continue;n.tasks+=1,n.tasksCreated+=1,e.validations===void 0&&(n.tests+=t.test_count??0);let r=o.get(n.key);for(let e of t.result?.evidence_ids??[])l.has(e)||r?.add(e)}for(let t of e.evidences??[]){let e=d(t.observed_at);e!==null&&o.get(e.key)?.add(t.id)}let f=new Map;for(let t of e.validations??[]){let e=d(t.executed_at);if(e===null)continue;let n=f.get(e.key)??new Set;n.add(t.id),f.set(e.key,n)}for(let t of $l(e.runs)){let e=d(t.started_at);e!==null&&(e.runs+=1,t.task_id!==null&&t.task_id!==void 0&&s.get(e.key)?.add(t.task_id),e.tokens=mu(e.tokens,t.usage.total.tokens.total),e.costBrl=mu(e.costBrl,n===void 0?t.usage.total.cost.brl:n(t.id)))}for(let[e,t]of o){let n=a.get(e);n!==void 0&&(n.evidences=t.size)}for(let[e,t]of f){let n=a.get(e);n!==void 0&&(n.tests=t.size)}for(let[e,t]of s){let n=a.get(e);n!==void 0&&(n.tasksActive=t.size,n.taskDaysActive=t.size)}for(let[e,t]of c)u(e).durationMs=t;return[...a.values()].sort((e,t)=>t.key.localeCompare(e.key))}function su(e,t){let n=new Map;for(let[r,i]of Object.entries(e)){let e=_u(`${r}T12:00:00.000Z`,t);if(e===null)continue;let a=n.get(e)??{key:e,prds:0,specs:0,tasks:0,tasksCreated:0,tasksActive:0,taskDaysActive:0,runs:0,tests:0,evidences:0,durationMs:null,tokens:null,costBrl:null};a.prds+=i.prds,a.specs+=i.specs,a.tasks+=i.tasks,a.tasksCreated+=i.tasks,a.tasksActive=(a.tasksActive??0)+i.tasks,a.taskDaysActive+=i.tasks,a.runs+=i.runs,a.tests+=i.validations,a.evidences+=i.evidences,a.tokens=mu(a.tokens,cu(i.runs,i.usage.total_tokens)),a.costBrl=mu(a.costBrl,cu(i.runs,i.usage.cost)),a.durationMs=mu(a.durationMs,cu(i.runs,i.duration)),n.set(e,a)}return[...n.values()].sort((e,t)=>t.key.localeCompare(e.key))}function cu(e,t){return t===void 0||t.unknown>=e?null:t.known_sum}function lu(e,t,n,r){let i=new Map;for(let r of Ql(e)){if(n&&!el(r.started_at))continue;let e=tu(r);if(e===null)continue;let a=r.source_started_at??r.duration_started_at??r.started_at,o=Date.parse(a);if(!Number.isFinite(o))continue;let s=o+e,c=o;do{let e=_u(new Date(c).toISOString(),t);if(e===null)break;let n=Math.min(s,uu(e,t));if(i.set(e,(i.get(e)??0)+n-c),n>=s)break;c=n}while(c<=s)}if(n)for(let[e,n]of Object.entries(Qc)){let a=Date.parse(`${e}T12:00:00.000Z`);if(r?.from!==null&&r?.from!==void 0&&a<Date.parse(r.from)||r?.to!==null&&r?.to!==void 0&&a>Date.parse(r.to))continue;let o=_u(`${e}T12:00:00.000Z`,t);o!==null&&i.set(o,(i.get(o)??0)+n)}return i}function uu(e,t){let[n,r=1,i=1]=e.split(`-`).map(Number),a=new Date(Date.UTC(n,r-1,i));return t===`day`?a.setUTCDate(a.getUTCDate()+1):t===`month`?a.setUTCMonth(a.getUTCMonth()+1,1):a.setUTCFullYear(a.getUTCFullYear()+1,0,1),du(a.getUTCFullYear(),a.getUTCMonth()+1,a.getUTCDate())}function du(e,t,n){let r=Date.UTC(e,t-1,n),i=new Intl.DateTimeFormat(`en-US`,{timeZone:`America/Sao_Paulo`,timeZoneName:`longOffset`}).formatToParts(new Date(r)).find(e=>e.type===`timeZoneName`)?.value??`GMT`,a=/^GMT([+-])(\d{2}):(\d{2})$/.exec(i);return a===null?r:r-(Number(a[2])*60+Number(a[3]))*6e4*(a[1]===`+`?1:-1)}function fu(e){let t={prds:0,specs:0,tasks:0,tasksCreated:0,tasksActive:null,taskDaysActive:0,runs:0,tests:0,evidences:0,durationMs:null,tokens:null,costBrl:null};for(let n of e)t.prds+=n.prds,t.specs+=n.specs,t.tasks+=n.tasks,t.tasksCreated+=n.tasksCreated,t.taskDaysActive+=n.taskDaysActive,t.runs+=n.runs,t.tests+=n.tests,t.evidences+=n.evidences,t.durationMs=mu(t.durationMs,n.durationMs),t.tokens=mu(t.tokens,n.tokens),t.costBrl=mu(t.costBrl,n.costBrl);return t}function pu(e){let t=e.length;return{tasks:t===0?null:e.reduce((e,t)=>e+t.tasks,0)/t,specs:t===0?null:e.reduce((e,t)=>e+t.specs,0)/t,prds:t===0?null:e.reduce((e,t)=>e+t.prds,0)/t,durationMs:gu(e.map(e=>e.durationMs),t),tokens:hu(e.map(e=>e.tokens)),costBrl:hu(e.map(e=>e.costBrl))}}function mu(e,t){return t===null?e:(e??0)+t}function hu(e){let t=e.filter(e=>e!==null);return t.length===0?null:t.reduce((e,t)=>e+t,0)/t.length}function gu(e,t){if(t===0)return null;let n=e.filter(e=>e!==null);return n.length===0?null:n.reduce((e,t)=>e+t,0)/t}function _u(e,t){return tl(e,t)}function vu({currency:e,data:t,granularity:n,locale:r,resolveRunCost:i,includeLegacyEffort:a=!1,legacyRange:o,manifestDailyPeriods:s,factualCostPeriods:l}){let u=yu(s===void 0||e===`USD`?ou(t,n,i,a,o):su(s,n),e,l?.[n]),d=fu(u),f={...d,durationMs:xu(d.durationMs,d.tokens)},p=pu(u),m=r===`pt-BR`?`Total geral`:`Grand total`,h=E(f.tokens);return(0,c.jsxs)(`div`,{className:`operations-period-summary`,children:[(0,c.jsx)(A,{ariaLabel:Su(n,r),metrics:[{label:Cu(r===`pt-BR`?`Tarefas criadas`:`Tasks created`,n,r),value:D(p.tasks,r,1)},{label:Cu(`SPECs`,n,r),value:D(p.specs,r,1)},{label:Cu(`PRDs`,n,r),value:D(p.prds,r,1)},{label:Cu(r===`pt-BR`?`Tempo`:`Time`,n,r),value:T(p.durationMs,r)},{label:Cu(`Tokens`,n,r),value:E(p.tokens,r)},{label:Cu(r===`pt-BR`?`Custo`:`Cost`,n,r),value:O(p.costBrl,e,r)}]}),(0,c.jsx)(y,{columns:[{key:`period`,label:Tu(n,r),render:e=>(0,c.jsx)(`strong`,{children:Eu(e.key,n,r)}),footer:m,sortValue:e=>e.key},wu(`prds`,`PRDs`,f.prds),wu(`specs`,`SPECs`,f.specs),wu(`tasks`,r===`pt-BR`?`Tarefas criadas`:`Tasks created`,f.tasks),wu(`runs`,`Runs`,f.runs),wu(`tests`,r===`pt-BR`?`Testes`:`Tests`,f.tests),wu(`evidences`,r===`pt-BR`?`Evidências`:`Evidence`,f.evidences),{key:`duration`,label:r===`pt-BR`?`Tempo`:`Time`,align:`right`,render:e=>w(e.durationMs),footer:(0,c.jsx)(`output`,{"aria-label":`${m} — ${r===`pt-BR`?`Tempo`:`Time`}: ${w(f.durationMs)}`,children:w(f.durationMs)}),sortValue:e=>e.durationMs},{key:`tokens`,label:`Tokens`,align:`right`,render:e=>E(e.tokens),footer:(0,c.jsx)(`output`,{"aria-label":`${m} — Tokens: ${h}`,children:h}),sortValue:e=>e.tokens},{key:`cost`,label:r===`pt-BR`?`Custos`:`Costs`,align:`right`,render:t=>O(t.costBrl,e,r),footer:(0,c.jsx)(`output`,{"aria-label":`${m} — ${r===`pt-BR`?`Custos`:`Costs`}: ${O(f.costBrl,e,r)}`,children:O(f.costBrl,e,r)}),sortValue:e=>e.costBrl}],emptyMessage:r===`pt-BR`?`Nenhum dado disponível para o período selecionado.`:`No data available for the selected period.`,defaultSort:{key:`period`,direction:`desc`},locale:r,rowKey:e=>e.key,rows:u,sortable:!0,showColumnInfo:!0})]})}function yu(e,t,n){if(n===void 0)return[...e];let r=new Map(n.map(e=>[e.key,t===`USD`?e.estimated_usd:e.estimated_brl]));return e.map(e=>r.has(e.key)?{...e,costBrl:r.get(e.key)??null}:e)}function bu(e,t){if(t===void 0)return[...e];let n=new Map(t.map(e=>[e.key,e.duration_ms]));return e.map(e=>{if(e.durationMs!==null)return e;let t=n.get(e.key);return t==null?e:{...e,durationMs:t}})}function xu(e,t){return e===null&&t===0?0:e}function Su(e,t){return t===`en-US`?e===`day`?`Daily averages`:e===`month`?`Monthly averages`:`Annual averages`:e===`day`?`Médias por dia`:e===`month`?`Médias por mês`:`Médias por ano`}function Cu(e,t,n){return n===`en-US`?`${e} ${t===`day`?`Daily average`:t===`month`?`Monthly average`:`Annual average`}`:`${e} ${t===`day`?`Médio por dia`:t===`month`?`Médio por mês`:`Médio por ano`}`}function wu(e,t,n){return{key:e,label:t,align:`right`,render:t=>t[e],footer:n,sortValue:t=>t[e]}}function Tu(e,t){return t===`en-US`?e===`day`?`Day`:e===`month`?`Month`:`Year`:e===`day`?`Dia`:e===`month`?`Mês`:`Ano`}function Eu(e,t,n){if(t===`month`||t===`year`)return e;let r=new Date(`${e}T12:00:00`);return new Intl.DateTimeFormat(n,{...t===`day`?{day:`2-digit`}:{},month:t===`day`?`2-digit`:`long`,year:`numeric`}).format(r)}function Du({allSpecs:e,allTasks:t,changes:n,locale:r,onOpenDocument:i,onOpenTask:o,prds:s,runs:l,specs:u,tasks:d,onTypeChange:f}){let[p,m]=(0,a.useState)(`all`),[h,g]=(0,a.useState)(null),_=(0,a.useMemo)(()=>ku({allSpecs:e,allTasks:t,changes:n,items:[...s.map(e=>({kind:`prd`,row:e})),...u.map(e=>({kind:`spec`,row:e})),...d.map(e=>({kind:`task`,row:e}))].filter(e=>zc(e,p)),runs:l}),[e,t,n,s,l,u,d,p]);return(0,c.jsxs)(`section`,{className:`operations-unified-work operations-work-list`,children:[(0,c.jsx)(Fl,{locale:r,onChange:e=>{m(e),f?.(e)},value:p}),(0,c.jsx)(`div`,{className:`operations-work-list-table`,children:(0,c.jsx)(y,{columns:[{key:`item`,label:`Item`,render:({item:e})=>(0,c.jsxs)(`span`,{className:`operations-work-list-identity`,children:[(0,c.jsx)(`strong`,{children:e.row.title}),(0,c.jsx)(`small`,{children:e.row.id})]}),sortValue:({item:e})=>e.row.title},{key:`status`,label:`Status`,render:({stage:e})=>(0,c.jsx)(`span`,{className:`operations-status is-${e}`,children:Uc(e,r)}),sortValue:({stage:e})=>e},{key:`type`,label:r===`pt-BR`?`Tipo`:`Type`,render:({item:e})=>Mu(e.kind,r),sortValue:({item:e})=>e.kind},{key:`risk`,label:r===`pt-BR`?`Risco`:`Risk`,render:({risk:e})=>e?(0,c.jsx)(`span`,{className:`operations-risk is-${e}`,children:Dc(e,r)}):`—`,sortValue:({risk:e})=>e},{key:`developers`,label:r===`pt-BR`?`Desenvolvedor`:`Developer`,render:({item:e})=>Jo(e.row.developers),sortValue:({item:e})=>Jo(e.row.developers)},{key:`progress`,label:r===`pt-BR`?`Progresso`:`Progress`,render:({progress:e})=>e,sortValue:({item:e})=>e.kind===`task`?e.row.progress:e.row.quality.task_completion_rate},{key:`time`,label:r===`pt-BR`?`Tempo`:`Time`,render:({durationMs:e,stage:t})=>Ou(e,t,r),sortValue:({durationMs:e})=>e,align:`right`},{key:`tokens`,label:`Tokens`,render:({tokens:e})=>e===null?`—`:E(e),sortValue:({tokens:e})=>e,align:`right`},{key:`cost`,label:r===`pt-BR`?`Custo`:`Cost`,render:({costBrl:e})=>e===null?`—`:O(e,`BRL`),sortValue:({costBrl:e})=>e,align:`right`}],defaultSort:{key:`item`,direction:`asc`},emptyMessage:r===`pt-BR`?`Nenhum item de trabalho encontrado.`:`No work items found.`,locale:r,onRowClick:({item:e})=>{e.kind===`task`?o(e.row.id):g(e.row)},rowKey:({item:e})=>`${e.kind}:${e.row.id}`,rows:_,scrollLabel:r===`pt-BR`?`Tabela de itens de trabalho com rolagem horizontal para acessar todas as colunas.`:`Work items table with horizontal scrolling to access all columns.`,showColumnInfo:!0,sortable:!0})}),h?(0,c.jsx)(Wc,{label:h.kind===`prd`?`PRD`:`SPEC`,locale:r,onClose:()=>g(null),onOpenDocument:i,onOpenTrace:e=>{g(null),o(e)},row:h,runs:l,specs:e,tasks:t}):null]})}function Ou(e,t,n){return e===null?ne({durationMs:null,provenance:t===`executing`?`in_progress`:`unavailable`},n):_c(e)}function ku({allSpecs:e,allTasks:t,changes:n,items:r,runs:i}){return r.map(n=>{let r=n.kind===`task`?n.row:null,a=n.kind===`task`?null:n.row,o=i.filter(e=>r?e.task_id===r.id:a!==null&&(a.run_ids.includes(e.id)||e.prd_id===a.id||e.spec_id===a.id||e.task_id!==null&&a.task_ids.includes(e.task_id))),s=r===null?null:Nu(r,o),c=a?Bc(a,e,t):null,l=a,u=c;if(r===null){if(l===null||u===null)throw Error(`A non-task work item must include macro progress.`);return{item:n,stage:Rc(l,t),risk:null,progress:Vc(l.kind,u),durationMs:l.duration_ms??(ju(l)?0:null),tokens:l.usage.total.tokens.total??null,costBrl:l.usage.total.cost.brl??null}}return{item:n,stage:Lc(r)??`planning`,risk:r.risk??null,progress:`${Math.round(r.progress)}%`,durationMs:s?.durationMs??(Au(r,o)?0:null),tokens:s?.tokens??null,costBrl:s?.costBrl??null}})}function Au(e,t){return t.length===0&&e.execution_started===!1&&(e.execution_count===0||e.execution_count===void 0)&&(e.status===`planned`||e.status===`cancelled`)}function ju(e){return e.task_count===0&&e.execution_count===0&&e.run_count===0&&e.task_ids.length===0&&e.run_ids.length===0}function Mu(e,t){return e===`task`?t===`pt-BR`?`Tarefa`:`Task`:e.toUpperCase()}function Nu(e,t){return e.telemetry!==null&&e.telemetry!==void 0?{durationMs:e.telemetry.duration_ms,tokens:e.telemetry.tokens,costBrl:e.telemetry.cost_brl}:t.reduce((e,t)=>({durationMs:Pu(e.durationMs,t.phase===`execution`&&t.parent_run_id===null?j(t):null),tokens:Pu(e.tokens,t.usage.total.tokens.total),costBrl:Pu(e.costBrl,t.usage.total.cost.brl)}),{durationMs:null,tokens:null,costBrl:null})}function Pu(e,t){return e===null&&t===null?null:(e??0)+(t??0)}function Fu({boardKindTotals:e,boardStates:t,boardTotals:n,changes:r,conversationExecutions:i,conversationRuns:a,currency:o,data:s,entityPage:l,executions:u,factualCostPeriods:d,includeLegacyEffort:f,locale:p,onBoardTypeChange:m,onEntityPageChange:h,onLoadMoreBoard:g,onWorkListTypeChange:_,onWorkListPageChange:v,onOpenDocument:y,onOpenTask:b,onPriorityChange:x,prds:S,resolveRunCost:C,runs:w,specs:T,summaryPopulation:E,tasks:D,workListPage:O,view:k}){return(0,c.jsxs)(`section`,{className:`operations-content`,children:[k===`work-kanban`?(0,c.jsx)(Nl,{allPrds:s.prds,allSpecs:s.specs,allTasks:s.tasks,boardTotals:n,boardKindTotals:e,boardStates:t,changes:s.changes,locale:p,onOpenDocument:y,onOpenTask:b,onPriorityChange:x,onLoadMore:g,onTypeChange:m,prds:S,runs:s.runs,specs:T,tasks:D}):null,k===`work-list`?O?(0,c.jsx)(Zl,{loading:O.loading,locale:p,onPageChange:e=>v?.(e),onTypeChange:e=>_?.(e),page:O}):(0,c.jsx)(Du,{allSpecs:s.specs,allTasks:s.tasks,changes:s.changes,locale:p,onOpenDocument:y,onOpenTask:b,prds:S,runs:s.runs,specs:T,tasks:D,onTypeChange:_}):null,k===`changes`?(0,c.jsx)(B,{locale:p,rows:r}):null,k===`executions`?(0,c.jsx)(he,{canonical:l?.aggregation!==`page_partial`,locale:p,rows:u}):null,k===`runs`?(0,c.jsx)(ye,{locale:p,rows:w}):null,k===`conversations`?(0,c.jsx)(xe,{canonical:l?.aggregation!==`page_partial`,executions:i,locale:p,rows:a}):null,l&&[`runs`,`executions`,`conversations`,`changes`,`decisions`].includes(k)?(0,c.jsx)(Ol,{entityPage:l,locale:p,onChange:h}):null,k===`decisions`?(0,c.jsx)(Te,{locale:p,rows:s.decisions}):null,k===`daily`||k===`monthly`||k===`yearly`?(0,c.jsx)(vu,{data:E,currency:o,granularity:k===`daily`?`day`:k===`monthly`?`month`:`year`,locale:p,resolveRunCost:C,includeLegacyEffort:f,...d===void 0?{}:{factualCostPeriods:d},legacyRange:s.filters,...s.summary.periods===void 0?{}:{manifestDailyPeriods:s.summary.periods.daily}}):null]})}function Iu({eyebrow:e,label:t,locale:n,onClose:r,onOpenTask:i,onOpenDocument:a,items:o,state:s,kind:l=`task`,onLoadMore:u,page:d}){let f=d?.total??o.length,p=Lu(l,f,n);return(0,c.jsx)(`dialog`,{className:`operations-status-dialog-backdrop`,onMouseDown:e=>{e.currentTarget===e.target&&r()},open:!0,children:(0,c.jsxs)(`section`,{"aria-label":`${t} — ${f} ${p}`,"aria-modal":`true`,className:`operations-status-dialog`,role:`dialog`,children:[(0,c.jsxs)(`header`,{children:[(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`span`,{children:e}),(0,c.jsx)(`h2`,{children:t}),(0,c.jsxs)(`p`,{children:[f,` `,p]})]}),(0,c.jsx)(`button`,{"aria-label":n===`pt-BR`?`Fechar`:`Close`,onClick:r,type:`button`,children:`×`})]}),(0,c.jsxs)(`div`,{className:`operations-status-task-list`,children:[(d?.loading??s?.loading)&&o.length===0?(0,c.jsx)(`p`,{"aria-busy":`true`,"aria-live":`polite`,className:`operations-empty`,role:`status`,children:n===`pt-BR`?`Carregando itens…`:`Loading items…`}):null,d?.error??s?.error?(0,c.jsx)(`p`,{"aria-live":`assertive`,className:`operations-empty`,role:`alert`,children:d?.error??s?.error}):null,o.map(e=>(0,c.jsxs)(`button`,{onClick:()=>`change_id`in e?i(e.id):a(e.kind,e.id),type:`button`,children:[(0,c.jsxs)(`span`,{className:`operations-status-task-main`,children:[(0,c.jsx)(`strong`,{children:e.title}),(0,c.jsx)(`small`,{children:e.id})]}),(0,c.jsx)(`span`,{className:`change_id`in e?`operations-risk is-${e.risk}`:`operations-work-kind is-macro`,children:`change_id`in e?Dc(e.risk,n):e.kind.toUpperCase()}),(0,c.jsxs)(`span`,{className:`operations-status-task-action`,children:[n===`pt-BR`?`Ver detalhes`:`View details`,` →`]})]},e.id)),o.length===0&&!(d?.loading??s?.loading)?(0,c.jsx)(`p`,{className:`operations-empty`,children:n===`pt-BR`?`Nenhum${l===`task`?`a`:``} ${Lu(l,1,n)} neste status.`:`No ${Lu(l,2,n)} in this status.`}):null,u&&o.length<(d?.total??0)?(0,c.jsx)(`button`,{disabled:d?.loading,onClick:()=>u(o.length),type:`button`,children:d?.loading?n===`pt-BR`?`Carregando…`:`Loading…`:n===`pt-BR`?`Carregar mais`:`Load more`}):null]})]})})}function Lu(e,t,n){return e===`prd`?t===1?`PRD`:`PRDs`:e===`spec`?t===1?`SPEC`:`SPECs`:n===`pt-BR`?t===1?`tarefa`:`tarefas`:t===1?`task`:`tasks`}var Ru={definition:`#a78bfa`,planning:`#3f6fbd`,ready:`#38bdf8`,executing:`#fbbf24`,verifying:`#f87171`,completed:`#34d399`,blocked:`#64748b`,cancelled:`#64748b`,failed:`#64748b`},zu={lite:`#60a5fa`,standard:`#fbbf24`,critical:`#f87171`},Bu={empty:`#60a5fa`,structured:`#fbbf24`,rework:`#f87171`};function Vu(e){return e.reduce((e,t)=>t===null?e:(e??0)+t,null)}function Hu(e,t){return t===null||t===0?{durationMs:null,tokens:null,costBrl:null}:{durationMs:e.durationMs===null?null:e.durationMs/t,tokens:e.tokens===null?null:e.tokens/t,costBrl:e.costBrl===null?null:e.costBrl/t}}function Uu(e){let t=null;for(let n of e){if(n.created_at===null)continue;let e=Date.parse(n.created_at);Number.isNaN(e)||(t===null||e>t.timestamp)&&(t={value:n.created_at,timestamp:e})}return t?.value??null}function Wu(e,t,n){let r=new Map(e.map(e=>[e.id,{id:e.id,title:e.title,durationMs:e.telemetry?.duration_ms??null,tokens:e.telemetry?.tokens??null,costBrl:e.telemetry?.cost_brl??null,runCount:e.telemetry===null||e.telemetry===void 0?0:1}]));if(t.length===0)return[...r.values()];for(let e of r.values())e.durationMs=null,e.tokens=null,e.costBrl=null,e.runCount=0;for(let e of Ql(t)){if(e.task_id===null)continue;let t=r.get(e.task_id);if(t===void 0)continue;t.runCount+=1;let n=eu(e.duration_ms);n!==null&&(t.durationMs=(t.durationMs??0)+n)}for(let e of $l(t)){if(e.task_id===null)continue;let t=r.get(e.task_id);if(t===void 0)continue;e.usage.total.tokens.total!==null&&(t.tokens=(t.tokens??0)+e.usage.total.tokens.total);let i=n?n(e.id):e.usage.total.cost.brl;i!==null&&(t.costBrl=(t.costBrl??0)+i)}return[...r.values()]}function Gu(e,t,n){return e.map(e=>{let r=e.lifecycle_duration_coverage??e.duration_coverage;if(r!==void 0){let t=e.observed_lifecycle_duration_ms??e.observed_root_duration_ms??e.duration_ms??null;return{id:e.id,title:e.title,durationMs:t,durationProvenance:e.lifecycle_duration_provenance??(t===null?`unavailable`:`observed`),durationEligible:r.eligible_runs,durationKnown:r.known_runs,tokens:e.usage?.total.tokens.total??null,costBrl:e.usage?.total.cost.brl??null,runCount:e.run_count??e.root_execution_run_ids?.length??0}}if(t.length===0)return{id:e.id,title:e.title,durationMs:e.duration_ms??null,durationProvenance:e.duration_provenance??(e.duration_ms===null?`unavailable`:`observed`),durationEligible:null,durationKnown:null,tokens:e.usage?.total.tokens.total??null,costBrl:e.usage?.total.cost.brl??null,runCount:e.run_count??0};let i=new Set(e.run_ids),a=t=>i.has(t.id)||(e.kind===`spec`?t.spec_id===e.id:t.prd_id===e.id),o=Ql(t).filter(a),s=$l(t).filter(a);return{id:e.id,title:e.title,durationMs:nu(o.map(e=>e.duration_ms)),durationProvenance:o.some(e=>e.duration_ms!==null)?`observed`:`unavailable`,durationEligible:o.length,durationKnown:o.filter(e=>e.duration_ms!==null).length,tokens:nu(s.map(e=>e.usage.total.tokens.total)),costBrl:nu(s.map(e=>n?n(e.id):e.usage.total.cost.brl)),runCount:s.length}})}function Ku(e,t){let n=t===`pt-BR`;return[{key:`empty`,label:n?`Sem tarefas`:`Without tasks`,color:Bu.empty,count:e.filter(e=>e.task_count===0&&e.rework_run_count===0).length},{key:`structured`,label:n?`Com tarefas`:`With tasks`,color:Bu.structured,count:e.filter(e=>e.task_count>0&&e.rework_run_count===0).length},{key:`rework`,label:n?`Com retrabalho`:`With rework`,color:Bu.rework,count:e.filter(e=>e.rework_run_count>0).length}]}function qu(e,t){let n=e.filter(e=>e.durationMs!==null),r=t.filter(e=>e.durationMs!==null),i=n.length===0?null:n.reduce((e,t)=>e+(t.durationMs??0),0),a=r.length===0?null:r.reduce((e,t)=>e+(t.durationMs??0),0);return{durationMs:i,durationShare:i===null||a===null||a===0?0:i/a,runCount:e.reduce((e,t)=>e+t.runCount,0),tokens:nu(e.map(e=>e.tokens)),costBrl:nu(e.map(e=>e.costBrl))}}function Ju(e,t=5){return e.toSorted((e,t)=>{let n=Number(t.durationMs!==null)-Number(e.durationMs!==null);if(n!==0)return n;let r=(t.durationMs??0)-(e.durationMs??0);if(r!==0)return r;let i=t.runCount-e.runCount;return i===0?e.id.localeCompare(t.id):i}).slice(0,Math.max(0,t))}function Yu(e,t,n){return e===`specs`?t?.selected_counts?.specs??n:e===`prds`?t?.selected_counts?.prds??n:t?.task_count??n}function Xu(e){return{durationMs:Vu(e.map(e=>e.durationMs)),tokens:Vu(e.map(e=>e.tokens)),costBrl:Vu(e.map(e=>e.costBrl))}}function Zu(e,t,n){return e===`tasks`?n:t??null}function Qu(e,t,n){return e?t??null:n}function $u({currency:e,factualSnapshotTotal:t,macroCostTotal:n,overviewView:r,resolvedRunTotal:i,operationsBrlTotal:a}){return r!==void 0&&r!==`tasks`?n??null:t??(i===null?e===`BRL`?a:null:i)}function ed(e){return e.summary.overview_metrics}function td(e,t,n,r){if(e===`tasks`){let e=new Set(t.map(e=>e.id));return r.filter(t=>t.task_id!==null&&e.has(t.task_id))}let i=new Set(n.map(e=>e.id)),a=new Set(n.flatMap(e=>e.run_ids));return r.filter(t=>a.has(t.id)||(e===`specs`?t.spec_id!==null&&i.has(t.spec_id):t.prd_id!==null&&i.has(t.prd_id)))}function nd({label:e,value:t,hint:n,featured:r=!1,onSelect:i}){let a=(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`span`,{children:e}),(0,c.jsx)(`strong`,{children:t}),(0,c.jsx)(`small`,{children:n})]});return i===void 0?(0,c.jsx)(`article`,{"aria-label":`${e}: ${t}. ${n}`,className:`operations-kpi${r?` is-featured`:``}`,children:a}):(0,c.jsx)(`button`,{"aria-pressed":r,"aria-label":`${e}: ${t}. ${n}`,className:`operations-kpi is-selectable${r?` is-featured`:``}`,onClick:i,type:`button`,children:a})}function rd(e){let t=e===`pt-BR`;return{overview:t?`Visão geral`:`Overview`,tasks:t?`Tarefas`:`Tasks`,completedTasks:t?`concluídas`:`completed`,completedSpecs:t?`concluídas`:`completed`,completedPrds:t?`concluídos`:`completed`,totalExecutionTime:t?`Tempo total de execução`:`Total execution time`,totalRuns:t?`runs totais`:`total runs`,cost:t?`Custo`:`Cost`,showTerminal:t?`Mostrar canceladas, bloqueadas e falhadas`:`Show cancelled, blocked, and failed`,hideTerminal:t?`Esconder canceladas, bloqueadas e falhadas`:`Hide cancelled, blocked, and failed`,statusHint:t?`Distribuição atual do fluxo`:`Current workflow distribution`,averageTime:t?`Tempo médio`:`Average time`,averageTokens:t?`Tokens médios`:`Average tokens`,averageCost:t?`Custo médio`:`Average cost`,topHint:t?`Maiores durações acumuladas`:`Longest accumulated durations`,accumulatedTime:t?`Tempo acumulado`:`Accumulated time`,associatedRuns:t?`runs associadas`:`associated runs`,concentration:t?`Concentração`:`Concentration`,totalMeasuredTime:t?`do tempo total medido`:`of total measured time`,topFiveCost:t?`Custo do Top 5`:`Top 5 cost`,tokensUnavailable:t?`Tokens indisponíveis`:`Tokens unavailable`}}function id(e){let t=new Set;for(let n of e){if(n.started_at===void 0)continue;let e=new Date(n.started_at);Number.isNaN(e.getTime())||t.add(`${e.getFullYear()}-${e.getMonth()}-${e.getDate()}`)}return t.size}function ad(e,t,n,r){if(t<=0)return`0`;if(e<=0||n<=0)return r===`pt-BR`?`Médias de execução indisponíveis`:`Execution averages unavailable`;let i=_c(e/t,r),a=vc(e/n),o=r===`pt-BR`?`${n} dias`:`${n} ${n===1?`day`:`days`}`;return r===`pt-BR`?`${i} / tarefa (${a} / dia) (${o})`:`${i} / task (${a} / day) (${o})`}function od(e,t){let n=t===`pt-BR`;if(e===`tasks`)return{statusTitle:n?`Status das tarefas`:`Task status`,classificationTitle:n?`Classificação de Tarefa`:`Task classification`,classificationHint:n?`Mix por criticidade`:`Criticality mix`,averageTitle:n?`Média por tarefa`:`Average per task`,averageHint:n?`Runs agregadas`:`Runs aggregated per task`,latestLabel:n?`Última tarefa criada`:`Latest task created`,topTitle:n?`Top 5 tarefas`:`Top 5 tasks`,shortPlural:`tasks`,emptyTop:n?`Nenhuma tarefa com duração registrada.`:`No task has a recorded duration.`};let r=e===`specs`,i=r?`SPEC`:`PRD`,a=r?`SPECs`:`PRDs`;return{statusTitle:n?`Status das ${a}`:`${i} status`,classificationTitle:n?`Classificação de ${i}`:`${i} classification`,classificationHint:n?`Estrutura da entrega`:`Delivery structure`,averageTitle:n?`Média por ${i}`:`Average per ${i}`,averageHint:n?`Runs agregadas por ${i}`:`Runs aggregated per ${i}`,latestLabel:n?`Última ${i} criada`:`Latest ${i} created`,topTitle:`Top 5 ${a}`,shortPlural:a,emptyTop:n?`Nenhuma ${i} com duração registrada.`:`No ${i} has a recorded duration.`}}var sd=(e,t)=>e===null?t===`pt-BR`?`Indisponível`:`Unavailable`:w(e,t);function cd({copy:e,currency:t,locale:n,maxDuration:r,onOpenTask:i,summary:a,text:o,topCost:s,topEntities:l,view:u}){let d=u===`specs`?`SPEC`:`PRD`;return(0,c.jsxs)(`article`,{className:`operations-panel`,children:[(0,c.jsxs)(`header`,{className:`operations-panel-header`,children:[(0,c.jsx)(`div`,{className:`operations-panel-header-title`,children:(0,c.jsx)(`h2`,{children:e.title})}),(0,c.jsx)(`small`,{children:e.hint})]}),l.length===0?(0,c.jsx)(`p`,{className:`operations-empty`,children:e.empty}):(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`div`,{className:`operations-run-bars`,children:l.map((e,t)=>{let a=sd(e.durationMs,n);return(0,c.jsxs)(`button`,{"aria-label":u===`tasks`?`${n===`pt-BR`?`Abrir detalhes da tarefa`:`Open task details for`} ${e.title}: ${a}`:`${d} ${e.title}: ${a}`,className:`operations-run-bar${e.durationMs===null?` is-duration-unavailable`:``}`,disabled:u!==`tasks`,onClick:()=>void i(e.id),title:`${e.title}: ${a}`,type:`button`,children:[(0,c.jsx)(`strong`,{children:a}),(0,c.jsx)(`i`,{style:{height:e.durationMs===null?`0%`:`${Math.max(8,e.durationMs/r*100)}%`}}),(0,c.jsx)(`span`,{children:`#${t+1} ${e.id.slice(-4)}`})]},e.id)})}),(0,c.jsxs)(`div`,{className:`operations-top-task-metrics`,children:[(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`span`,{children:o.accumulatedTime}),(0,c.jsx)(`strong`,{children:sd(a.durationMs,n)}),(0,c.jsx)(`small`,{children:`${a.runCount} ${o.associatedRuns}`})]}),(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`span`,{children:o.concentration}),(0,c.jsx)(`strong`,{children:ee(a.durationShare,n)}),(0,c.jsx)(`small`,{children:o.totalMeasuredTime})]}),(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`span`,{children:o.topFiveCost}),(0,c.jsx)(`strong`,{children:s===null?sd(null,n):O(s,t,n)}),(0,c.jsx)(`small`,{children:a.tokens===null?o.tokensUnavailable:`${E(a.tokens,n)} tokens`})]})]})]})]})}function ld(e,t,n){return new Intl.NumberFormat(n,{style:`currency`,currency:t,maximumFractionDigits:0}).format(e)}function ud(e,t){return e===null?t===`pt-BR`?`Indisponível`:`Unavailable`:w(e,t)}function dd(e,t,n,r){return e===null?t===0?`0`:ud(null,r):n(e)}function fd({currency:e,data:t,datePreset:n,locale:r,onDatePresetChange:i,onOpenTask:o,onOpenDocument:s,onLoadStatus:l,statusPage:u,onLoadStatusPage:d,classificationPage:f,onLoadClassificationPage:p,onLoadMacroMetrics:m,prds:h=t.prds,runs:g=t.runs,specs:_=t.specs,tasks:v=t.tasks,factualCostTotal:y,resolveRunCost:b,includeLegacyEffort:x=!1}){let[S,C]=(0,a.useState)(`tasks`),[T,D]=(0,a.useState)(null),[A,te]=(0,a.useState)(null),j=v.filter(e=>e.status===`completed`).length,ne=_.filter(e=>e.work_status===`completed`).length,re=h.filter(e=>e.work_status===`completed`).length,M=od(S,r),N=rd(r),ie=S===`specs`?_:h,P=ed(t),F=S===`tasks`?void 0:P?.macro_metrics?.[S],ae=Yu(S,P,S===`tasks`?v.length:ie.length),oe=td(S,v,ie,g),se=S===`tasks`?Wu(v,oe,b):Gu(ie,oe,b),ce=P?.task_status_counts,I=ce?[...Ic.map(e=>({key:e,label:Uc(e,r),color:Ru[e],count:e===`definition`?(ce.draft??0)+(ce.definition??0):e===`ready`?(ce.planned??0)+(ce.ready??0):ce[e]??0})),...ce.unclassified?[{key:`unclassified`,label:r===`pt-BR`?`Não classificado`:`Unclassified`,color:`var(--color-neutral-500)`,count:ce.unclassified}]:[]]:md(v,r),le=F?Ic.map(e=>({key:e,label:Uc(e,r),color:Ru[e],count:F.status_counts[e]??0})):hd(ie,v,r),L=S===`tasks`?I:le,ue=L.reduce((e,t)=>e+t.count,0),de=P?.task_risk_counts,fe=[...Object.entries(zu).map(([e,t])=>({key:e,label:Dc(e,r),color:t,count:de?de[e]??0:v.filter(t=>t.risk===e).length})),...de?.unclassified??v.filter(e=>e.risk===null).length?[{key:`unclassified`,label:r===`pt-BR`?`Não classificado`:`Unclassified`,color:`var(--color-neutral-500)`,count:de?.unclassified??v.filter(e=>e.risk===null).length}]:[]],pe=S===`tasks`?fe:F?Ku([],r).map(e=>({...e,count:F.classification_counts[e.key]??0})):Ku(ie,r),R=ru(g),z=au(g),me=P?.partial===!0,B=P?.task_count??v.length,he=P?.spec_count??_.length,V=P?.prd_count??h.length,ge=P?.completed_task_count??j,_e=P?.completed_spec_count??ne,ve=P?.completed_prd_count??re,ye=B===null||B===0?0:ge/B,be=he===null||he===0?0:_e/he,xe=V===null||V===0?0:ve/V,Se=R.runs,Ce=Xu(se),we=S===`tasks`?r===`pt-BR`?`tarefa`:`task`:M.shortPlural,Te=S===`tasks`?null:{durationMs:Qu(F!==void 0,F?.total_duration_ms,Ce.durationMs),tokens:Qu(F!==void 0,F?.total_tokens,Ce.tokens),costBrl:Qu(F!==void 0,F?.total_cost_brl,Ce.costBrl)},Ee=Zu(S,Te?.durationMs,P?.duration_ms??R.durationMs),De=S===`tasks`?P?.execution_day_count??id(Se):0,Oe=Zu(S,Te?.tokens,P?.tokens??z.tokens),H=S===`tasks`?B:ae,ke=b===void 0?null:z.runs.reduce((e,t)=>{let n=b(t.id);return n===null?e:(e??0)+n},null),Ae=S===`tasks`?void 0:e===`USD`?F?.total_cost_usd:F?.total_cost_brl,U=S===`tasks`||e===`USD`?null:Vu(se.map(e=>e.costBrl)),je=$u({currency:e,factualSnapshotTotal:y,macroCostTotal:Qu(F!==void 0,Ae,U),overviewView:S,resolvedRunTotal:ke,operationsBrlTotal:P?.cost_brl??z.costBrl}),Me=Ee===null||Ee<=0||je===null?null:je*36e5/Ee,Ne=je===null||H===null||H===0?null:je/H,W=Oe===null||H===null||H===0?null:Oe/H,Pe=Ee===null||Ee<=0||Oe===null?null:Oe*36e5/Ee,Fe=Hu(S===`tasks`?{durationMs:Ee,tokens:Oe,costBrl:je}:{durationMs:Qu(F!==void 0,F?.total_duration_ms,Ce.durationMs),tokens:Qu(F!==void 0,F?.total_tokens,Ce.tokens),costBrl:Qu(F!==void 0,Ae,e===`BRL`?U:Ce.costBrl)},ae),Ie=Qu(F!==void 0,F?.average_duration_ms,Fe.durationMs),Le=Qu(F!==void 0,F?.average_tokens,Fe.tokens),Re=S===`tasks`?Fe.costBrl:Qu(F!==void 0,e===`USD`?F?.average_cost_usd:F?.average_cost_brl,Fe.costBrl),ze=S===`tasks`?v.length===0?P?.latest_task_created_at??null:Uu(v):F?.latest_created_at??Uu(ie),G=[[N.averageTime,dd(Ie,ae,e=>w(e,r),r)],[N.averageTokens,dd(Le,ae,e=>E(e,r),r)],[N.averageCost,dd(Re,ae,t=>O(t,e,r),r)]],K=(P?.top_tasks??[]).map(t=>({id:t.task_id,title:v.find(e=>e.id===t.task_id)?.title??t.task_id,durationMs:t.duration_ms,durationProvenance:t.duration_ms===null?`unavailable`:`observed`,tokens:t.total_tokens,costBrl:e===`USD`?t.total_cost_usd??null:t.cost_brl,runCount:t.run_count})),q=(F?.top_entities??[]).map(t=>({id:t.entity_id,title:t.title,durationMs:t.duration_ms,durationProvenance:t.duration_ms===null?`unavailable`:`observed`,tokens:t.total_tokens,costBrl:e===`USD`?t.total_cost_usd??null:t.cost_brl,runCount:t.run_count})),J=S===`tasks`&&g.length===0&&K.length>0?K:S!==`tasks`&&q.length>0?q:Ju(se),Be=Math.max(1,...J.filter(e=>e.durationMs!==null).map(e=>e.durationMs??0)),Ve=S===`tasks`&&g.length===0&&K.length>0?{...qu(J,J),durationShare:Ee===null||Ee===0?0:J.reduce((e,t)=>e+(t.durationMs??0),0)/Ee}:S!==`tasks`&&q.length>0?{...qu(J,J),durationShare:F?.total_duration_ms===null||F?.total_duration_ms===void 0||F.total_duration_ms===0?0:J.reduce((e,t)=>e+(t.durationMs??0),0)/F.total_duration_ms}:qu(J,se),He=S===`tasks`&&g.length===0&&K.length>0||S!==`tasks`&&q.length>0,Ue=e===`USD`&&!He&&(g.length===0||b===void 0)?null:Ve.costBrl,We=S===`tasks`?N.topHint:r===`pt-BR`?`Tempo de ciclo de vida (Runs-raiz, todas as fases).`:`Lifecycle time (root Runs, all phases).`,Ge=e=>{C(e),D(null),te(null),e!==`tasks`&&m?.()};return(0,c.jsxs)(`section`,{"aria-label":N.overview,className:`operations-overview`,children:[(0,c.jsx)(`div`,{className:`operations-overview-controls`,children:(0,c.jsxs)(`label`,{className:`operations-overview-period`,children:[(0,c.jsx)(`span`,{children:r===`pt-BR`?`Período`:`Period`}),(0,c.jsxs)(`select`,{"aria-label":r===`pt-BR`?`Período`:`Period`,onChange:e=>i(e.target.value),value:n,children:[(0,c.jsx)(`option`,{value:`today`,children:r===`pt-BR`?`Hoje`:`Today`}),(0,c.jsx)(`option`,{value:`yesterday`,children:r===`pt-BR`?`Ontem`:`Yesterday`}),(0,c.jsx)(`option`,{value:`this-week`,children:r===`pt-BR`?`Esta Semana`:`This Week`}),(0,c.jsx)(`option`,{value:`last-week`,children:r===`pt-BR`?`Semana Passada`:`Last Week`}),(0,c.jsx)(`option`,{value:`this-month`,children:r===`pt-BR`?`Este Mês`:`This Month`}),(0,c.jsx)(`option`,{value:`last-month`,children:r===`pt-BR`?`Mês Passado`:`Last Month`}),(0,c.jsx)(`option`,{value:`last-3-months`,children:r===`pt-BR`?`Últimos 3 meses`:`Last 3 months`}),(0,c.jsx)(`option`,{value:`last-6-months`,children:r===`pt-BR`?`Últimos 6 meses`:`Last 6 months`}),(0,c.jsx)(`option`,{value:`this-year`,children:r===`pt-BR`?`Este Ano`:`This Year`}),(0,c.jsx)(`option`,{value:`last-year`,children:r===`pt-BR`?`Último ano`:`Last year`}),(0,c.jsx)(`option`,{value:`all`,children:r===`pt-BR`?`Todo o Período`:`All Time`}),(0,c.jsx)(`option`,{disabled:!0,value:`custom`,children:r===`pt-BR`?`Personalizado`:`Custom`})]})]})}),(0,c.jsxs)(`div`,{className:`operations-kpi-grid`,children:[(0,c.jsx)(nd,{featured:S===`tasks`,hint:me&&ge===null?r===`pt-BR`?`Resumo detalhado carregando…`:`Detailed summary loading…`:`${ge} ${N.completedTasks} (${ee(ye,r)})`,label:N.tasks,onSelect:()=>Ge(`tasks`),value:B===null?`—`:String(B)}),(0,c.jsx)(nd,{featured:S===`specs`,hint:me&&_e===null?r===`pt-BR`?`Resumo detalhado carregando…`:`Detailed summary loading…`:`${_e} ${N.completedSpecs} (${ee(be,r)})`,label:`SPECs`,onSelect:()=>Ge(`specs`),value:he===null?`—`:String(he)}),(0,c.jsx)(nd,{featured:S===`prds`,hint:me&&ve===null?r===`pt-BR`?`Resumo detalhado carregando…`:`Detailed summary loading…`:`${ve} ${N.completedPrds} (${ee(xe,r)})`,label:`PRDs`,onSelect:()=>Ge(`prds`),value:V===null?`—`:String(V)}),(0,c.jsx)(nd,{hint:ad(Ee??0,H??0,De,r),label:S===`tasks`?N.totalExecutionTime:r===`pt-BR`?`${N.totalExecutionTime} de ${M.shortPlural}`:`${M.shortPlural} ${N.totalExecutionTime.toLowerCase()}`,value:dd(Ee,H,e=>w(e,r),r)}),(0,c.jsx)(nd,{hint:W===null||Pe===null?H===0?r===`pt-BR`?`0 / ${we} (0 / hora)`:`0 / ${we} (0 / hour)`:r===`pt-BR`?`Tokens por tarefa e por hora indisponíveis`:`Tokens per task and hour unavailable`:r===`pt-BR`?`${E(W,r)} / ${we} (${E(Pe,r,0)} / hora)`:`${E(W,r)} / ${we} (${E(Pe,r,0)} / hour)`,label:S===`tasks`?r===`pt-BR`?`Tokens gastos`:`Spent tokens`:r===`pt-BR`?`Tokens gastos por ${M.shortPlural}`:`${M.shortPlural} tokens spent`,value:dd(Oe,H,e=>E(e,r),r)}),(0,c.jsx)(nd,{hint:Me===null||Ne===null?H===0?r===`pt-BR`?`${ld(0,e,r)} / ${we} (${ld(0,e,r)} / hora)`:`${ld(0,e,r)} / ${we} (${ld(0,e,r)} / hour)`:r===`pt-BR`?`Custo por tarefa e por hora indisponível`:`Cost per task and hour unavailable`:r===`pt-BR`?`${ld(Ne,e,r)} / ${we} (${ld(Me,e,r)} / hora)`:`${ld(Ne,e,r)} / ${we} (${ld(Me,e,r)} / hour)`,label:S===`tasks`?r===`pt-BR`?`Custo Estimado`:`Estimated cost`:r===`pt-BR`?`Custo de ${M.shortPlural}`:`${M.shortPlural} cost`,value:dd(je,H,t=>ld(t,e,r),r)})]}),(0,c.jsxs)(`div`,{className:`operations-chart-grid`,children:[(0,c.jsxs)(`article`,{className:`operations-panel operations-panel-wide`,children:[(0,c.jsx)(pd,{hint:N.statusHint,title:M.statusTitle}),(0,c.jsx)(`div`,{"aria-hidden":`true`,className:`operations-stacked-bar`,children:L.map(e=>(0,c.jsx)(`i`,{style:{background:e.color,flexGrow:e.count,display:e.count===0?`none`:void 0}},e.key))}),(0,c.jsx)(`div`,{className:`operations-legend-grid`,children:L.map(e=>{let t=(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`i`,{style:{background:e.color}}),(0,c.jsx)(`span`,{children:e.label}),(0,c.jsxs)(`span`,{className:`operations-legend-value`,children:[(0,c.jsx)(`strong`,{children:e.count}),(0,c.jsx)(`small`,{children:ee(ue===0?0:e.count/ue,r)})]})]});return e.key===`unclassified`?(0,c.jsx)(`div`,{className:`operations-legend-row`,children:t},e.key):(0,c.jsx)(`button`,{"aria-label":`${e.label}: ${e.count}, ${ee(ue===0?0:e.count/ue,r)}`,className:`operations-legend-row operations-status-filter`,onClick:()=>{let t=e.key;D(t),l?.(t,S===`tasks`?`task`:S===`specs`?`spec`:`prd`,0)},type:`button`,children:t},e.key)})})]}),(0,c.jsxs)(`article`,{className:`operations-panel operations-panel-risk`,children:[(0,c.jsx)(pd,{hint:M.classificationHint,title:M.classificationTitle}),(0,c.jsxs)(`div`,{className:`operations-donut-wrap`,children:[(0,c.jsx)(`div`,{"aria-hidden":`true`,className:`operations-donut`,style:{background:gd(pe,Math.max(ae??0,1))}}),(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`strong`,{children:ae??`—`}),(0,c.jsx)(`span`,{children:M.shortPlural})]})]}),(0,c.jsx)(`div`,{className:`operations-legend-grid`,children:pe.map(e=>{let t=(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`i`,{style:{background:e.color}}),(0,c.jsx)(`span`,{children:e.label}),(0,c.jsxs)(`span`,{className:`operations-legend-value`,children:[(0,c.jsx)(`strong`,{children:e.count}),(0,c.jsx)(`small`,{children:ee(ae===null||ae===0?0:e.count/ae,r)})]})]});return e.key===`unclassified`?(0,c.jsx)(`div`,{className:`operations-legend-row`,children:t},e.key):(0,c.jsx)(`button`,{"aria-label":`${e.label}: ${e.count}, ${ee(ae===null||ae===0?0:e.count/ae,r)}`,className:`operations-legend-row operations-status-filter`,onClick:()=>{let t=e.key;te(t),p?.(S===`tasks`?`task`:S===`specs`?`spec`:`prd`,t,0)},type:`button`,children:t},e.key)})})]}),(0,c.jsxs)(`article`,{className:`operations-panel operations-panel-type${r===`en-US`?` is-en-us`:``}`,children:[(0,c.jsx)(pd,{hint:M.averageHint,title:M.averageTitle}),(0,c.jsx)(`div`,{className:`operations-type-summary`,children:G.map(([e,t])=>(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`span`,{children:e}),(0,c.jsx)(`strong`,{children:t})]},e))}),(0,c.jsxs)(`footer`,{className:`operations-latest-task-created`,children:[(0,c.jsx)(`span`,{children:M.latestLabel}),(0,c.jsx)(`strong`,{children:ze===null?`—`:k(ze,r)})]})]}),(0,c.jsx)(cd,{copy:{empty:M.emptyTop,hint:We,title:M.topTitle},currency:e,locale:r,maxDuration:Be,onOpenTask:o,summary:Ve,text:N,topCost:Ue,topEntities:J,view:S})]}),T===null?null:(0,c.jsx)(Iu,{eyebrow:r===`pt-BR`?S===`tasks`?`Status das tarefas`:S===`specs`?`Status das SPECs`:`Status dos PRDs`:`${M.shortPlural} status`,label:Uc(T,r),locale:r,onClose:()=>D(null),onOpenTask:e=>{D(null),o(e)},onOpenDocument:(e,t)=>{D(null),s(e,t)},items:u?.(T,S===`tasks`?`task`:S===`specs`?`spec`:`prd`)?.items??[],kind:S===`tasks`?`task`:S===`specs`?`spec`:`prd`,onLoadMore:e=>d?.(T,S===`tasks`?`task`:S===`specs`?`spec`:`prd`,e),page:u?.(T,S===`tasks`?`task`:S===`specs`?`spec`:`prd`)}),A===null?null:(0,c.jsx)(Iu,{eyebrow:r===`pt-BR`?M.classificationTitle:`Classification`,label:S===`tasks`?Dc(A,r):pe.find(e=>e.key===A)?.label??A,locale:r,onClose:()=>te(null),onOpenTask:e=>{te(null),o(e)},onOpenDocument:(e,t)=>{te(null),s(e,t)},items:f?.(S===`tasks`?`task`:S===`specs`?`spec`:`prd`,A)?.items??[],kind:S===`tasks`?`task`:S===`specs`?`spec`:`prd`,onLoadMore:e=>p?.(S===`tasks`?`task`:S===`specs`?`spec`:`prd`,A,e),page:f?.(S===`tasks`?`task`:S===`specs`?`spec`:`prd`,A)})]})}function pd({title:e,hint:t,action:n}){return(0,c.jsxs)(`header`,{className:`operations-panel-header`,children:[(0,c.jsxs)(`div`,{className:`operations-panel-header-title`,children:[(0,c.jsx)(`h2`,{children:e}),n]}),(0,c.jsx)(`small`,{children:t})]})}function md(e,t){return Ic.map(n=>({key:n,label:Uc(n,t),color:Ru[n],count:e.filter(e=>Lc(e)===n).length}))}function hd(e,t,n){return Ic.map(r=>({key:r,label:Uc(r,n),color:Ru[r],count:e.filter(e=>Rc(e,t)===r).length}))}function gd(e,t){let n=0,r=e.map(e=>{let r=n+e.count/t*100,i=`${e.color} ${n}% ${r}%`;return n=r,i});return n===0?`rgba(36, 52, 72, 0.86)`:`conic-gradient(${r.join(`, `)})`}function _d({capabilityNavigation:e,currency:t,data:n,datePreset:r,dateRange:i,defaultDateRange:a,factualCostTotal:o,includeLegacyEffort:s,locale:l,onOpenTask:u,onOpenDocument:d,onLoadStatus:f,statusPage:p,onLoadStatusPage:m,classificationPage:h,onLoadClassificationPage:g,onLoadMacroMetrics:_,prds:v,query:y,resolveRunCost:b,runs:x,searchInputRef:S,setQuery:C,showFilterLoading:w,specs:T,tasks:E,updatePeriod:D}){return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(fd,{data:n,currency:t,factualCostTotal:o,datePreset:r,dateRange:i,locale:l,onDatePresetChange:e=>{w(),D(e,e===`all`?a:e===`custom`?i:al(e))},onOpenTask:u,onOpenDocument:d,onLoadStatus:f,statusPage:p,onLoadStatusPage:m,classificationPage:h,onLoadClassificationPage:g,onLoadMacroMetrics:_,prds:v,runs:x,resolveRunCost:b,includeLegacyEffort:s,specs:T,tasks:E}),(0,c.jsxs)(`section`,{className:`dashboard-global-controls`,children:[e,(0,c.jsxs)(`div`,{className:`operations-toolbar-filters dashboard-global-filters`,children:[(0,c.jsxs)(`label`,{className:`operations-toolbar-field operations-search-field`,children:[(0,c.jsx)(`span`,{children:l===`pt-BR`?`Busca`:`Search`}),(0,c.jsxs)(`div`,{className:`operations-search-control`,children:[(0,c.jsx)(`input`,{"aria-label":l===`pt-BR`?`Busca`:`Search`,onChange:e=>{C(e.target.value)},placeholder:l===`pt-BR`?`Buscar por nome ou ID`:`Search by name or ID`,ref:S,value:y}),y?(0,c.jsx)(`button`,{"aria-label":l===`pt-BR`?`Limpar busca`:`Clear search`,className:`operations-search-clear`,onMouseDown:e=>e.preventDefault(),onClick:()=>{S.current?.focus(),C(``)},type:`button`,children:(0,c.jsx)(Tl,{})}):null]})]}),(0,c.jsx)(yl,{dateRange:i,defaultDateRange:a,locale:l,onDateRangeChange:e=>{w(),D(`custom`,e)},onPresetChange:(e,t)=>{w(),D(e,t)},preset:r})]})]})]})}function vd({locale:e}){return(0,c.jsx)(`section`,{"aria-busy":`true`,"aria-live":`polite`,className:`operations-content-skeleton`,role:`status`,children:(0,c.jsx)(`span`,{children:e===`pt-BR`?`Carregando o período selecionado…`:`Loading selected period…`})})}function yd(e){return e===`work-list`?`all`:null}function bd(e){return{controlled:e.datePreset!==void 0&&e.dateRange!==void 0,datePreset:e.datePreset??e.fallbackPreset,dateRange:e.dateRange??e.fallbackRange}}function xd({datePreset:e,matchesSelectedDate:t,prds:n,runs:r,specs:i,tasks:a}){let o=new Set(a.map(e=>e.id)),s=new Set([`completed`,`delivered`,`cancelled`,`failed`]),c=(n,i)=>e===`all`||!s.has(n.lifecycle_status)||t(n.updated_at??n.created_at)||n.task_ids.some(e=>o.has(e))||i===`spec`&&a.some(e=>e.spec_id===n.id)||r.some(e=>n.run_ids.includes(e.id)||(i===`spec`?e.spec_id===n.id:e.prd_id===n.id)),l=i.filter(e=>c(e,`spec`)),u=new Set(l.map(e=>e.id));return{specs:l,prds:n.filter(e=>c(e,`prd`)||i.some(t=>t.parent_id===e.id&&u.has(t.id)))}}function Sd(e,t){let n=e.trim().toLocaleLowerCase();return n.length===0||t.some(e=>e?.toLocaleLowerCase().includes(n))}function Cd(e,t){return{prds:e.prds.filter(e=>t(e.created_at)),specs:e.specs.filter(e=>t(e.created_at)),tasks:e.tasks.filter(e=>t(e.created_at)),runs:e.runs.filter(e=>t(e.started_at)),...e.evidences===void 0?{}:{evidences:e.evidences.filter(e=>t(e.observed_at))},...e.validations===void 0?{}:{validations:e.validations.filter(e=>t(e.executed_at))}}}function wd(e,t,n){return n.entityFilterActive?e.filter(e=>n.directRunMatch?.(e)===!0||e.task_id!==null&&t.taskIds.has(e.task_id)||e.spec_id!==null&&t.specIds.has(e.spec_id)||e.prd_id!==null&&t.prdIds.has(e.prd_id)):[...e]}function Td(e,t,n){return e===`month`||e===`year`?bu(t,n):[...t]}function Ed({alternateContent:e,boardTotals:t,boardKindTotals:n,boardStates:r,boardExportSource:i,detailExportSource:o,capabilityNavigation:s,currency:l,data:d,dashboardTitle:f=`Dashboard Zaip AIOS`,loading:p,onLoadingChange:m,locale:h,onLocaleChange:g,onOpenDocument:_,onOpenTask:v,onPriorityChange:y,onLoadMacroMetrics:b,entityPage:x,onEntityPageChange:S,onEntityFiltersChange:C,onBoardFiltersChange:w,onWorkListFiltersChange:T,onBoardTypeChange:E,onWorkListTypeChange:D,onWorkListPageChange:O,workListPage:k,onLoadMoreBoard:ee,onLoadStatusPage:A,statusPage:te,classificationPage:j,onLoadClassificationPage:ne,datePreset:re,dateRange:M,onDateChange:N,onPeriodChange:ie,onRefresh:P,repositoryName:F,settings:ae,factualCostTotal:oe,factualCostPeriods:se,resolveRunCost:ce}){let[I,le]=(0,a.useState)(`work-kanban`),[L,ue]=(0,a.useState)(``),[de,fe]=(0,a.useState)(!1),[pe,R]=(0,a.useState)(!1),[z,me]=(0,a.useState)(``),[B,he]=(0,a.useState)(``),[V,ge]=(0,a.useState)(``),[_e,ve]=(0,a.useState)(!1),ye=(0,a.useRef)(null),be=(0,a.useRef)(null),xe=(0,a.useMemo)(()=>{let e=il(d.tasks,Object.keys(d.summary.periods?.daily??{}));return nl(se?.day,e)},[d.summary.periods,d.tasks,se?.day]),Se=(0,a.useMemo)(()=>al(`this-month`),[]),[Ce,we]=(0,a.useState)(()=>Se),[Te,Ee]=(0,a.useState)(`all`),De=bd({datePreset:re,dateRange:M,fallbackPreset:Te,fallbackRange:Ce}),Oe=De.controlled,H=De.dateRange,ke=De.datePreset,Ae=(0,a.useCallback)((e,t)=>{Oe||(Ee(e),we(t)),(N??ie)?.(e,t)},[Oe,N,ie]);(0,a.useEffect)(()=>{ke!==`all`||H.start===xe.start&&H.end===xe.end||Ae(`all`,xe)},[ke,H.end,H.start,xe,Ae]),(0,a.useEffect)(()=>{!Oe&&ke===`all`&&we(xe)},[ke,xe,Oe]);let U=(0,a.useCallback)(()=>{ve(!0),ye.current!==null&&window.clearTimeout(ye.current),ye.current=window.setTimeout(()=>ve(!1),220)},[]);(0,a.useEffect)(()=>()=>{ye.current!==null&&window.clearTimeout(ye.current)},[]);let je=typeof e==`function`?e({query:L,datePreset:ke,...ke===`all`?{}:{dateRange:H}}):e,Me=L===``&&z===``&&B===``&&V===``,Ne=()=>{U(),ue(``),me(``),he(``),ge(``),Ae(`all`,Se)},W=e=>{U();let t=yd(e);t!==null&&D?.(t),le(e),me(``),he(``),ge(``)};(0,a.useEffect)(()=>{if(p)return;if(I===`work-kanban`||I===`work-list`){let e=window.setTimeout(()=>{let e={query:L,status:z,risk:B,origin:V};I===`work-kanban`?w?.(e):T?.(e)},180);return()=>window.clearTimeout(e)}if(![`runs`,`conversations`,`executions`,`changes`,`decisions`].includes(I))return;let e=window.setTimeout(()=>{C?.(I,{query:L,status:z,risk:B})},180);return()=>window.clearTimeout(e)},[w,T,C,p,V,L,B,z,I]);let Pe=(I===`work-kanban`||I===`work-list`)&&Ic.includes(z),Fe=(0,a.useCallback)(e=>cl(e,ke,H),[ke,H]),Ie=d.tasks.filter(e=>(!Pe||Lc(e)===z)&&(!B||e.risk===B)&&jc(e,V,d.changes)&&(ke===`all`||ol(e.finished_at??e.updated_at,H,e.updated_at))&&Sd(L,[e.id,e.title,e.short_name,e.objective,e.change_id,e.spec_id])),Le=d.changes.filter(e=>(!z||e.status===z)&&(!B||e.risk===B)&&Fe(e.created_at)&&Sd(L,[e.id,e.title,e.source.type,e.artifact_path])),Re=d.executions.filter(e=>(!z||e.status===z)&&Fe(e.created_at)&&Sd(L,[e.id,e.status,e.work_status,e.origin.type,e.origin.type===`interaction`?e.origin.conversation_id:null,e.artifact_path])),ze=d.runs.filter(e=>(!z||Pe||e.status===z)&&ll(e,ke,H)),G=xd({datePreset:ke,matchesSelectedDate:Fe,prds:d.prds,runs:ze,specs:d.specs,tasks:Ie}),K=d.specs.filter(e=>(!Pe||Rc(e,d.tasks)===z)&&!B&&!V&&G.specs.includes(e)&&Sd(L,[e.id,e.title,e.parent_id])),q=d.prds.filter(e=>(!Pe||Rc(e,d.tasks)===z)&&!B&&!V&&G.prds.includes(e)&&Sd(L,[e.id,e.title,e.parent_id])),J=wd(ze,{taskIds:new Set(Ie.map(e=>e.id)),specIds:new Set(K.map(e=>e.id)),prdIds:new Set(q.map(e=>e.id))},{entityFilterActive:!!(L||Pe||B||V),directRunMatch:e=>L.trim().length>0&&Sd(L,[e.id,e.task_id,e.spec_id,e.prd_id,e.change_id,e.execution_id,e.conversation_id,e.phase,e.agent,e.agent_name,e.model,e.effective_model])}),Be=Re.filter(e=>e.kind===`interaction`&&e.origin.type===`interaction`),Ve=new Set(Be.map(e=>e.origin.type===`interaction`?e.origin.conversation_id:``)),He=J.filter(e=>e.entrypoint===`conversation`&&e.task_id===null&&Ve.has(e.conversation_id)),Ue=d.decisions.filter(e=>Fe(e.created_at)&&Sd(L,[e.id,e.title,e.scope_id,e.scope_type,e.artifact_path])),We=Cd(d,Fe),Ge=d.summary.periods?.daily,Ke=(0,a.useMemo)(()=>{if(I===`daily`||I===`monthly`||I===`yearly`){let e=I===`daily`?`day`:I===`monthly`?`month`:`year`;return Td(e,yu(Ge===void 0||l===`USD`?ou(We,e,ce,Me,d.filters):su(Object.fromEntries(Object.entries(Ge).filter(([e])=>Fe(`${e}T12:00:00.000Z`))),e),l,se?.[e]),se?.[e]).map(e=>({key:e.key,prds:e.prds,specs:e.specs,tasks:e.tasksCreated,runs:e.runs,tests:e.tests,evidences:e.evidences,duration_hours:e.durationMs===null?null:e.durationMs/36e5,tokens:e.tokens,cost:e.costBrl}))}return I===`work-kanban`||I===`work-list`?[...q.map(({kind:e,...t})=>({kind:`prd`,...t})),...K.map(({kind:e,...t})=>({kind:`spec`,...t})),...Ie.map(e=>({kind:`task`,...e}))]:I===`changes`?Le:I===`decisions`?Ue:I===`executions`?Re:I===`conversations`?He:J},[Le,He,Ue,Re,se,q,ce,J,K,We,Ie,I,Me,d.filters,Ge,Fe,l]),qe=p||_e;return(0,a.useEffect)(()=>m?.(qe),[qe,m]),(0,c.jsxs)(`main`,{className:`operations-page`,children:[(0,c.jsx)(u,{filters:(0,c.jsxs)(`div`,{className:`operations-global-filters`,"data-loading":qe||void 0,children:[(0,c.jsxs)(`div`,{className:`operations-filter-heading`,children:[(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`strong`,{children:h===`pt-BR`?`Filtrar dashboard`:`Filter dashboard`}),(0,c.jsx)(`small`,{children:h===`pt-BR`?`Os dados exibidos permanecem estáveis até uma atualização manual`:`Displayed data stays stable until a manual refresh`})]}),qe?(0,c.jsxs)(`span`,{className:`operations-filter-status`,role:`status`,children:[(0,c.jsx)(`i`,{}),` `,h===`pt-BR`?`Atualizando dados`:`Updating data`]}):null]}),(0,c.jsx)(yl,{ariaLabelSuffix:h===`pt-BR`?` nos filtros`:` in filters`,dateRange:H,defaultDateRange:xe,locale:h,onDateRangeChange:e=>{U(),Ae(`custom`,e)},onPresetChange:(e,t)=>{U(),Ae(e,t)},preset:ke}),(0,c.jsxs)(`button`,{className:`operations-clear-filters`,onClick:Ne,type:`button`,children:[(0,c.jsx)(wl,{}),h===`pt-BR`?`Limpar filtros`:`Clear filters`]})]}),filtersActive:!!(L||z||B||V||H.start!==xe.start||H.end!==xe.end),lastUpdatedAt:d.summary.source_latest_at,loading:qe,locale:h,onLocaleChange:g,onRefresh:P,...F===void 0?{}:{repositoryName:F},settings:ae,title:f}),(0,c.jsx)(`h1`,{className:`operations-sr-only`,children:`Operações`}),(0,c.jsxs)(`header`,{className:`operations-hero`,children:[(0,c.jsx)(`div`,{children:(0,c.jsx)(`small`,{className:`operations-last-updated`,children:d.summary.source_latest_at===null?h===`pt-BR`?`Aguardando atualização`:`Waiting for refresh`:`${h===`pt-BR`?`Atualizado`:`Updated`} ${new Intl.DateTimeFormat(h,{dateStyle:`short`,timeStyle:`medium`}).format(new Date(d.summary.source_latest_at))}`})}),(0,c.jsxs)(`div`,{className:`operations-actions`,children:[(0,c.jsx)(`button`,{"aria-label":h===`pt-BR`?`Atualizar`:`Refresh`,className:`operations-nav-icon`,disabled:p,onClick:P,type:`button`,children:(0,c.jsx)(xl,{})}),(0,c.jsxs)(`div`,{className:`operations-nav-popup-anchor`,children:[(0,c.jsxs)(`button`,{className:`operations-nav-button${de?` is-active`:``}`,onClick:()=>{fe(e=>!e),R(!1)},type:`button`,children:[(0,c.jsx)(Sl,{}),` `,h===`pt-BR`?`Filtros`:`Filters`]}),de?(0,c.jsxs)(`div`,{className:`operations-nav-popup operations-filter-popup`,children:[(0,c.jsxs)(`label`,{children:[(0,c.jsx)(`span`,{children:h===`pt-BR`?`Busca`:`Search`}),(0,c.jsx)(`input`,{onChange:e=>ue(e.target.value),placeholder:h===`pt-BR`?`ID ou nome de ${El[h][I]}`:`${El[h][I]} ID or name`,value:L})]}),I===`work-kanban`||I===`work-list`?(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)(`label`,{children:[(0,c.jsx)(`span`,{children:`Status`}),(0,c.jsxs)(`select`,{onChange:e=>me(e.target.value),value:z,children:[(0,c.jsx)(`option`,{value:``,children:h===`pt-BR`?`Todos`:`All`}),Ic.map(e=>(0,c.jsx)(`option`,{value:e,children:Uc(e,h)},e))]})]}),(0,c.jsxs)(`label`,{children:[(0,c.jsx)(`span`,{children:h===`pt-BR`?`Risco`:`Risk`}),(0,c.jsxs)(`select`,{onChange:e=>he(e.target.value),value:B,children:[(0,c.jsx)(`option`,{value:``,children:h===`pt-BR`?`Todos`:`All`}),(0,c.jsx)(`option`,{value:`lite`,children:Dc(`lite`,h)}),(0,c.jsx)(`option`,{value:`standard`,children:Dc(`standard`,h)}),(0,c.jsx)(`option`,{value:`critical`,children:Dc(`critical`,h)})]})]}),(0,c.jsxs)(`label`,{children:[(0,c.jsx)(`span`,{children:h===`pt-BR`?`Origem da tarefa`:`Task origin`}),(0,c.jsxs)(`select`,{onChange:e=>ge(e.target.value),value:V,children:[(0,c.jsx)(`option`,{value:``,children:h===`pt-BR`?`Todas`:`All`}),Oc.map(e=>(0,c.jsx)(`option`,{value:e,children:Ac(e)},e))]})]})]}):null,(0,c.jsx)(`button`,{onClick:Ne,type:`button`,children:h===`pt-BR`?`Limpar filtros`:`Clear filters`})]}):null]}),(0,c.jsxs)(`div`,{className:`operations-nav-popup-anchor`,children:[(0,c.jsxs)(`button`,{className:`operations-nav-button${pe?` is-active`:``}`,onClick:()=>{R(e=>!e),fe(!1)},type:`button`,children:[(0,c.jsx)(bl,{locale:h}),h===`pt-BR`?`PT-BR`:`EN-US`,(0,c.jsx)(Cl,{})]}),pe?(0,c.jsxs)(`div`,{className:`operations-nav-popup operations-locale-popup`,children:[(0,c.jsxs)(`button`,{onClick:()=>{g(`pt-BR`),R(!1)},type:`button`,children:[(0,c.jsx)(bl,{locale:`pt-BR`}),` Português do Brasil`,h===`pt-BR`?(0,c.jsx)(`span`,{children:`✓`}):null]}),(0,c.jsxs)(`button`,{onClick:()=>{g(`en-US`),R(!1)},type:`button`,children:[(0,c.jsx)(bl,{locale:`en-US`}),` English`,h===`en-US`?(0,c.jsx)(`span`,{children:`✓`}):null]})]}):null]})]})]}),qe?(0,c.jsx)(`div`,{"aria-live":`polite`,className:`operations-loading-status`,role:`status`,children:h===`pt-BR`?`Carregando dados atualizados…`:`Loading updated data…`}):null,(0,c.jsx)(`div`,{"aria-busy":qe,className:qe?`operations-filtered is-loading`:`operations-filtered`,children:Dd(p)?(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(_d,{capabilityNavigation:s,currency:l,data:d,datePreset:ke,dateRange:H,defaultDateRange:xe,includeLegacyEffort:Me,locale:h,onOpenTask:v,onOpenDocument:_,onLoadStatus:A,prds:q,query:L,factualCostTotal:oe,resolveRunCost:ce,runs:J,searchInputRef:be,setQuery:ue,showFilterLoading:U,specs:K,tasks:Ie,statusPage:te,onLoadStatusPage:A,classificationPage:j,onLoadClassificationPage:ne,onLoadMacroMetrics:b,updatePeriod:Ae}),je??(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)(`section`,{className:`operations-toolbar`,children:[(0,c.jsx)(Dl,{locale:h,onChange:W,view:I}),(0,c.jsx)(`div`,{className:`operations-tab-export`,children:(0,c.jsx)(rc,{filters:{query:L,status:z,risk:B,origin:V,dateRange:H,datePreset:ke},rows:Ke,pageSource:I===`work-kanban`?i?.({query:L,status:z,risk:B,origin:V}):o?.(I,{query:L,status:z,risk:B,origin:V,...I===`work-list`&&k!==void 0&&k.typeFilter!==`all`?{kind:k.typeFilter}:{}}),view:`operations-${I}`})})]}),(0,c.jsx)(Fu,{boardKindTotals:n,boardStates:r,boardTotals:t,changes:Le,conversationExecutions:Be,conversationRuns:He,currency:l,data:d,entityPage:x,executions:Re,factualCostPeriods:se,includeLegacyEffort:Me,locale:h,onBoardTypeChange:E,onEntityPageChange:S,onLoadMoreBoard:ee,onWorkListTypeChange:D,onWorkListPageChange:O,onOpenDocument:_,onOpenTask:v,onPriorityChange:y,prds:q,resolveRunCost:ce,runs:J,specs:K,summaryPopulation:We,tasks:Ie,workListPage:k,view:I})]})]}):(0,c.jsx)(vd,{locale:h})})]})}function Dd(e){return!e}function Od({detail:e,error:t,label:n,loading:r=!1,locale:i,onClose:a,onRetry:o,preview:s}){let l=i===`pt-BR`;return(0,v.createPortal)((0,c.jsx)(`div`,{className:`operations-prd-document-backdrop`,onMouseDown:e=>{e.currentTarget===e.target&&a()},children:(0,c.jsxs)(`section`,{"aria-label":l?`${n} completa`:`Full ${n}`,"aria-modal":`true`,className:`operations-prd-document-dialog`,role:`dialog`,children:[(0,c.jsxs)(`header`,{children:[(0,c.jsxs)(`div`,{children:[(0,c.jsxs)(`span`,{children:[(0,c.jsx)(Ro,{"aria-hidden":`true`,size:16}),` `,n]}),(0,c.jsx)(`h2`,{children:e?.title??s.title}),(0,c.jsx)(`p`,{children:e?.id??s.id})]}),(0,c.jsx)(`button`,{"aria-label":l?`Fechar`:`Close`,onClick:a,type:`button`,children:(0,c.jsx)(Go,{"aria-hidden":`true`,size:20})})]}),(0,c.jsxs)(`div`,{className:`operations-prd-document-scroll`,children:[e?(0,c.jsx)(jd,{content:e.body}):null,r?(0,c.jsx)(kd,{locale:i}):null,t?(0,c.jsx)(Ad,{error:t,locale:i,onRetry:o}):null]}),(0,c.jsx)(`footer`,{children:e?.artifact_path??s.artifact_path})]})}),document.body)}function kd({locale:e}){let t=e===`pt-BR`;return(0,c.jsxs)(`section`,{"aria-busy":`true`,"aria-live":`polite`,className:`operations-prd-document-loading`,children:[(0,c.jsxs)(`div`,{className:`operations-prd-document-loading-copy`,children:[(0,c.jsx)(Ho,{"aria-hidden":`true`,className:`operations-prd-document-spinner`,size:20}),(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`strong`,{children:t?`Carregando documento`:`Loading document`}),(0,c.jsx)(`p`,{children:t?`Preparando a leitura completa…`:`Preparing the full reader…`})]})]}),(0,c.jsxs)(`div`,{"aria-hidden":`true`,className:`operations-prd-document-skeleton`,children:[(0,c.jsx)(`i`,{}),(0,c.jsx)(`i`,{}),(0,c.jsx)(`i`,{}),(0,c.jsx)(`i`,{})]})]})}function Ad({error:e,locale:t,onRetry:n}){let r=t===`pt-BR`;return(0,c.jsxs)(`section`,{"aria-live":`assertive`,className:`operations-prd-document-error`,role:`alert`,children:[(0,c.jsx)(`strong`,{children:r?`Não foi possível carregar o documento.`:`Unable to load document.`}),(0,c.jsx)(`p`,{children:e}),n?(0,c.jsxs)(`button`,{onClick:n,type:`button`,children:[(0,c.jsx)(Uo,{"aria-hidden":`true`,size:15}),` `,r?`Tentar novamente`:`Retry`]}):null]})}function jd({content:e}){return(0,c.jsx)(`article`,{className:`operations-prd-markdown`,children:Md(e).map((e,t)=>{let n=`${e.kind}-${t}`;return e.kind===`heading`?(0,c.jsx)(`h${e.level}`,{children:Fd(e.content)},n):e.kind===`paragraph`?(0,c.jsx)(`p`,{children:Fd(e.content)},n):e.kind===`list`?(0,c.jsx)(e.ordered?`ol`:`ul`,{children:e.items.map(e=>(0,c.jsx)(`li`,{children:Fd(e)},e))},n):e.kind===`quote`?(0,c.jsx)(`blockquote`,{children:Fd(e.content)},n):e.kind===`code`?(0,c.jsx)(`pre`,{children:(0,c.jsx)(`code`,{"data-language":e.language??void 0,children:e.content})},n):e.kind===`table`?(0,c.jsx)(`div`,{className:`operations-prd-markdown-table`,children:(0,c.jsxs)(`table`,{children:[(0,c.jsx)(`thead`,{children:(0,c.jsx)(`tr`,{children:e.headers.map(e=>(0,c.jsx)(`th`,{children:Fd(e)},e))})}),(0,c.jsx)(`tbody`,{children:e.rows.map(e=>(0,c.jsx)(`tr`,{children:e.map(e=>(0,c.jsx)(`td`,{children:Fd(e)},e))},e.join(`|`)))})]})},n):(0,c.jsx)(`hr`,{},n)})})}function Md(e){let t=e.replace(/\r\n/g,`
|
|
66
|
+
`).split(`
|
|
67
|
+
`),n=[],r=[],i=()=>{let e=r.join(` `).trim();e&&n.push({kind:`paragraph`,content:e}),r=[]};for(let e=0;e<t.length;e+=1){let a=t[e]??``,o=a.match(/^(#{1,3})\s+(.+)$/);if(o){i(),n.push({kind:`heading`,level:(o[1]??`#`).length,content:o[2]??``});continue}if(/^\s*(```|~~~)/.test(a)){i();let r=a.trim().slice(0,3),o=[],s=a.trim().slice(3).trim()||null;for(;++e<t.length&&!(t[e]??``).trim().startsWith(r);)o.push(t[e]??``);n.push({kind:`code`,content:o.join(`
|
|
68
|
+
`),language:s});continue}if(a.includes(`|`)&&e+1<t.length&&Nd(t[e+1]??``)){i();let r=Pd(a),o=[];for(e+=2;e<t.length&&(t[e]??``).includes(`|`);)o.push(Pd(t[e]??``)),e+=1;--e,n.push({kind:`table`,headers:r,rows:o});continue}let s=a.match(/^\s*(?:([-*+])|(\d+)\.)\s+(.+)$/);if(s){i();let r=!!s[2],a=[s[3]??``];for(;e+1<t.length;){let n=(t[e+1]??``).match(/^\s*(?:([-*+])|(\d+)\.)\s+(.+)$/);if(!n||!!n[2]!==r)break;a.push(n[3]??``),e+=1}n.push({kind:`list`,ordered:r,items:a});continue}if(/^\s*>\s?/.test(a)){i(),n.push({kind:`quote`,content:a.replace(/^\s*>\s?/,``)});continue}if(/^\s{0,3}([-*_])(?:\s*\1){2,}\s*$/.test(a)){i(),n.push({kind:`rule`});continue}if(!a.trim()){i();continue}r.push(a.trim())}return i(),n}function Nd(e){return Pd(e).every(e=>/^:?-{3,}:?$/.test(e.replace(/\s/g,``)))}function Pd(e){return e.trim().replace(/^\|/,``).replace(/\|$/,``).split(`|`).map(e=>e.trim())}function Fd(e){return e.split(/(\*\*[^*]+\*\*|`[^`]+`|\*[^*]+\*|\[[^\]]+\]\([^\s)]+\))/g).map(e=>{if(e.startsWith(`**`)&&e.endsWith(`**`))return(0,c.jsx)(`strong`,{children:e.slice(2,-2)},e);if(e.startsWith("`")&&e.endsWith("`"))return(0,c.jsx)(`code`,{children:e.slice(1,-1)},e);if(e.startsWith(`*`)&&e.endsWith(`*`))return(0,c.jsx)(`em`,{children:e.slice(1,-1)},e);let t=e.match(/^\[([^\]]+)\]\(([^\s)]+)\)$/);return t?(0,c.jsx)(`a`,{href:t[2],rel:`noreferrer`,target:`_blank`,children:t[1]},e):(0,c.jsx)(a.Fragment,{children:e},e)})}function Id(e,t){let n=new Map(e.map(e=>[e.key,e]));for(let e of t??[])n.has(e)||n.set(e,Ld(e));return[...n.values()].sort((e,t)=>t.latest_started_at.localeCompare(e.latest_started_at)||e.label.localeCompare(t.label))}function Ld(e){return{key:e,label:e,latest_started_at:``,run_count:0,task_count:0,prd_count:0,spec_count:0,evidence_count:0,test_count:0,event_count:0,total_tokens:0,estimated_usd:0,estimated_brl:0,duration_ms:0,duration:{known_sum:0,unknown:0,complete:!0,coverage_ratio:1},coverage:{events:0,tokens:0,usd:0,brl:0}}}function Rd(e){let t=e?.trim().toLowerCase();return!t||t===`unknown`||t===`codex`?`openai`:t}function zd(e){let t=e.filter(e=>e!==null);return t.length===0?null:t.reduce((e,t)=>e+t,0)}function Bd(e,t=`all_invocations`){let n=new Map;for(let t of e)n.has(t.run_id)||n.set(t.run_id,t);let r=[...n.values()];if(t===`all_invocations`)return r;let i=new Set(r.map(e=>e.run_id));return t===`all_execution`?r.filter(e=>e.phase===`execution`):r.filter(e=>e.phase===`execution`&&(e.parent_run_id===null||!i.has(e.parent_run_id)))}function Vd(e,t=`all_invocations`){let n=Bd(e,t),r=n.filter(e=>e.duration_ms!==null),i=n.length-r.length;return{known_sum:r.reduce((e,t)=>e+t.duration_ms,0),unknown:i,complete:i===0,coverage_ratio:n.length===0?1:r.length/n.length}}var Hd={events:0,tokens:0,usd:0,brl:0};function Ud(e,t){let n=new Map;for(let e of t)e.task_id!==null&&n.set(e.task_id,[...n.get(e.task_id)??[],e]);let r=e.filter(e=>n.has(e.id)).map(e=>Gd(e,n.get(e.id)??[])),i=new Set(e.map(e=>e.id)),a=[...n].filter(([e])=>!i.has(e)).map(([e,t])=>Wd(e,t)),o=t.filter(e=>e.task_id===null),s=o.length===0?[]:[Wd(`Sem tarefa vinculada`,o)];return[...r,...a,...s].sort((e,t)=>t.latest_started_at.localeCompare(e.latest_started_at))}function Wd(e,t){return{...Gd({id:e,title:e,created_at:t[0]?.started_at??``,test_count:0},t),label:`Tarefa histórica: ${e}`,latest_started_at:t.reduce((e,t)=>t.started_at>e?t.started_at:e,``)}}function Gd(e,t){let n=Vd(t);return{key:e.id,label:e.title,latest_started_at:e.created_at,run_count:t.length,task_count:1,tasksCreated:1,tasksActive:1,prd_count:0,spec_count:0,evidence_count:0,test_count:e.test_count??0,event_count:t.reduce((e,t)=>e+(t.event_count??0),0),total_tokens:zd(t.map(e=>e.total_tokens)),estimated_usd:zd(t.map(e=>e.estimated_usd)),estimated_brl:zd(t.map(e=>e.estimated_brl)),duration_ms:n.known_sum,duration:n,coverage:t.reduce((e,t)=>({events:e.events+t.coverage.events,tokens:e.tokens+t.coverage.tokens,usd:e.usd+t.coverage.usd,brl:e.brl+t.coverage.brl}),Hd),coverage_counts:{source:`run_rows`,granularity:`event`,events:t.reduce((e,t)=>e+t.coverage.events,0),tokens:null,usd:null,brl:null,metrics:{tokens:Kd(t,e=>e.total_tokens),usd:Kd(t,e=>e.estimated_usd),brl:Kd(t,e=>e.estimated_brl)}}}}function Kd(e,t){let n=e.filter(e=>t(e)!==null).length;return{eligible_runs:e.length,known_runs:n,unknown_runs:e.length-n}}var qd=4e6;function Jd(e){return typeof e!=`number`||e<=0?null:Math.round(e*36e5/qd)}function Yd(e,t=`all_invocations`){return Bd(e,t)}function Xd(e,t){return e===`fast`?t===`pt-BR`?`Priority (derivado de Fast)`:`Priority (derived from Fast)`:e===`priority`?`Priority (API)`:e==="default"?`Standard (API)`:`-`}function Zd(e){return{primary:e.model,detail:e.provider===null||e.provider===`unknown`?`-`:e.provider}}function Qd(e,t,n){return e===`pt-BR`?t:n}function $d(e){let t=e.filter(e=>typeof e==`number`);return t.length===0?null:t.reduce((e,t)=>e+t,0)}var ef=e=>$d(Yd(e).map(e=>e.duration_ms)),tf=(e,t)=>e.some(e=>{let n=t(e);return n!==null&&n!==0&&n!==``}),nf=(e,t)=>new Intl.NumberFormat(t,{minimumFractionDigits:2,maximumFractionDigits:2}).format(e??0),rf=(e,t)=>`R$ ${nf(e,t)}`,af=(e,t)=>new Intl.NumberFormat(t,{style:`currency`,currency:`USD`,minimumFractionDigits:2,maximumFractionDigits:2}).format(e??0),of=e=>{let t=e?.trim()??``;return t===``||t.toLowerCase()===`unknown`?null:t},sf=(e,t,n)=>n===`pt-BR`?{low:`Leve`,medium:`Médio`,high:`Alto`,xhigh:`Extra alto`,max:`Ultra`,default:`Padrão`,priority:`Rápido`}[e]??e:e,cf=(e,t,n)=>e===null||t===null?n===`pt-BR`?`Indisponível`:`Unavailable`:`${e.toLocaleString(`en-US`,{maximumFractionDigits:3})}\u00d7 / ${t.toLocaleString(`en-US`,{maximumFractionDigits:3})}\u00d7`,lf=(e,t,n)=>{let r=of(e);if(r!==null)return sf(r,`effort`,n);let i=of(t);if(i===null)return`-`;let a=sf(i,`effort`,n);return n===`pt-BR`?`${a} (solicitado; efetivo -)`:`${a} (requested; effective -)`},uf=(e,t)=>{let n=of(e);return n===null?t===`pt-BR`?`Padrão`:`Standard`:sf(n,`speed`,t)},df=e=>e===`pt-BR`?`Tabela de custos por invocação com rolagem horizontal`:`Agent invocation costs table with horizontal scrolling`,ff=e=>e===`pt-BR`?`Tabela de custos agrupados com rolagem horizontal`:`Grouped costs table with horizontal scrolling`,pf=(e,t)=>!e||Number.isNaN(Date.parse(e))?`—`:new Intl.DateTimeFormat(t,{dateStyle:`short`,timeStyle:`medium`}).format(new Date(e)),mf=(e,t,n)=>{if(t===`annual`)return e.slice(0,4);if(t===`monthly`)return e.slice(0,7);let r=new Date(`${e}T12:00:00.000Z`);return Number.isNaN(r.getTime())?e:new Intl.DateTimeFormat(n,{dateStyle:`short`,timeZone:`UTC`}).format(r)},hf=({locale:e,duration:t,tokens:n,cost:r,currency:i})=>e===`pt-BR`?`Total geral \u2014 Tempo: ${t}; Tokens: ${n}; ${i}: ${r}`:`Grand total \u2014 Time: ${t}; Tokens: ${n}; Cost (${i}): ${r}`;function gf({rows:e,locale:t,pagination:n,subtotal:r,onOpenTrace:i}){let a=(e,t)=>t(e.known_sum??0),o=e=>{let n=e.metrics.duration,r=_f(e);return r===null||n.unknown>0&&r===0?`0`:w(r,t)},s=(e,t)=>{if(r!==null)return t(e.known_sum??0)},l=r!==null&&![r.run_count,r.metrics.duration,r.metrics.total_tokens,r.metrics.cost_brl].every(e=>e.unknown>0&&e.known_sum===0),u=e=>new Intl.NumberFormat(t).format(e),d=l?r===null?`Total`:`${t===`pt-BR`?`Subtotal filtrado`:`Filtered subtotal`} · ${u(r.entity_count)} ${t===`pt-BR`?`registros`:`records`}`:void 0,f=!l||r===null?void 0:s(r.metrics.cost_brl,e=>O(e,`BRL`,t));return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(y,{columns:[{key:`occurredAt`,label:t===`pt-BR`?`Última atividade`:`Last activity`,render:e=>pf(e.occurred_at,t),footer:d},{key:`entity`,label:t===`pt-BR`?`Registro`:`Record`,render:e=>(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`strong`,{children:e.title}),(0,c.jsx)(`small`,{children:e.id})]}),footer:!l||r===null?void 0:u(r.entity_count)},{key:`status`,label:`Status`,render:e=>e.status??`—`},{key:`runs`,label:t===`pt-BR`?`Invocações`:`Invocations`,render:e=>new Intl.NumberFormat(t).format(e.run_count),align:`right`,footer:!l||r===null?void 0:s(r.run_count,u)},{key:`duration`,label:t===`pt-BR`?`Tempo observado`:`Observed time`,render:o,align:`right`,footer:!l||r===null?void 0:s(r.metrics.duration,e=>e===0?`0`:w(e,t))},{key:`tokens`,label:`Tokens`,render:e=>a(e.metrics.total_tokens,e=>E(e,t)),align:`right`,footer:!l||r===null?void 0:s(r.metrics.total_tokens,e=>E(e,t))},{key:`cost`,label:t===`pt-BR`?`Custo registrado`:`Recorded cost`,render:e=>a(e.metrics.cost,n=>e.cost_currency===`BRL`||e.cost_currency===`USD`?O(n,e.cost_currency,t):new Intl.NumberFormat(t).format(n)),align:`right`,footer:f},...i===void 0?[]:[{key:`trace`,label:``,render:e=>(0,c.jsx)(`button`,{onClick:()=>i(e.id),type:`button`,children:t===`pt-BR`?`Abrir`:`Open`})}]],locale:t,pageSize:null,rowKey:e=>e.id,rows:e,sortable:!0}),(0,c.jsx)(yf,{locale:t,pagination:n})]})}function _f(e){return vf(e).metrics.duration.known_sum}function vf(e){let t=e.metrics.duration,n=e.metrics.total_tokens.known_sum;if(n<=0||t.known_sum>0)return e;let r=Jd(n);return r===null||r<=0?e:{...e,metrics:{...e.metrics,duration:{known_sum:r,unknown:0,complete:!0,coverage_ratio:1}}}}function yf({locale:e,pagination:t}){let n=t.total===0?0:t.offset+1,r=t.total===null?t.offset+t.limit:Math.min(t.offset+t.limit,t.total),i=Math.max(0,t.offset-t.limit),a=t.offset+t.limit;return(0,c.jsxs)(`nav`,{"aria-label":e===`pt-BR`?`Paginação dos dados agregados`:`Aggregate data pagination`,className:`ui-table-pagination`,children:[(0,c.jsx)(`button`,{disabled:t.loading||t.offset===0,onClick:()=>t.onChange(i),type:`button`,children:e===`pt-BR`?`Anterior`:`Previous`}),(0,c.jsx)(`span`,{"aria-live":`polite`,children:t.loading?e===`pt-BR`?`Carregando dados…`:`Loading data…`:t.total===null?`${n}–${r}${t.has_more?`+`:``}`:`${n}–${r} ${e===`pt-BR`?`de`:`of`} ${t.total}`}),(0,c.jsx)(`button`,{disabled:t.loading||!t.has_more&&(t.total===null||a>=t.total),onClick:()=>t.onChange(a),type:`button`,children:e===`pt-BR`?`Próxima`:`Next`}),t.error?(0,c.jsxs)(`span`,{role:`status`,children:[t.error,` `,(0,c.jsx)(`button`,{onClick:t.onRetry,type:`button`,children:e===`pt-BR`?`Tentar novamente`:`Retry`})]}):null]})}function $(e,t){let n=e===`pt-BR`?`Valor da projeção SQLite/API desta Invocação de Agente. Fato canônico nulo permanece indisponível e não é convertido em zero.`:`Value from this Agent Invocation's SQLite/API projection. A null canonical fact remains unavailable and is not converted to zero.`;return`${({duration:[`Tempo factual da invocação, quando capturado ou reconciliado.`,`Factual invocation duration, when captured or reconciled.`],inputTokens:[`Input total informado pela fonte; inclui a parcela de cache.`,`Source-reported total input; includes the cached portion.`],cachedInputTokens:[`Parcela de cache já incluída no input total.`,`Cached portion already included in total input.`],outputTokens:[`Output total informado pela fonte; inclui a parcela de raciocínio.`,`Source-reported total output; includes the reasoning portion.`],reasoningTokens:[`Parcela de raciocínio já incluída no output total.`,`Reasoning portion already included in total output.`],totalTokens:[`Soma de entrada e saída quando ambas são conhecidas; caso contrário, total informado pela fonte.`,`Input plus output when both are known; otherwise the source-reported total.`],inputRate:[`Tarifa efetiva de entrada em USD por milhão de tokens.`,`Effective input rate in USD per million tokens.`],cacheRate:[`Tarifa efetiva de entrada em cache em USD por milhão de tokens.`,`Effective cached-input rate in USD per million tokens.`],outputRate:[`Tarifa efetiva de saída em USD por milhão de tokens.`,`Effective output rate in USD per million tokens.`],reasoningRate:[`Tarifa efetiva de raciocínio em USD por milhão de tokens.`,`Effective reasoning rate in USD per million tokens.`],contextMultiplier:[`Multiplicadores de contexto de entrada/saída aplicados aos segmentos internos.`,`Input/output context multipliers applied to internal segments.`],inputCost:[`Custo USD de entrada calculado com tokens e tarifa efetiva.`,`Input USD cost calculated from tokens and the effective rate.`],cacheCost:[`Custo USD da entrada em cache calculado com tokens e tarifa efetiva.`,`Cached-input USD cost calculated with tokens and the effective rate.`],outputCost:[`Custo USD de saída calculado com tokens e tarifa efetiva.`,`Output USD cost calculated with tokens and the effective rate.`],reasoningCost:[`Custo USD de raciocínio calculado com tokens e tarifa efetiva.`,`Reasoning USD cost calculated with tokens and the effective rate.`],standardCost:[`Custo USD no cenário Standard, antes do acréscimo de velocidade.`,`USD cost in the Standard scenario, before the speed uplift.`],speedUplift:[`Acréscimo USD do cenário Priority/Fast, já incluído no custo efetivo.`,`USD uplift from the Priority/Fast scenario, already included in the effective cost.`],finalUsd:[`Custo final estimado da API em USD, somando os componentes de custo desta invocação.`,`Estimated final API cost in USD, summing this invocation's cost components.`],fxRate:[`Câmbio BRL/USD atual aplicado para converter o custo final atual.`,`Current BRL/USD exchange rate used to convert the current final cost.`],recordedFxRate:[`Câmbio BRL/USD registrado no período da atividade.`,`BRL/USD exchange rate recorded for the activity period.`],recordedBrl:[`Custo final BRL registrado no período, preservado para auditoria histórica.`,`Final BRL cost recorded in the period, retained for historical audit.`],cost:[`Custo final atual: USD estimado ou sua conversão BRL pelo câmbio atual selecionado.`,`Current final cost: estimated USD or its BRL conversion at the selected current exchange rate.`]}[t]??[`Métrica numérica desta invocação.`,`Numeric metric for this invocation.`])[e===`pt-BR`?0:1]} ${n}`}function bf(){return(0,c.jsxs)(`svg`,{"aria-hidden":`true`,viewBox:`0 0 24 24`,children:[(0,c.jsx)(`circle`,{cx:`12`,cy:`5`,r:`1.5`}),(0,c.jsx)(`circle`,{cx:`12`,cy:`12`,r:`1.5`}),(0,c.jsx)(`circle`,{cx:`12`,cy:`19`,r:`1.5`})]})}function xf({locale:e,pagination:t}){let n=t.total===0?0:t.offset+1,r=t.total===null?t.offset+t.limit:Math.min(t.offset+t.limit,t.total),i=Math.max(0,t.offset-t.limit),a=t.offset+t.limit;return(0,c.jsxs)(`nav`,{"aria-label":e===`pt-BR`?`Paginação das invocações`:`Invocation pagination`,className:`ui-table-pagination`,children:[(0,c.jsx)(`button`,{disabled:t.loading||t.offset===0,onClick:()=>t.onChange(i),type:`button`,children:e===`pt-BR`?`Anterior`:`Previous`}),(0,c.jsx)(`span`,{"aria-live":`polite`,children:t.loading?e===`pt-BR`?`Carregando invocações…`:`Loading invocations…`:t.total===null?`${n}–${r}${t.has_more?`+`:``}`:`${n}–${r} ${e===`pt-BR`?`de`:`of`} ${t.total}`}),(0,c.jsx)(`button`,{disabled:t.loading||!t.has_more&&(t.total===null||a>=t.total),onClick:()=>t.onChange(a),type:`button`,children:e===`pt-BR`?`Próxima`:`Next`}),t.error?(0,c.jsxs)(`span`,{role:`status`,children:[t.error,` `,(0,c.jsx)(`button`,{onClick:t.onRetry,type:`button`,children:e===`pt-BR`?`Tentar novamente`:`Retry`})]}):null]})}var Sf={clip:`rect(0, 0, 0, 0)`,height:1,margin:-1,overflow:`hidden`,position:`absolute`,whiteSpace:`nowrap`,width:1};function Cf(e,t){return e===null?`—`:new Intl.NumberFormat(t,{maximumFractionDigits:0}).format(e)}function wf(e,t){return e===null?t===`pt-BR`?`Indisponível`:`Unavailable`:e===0?`0`:w(e,t)}function Tf(e,t){return e===null?`—`:O(e,`BRL`,t)}function Ef(e,t){return e===null?t===`pt-BR`?`Indisponível`:`Unavailable`:E(e,t)}function Df(e,t,n,r){if(t>=n)return e;let i=r===`pt-BR`?`Valor parcial: telemetria conhecida em ${t} de ${n} runs.`:`Partial value: telemetry is known for ${t} of ${n} runs.`;return(0,c.jsxs)(`span`,{title:i,children:[(0,c.jsx)(`span`,{"aria-hidden":`true`,children:e}),(0,c.jsx)(`span`,{style:Sf,children:`${i} ${e}`})]})}function Of({locale:e,rows:t}){return(0,c.jsx)(y,{columns:[{key:`developer`,label:e===`pt-BR`?`Desenvolvedor`:`Developer`,render:e=>(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`strong`,{children:e.login_snapshot??e.account_id}),(0,c.jsxs)(`small`,{children:[`#`,e.account_id]})]}),sortValue:e=>e.login_snapshot??e.account_id},{key:`prds`,label:`PRDs`,render:t=>Cf(t.prd_count,e),align:`right`},{key:`specs`,label:`SPECs`,render:t=>Cf(t.spec_count,e),align:`right`},{key:`tasks`,label:e===`pt-BR`?`Tarefas`:`Tasks`,render:t=>Cf(t.task_count,e),align:`right`},{key:`runs`,label:`Runs`,render:t=>Cf(t.run_count,e),align:`right`},{key:`tests`,label:e===`pt-BR`?`Testes`:`Tests`,render:t=>Cf(t.test_count,e),align:`right`},{key:`evidences`,label:e===`pt-BR`?`Evidências`:`Evidence`,render:t=>Cf(t.evidence_count,e),align:`right`},{key:`duration`,label:e===`pt-BR`?`Tempo`:`Time`,render:t=>Df(wf(t.total_duration_ms,e),t.duration_covered_runs,t.run_count,e),sortValue:e=>e.total_duration_ms,align:`right`},{key:`tokens`,label:`Tokens`,render:t=>Df(Ef(t.total_tokens,e),t.token_covered_runs,t.run_count,e),sortValue:e=>e.total_tokens,align:`right`},{key:`cost`,label:e===`pt-BR`?`Custos`:`Costs`,render:t=>Df(Tf(t.total_cost_brl,e),t.brl_covered_runs,t.run_count,e),sortValue:e=>e.total_cost_brl,align:`right`}],defaultSort:{key:`cost`,direction:`desc`},emptyMessage:e===`pt-BR`?`Nenhum dado disponível.`:`No data available.`,locale:e,pageSize:10,rowKey:e=>e.account_id,rows:t,scrollLabel:e===`pt-BR`?`Métricas por desenvolvedor`:`Developer metrics`,showColumnInfo:!0,sortable:!0})}function kf(e,t){let n=e.trim().toLowerCase();return n.length===0||n===`unknown`?t===`pt-BR`?`Sem modelo/provedor atribuído`:`No model/provider assigned`:e}function Af(e,t){return new Intl.NumberFormat(t,{maximumFractionDigits:0}).format(e??0)}function jf(e,t){return e===null?t===`pt-BR`?`Indisponível`:`Unavailable`:Af(e,t)}function Mf(e,t){return E(e??0,t)}function Nf(e,t,n){return e===null?n===`pt-BR`?`Indisponível`:`Unavailable`:O(e,t,n)}function Pf(e,t){return e===null?t===`pt-BR`?`Indisponível`:`Unavailable`:e===0?`0`:w(e,t)}var Ff=(e,t)=>Af(e,t),If=(e,t,n)=>Nf(e,t,n),Lf=(e,t)=>Pf(e,t),Rf=(e,t)=>nf(e,t),zf=(e,t)=>af(e,t),Bf=(e,t)=>rf(e,t),Vf=(e,t,n)=>cf(e,t,n);function Hf(e,t){return e.known_sum<=0&&!e.complete?t===`pt-BR`?`Indisponível`:`Unavailable`:e.known_sum<=0?`0`:w(e.known_sum,t)}function Uf(e){return e.known_sum>0||e.coverage_ratio>0}function Wf(e,t){return t?e===`pt-BR`?`Subtotal da página`:`Page subtotal`:`Total`}function Gf(e,t,n){return e===`BRL`?t:n}function Kf(e){return e.prd_id===null?e.spec_id===null?{label:`Tarefa avulsa`,tone:`task`}:{label:`SPEC`,tone:`spec`}:{label:`PRD`,tone:`prd`}}function qf({rows:e,onOpenRun:t,currency:n,locale:r,compact:i=!1,pagination:a}){let o=Wf(r,a!==void 0),s=t=>$d(e.map(e=>e[t])),l=$d(e.map(Jf)),u=ef(e),d=(0,c.jsx)(y,{columns:[{key:`startedAt`,label:r===`pt-BR`?`Data e hora`:`Date and time`,render:e=>pf(e.started_at,r),footer:o},{key:`run`,label:r===`pt-BR`?`Invocação`:`Agent invocation`,render:e=>(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`strong`,{children:e.run_id}),(0,c.jsx)(`small`,{children:e.task_title})]})},{key:`origin`,label:r===`pt-BR`?`Origem`:`Origin`,render:e=>{let t=Kf(e);return(0,c.jsx)(`span`,{className:`cost-run-origin cost-run-origin-${t.tone}`,children:t.label})}},{key:`duration`,label:r===`pt-BR`?`Tempo`:`Time`,description:$(r,`duration`),render:e=>Lf(e.duration_ms,r),sortValue:e=>e.duration_ms,align:`right`,footer:Lf(u,r)},{key:`agent`,label:r===`pt-BR`?`Agente`:`Agent`,render:e=>(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`strong`,{children:e.agent_name}),(0,c.jsx)(`small`,{children:`${e.run_kind===`run`?r===`pt-BR`?`Invocação do orquestrador`:`Orchestrator invocation`:r===`pt-BR`?`Invocação delegada`:`Delegated invocation`} · ${e.run_purpose}`})]})},{key:`model`,label:`Modelo`,render:e=>{let t=Zd(e);return t.detail===`-`?(0,c.jsx)(`strong`,{children:t.primary}):(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`strong`,{children:t.primary}),(0,c.jsx)(`small`,{children:t.detail})]})}},{key:`effort`,label:r===`pt-BR`?`Esforço`:`Effort`,render:e=>lf(e.effective_reasoning_effort,e.reasoning_effort,r)},{key:`speed`,label:r===`pt-BR`?`Velocidade`:`Speed`,render:e=>uf(e.service_tier,r)},{key:`inputTokens`,label:r===`pt-BR`?`Input total`:`Total input`,description:$(r,`inputTokens`),render:e=>Ff(e.input_tokens,r),sortValue:e=>e.input_tokens,align:`right`,footer:Ff(s(`input_tokens`),r)},{key:`cachedInputTokens`,label:r===`pt-BR`?`Tokens cache`:`Cached tokens`,description:$(r,`cachedInputTokens`),render:e=>Ff(e.cached_input_tokens,r),sortValue:e=>e.cached_input_tokens,align:`right`,footer:Ff(s(`cached_input_tokens`),r)},{key:`outputTokens`,label:r===`pt-BR`?`Output total`:`Total output`,description:$(r,`outputTokens`),render:e=>Ff(e.output_tokens,r),sortValue:e=>e.output_tokens,align:`right`,footer:Ff(s(`output_tokens`),r)},{key:`reasoningTokens`,label:r===`pt-BR`?`Tokens raciocínio`:`Reasoning tokens`,description:$(r,`reasoningTokens`),render:e=>Ff(e.reasoning_tokens,r),sortValue:e=>e.reasoning_tokens,align:`right`,footer:Ff(s(`reasoning_tokens`),r)},{key:`totalTokens`,label:`Total tokens`,description:$(r,`totalTokens`),render:e=>Ff(Jf(e),r),sortValue:e=>Jf(e),align:`right`,footer:Ff(l,r)},{key:`inputRate`,label:`USD/M entrada`,description:$(r,`inputRate`),render:e=>Rf(e.input_rate_usd_per_million,r),align:`right`},{key:`cacheRate`,label:`USD/M cache`,description:$(r,`cacheRate`),render:e=>Rf(e.cached_input_rate_usd_per_million,r),align:`right`},{key:`outputRate`,label:`USD/M saída`,description:$(r,`outputRate`),render:e=>Rf(e.output_rate_usd_per_million,r),align:`right`},{key:`reasoningRate`,label:`USD/M raciocínio`,description:$(r,`reasoningRate`),render:e=>Rf(e.reasoning_rate_usd_per_million,r),align:`right`},{key:`contextMultiplier`,label:`Mult. contexto E/S`,description:$(r,`contextMultiplier`),render:e=>Vf(e.context_input_multiplier,e.context_output_multiplier,r),align:`right`},{key:`speedMultiplier`,label:r===`pt-BR`?`Cenário velocidade API`:`API speed scenario`,description:Qd(r,`Cenário de preço efetivo observado nesta Invocação de Agente. Priority/Fast pode elevar as tarifas em relação ao cenário Standard.`,`Effective pricing scenario observed in this Agent Invocation. Priority/Fast may increase rates compared with the Standard scenario.`),render:e=>Xd(e.service_tier,r),align:`right`,hidden:!(t=>!i||tf(e,t))(e=>e.service_tier)},{key:`inputCost`,label:`USD entrada`,description:$(r,`inputCost`),render:e=>zf(e.input_cost_usd,r),align:`right`,footer:zf(s(`input_cost_usd`),r)},{key:`cacheCost`,label:`USD cache`,description:$(r,`cacheCost`),render:e=>zf(e.cached_input_cost_usd,r),align:`right`,footer:zf(s(`cached_input_cost_usd`),r)},{key:`outputCost`,label:`USD saída`,description:$(r,`outputCost`),render:e=>zf(e.output_cost_usd,r),align:`right`,footer:zf(s(`output_cost_usd`),r)},{key:`reasoningCost`,label:`USD raciocínio`,description:$(r,`reasoningCost`),render:e=>zf(e.reasoning_cost_usd,r),align:`right`,footer:zf(s(`reasoning_cost_usd`),r)},{key:`standardCost`,label:`USD padrão`,description:$(r,`standardCost`),render:e=>zf(e.standard_cost_usd,r),align:`right`,footer:zf(s(`standard_cost_usd`),r)},{key:`speedUplift`,label:`USD acréscimo rápido`,description:$(r,`speedUplift`),render:e=>zf(e.speed_uplift_usd,r),align:`right`,footer:zf(s(`speed_uplift_usd`),r)},{key:`finalUsd`,label:r===`pt-BR`?`USD estimado API`:`Estimated API USD`,description:$(r,`finalUsd`),render:e=>zf(e.estimated_usd,r),align:`right`,footer:zf(s(`estimated_usd`),r)},{key:`fxRate`,label:r===`pt-BR`?`Cotação atual`:`Current exchange rate`,description:$(r,`fxRate`),render:e=>Bf(e.fx_rate,r),align:`right`},{key:`recordedFxRate`,label:r===`pt-BR`?`Cotação no período`:`Period exchange rate`,description:$(r,`recordedFxRate`),render:e=>Bf(e.recorded_fx_rate,r),align:`right`},{key:`recordedBrl`,label:r===`pt-BR`?`Custo Final no Período`:`Period final cost`,description:$(r,`recordedBrl`),render:e=>If(e.recorded_brl,`BRL`,r),align:`right`,footer:If(s(`recorded_brl`),`BRL`,r)},{key:`cost`,label:r===`pt-BR`?`Custo Final atual`:`Current final cost`,description:$(r,`cost`),render:e=>If(n===`BRL`?e.estimated_brl:e.estimated_usd,n,r),sortValue:e=>Gf(n,e.estimated_brl,e.estimated_usd),align:`right`,footer:If(s(n===`BRL`?`estimated_brl`:`estimated_usd`),n,r)},{key:`trace`,label:``,render:e=>(0,c.jsx)(`button`,{"aria-label":`Abrir detalhes da invocação`,className:`cost-row-action`,onClick:n=>{n.stopPropagation(),t(e.run_id)},type:`button`,children:(0,c.jsx)(bf,{})})}],locale:r,pageSize:a?null:100,rowKey:e=>e.run_id,onRowClick:e=>t(e.run_id),rows:e,scrollLabel:df(r),showColumnInfo:!0,sortable:!0});return a?(0,c.jsxs)(c.Fragment,{children:[d,(0,c.jsx)(xf,{locale:r,pagination:a})]}):d}function Jf(e){return e.input_tokens!==null&&e.output_tokens!==null?e.input_tokens+e.output_tokens:e.total_tokens}function Yf(e,t){return t===`en-US`?e===`daily`?`Day`:e===`monthly`?`Month`:`Year`:e===`daily`?`Dia`:e===`monthly`?`Mês`:`Ano`}function Xf({rows:e,currency:t,locale:n,onOpenTrace:r,period:i,showDateTime:a=!0,showAgentIdentity:o=!1,showInvocationTasks:s=!1,showModelLifecycleDetails:l=!1,dateHeading:u,labelHeading:d,totals:f,loading:p=!1}){let m=e=>jf(o||l?e??0:e,n),h=e=>(o||l)&&e.known_sum<=0?`0`:Hf(e,n),g=e=>Nf(o||l?e??0:e,t,n),_=e=>e.conversation_count??null,v={runs:e.reduce((e,t)=>e+t.run_count,0),tasks:$d(e.map(e=>e.task_count)),prds:$d(e.map(e=>e.prd_count)),specs:$d(e.map(e=>e.spec_count)),evidences:$d(e.map(e=>e.evidence_count)),tests:$d(e.map(e=>e.test_count)),conversations:$d(e.map(_)),durationKnownMs:e.reduce((e,t)=>e+t.duration.known_sum,0),durationPartial:e.some(e=>!e.duration.complete),tokens:$d(e.map(e=>e.total_tokens)),usd:$d(e.map(e=>e.estimated_usd)),brl:$d(e.map(e=>e.estimated_brl))},b=f===void 0?v:{runs:f.run_count,tasks:f.task_count,prds:f.prd_count,specs:f.spec_count,evidences:f.evidence_count,tests:f.test_count,conversations:_(f)??v.conversations,durationKnownMs:f.duration.known_sum,durationPartial:!f.duration.complete,tokens:f.total_tokens,usd:f.estimated_usd,brl:f.estimated_brl},x=h(f?.duration??{known_sum:b.durationKnownMs,unknown:+!!b.durationPartial,complete:!b.durationPartial,coverage_ratio:+!b.durationPartial}),S=Mf(l?b.tokens??0:b.tokens,n),C=g(t===`BRL`?b.brl:b.usd),w=hf({locale:n,duration:x,tokens:S,cost:C,currency:t}),T=n===`pt-BR`?`Total geral`:`Grand total`;return(0,c.jsx)(y,{columns:[{key:`latestStartedAt`,label:u??(n===`pt-BR`?`Data e hora`:`Date and time`),render:e=>pf(e.latest_started_at,n),hidden:!a,footer:a?(0,c.jsx)(`output`,{"aria-label":T,children:`Total`}):void 0},...o?[{key:`persona`,label:`Persona`,render:e=>e.persona??``},{key:`job`,label:n===`pt-BR`?`Cargo`:`Job`,render:e=>e.job??``}]:[],{key:`label`,label:i===void 0?d??(n===`pt-BR`?`Grupo`:`Group`):Yf(i,n),render:e=>{if(i!==void 0)return(0,c.jsx)(`strong`,{children:mf(e.key,i,n)});let t=kf(e.label,n),r=t!==e.label;return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`strong`,{children:t}),r||e.key===e.label?null:(0,c.jsx)(`small`,{children:e.key})]})},sortValue:e=>e.key,footer:a?void 0:(0,c.jsx)(`output`,{"aria-label":T,children:`Total`})},...i===void 0&&!o&&!l?[{key:`runs`,label:n===`pt-BR`?`Invocações`:`Agent invocations`,render:e=>e.run_count,align:`right`,footer:b.runs},...o?[]:[{key:`tasks`,label:o||s?n===`pt-BR`?`Tarefas com invocação`:`Tasks with invocations`:n===`pt-BR`?`Tarefas criadas`:`Tasks created`,render:e=>e.task_count??0,align:`right`,footer:b.tasks}]]:[{key:`prds`,label:`PRDs`,render:e=>m(e.prd_count),sortValue:e=>e.prd_count??0,align:`right`,footer:m(b.prds),description:Qd(n,o?`PRDs com criação atribuída ao agente por Run registrado. Conta apenas vínculos observados, sem duplicar IDs.`:`PRDs criados por vínculo canônico com um único modelo financeiro observado. Sem essa prova, o indicador exibido é 0.`,`PRDs created through a canonical link to one observed financial model. Without that evidence, the displayed indicator is 0.`)},{key:`specs`,label:`SPECs`,render:e=>m(e.spec_count),sortValue:e=>e.spec_count??0,align:`right`,footer:m(b.specs),description:Qd(n,o?`SPECs com criação atribuída ao agente por Run registrado. Conta apenas vínculos observados, sem duplicar IDs.`:`SPECs criadas por vínculo canônico com um único modelo financeiro observado. Sem essa prova, o indicador exibido é 0.`,`SPECs created through a canonical link to one observed financial model. Without that evidence, the displayed indicator is 0.`)},{key:`tasks`,label:o?n===`pt-BR`?`Tarefas`:`Tasks`:l?`Tasks`:n===`pt-BR`?`Tarefas criadas`:`Tasks created`,render:e=>m(e.task_count),sortValue:e=>e.task_count??0,align:`right`,footer:m(b.tasks),description:Qd(n,o?`Tasks distintas em que o agente participou no período. Uma Task pode contar em vários agentes; o total soma essas participações entre agentes. Sem participação, mostra 0.`:`Tasks contam apenas quando creation_run_id tem um único modelo financeiro observável. Participação posterior não é criação; ausência ou multi-modelo exibe 0.`,`Tasks count only when creation_run_id has one observed financial model. Later participation is not creation; missing or multi-model linkage displays 0.`)},...l?[{key:`conversations`,label:`Conversations`,render:e=>m(_(e)),sortValue:e=>_(e)??0,align:`right`,footer:m(b.conversations),description:Qd(n,`Conversas canônicas, incluindo turns unassisted legados. Cada ID conta uma vez por modelo; um modelo múltiplo pode repetir. Run com Task e conversa de origem não cria Task adicional.`,`Canonical conversations, including legacy unassisted turns. Each ID counts once per model; a multi-model conversation may repeat. A Run with a Task and source conversation does not create an additional Task.`)}]:[],{key:`runs`,label:`Runs`,render:e=>e.run_count,sortValue:e=>e.run_count,align:`right`,footer:b.runs,description:Qd(n,o?`Chamadas observadas atribuídas ao agente no período selecionado.`:`Runs financeiros observados neste modelo, sem distribuir ou duplicar custo, tokens e tempo entre modelos.`,`Observed financial Runs for this model, without allocating or duplicating cost, tokens, or time across models.`)},{key:`tests`,label:n===`pt-BR`?`Testes`:`Tests`,render:e=>m(e.test_count),sortValue:e=>e.test_count??0,align:`right`,footer:m(b.tests),description:Qd(n,o?`Registros de testes distintos vinculados ao Run do agente no período. Revisões e outras validações não são contadas como testes.`:`Validações canônicas cuja artifact_run_id coincide com a Run registradora deste modelo; ausência de prova exibe 0.`,`Canonical validations whose artifact_run_id matches this model's registering Run; missing evidence displays 0.`)},{key:`evidences`,label:n===`pt-BR`?`Evidências`:`Evidence`,render:e=>m(e.evidence_count),sortValue:e=>e.evidence_count??0,align:`right`,footer:m(b.evidences),description:Qd(n,o?`Evidências distintas vinculadas ao Run do agente no período. Conta apenas vínculos registrados.`:`Evidências canônicas cuja artifact_run_id coincide com a Run registradora deste modelo; o total não duplica a mesma evidência. Sem prova, exibe 0.`,`Canonical evidence whose artifact_run_id matches this model's registering Run; the total does not duplicate the same evidence. Missing proof displays 0.`)}],{key:`duration`,label:`Tempo`,render:e=>h(e.duration),sortValue:e=>Uf(e.duration)?e.duration.known_sum:l?0:null,align:`right`,footer:(0,c.jsx)(`output`,{"aria-label":w,children:x})},{key:`tokens`,label:`Tokens`,render:e=>Mf(l?e.total_tokens??0:e.total_tokens,n),sortValue:e=>l?e.total_tokens??0:e.total_tokens,align:`right`,footer:(0,c.jsx)(`output`,{"aria-label":w,children:S})},{key:`cost`,label:o||l||i!==void 0?n===`pt-BR`?`Custos`:`Costs`:i===void 0?n===`pt-BR`?`Custo`:`Cost`:n===`pt-BR`?`Custos`:`Costs`,render:e=>g(t===`BRL`?e.estimated_brl:e.estimated_usd),sortValue:e=>l?Gf(t,e.estimated_brl,e.estimated_usd)??0:Gf(t,e.estimated_brl,e.estimated_usd),align:`right`,footer:(0,c.jsx)(`output`,{"aria-label":w,children:C})},...r?[{key:`trace`,label:``,render:e=>(0,c.jsx)(`button`,{"aria-label":`Abrir detalhes`,className:`cost-row-action`,onClick:t=>{t.stopPropagation(),r(e.key)},type:`button`,children:(0,c.jsx)(bf,{})})}]:[]],defaultSort:o?{key:`cost`,direction:`desc`}:i===void 0?null:{key:`label`,direction:`desc`},locale:n,emptyMessage:p?n===`pt-BR`?`Carregando…`:`Loading…`:n===`pt-BR`?`Nenhum dado disponível.`:`No data available.`,pageSize:100,rowKey:e=>e.key,onRowClick:r===void 0?void 0:e=>r(e.key),rows:e,scrollLabel:ff(n),showColumnInfo:!0,sortable:!0})}async function Zf({from:e,to:t,signal:n,fetcher:r=fetch}){let i=new URLSearchParams;e&&i.set(`from`,e),t&&i.set(`to`,t);let a=await r(`/api/v2/developers${i.size===0?``:`?${i}`}`,{...n===void 0?{}:{signal:n}});if(!a.ok)throw Error(`HTTP ${a.status}`);return(await a.json()).rows??[]}function Qf({from:e,to:t,locale:n}){let[r,i]=(0,a.useState)({loading:!0,error:null,rows:[]});return(0,a.useEffect)(()=>{let n=new AbortController;return i(e=>({...e,loading:!0,error:null})),Zf({...e===void 0?{}:{from:e},...t===void 0?{}:{to:t},signal:n.signal}).then(e=>i({loading:!1,error:null,rows:e})).catch(e=>{e.name!==`AbortError`&&i({loading:!1,error:e instanceof Error?e.message:`unknown`,rows:[]})}),()=>n.abort()},[e,t]),r.loading?(0,c.jsx)(`p`,{className:`operations-empty`,role:`status`,children:n===`pt-BR`?`Carregando desenvolvedores…`:`Loading developers…`}):r.error?(0,c.jsxs)(`p`,{className:`operations-empty`,role:`alert`,children:[n===`pt-BR`?`Não foi possível carregar desenvolvedores.`:`Could not load developers.`,` `,r.error]}):(0,c.jsx)(Of,{locale:n,rows:r.rows})}var $f=`month`;function ep(e,t=new Date){if(Number.isNaN(t.getTime()))throw RangeError(`Invalid Cost Monitor period anchor`);let n=tl(t.toISOString(),`day`);if(n===null)throw RangeError(`Invalid Cost Monitor period anchor`);if(e===`all`)return;if(e===`month`)return{from:`${n.slice(0,7)}-01`,to:n};let r=new Date(`${n}T12:00:00.000Z`);return r.setUTCDate(r.getUTCDate()-(Number(e)-1)),{from:tl(r.toISOString(),`day`)??n,to:n}}async function tp({currency:e,filters:t,from:n,refresh:r,to:i,signal:a,fetcher:o=fetch}){let s=new URLSearchParams({currency:e});if(s.set(`scope`,`summary`),n!==void 0&&s.set(`from`,n),i!==void 0&&s.set(`to`,i),t){let e=[[`provider`,t.provider],[`phase`,t.phase],[`agent`,t.agent],[`model`,t.model],[`status`,t.status]];for(let[t,n]of e)n&&s.set(t,n)}r&&s.set(`refresh`,r);let c=await o(`/api/v2/cost-monitor?${s.toString()}`,{...a===void 0?{}:{signal:a}});if(!c.ok){let e=(await c.text()).trim();throw Error(e||`Cost Monitor period request failed (${c.status})`)}return await c.json()}async function np({currency:e,filters:t,from:n,refresh:r,to:i,signal:a,fetcher:o=fetch}){let s=ip({currency:e,...t===void 0?{}:{filters:t},...n===void 0?{}:{from:n},...r===void 0?{}:{refresh:r},...i===void 0?{}:{to:i}});s.set(`scope`,`detail`);let c=await o(`/api/v2/cost-monitor?${s.toString()}`,{...a===void 0?{}:{signal:a}});if(!c.ok)throw Error((await c.text()).trim()||`Cost Monitor detail request failed (${c.status})`);return await c.json()}async function rp({currency:e,filters:t,from:n,limit:r=10,offset:i,refresh:a,to:o,signal:s,fetcher:c=fetch}){let l=ip({currency:e,...t===void 0?{}:{filters:t},...n===void 0?{}:{from:n},...a===void 0?{}:{refresh:a},...o===void 0?{}:{to:o}});l.set(`scope`,`runs`),l.set(`offset`,String(Math.max(0,i))),l.set(`limit`,String(Math.max(1,r)));let u=await c(`/api/v2/cost-monitor?${l.toString()}`,{...s===void 0?{}:{signal:s}});if(!u.ok){let e=(await u.text()).trim();throw Error(e||`Cost Monitor run page request failed (${u.status})`)}let d=await u.json();return{page_only:!0,runs:d.runs,run_page:d.run_page??{offset:i,limit:r,total:null,has_more:!1}}}function ip({currency:e,filters:t,from:n,refresh:r,to:i}){let a=new URLSearchParams({currency:e});if(n!==void 0&&a.set(`from`,n),i!==void 0&&a.set(`to`,i),t){let e=[[`provider`,t.provider],[`phase`,t.phase],[`agent`,t.agent],[`model`,t.model],[`status`,t.status]];for(let[t,n]of e)n&&a.set(t,n)}return r&&a.set(`refresh`,r),a}function ap({currency:e,data:t,dateRange:n,filters:r,lastUpdatedAt:i,loadPeriod:o,period:s,snapshotBacked:c=!1}){let[l,u]=(0,a.useState)(null),[d,f]=(0,a.useState)(null),[p,m]=(0,a.useState)(!1),[h,g]=(0,a.useState)(null),_=(0,a.useRef)(!0),v=(0,a.useRef)(0),y=(0,a.useRef)(o);y.current=o;let b=n===void 0?ep(s):{from:n.start,to:n.end},x=b?.from,S=b?.to,C=op({filters:r,period:s,snapshotBacked:c});return(0,a.useEffect)(()=>{let n=++v.current;if(!C){_.current=!1,m(!1),g(null),u(null),f(null);return}if(_.current&&Object.values(r).every(e=>e===``)){_.current=!1;return}_.current=!1;let a=new AbortController;return m(!0),g(null),y.current({currency:e,filters:r,...x===void 0||S===void 0?{}:{from:x,to:S},refresh:i,signal:a.signal}).then(e=>{a.signal.aborted||(f(t),u(e))}).catch(e=>{a.signal.aborted||g(e instanceof Error?e.message:String(e))}).finally(()=>{!a.signal.aborted&&n===v.current&&m(!1)}),()=>a.abort()},[e,t,r,i,x,S,C]),{activeData:sp(t,l,d),periodError:h,periodLoading:p}}function op({filters:e,period:t,snapshotBacked:n}){return!(n&&t===`month`&&Object.values(e).every(e=>e===``))}function sp(e,t,n){return t!==null&&n===e?t:e}var cp={query:``,provider:``,phase:``,origin:``,workType:``,agent:``,model:``,status:``,priority:``,risk:``};function lp({available:e,hideQuery:t=!1,locale:n,value:r,onChange:i}){let a=(e,t)=>i({...r,[e]:t}),o=n===`en-US`?{search:`Search costs`,placeholder:`Invocation, task, model…`,agent:`Agent`,model:`Model`,priority:`Priority`,risk:`Risk`,phase:`Phase`,origin:`Origin`,work:`Work`,all:`All`,clear:`Clear`}:{search:`Buscar custos`,placeholder:`Invocação, tarefa, modelo…`,agent:`Agente`,model:`Modelo`,priority:`Prioridade`,risk:`Risco`,phase:`Fase`,origin:`Entrada`,work:`Trabalho`,all:`Todos`,clear:`Limpar`};return(0,c.jsxs)(`section`,{className:`cost-filters`,children:[t?null:(0,c.jsx)(`input`,{"aria-label":o.search,onChange:e=>a(`query`,e.target.value),placeholder:o.placeholder,value:r.query}),(0,c.jsx)(up,{allLabel:o.all,label:`Provider`,onChange:e=>a(`provider`,e),options:e.providers,value:r.provider}),(0,c.jsx)(up,{allLabel:o.all,label:o.agent,onChange:e=>a(`agent`,e),options:e.agents,value:r.agent}),(0,c.jsx)(up,{allLabel:o.all,label:o.model,onChange:e=>a(`model`,e),options:e.models,value:r.model}),(0,c.jsx)(up,{label:`Status`,allLabel:o.all,onChange:e=>a(`status`,e),options:e.statuses,value:r.status}),(0,c.jsx)(up,{allLabel:o.all,label:o.priority,onChange:e=>a(`priority`,e),options:e.priorities,value:r.priority}),(0,c.jsx)(up,{allLabel:o.all,label:o.risk,onChange:e=>a(`risk`,e),options:e.risks,value:r.risk}),(0,c.jsx)(up,{allLabel:o.all,label:o.phase,onChange:e=>a(`phase`,e),options:e.phases,value:r.phase}),(0,c.jsx)(up,{allLabel:o.all,label:o.origin,onChange:e=>a(`origin`,e),options:e.origins,value:r.origin}),(0,c.jsx)(up,{allLabel:o.all,label:o.work,onChange:e=>a(`workType`,e),options:e.work_types,value:r.workType}),(0,c.jsx)(`button`,{onClick:()=>i(cp),type:`button`,children:o.clear})]})}function up({allLabel:e=`Todos`,label:t,value:n,options:r,onChange:i}){return(0,c.jsxs)(`label`,{children:[(0,c.jsx)(`span`,{children:t}),(0,c.jsxs)(`select`,{onChange:e=>i(e.target.value),value:n,children:[(0,c.jsx)(`option`,{value:``,children:e}),r.map(e=>(0,c.jsx)(`option`,{value:e,children:e},e))]})]})}var dp=[`#00b0f0`,`#5ea7ff`,`#a78bfa`,`#f5c451`,`#fb7185`,`#94a3b8`];function fp({rows:e,daily:t,models:n,summaryUsage:r,currency:i,locale:a}){let o=vp(a),s=pp(e,r,o),l=xp(n,i),u=Math.max(1,...l.map(e=>bp(e,i)??0)),d=Tp(t,i),f=Math.max(1,...d.map(e=>e.value??0)),p=d.map((e,t)=>({...e,x:t/(d.length-1)*100,y:82-(e.value??0)/f*58})),m=p.map(e=>`${e.x},${e.y}`).join(` `);return(0,c.jsxs)(`section`,{className:`cost-chart-grid`,"aria-label":o.analyticsView,children:[(0,c.jsxs)(`article`,{className:`cost-chart cost-chart-trend`,children:[(0,c.jsxs)(`header`,{children:[(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`small`,{children:o.trend}),(0,c.jsx)(`h2`,{children:o.dailyCost})]}),(0,c.jsx)(`strong`,{children:o.sevenDays})]}),(0,c.jsxs)(`div`,{className:`cost-trend-plot`,children:[(0,c.jsxs)(`svg`,{className:`cost-line-chart`,role:`img`,viewBox:`0 0 100 100`,preserveAspectRatio:`none`,children:[(0,c.jsx)(`title`,{children:o.dailyCostChart}),(0,c.jsx)(`defs`,{children:(0,c.jsxs)(`linearGradient`,{id:`cost-area`,x1:`0`,x2:`0`,y1:`0`,y2:`1`,children:[(0,c.jsx)(`stop`,{stopColor:`#00b0f0`,stopOpacity:`.34`}),(0,c.jsx)(`stop`,{offset:`1`,stopColor:`#00b0f0`,stopOpacity:`0`})]})}),(0,c.jsx)(`polygon`,{fill:`url(#cost-area)`,points:`0,100 ${m} 100,100`}),(0,c.jsx)(`polyline`,{fill:`none`,points:m,stroke:`#00b0f0`,strokeWidth:`2`,vectorEffect:`non-scaling-stroke`})]}),p.map((e,t)=>(0,c.jsx)(`span`,{className:`cost-trend-value${t===0?` is-first`:t===p.length-1?` is-last`:``}`,style:{left:`${e.x}%`,top:`${e.y}%`},children:_p(e.value,i,a)},e.key))]}),(0,c.jsx)(`div`,{className:`cost-trend-days`,children:p.map(e=>(0,c.jsx)(`span`,{children:Ep(e.date,a)},e.key))})]}),(0,c.jsxs)(`article`,{className:`cost-chart cost-chart-model`,children:[(0,c.jsx)(`header`,{children:(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`small`,{children:o.distribution}),(0,c.jsx)(`h2`,{children:o.costByModel})]})}),(0,c.jsx)(`div`,{className:`cost-bar-list`,children:l.slice(0,6).map((e,t)=>(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`span`,{children:e.label}),(0,c.jsx)(`i`,{children:(0,c.jsx)(`b`,{style:{width:`${(bp(e,i)??0)/u*100}%`,background:dp[t]}})}),(0,c.jsx)(`strong`,{children:_p(bp(e,i),i,a)})]},e.key))})]}),(0,c.jsxs)(`article`,{className:`cost-chart`,children:[(0,c.jsx)(`header`,{children:(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`small`,{children:o.composition}),(0,c.jsx)(`h2`,{children:o.tokenMix})]})}),(0,c.jsx)(`div`,{className:`token-mix`,children:s.map(([e,t],n)=>(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`i`,{style:{background:dp[n]}}),(0,c.jsx)(`span`,{children:e}),(0,c.jsx)(`strong`,{children:gp(t,a)})]},e))})]}),(0,c.jsxs)(`article`,{className:`cost-chart cost-chart-phases`,children:[(0,c.jsx)(`header`,{children:(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`small`,{children:o.phases}),(0,c.jsx)(`h2`,{children:o.totalsByPhase})]})}),(0,c.jsx)(`div`,{className:`phase-strip`,children:[`conversation`,`planning`,`execution`].map((t,n)=>{let o=mp(t,e,r,i);return(0,c.jsxs)(`div`,{children:[(0,c.jsxs)(`div`,{className:`phase-name`,children:[(0,c.jsx)(`i`,{style:{background:dp[n]}}),(0,c.jsx)(`span`,{children:yp(t,a)})]}),(0,c.jsxs)(`dl`,{className:`phase-metrics`,children:[(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`dt`,{children:a===`pt-BR`?`Tempo`:`Time`}),(0,c.jsx)(`dd`,{children:hp(o.duration,a)})]}),(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`dt`,{children:`Tokens`}),(0,c.jsx)(`dd`,{children:gp(o.tokens,a)})]}),(0,c.jsxs)(`div`,{children:[(0,c.jsx)(`dt`,{children:a===`pt-BR`?`Custo`:`Cost`}),(0,c.jsx)(`dd`,{children:_p(o.cost,i,a)})]})]})]},t)})})]})]})}function pp(e,t,n){let r=t?.total.tokens,i=r?.input??Dp(e.map(e=>e.input_tokens)),a=Sp(r?.cached_input??Dp(e.map(e=>e.cached_input_tokens)),i),o=r?.output??Dp(e.map(e=>e.output_tokens)),s=Sp(r?.reasoning??Dp(e.map(e=>e.reasoning_tokens)),o),c=wp(i,o,r?.total??Dp(e.map(e=>e.total_tokens)));return[[n.inputWithoutCache,Cp(i,a)],[n.cachedInput,a],[n.visibleOutput,Cp(o,s)],[n.reasoning,s],[n.total,c]]}function mp(e,t,n,r){let i=t.filter(t=>t.phase===e),a=n?.[e];return{duration:a?.duration_ms??Dp(i.map(e=>e.duration_provenance===`observed`||e.duration_provenance===`reconciled`||e.duration_provenance===`legacy_inferred`?e.duration_ms:null)),tokens:a?.tokens.total??Dp(i.map(e=>e.total_tokens)),cost:(r===`BRL`?a?.cost.brl:a?.cost.usd)??Dp(i.map(e=>r===`BRL`?e.estimated_brl:e.estimated_usd))}}function hp(e,t){return e===null||e===0?`0`:w(e,t)}function gp(e,t){return E(e??0,t)}function _p(e,t,n){return O(e??0,t,n)}function vp(e){return e===`pt-BR`?{analyticsView:`Visão analítica`,trend:`TENDÊNCIA`,dailyCost:`Custo diário`,sevenDays:`7 dias`,dailyCostChart:`Custo diário dos últimos 7 dias`,distribution:`DISTRIBUIÇÃO`,costByModel:`Custo por modelo`,composition:`COMPOSIÇÃO`,tokenMix:`Mix de tokens`,phases:`FASES`,totalsByPhase:`Totais por fase`,inputWithoutCache:`Input sem cache`,cachedInput:`Cache`,visibleOutput:`Output visível`,reasoning:`Raciocínio`,total:`Total (input + output)`}:{analyticsView:`Analytics overview`,trend:`TREND`,dailyCost:`Daily cost`,sevenDays:`7 days`,dailyCostChart:`Daily cost for the last 7 days`,distribution:`DISTRIBUTION`,costByModel:`Cost by model`,composition:`COMPOSITION`,tokenMix:`Token mix`,phases:`PHASES`,totalsByPhase:`Totals by phase`,inputWithoutCache:`Uncached input`,cachedInput:`Cached input`,visibleOutput:`Visible output`,reasoning:`Reasoning`,total:`Total (input + output)`}}function yp(e,t){return t===`en-US`?e===`conversation`?`Conversation`:e===`planning`?`Planning`:`Execution`:e===`conversation`?`Conversa`:e===`planning`?`Planejamento`:`Execução`}function bp(e,t){return t===`BRL`?e.estimated_brl:e.estimated_usd}function xp(e,t){return e.filter(e=>bp(e,t)!==null).sort((e,n)=>{let r=(bp(n,t)??0)-(bp(e,t)??0);return r===0?e.key.localeCompare(n.key):r})}function Sp(e,t){return e===null||t===null||e>t?null:e}function Cp(e,t){return e===null||t===null?null:e-t}function wp(e,t,n){return e!==null&&t!==null?e+t:n}function Tp(e,t){let n=new Map(e.map(e=>[e.key,bp(e,t)]));return[...n.keys()].sort().slice(-7).map(e=>({date:new Date(`${e}T12:00:00`),key:e,value:n.get(e)}))}function Ep(e,t){return new Intl.DateTimeFormat(t,{weekday:`short`,day:`2-digit`,month:`2-digit`}).format(e).replace(`.`,``)}function Dp(e){let t=e.filter(e=>e!==null);return t.length?t.reduce((e,t)=>e+t,0):null}function Op(e,t,n){let r=new Map(e.map(e=>[e.key,{...e,task_count:0,tasksActive:0,taskDaysActive:0,tasksCreated:0}])),i=new Map,a=new Set((t.evidences??[]).map(e=>e.id)),o=e=>{let t=Mp(e,n);if(t===null)return null;let i=r.get(t);if(i!==void 0)return i;let a={key:t,label:t,latest_started_at:Np(t,n),run_count:0,task_count:0,tasksCreated:0,tasksActive:0,taskDaysActive:0,event_count:0,total_tokens:null,estimated_usd:null,estimated_brl:null,duration_ms:null,duration:{known_sum:0,unknown:0,complete:!0,coverage_ratio:1},coverage:{events:0,tokens:0,usd:0,brl:0},prd_count:0,spec_count:0,evidence_count:0,test_count:0};return r.set(t,a),a};for(let e of t.prds){let t=o(e.created_at);t!==null&&(t.prd_count=(t.prd_count??0)+1)}for(let e of t.specs){let t=o(e.created_at);t!==null&&(t.spec_count=(t.spec_count??0)+1)}for(let e of t.tasks){let n=o(e.created_at);if(n===null)continue;n.task_count=(n.task_count??0)+1,n.tasksCreated=(n.tasksCreated??0)+1,t.validations===void 0&&(n.test_count=(n.test_count??0)+(e.test_count??0));let r=i.get(n.key)??new Set;for(let t of e.result?.evidence_ids??[])a.has(t)||r.add(t);i.set(n.key,r)}for(let e of t.evidences??[]){let t=o(e.observed_at);if(t===null)continue;let n=i.get(t.key)??new Set;n.add(e.id),i.set(t.key,n)}for(let[e,t]of i){let n=r.get(e);n!==void 0&&(n.evidence_count=t.size)}let s=new Map;for(let e of t.validations??[]){let t=o(e.executed_at);if(t===null)continue;let n=s.get(t.key)??new Set;n.add(e.id),s.set(t.key,n)}for(let[e,t]of s){let n=r.get(e);n!==void 0&&(n.test_count=t.size)}return[...r.values()].sort((e,t)=>t.key.localeCompare(e.key))}function kp(e,t){let n=e.length;return{tasks:n===0?null:e.reduce((e,t)=>e+(t.task_count??0),0)/n,specs:n===0?null:e.reduce((e,t)=>e+(t.spec_count??0),0)/n,prds:n===0?null:e.reduce((e,t)=>e+(t.prd_count??0),0)/n,durationMs:jp(e.map(e=>e.duration_ms),n),tokens:Ap(e.map(e=>e.total_tokens)),cost:Ap(e.map(e=>t===`BRL`?e.estimated_brl:e.estimated_usd))}}function Ap(e){let t=e.filter(e=>e!==null);return t.length===0?null:t.reduce((e,t)=>e+t,0)/t.length}function jp(e,t){return t===0?null:e.reduce((e,t)=>e+(t??0),0)/t}function Mp(e,t){return tl(e,t===`daily`?`day`:t===`monthly`?`month`:`year`)}function Np(e,t){return t===`annual`?`${e}-01-01T00:00:00.000Z`:t===`monthly`?`${e}-01T00:00:00.000Z`:`${e}T00:00:00.000Z`}function Pp({currency:e,locale:t,period:n,rows:r}){let i=kp(r,e);return(0,c.jsx)(A,{ariaLabel:Fp(n,t),metrics:[{label:Ip(t===`pt-BR`?`Tarefas`:`Tasks`,n,t),value:D(i.tasks,t,1)},{label:Ip(`SPECs`,n,t),value:D(i.specs,t,1)},{label:Ip(`PRDs`,n,t),value:D(i.prds,t,1)},{label:Ip(t===`pt-BR`?`Tempo`:`Time`,n,t),value:T(i.durationMs,t)},{label:Ip(`Tokens`,n,t),value:E(i.tokens,t)},{label:Ip(t===`pt-BR`?`Custo`:`Cost`,n,t),value:O(i.cost,e,t)}]})}function Fp(e,t){return t===`en-US`?e===`daily`?`Daily averages`:e===`monthly`?`Monthly averages`:`Annual averages`:e===`daily`?`Médias por dia`:e===`monthly`?`Médias por mês`:`Médias por ano`}function Ip(e,t,n){return n===`en-US`?`${e} ${t===`daily`?`Daily average`:t===`monthly`?`Monthly average`:`Annual average`}`:`${e} ${t===`daily`?`Médio por dia`:t===`monthly`?`Médio por mês`:`Médio por ano`}`}function Lp({rows:e,currency:t,details:n,locale:r,totalDurationMs:i,onOpenTrace:o}){let[s,l]=(0,a.useState)(null),u=e=>l(e),d=e.reduce((e,t)=>e+t.task_count,0),f=e.reduce((e,t)=>e+t.run_count,0),p=Bp(e.map(e=>e.duration_ms??Rp(e,n?.runs??[]))),m=e.reduce((e,t)=>e+(t.usage.total.tokens.total??0),0),h=e.reduce((e,n)=>e+(t===`BRL`?n.usage.total.cost.brl??0:n.usage.total.cost.usd??0),0);return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(y,{columns:[{key:`createdAt`,label:r===`pt-BR`?`Data e hora`:`Date and time`,render:e=>e.created_at?pf(e.created_at,r):`—`,footer:`Total`},{key:`entity`,label:`Entidade`,render:e=>(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(`strong`,{children:e.title}),(0,c.jsx)(`small`,{children:e.id})]})},{key:`status`,label:`Status`,render:e=>e.work_status},{key:`tasks`,label:`Tasks`,render:e=>e.task_count,align:`right`,footer:d},{key:`runs`,label:`Runs`,render:e=>e.run_count,align:`right`,footer:f},{key:`duration`,label:r===`pt-BR`?`Tempo`:`Time`,render:e=>{let t=e.duration_ms??Rp(e,n?.runs??[]);return t===null||t===0?`0`:w(t,r)},align:`right`,footer:i==null?p===null||p===0?`0`:w(p,r):w(i,r)},{key:`tokens`,label:`Tokens`,render:e=>E(e.usage.total.tokens.total,r),align:`right`,footer:E(m,r)},{key:`cost`,label:`Custo`,render:e=>O(t===`BRL`?e.usage.total.cost.brl:e.usage.total.cost.usd,t,r),sortValue:e=>Gf(t,e.usage.total.cost.brl,e.usage.total.cost.usd),align:`right`,footer:O(h,t,r)},{key:`rework`,label:`Retrabalho`,render:e=>ee(e.quality.rework_rate),align:`right`},{key:`actions`,label:``,render:e=>(0,c.jsx)(`button`,{"aria-label":`${r===`pt-BR`?`Abrir detalhes do`:`Open details for`} ${e.kind.toUpperCase()}`,className:`cost-row-action`,onClick:t=>{t.stopPropagation(),u(e)},type:`button`,children:(0,c.jsx)(Vp,{})})}],locale:r,pageSize:100,rowKey:e=>e.id,onRowClick:u,rows:e,showColumnInfo:!0,sortable:!0}),s?(0,c.jsx)(Wc,{label:s.kind===`prd`?`PRD`:`SPEC`,locale:r,onClose:()=>l(null),onOpenTrace:e=>{l(null),o(e)},row:s,runs:n?.runs??[],specs:n?.specs??e.filter(e=>e.kind===`spec`),tasks:n?.tasks??[]}):null]})}function Rp(e,t=[]){if(t.length===0)return null;let n=new Set(e.run_ids),r=new Map;for(let e of t)r.has(e.id)||r.set(e.id,e);let i=[...r.values()],a=t=>n.has(t.id)||(e.kind===`prd`?t.prd_id===e.id:t.spec_id===e.id),o=i.filter(e=>e.phase===`execution`&&(e.parent_run_id===null||!r.has(e.parent_run_id))&&a(e)),s=o.map(zp);return o.length===0||s.some(e=>e===null)?null:Bp(s)}function zp(e){return typeof e.source_duration_ms==`number`?e.source_duration_ms:(e.duration_provenance===`legacy_inferred`||e.duration_provenance===`reconciled`)&&typeof e.duration_ms==`number`?e.duration_ms:Jd(e.usage?.total.tokens.total??null)}function Bp(e){let t=e.filter(e=>e!==null);return t.length===0?null:t.reduce((e,t)=>e+t,0)}function Vp(){return(0,c.jsxs)(`svg`,{"aria-hidden":`true`,viewBox:`0 0 24 24`,children:[(0,c.jsx)(`circle`,{cx:`12`,cy:`5`,r:`1.5`}),(0,c.jsx)(`circle`,{cx:`12`,cy:`12`,r:`1.5`}),(0,c.jsx)(`circle`,{cx:`12`,cy:`19`,r:`1.5`})]})}function Hp(e,t){return e.query||t}function Up(e,t){return e===t}function Wp(e,t){return e!==null&&e.slice(0,e.lastIndexOf(`\0`))===t.slice(0,t.lastIndexOf(`\0`))}function Gp({locale:e,page:t}){return t.total_count===0?e===`pt-BR`?`Nenhum resultado`:`No results`:`${t.offset+1}–${Math.min(t.offset+t.limit,t.total_count)} ${e===`pt-BR`?`de`:`of`} ${t.total_count}`}function Kp(e,t){return{...e,task_count:t.task_count,prd_count:t.prd_count,spec_count:t.spec_count,total_tokens:t.total_tokens,estimated_brl:t.estimated_brl,duration_ms:t.duration_ms,duration:t.duration}}function qp({active:e=!0,view:t,range:n,globalQuery:r,limit:i=50,filters:o,revision:s,load:c}){let[l,u]=(0,a.useState)(0),[d,f]=(0,a.useState)(null),[p,m]=(0,a.useState)(null),[h,g]=(0,a.useState)(!1),[_,v]=(0,a.useState)(null),[y,b]=(0,a.useState)(0),x=(0,a.useRef)(0),S=(0,a.useRef)(c);S.current=c;let C=Hp(o,r),w=`${Object.values(o).join(`\0`)}\u0000${C}`,T=`${t}\u0000${i}\u0000${n?.from??``}\u0000${n?.to??``}\u0000${w}`,E=`${T}\u0000${l}\u0000${s}`,D=(0,a.useRef)({filters:o,limit:i,query:C,range:n,view:t});return D.current={filters:o,limit:i,query:C,range:n,view:t},(0,a.useEffect)(()=>{u(0)},[T]),(0,a.useEffect)(()=>{let t=++x.current;if(!e||!S.current){f(null),m(null),v(null),g(!1);return}let n=new AbortController,r=D.current;return g(!0),v(null),S.current({view:r.view,offset:l,limit:r.limit,...r.query?{query:r.query}:{},filters:r.filters,...r.range??{},signal:n.signal}).then(e=>{!n.signal.aborted&&t===x.current&&(f(e),m(E))}).catch(e=>{!n.signal.aborted&&t===x.current&&v(e instanceof Error?e.message:String(e))}).finally(()=>{!n.signal.aborted&&t===x.current&&g(!1)}),()=>n.abort()},[e,y,l,E]),{error:_,page:Up(p,E)?d:null,stalePage:Wp(p,E)?d:null,loading:h,offset:l,retry:()=>b(e=>e+1),setOffset:u}}function Jp({canonicalDurationTotal:e,compactPage:t,compactPageError:n,compactPageLoading:r,compactPageOffset:i,currency:a,detailError:o,detailLoading:s,developerPanel:l,dimensionalDetailPending:u,dimensionalRows:d,groups:f,groupPage:p,groupPageLoading:m,groupPageOffset:h,locale:g,macroDetails:_,onOpenRun:v,onOpenTrace:y,pagedRunRows:b,retryCompactPage:x,retryRunPage:S,rows:C,runPageData:w,runPageError:T,runPageLoading:E,runPageOffset:D,serverPagingEligible:O,setCompactPageOffset:k,setGroupPageOffset:ee,setDetailAttempt:A,setRunPageOffset:te,summaryUsage:j,summaryTotals:ne,useAggregateGroups:re,usingCompactPage:M,view:N,visibleExecutions:ie,visiblePrds:P,visibleSpecs:F}){let ae=[`daily`,`monthly`,`annual`,`agents`,`models`,`providers`].includes(N)&&p!==null?(0,c.jsxs)(`nav`,{"aria-label":g===`pt-BR`?`Paginação de grupos`:`Group pagination`,className:`cost-page-controls`,children:[(0,c.jsx)(`button`,{disabled:m||h===0,onClick:()=>ee(Math.max(0,h-p.limit)),type:`button`,children:g===`pt-BR`?`Anterior`:`Previous`}),(0,c.jsx)(`output`,{"aria-live":`polite`,children:Gp({locale:g,page:p})}),(0,c.jsx)(`button`,{disabled:m||!p.has_more,onClick:()=>ee(h+p.limit),type:`button`,children:g===`pt-BR`?`Próxima`:`Next`})]}):null;return(0,c.jsxs)(`section`,{"aria-busy":m||r||E||void 0,className:`cost-content cost-content-${N} ${N===`overview`?`cost-content-overview`:``}`,children:[s||u?(0,c.jsx)(`p`,{role:`status`,children:g===`pt-BR`?`Carregando dados…`:`Loading data…`}):null,o?(0,c.jsxs)(`p`,{role:`status`,children:[o,` `,(0,c.jsx)(`button`,{onClick:()=>A(e=>e+1),type:`button`,children:g===`pt-BR`?`Tentar novamente`:`Retry`})]}):null,N===`overview`&&!u&&!s&&o===null?(0,c.jsx)(fp,{currency:a,daily:f.daily,locale:g,models:f.models,rows:d,...re?{summaryUsage:j}:{}}):null,N===`developers`?l:null,N===`agentCalls`?(0,c.jsx)(c.Fragment,{children:(0,c.jsx)(qf,{currency:a,locale:g,onOpenRun:v,rows:O&&w!==null?b:C,...O&&(w?.run_page!==void 0||E||T!==null)?{pagination:{...w?.run_page??{offset:D,limit:10,total:null,has_more:!1},error:T,loading:E,onChange:te,onRetry:S}}:{}})}):null,M?(0,c.jsx)(gf,{locale:g,...N===`tasks`?{onOpenTrace:y}:{},pagination:{offset:t?.offset??i,limit:t?.limit??50,total:t?.total??null,has_more:t?.has_more??!1,loading:r,error:n,onChange:k,onRetry:x},rows:t?.rows??[],subtotal:t?.subtotal??null}):null,N===`executions`&&!M?(0,c.jsx)(he,{locale:g,rows:ie}):null,N===`conversations`&&!M?(0,c.jsx)(Xf,{currency:a,labelHeading:g===`pt-BR`?`Conversa`:`Conversation`,locale:g,rows:f.conversations}):null,N===`tasks`&&!M?(0,c.jsx)(Xf,{currency:a,dateHeading:g===`pt-BR`?`Criada em`:`Created at`,labelHeading:g===`pt-BR`?`Tarefa`:`Task`,locale:g,onOpenTrace:y,rows:f.tasks}):null,N===`prds`&&!M?(0,c.jsx)(Lp,{currency:a,locale:g,onOpenTrace:y,rows:P,totalDurationMs:e,..._?{details:_}:{}}):null,N===`specs`&&!M?(0,c.jsx)(Lp,{currency:a,locale:g,onOpenTrace:y,rows:F,totalDurationMs:e,..._?{details:_}:{}}):null,[`providers`,`agents`,`models`].map(e=>N===e&&!u&&!s&&o===null?(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(Xf,{currency:a,labelHeading:e===`models`?g===`pt-BR`?`Modelo LLM`:`LLM model`:e===`agents`?g===`pt-BR`?`Zaip Agentes`:`ZAIP agents`:g===`pt-BR`?`Provedor`:`Providers`,locale:g,loading:m,rows:f[e],...e===`models`?p?.totals===void 0?{}:{totals:p.totals}:e===`providers`?{totals:ne}:p?.totals===void 0?{}:{totals:p.totals},...e===`agents`?{showDateTime:!1,showAgentIdentity:!0}:e===`models`?{showDateTime:!1,showModelLifecycleDetails:!0}:e===`providers`?{showDateTime:!1,showInvocationTasks:!0}:{}},e),ae]}):null),N===`daily`||N===`monthly`||N===`annual`?(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(Pp,{currency:a,locale:g,period:N,rows:f[N]}),(0,c.jsx)(Xf,{currency:a,locale:g,loading:m,period:N,rows:f[N],showDateTime:!1,totals:p?.totals===void 0?ne:Kp(p.totals,ne)}),ae]}):null]})}function Yp({groupError:e,locale:t,periodError:n,retryGroup:r}){return(0,c.jsxs)(c.Fragment,{children:[n?(0,c.jsx)(`p`,{className:`cost-period-error`,role:`status`,children:t===`pt-BR`?`Não foi possível carregar o período selecionado: ${n}`:`Could not load the selected period: ${n}`}):null,e?(0,c.jsxs)(`p`,{className:`cost-period-error`,role:`status`,children:[t===`pt-BR`?`Não foi possível carregar esta aba: ${e}`:`Could not load this tab: ${e}`,(0,c.jsx)(`button`,{onClick:r,type:`button`,children:t===`pt-BR`?`Tentar novamente`:`Try again`})]}):null]})}function Xp({locale:e}){return e===`pt-BR`?(0,c.jsxs)(`svg`,{"aria-hidden":`true`,className:`cost-locale-flag`,viewBox:`0 0 24 24`,children:[(0,c.jsx)(`rect`,{fill:`#18864b`,height:`24`,rx:`5`,width:`24`}),(0,c.jsx)(`path`,{d:`m12 3.8 8.2 8.2L12 20.2 3.8 12 12 3.8Z`,fill:`#f6d64a`}),(0,c.jsx)(`circle`,{cx:`12`,cy:`12`,fill:`#1b4f9c`,r:`4.2`}),(0,c.jsx)(`path`,{d:`M8.8 11.2c1.9-1 4.5-1 6.4 0`,fill:`none`,stroke:`#fff`,strokeWidth:`.8`})]}):(0,c.jsxs)(`svg`,{"aria-hidden":`true`,className:`cost-locale-flag`,viewBox:`0 0 24 24`,children:[(0,c.jsx)(`rect`,{fill:`#fff`,height:`24`,rx:`5`,width:`24`}),(0,c.jsx)(`path`,{d:`M0 3h24v3H0Zm0 6h24v3H0Zm0 6h24v3H0Zm0 6h24v3H0Z`,fill:`#bd3d44`}),(0,c.jsx)(`path`,{d:`M0 0h11v11H0Z`,fill:`#192f6b`}),(0,c.jsx)(`path`,{d:`m2.3 2.1.5 1 .9.1-.7.7.2 1-.9-.5-.9.5.2-1-.7-.7.9-.1.5-1Zm4 0 .5 1 .9.1-.7.7.2 1-.9-.5-.9.5.2-1-.7-.7.9-.1.5-1Z`,fill:`#fff`})]})}function Zp(){return(0,c.jsx)(`svg`,{"aria-hidden":`true`,className:`cost-locale-chevron`,fill:`none`,viewBox:`0 0 24 24`,children:(0,c.jsx)(`path`,{d:`m6 9 6 6 6-6`,stroke:`currentColor`,strokeLinecap:`round`,strokeLinejoin:`round`,strokeWidth:`2`})})}function Qp(){return(0,c.jsx)(`svg`,{"aria-hidden":`true`,className:`cost-filter-icon`,fill:`none`,viewBox:`0 0 24 24`,children:(0,c.jsx)(`path`,{d:`M3 6h18M7 12h10m-7 6h4`})})}function $p(){return(0,c.jsxs)(`svg`,{"aria-hidden":`true`,className:`cost-settings-icon`,fill:`none`,viewBox:`0 0 24 24`,children:[(0,c.jsx)(`path`,{d:`M12.22 2h-.44a2 2 0 0 0-2 2v.18a2 2 0 0 1-1 1.73l-.43.25a2 2 0 0 1-2 0l-.15-.08a2 2 0 0 0-2.73.73l-.22.38a2 2 0 0 0 .73 2.73l.15.09a2 2 0 0 1 1 1.74v.51a2 2 0 0 1-1 1.74l-.15.09a2 2 0 0 0-.73 2.73l.22.38a2 2 0 0 0 2.73.73l.15-.08a2 2 0 0 1 2 0l.43.25a2 2 0 0 1 1 1.73V20a2 2 0 0 0 2 2h.44a2 2 0 0 0 2-2v-.18a2 2 0 0 1 1-1.73l.43-.25a2 2 0 0 1 2 0l.15.08a2 2 0 0 0 2.73-.73l.22-.38a2 2 0 0 0-.73-2.73l-.15-.09a2 2 0 0 1-1-1.74v-.51a2 2 0 0 1 1-1.74l.15-.09a2 2 0 0 0 .73-2.73l-.22-.38a2 2 0 0 0-2.73-.73l-.15.08a2 2 0 0 1-2 0l-.43-.25a2 2 0 0 1-1-1.73V4a2 2 0 0 0-2-2Z`}),(0,c.jsx)(`circle`,{cx:`12`,cy:`12`,r:`3`})]})}var em=new URL(`/assets/logo_novo_azul-BBx5pA2B.png`,``+import.meta.url).href;function tm(e,t){return e===t?null:t}function nm({currency:e,filters:t,loading:n,locale:r,onCurrencyChange:i,onFiltersChange:a,onLocaleChange:o,onPopupChange:s,onPeriodChange:l,onRefresh:u,period:d,popup:f,text:p,updatedLabel:m,filtersAvailable:h}){let g=f===`filters`,_=f===`locale`,v=f===`settings`,y=e=>{o(e)};return(0,c.jsxs)(c.Fragment,{children:[(0,c.jsxs)(`nav`,{"aria-label":`Navegação do Cost Monitor`,className:`cost-monitor-nav`,children:[(0,c.jsxs)(`div`,{className:`cost-monitor-brand`,children:[(0,c.jsx)(`strong`,{className:`cost-monitor-title`,children:p.title}),(0,c.jsx)(`small`,{className:`cost-last-updated`,children:m})]}),(0,c.jsx)(`img`,{alt:`ZAIP`,className:`cost-monitor-logo`,src:em}),(0,c.jsxs)(`div`,{className:`cost-nav-actions`,children:[(0,c.jsx)(`button`,{"aria-label":p.refresh,className:`cost-nav-icon cost-refresh-action`,disabled:n,onClick:u,type:`button`,children:`↻`}),(0,c.jsxs)(`div`,{className:`cost-nav-popup-anchor cost-filter-action`,children:[(0,c.jsxs)(`button`,{className:g?`cost-nav-button is-active`:`cost-nav-button`,onClick:()=>s(tm(f,`filters`)),type:`button`,children:[(0,c.jsx)(Qp,{}),` `,p.filters]}),g?(0,c.jsx)(`div`,{className:`cost-nav-popup cost-nav-filter-popup`,children:(0,c.jsx)(lp,{available:h,hideQuery:!1,locale:r,onChange:a,value:t})}):null]}),(0,c.jsxs)(`div`,{className:`cost-nav-popup-anchor cost-locale-action`,children:[(0,c.jsxs)(`button`,{className:_?`cost-nav-button is-active`:`cost-nav-button`,onClick:()=>s(tm(f,`locale`)),type:`button`,children:[(0,c.jsx)(Xp,{locale:r}),r===`pt-BR`?`PT-BR`:`EN-US`,(0,c.jsx)(Zp,{})]}),_?(0,c.jsxs)(`div`,{className:`cost-nav-popup cost-nav-locale-popup`,children:[(0,c.jsxs)(`button`,{onClick:()=>y(`pt-BR`),type:`button`,children:[(0,c.jsx)(Xp,{locale:`pt-BR`}),` Português do Brasil `,r===`pt-BR`?`✓`:``]}),(0,c.jsxs)(`button`,{onClick:()=>y(`en-US`),type:`button`,children:[(0,c.jsx)(Xp,{locale:`en-US`}),` English `,r===`en-US`?`✓`:``]})]}):null]}),(0,c.jsxs)(`div`,{className:`cost-nav-popup-anchor cost-settings-action`,children:[(0,c.jsx)(`button`,{"aria-label":p.settings,className:v?`cost-nav-icon is-active`:`cost-nav-icon`,onClick:()=>s(tm(f,`settings`)),type:`button`,children:(0,c.jsx)($p,{})}),v?(0,c.jsxs)(`div`,{className:`cost-nav-popup cost-nav-settings-popup`,children:[(0,c.jsxs)(`div`,{className:`cost-mobile-settings`,children:[(0,c.jsx)(`small`,{className:`cost-mobile-updated`,children:m}),(0,c.jsxs)(`button`,{disabled:n,onClick:u,type:`button`,children:[`↻`,` `,n?r===`pt-BR`?`Atualizando…`:`Refreshing…`:p.refresh]}),(0,c.jsxs)(`label`,{children:[(0,c.jsx)(`span`,{children:r===`pt-BR`?`Idioma`:`Language`}),(0,c.jsxs)(`select`,{onChange:e=>y(e.target.value),value:r,children:[(0,c.jsx)(`option`,{value:`pt-BR`,children:`Português do Brasil`}),(0,c.jsx)(`option`,{value:`en-US`,children:`English`})]})]}),(0,c.jsxs)(`div`,{className:`cost-mobile-filters`,children:[(0,c.jsx)(`strong`,{children:p.filters}),(0,c.jsx)(lp,{available:h,hideQuery:!1,locale:r,onChange:a,value:t})]})]}),(0,c.jsxs)(`label`,{children:[(0,c.jsx)(`span`,{children:p.currency}),(0,c.jsxs)(`select`,{onChange:e=>i(e.target.value),value:e,children:[(0,c.jsx)(`option`,{value:`BRL`,children:`BRL · R$`}),(0,c.jsx)(`option`,{value:`USD`,children:`USD · $`})]})]})]}):null]})]})]}),(0,c.jsxs)(`header`,{className:`cost-hero`,children:[(0,c.jsx)(`p`,{className:`cost-hero-description`,children:p.subtitle}),(0,c.jsxs)(`label`,{className:`cost-period`,children:[(0,c.jsx)(`span`,{children:p.period}),(0,c.jsxs)(`select`,{onChange:e=>l(e.target.value),value:d,children:[(0,c.jsx)(`option`,{value:`all`,children:p.allTime}),(0,c.jsx)(`option`,{value:`7`,children:p.last7}),(0,c.jsx)(`option`,{value:`30`,children:p.last30}),(0,c.jsx)(`option`,{value:`90`,children:p.last90}),(0,c.jsx)(`option`,{value:`month`,children:p.thisMonth})]})]})]})]})}function rm({overview:e,currency:t,locale:n}){let r=n===`pt-BR`,i=t===`BRL`?e.estimated_brl:e.estimated_usd;return(0,c.jsx)(`section`,{"aria-label":`Resumo de custos`,className:`cost-summary`,children:[[r?`Custo estimado`:`Estimated cost`,O(i,t,n),r?`Período atual`:`Current period`],[`Tokens`,E(e.total_tokens,n),r?`${E(e.known_tokens_per_cycle,n)} tokens/ciclo`:`${E(e.known_tokens_per_cycle,n)} tokens/cycle`],[r?`BRL registrado`:`Recorded BRL`,O(e.recorded_brl,`BRL`,n),r?`Histórico fixado no registro`:`Historical value fixed when recorded`],[r?`Tarefas criadas`:`Tasks created`,String(e.task_count),r?`${e.task_count} no período`:`${e.task_count} in period`],[r?`Invocações de Agentes`:`Agent Invocations`,String(e.run_count),r?`${e.event_count} segmentos de uso`:`${e.event_count} usage segments`]].map(([e,t,n])=>(0,c.jsxs)(`article`,{children:[(0,c.jsx)(`span`,{children:e}),(0,c.jsx)(`strong`,{children:t}),(0,c.jsx)(`small`,{children:n})]},e))})}function im(e,t){let n=t.query.trim().toLowerCase();return(!n||[e.run_id,e.task_title,e.model,e.requested_model,e.agent,e.agent_name].some(e=>e.toLowerCase().includes(n)))&&(!t.provider||Rd(e.provider)===t.provider)&&(!t.agent||e.agent_name===t.agent)&&(!t.model||e.model===t.model)&&(!t.status||e.task_status===t.status)&&(!t.priority||e.priority===t.priority)&&(!t.risk||e.risk===t.risk)&&(!t.phase||e.phase===t.phase)&&(!t.origin||e.origin===t.origin)&&(!t.workType||e.work_type===t.workType)}function am(e,t){if(!t)return!0;let n=t.query.trim().toLocaleLowerCase(),r=!n||[e.run_id,e.task_id,e.task_title,e.provider,e.agent,e.agent_name,e.model,e.requested_model,e.phase].some(e=>e?.toLocaleLowerCase().includes(n));if(t.dateRange===void 0)return r;let i=tl(e.started_at,`day`)??e.started_at.slice(0,10);return i>=t.dateRange.start&&i<=t.dateRange.end&&r}function om(e,t,n=t,r=`all_invocations`){let i=Yd(e,r),a=new Map;for(let n of e)a.set(t(n),[...a.get(t(n))??[],n]);return[...a].map(([e,t])=>{let a=Vd(i.filter(e=>t.includes(e)),r===`all_execution`?`all_execution`:`all_invocations`),o=new Set(t.flatMap(e=>e.task_id?[e.task_id]:[])).size;return{duration_ms:a.complete?a.known_sum:null,duration:a,key:e,label:n(t[0]),latest_started_at:t.reduce((e,t)=>t.started_at>e?t.started_at:e,t[0]?.started_at??``),run_count:t.length,task_count:o,tasksActive:o,taskDaysActive:o,prd_count:0,spec_count:0,evidence_count:0,test_count:0,event_count:t.reduce((e,t)=>e+(t.event_count??0),0),total_tokens:zd(t.map(e=>e.total_tokens)),estimated_usd:zd(t.map(e=>e.estimated_usd)),estimated_brl:zd(t.map(e=>e.estimated_brl)),coverage:t.reduce((e,t)=>({events:e.events+t.coverage.events,tokens:e.tokens+t.coverage.tokens,usd:e.usd+t.coverage.usd,brl:e.brl+t.coverage.brl}),{events:0,tokens:0,usd:0,brl:0})}}).sort((e,t)=>t.latest_started_at.localeCompare(e.latest_started_at))}function sm(e,t){if(t===void 0)return!0;let n=t.query.trim().toLowerCase();if(n&&![e.id??``,e.title??``].some(e=>e.toLowerCase().includes(n)))return!1;if(t.dateRange===void 0)return!0;if(e.created_at===null)return!1;let r=tl(e.created_at,`day`)??e.created_at.slice(0,10);return r>=t.dateRange.start&&r<=t.dateRange.end}var cm={"pt-BR":{back:`Voltar - Dashboard`,title:`ZAIP Cost Monitor`,subtitle:`Visão Git-native de Custos, Tokens e Tempo de cada Tarefa, SPEC ou PRD.`,refresh:`Atualizar`,refreshing:`Atualizando…`,filters:`Filtros`,settings:`Configurações`,language:`Idioma`,currency:`Moeda`,kicker:`ZAIP-AIOS • COST MONITOR`,heading:`Custos e tokens`,intro:`Telemetria derivada localmente, atribuída por invocação de agente, tarefa, fase e origem.`,period:`Período`,allTime:`Todo o período`,last7:`Últimos 7 dias`,last30:`Últimos 30 dias`,last90:`Últimos 90 dias`,thisMonth:`Este mês`,noData:`Sem dados no filtro atual.`,tabs:{overview:`Visão geral`,models:`Modelos LLM`,agentCalls:`Invocações de Agentes`,executions:`Execuções`,conversations:`Conversas`,tasks:`Tarefas`,prds:`PRD`,specs:`SPEC`,providers:`Provedores`,agents:`Zaip Agentes`,daily:`Diário`,monthly:`Mensal`,annual:`Anual`,developers:`Desenvolvedores`}},"en-US":{back:`Back - Dashboard`,title:`ZAIP Cost Monitor`,subtitle:`Git-native view of Costs, Tokens and Time for each Task, SPEC, or PRD.`,refresh:`Refresh`,refreshing:`Refreshing…`,filters:`Filters`,settings:`Settings`,language:`Language`,currency:`Currency`,kicker:`ZAIP-AIOS • COST MONITOR`,heading:`Costs and tokens`,intro:`Locally derived telemetry attributed by agent invocation, task, phase, and origin.`,period:`Period`,allTime:`All time`,last7:`Last 7 days`,last30:`Last 30 days`,last90:`Last 90 days`,thisMonth:`This month`,noData:`No data for the current filter.`,tabs:{overview:`Overview`,models:`Models`,agentCalls:`Agent Invocations`,executions:`Executions`,conversations:`Conversations`,tasks:`Tasks`,prds:`PRDs`,specs:`SPECs`,providers:`Providers`,agents:`Agents`,daily:`Daily`,monthly:`Monthly`,annual:`Annual`,developers:`Developers`}}};function lm(e){return e===`pt-BR`?`BRL`:`USD`}function um(e,t){return e.find(e=>e.id===t)??null}function dm(e,t){return e===t}function fm(e,t){return t??e}function pm(e,t){if(e.length===0)return{...t,run_count:0,task_count:0,event_count:0,total_tokens:null,estimated_usd:null,estimated_brl:null,recorded_usd:null,recorded_brl:null,average_run_cost_usd:null,average_run_cost_brl:null,average_run_duration_ms:null,known_tokens_per_cycle:null,top_10_token_share:null,coverage:{events:0,tokens:0,usd:0,brl:0}};let n=e.reduce((e,t)=>({events:e.events+t.coverage.events,tokens:e.tokens+t.coverage.tokens,usd:e.usd+t.coverage.usd,brl:e.brl+t.coverage.brl}),{events:0,tokens:0,usd:0,brl:0}),r=e.filter(e=>e.total_tokens!==null),i=r.reduce((e,t)=>e+(t.total_tokens??0),0),a=r.reduce((e,t)=>e+(t.event_count??0),0),o=[...r].sort((e,t)=>(t.total_tokens??0)-(e.total_tokens??0)).slice(0,10).reduce((e,t)=>e+(t.total_tokens??0),0);return{task_count:new Set(e.flatMap(e=>e.task_id?[e.task_id]:[])).size,run_count:e.length,event_count:e.reduce((e,t)=>e+(t.event_count??0),0),total_tokens:zd(e.map(e=>e.total_tokens)),estimated_usd:zd(e.map(e=>e.estimated_usd)),estimated_brl:zd(e.map(e=>e.estimated_brl)),recorded_usd:zd(e.map(e=>e.recorded_usd)),recorded_brl:zd(e.map(e=>e.recorded_brl)),average_run_cost_usd:mm(e.map(e=>e.estimated_usd)),average_run_cost_brl:mm(e.map(e=>e.estimated_brl)),average_run_duration_ms:mm(Yd(e).map(e=>e.duration_ms)),known_tokens_per_cycle:a===0?null:i/a,top_10_token_share:i===0?null:o/i,coverage:n}}function mm(e){let t=e.filter(e=>e!==null);return t.length?t.reduce((e,t)=>e+t,0)/t.length:null}var hm=`daily`,gm=[`daily`,`monthly`,`annual`,`developers`,`overview`,`executions`,`agentCalls`,`agents`,`models`,`providers`,`tasks`,`specs`,`prds`,`conversations`];function _m({embedded:e,globalDateRange:t,hasLocalCostFilters:n,period:r,runPageRange:i}){if(!(e&&t===void 0&&r===`month`&&!n))return i}function vm(e){return _m(e)}function ym(e){return e===`tasks`||e===`specs`||e===`prds`||e===`executions`||e===`conversations`?e:null}function bm(e,t){return e!==null&&e.slice(0,e.lastIndexOf(`\0`))===t.slice(0,t.lastIndexOf(`\0`))}function xm({view:e,load:t,limit:n=50,range:r,query:i,filters:o,revision:s}){let[c,l]=(0,a.useState)(0),[u,d]=(0,a.useState)(null),[f,p]=(0,a.useState)(null),[m,h]=(0,a.useState)(!1),[g,_]=(0,a.useState)(null),[v,y]=(0,a.useState)(0),b=(0,a.useRef)(0),x=(0,a.useRef)(t);x.current=t;let S=t!==void 0,C=r?.from,w=r?.to,T=Object.values(o).join(`\0`),E=`${e}\u0000${n}\u0000${i??``}\u0000${C??``}\u0000${w??``}\u0000${T}`,D=`${E}\u0000${c}\u0000${s}`,O=(0,a.useRef)({filters:o,limit:n,query:i,rangeFrom:C,rangeTo:w});return O.current={filters:o,limit:n,query:i,rangeFrom:C,rangeTo:w},(0,a.useEffect)(()=>{l(0)},[E]),(0,a.useEffect)(()=>{let t=ym(e);if(t===null||!S){d(null),_(null),h(!1);return}let n=new AbortController,r=++b.current;h(!0),_(null);let i=x.current;if(i===void 0)return;let a=O.current;return i({kind:t,offset:c,limit:a.limit,...a.rangeFrom===void 0||a.rangeTo===void 0?{}:{from:a.rangeFrom,to:a.rangeTo},...a.query?{query:a.query}:{},filters:a.filters,signal:n.signal}).then(e=>{!n.signal.aborted&&r===b.current&&(d({...e,rows:e.rows.map(vf)}),p(D))}).catch(e=>{!n.signal.aborted&&r===b.current&&_(e instanceof Error?e.message:String(e))}).finally(()=>{!n.signal.aborted&&r===b.current&&h(!1)}),()=>n.abort()},[v,S,c,D,e]),{compactPageOffset:c,setCompactPageOffset:l,compactPage:f===D?u:null,staleCompactPage:bm(f,D)?u:null,compactPageLoading:m,compactPageError:g,retryCompactPage:()=>y(e=>e+1)}}function Sm({view:e,eligible:t,currency:n,filters:r,globalQuery:i,limit:o=10,range:s,refresh:c,revision:l,load:u}){let[d,f]=(0,a.useState)(0),[p,m]=(0,a.useState)(null),[h,g]=(0,a.useState)(!1),[_,v]=(0,a.useState)(null),[y,b]=(0,a.useState)(0),x=(0,a.useRef)(0),S=(0,a.useRef)(u);S.current=u;let C=s?.from,w=s?.to,T={...r,query:r.query||i},E=`${Object.values(T).join(`\0`)}\u0000${C??``}\u0000${w??``}`,D=`${e}\u0000${t}\u0000${n}\u0000${o}\u0000${E}\u0000${c??``}\u0000${l}`,O=(0,a.useRef)({view:e,eligible:t,currency:n,effectiveFilters:T,rangeFrom:C,rangeTo:w,refresh:c,limit:o});return O.current={view:e,eligible:t,currency:n,effectiveFilters:T,rangeFrom:C,rangeTo:w,refresh:c,limit:o},(0,a.useEffect)(()=>{f(0)},[E]),(0,a.useEffect)(()=>{let e=O.current;if(e.view!==`agentCalls`||!e.eligible){m(null),v(null),g(!1);return}let t=new AbortController,n=++x.current;return g(!0),v(null),(S.current??rp)({currency:e.currency,filters:e.effectiveFilters,...e.rangeFrom===void 0||e.rangeTo===void 0?{}:{from:e.rangeFrom,to:e.rangeTo},offset:d,limit:e.limit,refresh:e.refresh,signal:t.signal}).then(e=>{!t.signal.aborted&&dm(n,x.current)&&m(e)}).catch(e=>{!t.signal.aborted&&dm(n,x.current)&&v(e instanceof Error?e.message:String(e))}).finally(()=>{!t.signal.aborted&&dm(n,x.current)&&g(!1)}),()=>t.abort()},[y,d,D]),{runPageOffset:d,setRunPageOffset:f,runPageData:p,runPageLoading:h,runPageError:_,retryRunPage:()=>b(e=>e+1)}}function Cm(e){return e!==`overview`}function wm({embedded:e,globalDateRange:t,runPageRange:n}){return e&&t===void 0?void 0:n}function Tm(e,t){let n=new Set(t.flatMap(e=>e.execution_id===null?[]:[e.execution_id]));return e.filter(e=>n.has(e.id))}function Em(e,t=``){return(t===``||e.query===``)&&e.priority===``&&e.risk===``&&e.origin===``&&e.workType===``}function Dm({capabilityNavigation:e,data:t,dashboardTitle:n=`Dashboard Zaip AIOS`,embedded:r=!1,globalFilters:i,lastUpdatedAt:o,locale:s,loading:l,onLoadingChange:d,onLocaleChange:f,onOpenTrace:p,onActiveDataChange:m,onRefresh:h,loadDetail:g=np,loadRunPage:_,loadReadModelPage:v,loadGroupPage:y,loadPeriod:b=tp,operations:x,repositoryName:S,currency:C,onCurrencyChange:w}){let[T,E]=(0,a.useState)(hm),[D,O]=(0,a.useState)(cp),[k,ee]=(0,a.useState)(`BRL`),A=C??k,te=e=>{ee(e),w?.(e)},[j,ne]=(0,a.useState)($f),[re,M]=(0,a.useState)(null),[N,ie]=(0,a.useState)(null),[F,ae]=(0,a.useState)(null),[oe,se]=(0,a.useState)(!1),[ce,I]=(0,a.useState)(null),[le,L]=(0,a.useState)(0),ue=(0,a.useRef)({data:t,revision:0});ue.current.data!==t&&(ue.current={data:t,revision:ue.current.revision+1});let de=ue.current.revision,fe=(0,a.useRef)(g);fe.current=g;let pe=cm[s],{activeData:R,periodError:z,periodLoading:me}=ap({currency:A,data:t,...i===void 0?{}:{dateRange:i.dateRange},filters:D,lastUpdatedAt:o,loadPeriod:b,period:j,snapshotBacked:r}),B=Object.values(D).some(e=>e!==``),he=i?.dateRange===void 0?ep(j):{from:i.dateRange.start,to:i.dateRange.end},V=_m({embedded:r,globalDateRange:i?.dateRange,hasLocalCostFilters:B,period:j,runPageRange:he}),ge=wm({embedded:r,...i?.dateRange===void 0?{}:{globalDateRange:i.dateRange},...he===void 0?{}:{runPageRange:he}}),_e=vm({embedded:r,globalDateRange:i?.dateRange,hasLocalCostFilters:B,period:j,runPageRange:he}),ve=(e=>e===`daily`||e===`monthly`||e===`annual`||e===`agents`||e===`models`||e===`providers`?e:null)(T),ye=qp({active:ve!==null,view:ve??`daily`,...V===void 0?{}:{range:V},globalQuery:i?.query??``,filters:D,limit:10,revision:de,...ve===null?{}:{load:y}}),be=ye.page??ye.stalePage,{compactPageOffset:xe,setCompactPageOffset:Se,compactPage:Ce,staleCompactPage:we,compactPageLoading:Te,compactPageError:Ee,retryCompactPage:De}=xm({view:T,load:v,limit:10,range:_e,query:i?.query,filters:D,revision:de}),Oe=Em(D,i?.query??``),{runPageOffset:H,setRunPageOffset:ke,runPageData:Ae,runPageLoading:U,runPageError:je,retryRunPage:Me}=Sm({view:T,eligible:T===`agentCalls`&&Oe,currency:A,filters:D,globalQuery:i?.query??``,limit:10,range:V,refresh:o,revision:de,load:_});(0,a.useEffect)(()=>d?.(l||me||U||ye.loading||Te||oe),[Te,oe,ye.loading,l,d,me,U]),(0,a.useEffect)(()=>()=>d?.(!1),[d]),(0,a.useEffect)(()=>{B||m?.(R)},[R,B,m]);let Ne=o===null?s===`pt-BR`?`Aguardando atualização`:`Waiting for refresh`:`${s===`pt-BR`?`Atualizado`:`Updated`} ${new Intl.DateTimeFormat(s,{dateStyle:`short`,timeStyle:`medium`}).format(new Date(o))}`,W=(0,a.useMemo)(()=>R.runs.filter(e=>im(e,D)&&am(e,i)).sort((e,t)=>t.started_at.localeCompare(e.started_at)),[R.runs,D,i]),Pe=he?.from,Fe=he?.to;(0,a.useEffect)(()=>{ae(null),se(!1),I(null)},[A,le,D,o,Pe,Fe]);let Ie=(0,a.useMemo)(()=>(Ae?.runs??[]).filter(e=>im(e,D)&&am(e,i)),[D,i,Ae?.runs]),Le=(0,a.useMemo)(()=>fm(W,F?.runs).filter(e=>im(e,D)&&am(e,i)).sort((e,t)=>t.started_at.localeCompare(e.started_at)),[F?.runs,D,i,W]),Re=(0,a.useMemo)(()=>{if(x===void 0)return;let e=new Set(W.map(e=>e.run_id));return{...x,runs:x.runs.filter(t=>e.has(t.id))}},[x,W]),ze=(0,a.useMemo)(()=>({prds:R.prds.filter(e=>sm(e,i)),specs:R.specs.filter(e=>sm(e,i)),tasks:(x?.tasks??[]).filter(e=>sm(e,i)),evidences:(x?.evidences??[]).filter(e=>sm({created_at:e.observed_at},i)),validations:(x?.validations??[]).filter(e=>sm({created_at:e.executed_at},i))}),[R.prds,R.specs,i,x?.evidences,x?.tasks,x?.validations]),G=ze.prds,K=ze.specs,q=R.aggregate_only===!0&&Le.length===0&&!B,J=(0,a.useMemo)(()=>q?R.groups:{conversations:om(Le,e=>e.conversation_id??e.task_title??e.run_id,void 0,`all_invocations`),tasks:Ud(ze.tasks,Le),providers:om(Le,e=>Rd(e.provider),void 0,`all_invocations`),agents:Id(om(Le,e=>e.agent_name),R.configured_agents),models:om(Le,e=>e.model),daily:Op(om(W,e=>{let t=e.finished_at??e.started_at;return tl(t,`day`)??t.slice(0,10)},void 0,`all_invocations`),ze,`daily`),monthly:Op(om(W,e=>{let t=e.finished_at??e.started_at;return tl(t,`month`)??t.slice(0,7)},void 0,`all_invocations`),ze,`monthly`),annual:Op(om(W,e=>{let t=e.finished_at??e.started_at;return tl(t,`year`)??t.slice(0,4)},void 0,`all_invocations`),ze,`annual`)},[R.configured_agents,ze,Le,W,q,R.groups]),Be=(0,a.useMemo)(()=>ve===null?J:{...J,[ve]:be===null?[]:ve===`agents`&&y===void 0?Id(be.rows,R.configured_agents):[...be.rows]},[R.configured_agents,be,J,ve,y]),Ve=q?R.overview:{...pm(W,R.overview),task_count:ze.tasks.length},He=J.annual.reduce((e,t)=>e+t.duration.known_sum,0),Ue=x?.summary.overview_metrics,We=Ue?Ue.duration_ms:He,Ge={run_count:Ve.run_count,task_count:Ue?.task_count??Ve.task_count,prd_count:Ue?.prd_count??Ue?.selected_counts?.prds??0,spec_count:Ue?.spec_count??Ue?.selected_counts?.specs??0,evidence_count:0,test_count:0,event_count:Ve.event_count,total_tokens:Ue?.tokens??Ve.total_tokens,estimated_usd:Ve.estimated_usd,estimated_brl:Ue?.cost_brl??Ve.estimated_brl,duration_ms:We,duration:{known_sum:We??0,unknown:+(We===null),complete:We!==null,coverage_ratio:We===null?0:1}},Ke=(0,a.useMemo)(()=>Tm(x?.executions??[],W),[x?.executions,W]),qe=ym(T),Je=qe!==null&&v!==void 0,Y=(0,a.useMemo)(()=>Je?Ce?.rows??we?.rows??[]:T===`developers`?[]:T===`executions`?Ke:T===`conversations`?J.conversations:T===`tasks`?J.tasks:T===`prds`?G:T===`specs`?K:T===`providers`||T===`agents`||T===`daily`||T===`monthly`||T===`annual`?J[T]:W,[Ce?.rows,J,W,Je,we?.rows,T,Ke,G,K]),Ye=Je&&qe!==null&&v!==void 0?{prepare:async()=>{let e=await v({kind:qe,offset:0,limit:50,filters:D,..._e===void 0?{}:_e,...i?.query?{query:i.query}:{}});return{totalRows:e.total,pages:async function*(){let t=e,n=new Set;for(;;){let e=t.rows.filter(e=>n.has(e.id)?!1:(n.add(e.id),!0)).map(vf);e.length>0&&(yield e);let r=t.offset+t.rows.length;if(r>=t.total||!t.has_more)return;t=await v({kind:qe,offset:r,limit:t.limit,filters:D,..._e===void 0?{}:_e,...i?.query?{query:i.query}:{}})}}}}}:void 0,Xe=T===`agentCalls`&&Oe&&_!==void 0?{prepare:async()=>{let e={...D,query:D.query||i?.query||``},t=await _({currency:A,filters:e,...V===void 0?{}:V,limit:100,offset:0,refresh:o});return{totalRows:t.run_page.total??t.runs.length,pages:async function*(){let n=t;for(;;){if(n.runs.length===0)return;yield n.runs;let t=n.run_page.offset+n.runs.length;if(n.run_page.total!==null&&t>=n.run_page.total||!n.run_page.has_more)return;n=await _({currency:A,filters:e,...V===void 0?{}:V,limit:100,offset:t,refresh:o})}}}}}:void 0,Ze=T===`developers`?{prepare:async()=>{let e=await Zf({...ge===void 0?{}:ge});return{totalRows:e.length,pages:async function*(){yield e}}}}:void 0,Qe=(T===`daily`||T===`monthly`||T===`annual`||T===`agents`||T===`models`||T===`providers`)&&y!==void 0?{prepare:async()=>{let e=D.query||i?.query||``,t=await y({view:T,offset:0,limit:50,filters:D,...e?{query:e}:{},...V===void 0?{}:V});return{totalRows:t.total_count,pages:async function*(){let n=t;for(;;){if(n.rows.length===0)return;yield n.rows;let t=n.offset+n.rows.length;if(t>=n.total_count||!n.has_more)return;n=await y({view:T,offset:t,limit:n.limit,filters:D,...e?{query:e}:{},...V===void 0?{}:V})}}}}}:void 0,$e=e=>{f(e),te(lm(e))},et=e=>{let t=um(x?.runs??[],e);t&&ie(t)};return(0,c.jsxs)(r?`section`:`main`,{className:r?`cost-page cost-page-embedded`:`cost-page`,children:[r?null:(0,c.jsx)(u,{filters:(0,c.jsx)(lp,{available:t.filters_available,hideQuery:r,locale:s,onChange:O,value:D}),filtersActive:Object.values(D).some(Boolean),lastUpdatedAt:o,loading:l||me,locale:s,onLocaleChange:$e,onRefresh:h,settings:(0,c.jsxs)(`label`,{children:[(0,c.jsx)(`span`,{children:pe.currency}),(0,c.jsxs)(`select`,{onChange:e=>te(e.target.value),value:A,children:[(0,c.jsx)(`option`,{value:`BRL`,children:`BRL · R$`}),(0,c.jsx)(`option`,{value:`USD`,children:`USD · $`})]})]}),...S===void 0?{}:{repositoryName:S},title:n}),(0,c.jsx)(Yp,{groupError:ve===null?null:ye.error,locale:s,periodError:z,retryGroup:ye.retry}),r?null:(0,c.jsx)(nm,{currency:A,filters:D,filtersAvailable:t.filters_available,loading:l,locale:s,onCurrencyChange:te,onFiltersChange:O,onLocaleChange:$e,onPopupChange:M,onPeriodChange:ne,onRefresh:h,period:j,popup:re,text:pe,updatedLabel:Ne}),r?null:(0,c.jsxs)(c.Fragment,{children:[(0,c.jsx)(rm,{currency:A,locale:s,overview:Ve}),e]}),(0,c.jsxs)(`div`,{className:`cost-tabs-bar`,children:[(0,c.jsx)(`nav`,{"aria-label":`Visões de custo`,className:`cost-tabs`,children:gm.map(e=>(0,c.jsx)(`button`,{"aria-pressed":T===e,className:T===e?`is-active`:void 0,onClick:()=>{E(e)},type:`button`,children:pe.tabs[e]},e))}),Cm(T)?(0,c.jsx)(`div`,{className:`cost-tab-export`,children:(0,c.jsx)(rc,{filters:{...D,...i,period:j},pageSource:Ye??Xe??Ze??Qe,rows:Y,view:`cost-${T}`})}):null]}),(0,c.jsx)(Jp,{canonicalDurationTotal:He,compactPage:Ce??we,compactPageError:Ee,compactPageLoading:Te,compactPageOffset:xe,currency:A,detailError:ce,detailLoading:oe,developerPanel:T===`developers`?(0,c.jsx)(Qf,{locale:s,...ge===void 0?{}:{from:ge.from,to:ge.to}}):null,dimensionalDetailPending:!1,dimensionalRows:Le,groups:Be,groupPage:ve===null?null:be,groupPageLoading:ve!==null&&ye.loading,groupPageOffset:ye.offset,setGroupPageOffset:ye.setOffset,locale:s,macroDetails:Re,onOpenRun:et,onOpenTrace:p,pagedRunRows:Ie,retryCompactPage:De,retryRunPage:Me,rows:W,runPageData:Ae,runPageError:je,runPageLoading:U,runPageOffset:H,serverPagingEligible:Oe,setCompactPageOffset:Se,setDetailAttempt:L,setRunPageOffset:ke,summaryUsage:R.usage,summaryTotals:Ge,useAggregateGroups:q,usingCompactPage:Je,view:T,visibleExecutions:Ke,visiblePrds:G,visibleSpecs:K}),N?(0,c.jsx)(P,{details:{kind:`run`,row:N},locale:s,onClose:()=>ie(null)}):null]})}export{n as S,E as _,Wc as a,s as b,Ho as c,Mo as d,jo as f,P as g,wo as h,al as i,zo as l,ko as m,Od as n,Go as o,Ao as p,Ed as r,Wo as s,Dm as t,Po as u,O as v,i as x,w as y};
|