madarx 2.13.0 → 2.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/.next/BUILD_ID +1 -1
- package/.next/standalone/.next/app-build-manifest.json +544 -551
- package/.next/standalone/.next/app-path-routes-manifest.json +76 -77
- package/.next/standalone/.next/build-manifest.json +5 -5
- package/.next/standalone/.next/prerender-manifest.json +3 -3
- package/.next/standalone/.next/react-loadable-manifest.json +1 -1
- package/.next/standalone/.next/routes-manifest.json +0 -6
- package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/.next/server/app/_not-found.rsc +2 -2
- package/.next/standalone/.next/server/app/activity/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/admin/page.js +2 -2
- package/.next/standalone/.next/server/app/admin/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/agents/[id]/page.js +4 -4
- package/.next/standalone/.next/server/app/agents/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/agents/page.js +1 -1
- package/.next/standalone/.next/server/app/agents/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/activity/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/admin/audit-export/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/admin/share-links/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agent-memory/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agent-runs/[id]/cancel/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agent-runs/[id]/events/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agent-runs/[id]/log/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agent-runs/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agent-runs/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/[id]/chain/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/[id]/memory/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/[id]/reports/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/[id]/run/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/[id]/skills/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/create/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/agents/ops/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/approvals/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/approvals/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/artifacts/[id]/acl/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/artifacts/[id]/protect/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/artifacts/[id]/raw/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/artifacts/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/artifacts/[id]/share-link/[linkId]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/artifacts/[id]/share-link/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/artifacts/upload/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/audit/list/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/audit/search/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/callback/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/config/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/join-bootstrap/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/auth/session/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/brand/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/chat/sessions/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/chat/sessions/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/config/env/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/config/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/connections/[service]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/connections/[service]/verify/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/connections/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/cron/tick/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/dashboard/spaces/[id]/move/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/dashboard/spaces/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/dashboard/spaces/[id]/share-link/[linkId]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/dashboard/spaces/[id]/share-link/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/dashboard/spaces/import/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/dashboard/spaces/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/disk/files/[id]/blob/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/disk/files/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/disk/files/[id]/transcribe/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/disk/files/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/disk/folders/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/events/since/[cursor]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/events/stream/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/fs/create-folder/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/fs/pick-folder/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/blueprint/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/blueprint/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/diagnostic/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/diagnostic/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/governance/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/governance/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/interview/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/interview/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/pilot/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/pilot/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/quarterly/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/quarterly/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/setup-package/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/[id]/setup-package/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/hail/engagements/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/interviews/[id]/responses/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/hail/interviews/[id]/responses/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/interviews/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/hail/interviews/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/setup-packages/[id]/apply/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/hail/setup-packages/[id]/apply/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hail/setup-packages/validate/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/heartbeat/tick/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/heartbeat/worker/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/heartbeat/worker/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/help/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hermes/jobs/[id]/events/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hermes/jobs/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/hermes/jobs/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/integrations/google/callback/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/integrations/google/oauth/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/marketplace/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/marketplace/open-design/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/marketplace/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/mines/import-roots/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/mines/portfolio/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/mines/projects/[id]/chunks/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/mines/projects/[id]/diligence/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/mines/projects/[id]/import/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/mines/projects/[id]/publish/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/mines/projects/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/missions/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/onboarding/blueprint/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/onboarding/launch/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orchestrator/command/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orchestrator/stream/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orchestrator/upload/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/org/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orgs/[id]/invites/[inviteId]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orgs/[id]/invites/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orgs/[id]/members/[userId]/role/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orgs/[id]/members/[userId]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orgs/[id]/members/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orgs/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orgs/invites/pending/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orgs/join/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orgs/join-complete/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/orgs/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/printing-press/clis/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/printing-press/install/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/printing-press/security-mode/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/privacy/config/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/privacy/verify/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/processes/[id]/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/processes/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/processes/[id]/share-link/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/processes/[id]/share-link/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/processes/[id]/stages/[stageId]/override/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/processes/[id]/stages/[stageId]/override/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/processes/[id]/stages/[stageId]/retry/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/processes/[id]/stages/[stageId]/retry/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/processes/[id]/stages/[stageId]/submit/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/processes/[id]/stages/[stageId]/submit/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/processes/definitions/[slug]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/processes/definitions/[slug]/settings/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/processes/definitions/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/processes/definitions/validate/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/processes/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/processes/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/processes/start-and-route/route.js +1 -1
- package/.next/standalone/.next/server/app/api/processes/start-and-route/route.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/api/processes/start-and-route/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[slug]/library/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/[slug]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/projects/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/runs/approve-claude-run/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/runs/claude-code-dry-run/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/runs/competitor-report/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/runs/engine-ping/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/runs/marketing-plan/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/schedules/upsert/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/secrets/[name]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/secrets/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/settings/trust-mode/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/share/[token]/otp/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/share/[token]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/share/[token]/verify/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/share/space/[token]/otp/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/share/space/[token]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/share/space/[token]/verify/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/shared/spaces/[id]/acl/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/shared/spaces/publish/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/shared/spaces/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/shared/spaces/status/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/shared/spaces/unpublish/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/state/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/system/update/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[id]/active-run/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[id]/attachments/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[id]/checklist/[itemId]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[id]/checklist/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[id]/checkout/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[id]/children/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[id]/comments/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[id]/events/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[id]/live-runs/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[id]/release/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tasks/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tool-allowlists/[id]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tool-allowlists/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tool-egress/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tools/[name]/approve/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tools/[name]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/tools/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/transcripts/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/voice/providers/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/voice/realtime/context/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/voice/realtime/session/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/voice/realtime/tool-result/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/voice/realtime/tools/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/voice/tts/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/whatsapp/allowlist/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/whatsapp/disconnect/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/whatsapp/messages/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/whatsapp/qr/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/whatsapp/send/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/api/whatsapp/status/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/approvals/page.js +2 -2
- package/.next/standalone/.next/server/app/approvals/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/architecture/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/architecture.html +2 -2
- package/.next/standalone/.next/server/app/architecture.rsc +2 -2
- package/.next/standalone/.next/server/app/audit/live/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/audit/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/brand/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/brand.html +1 -1
- package/.next/standalone/.next/server/app/brand.rsc +2 -2
- package/.next/standalone/.next/server/app/disk/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/federated-ai/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/federated-ai.html +2 -2
- package/.next/standalone/.next/server/app/federated-ai.rsc +2 -2
- package/.next/standalone/.next/server/app/hail/[id]/governance/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/hail/[id]/governance/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/hail/[id]/interview/page.js +2 -2
- package/.next/standalone/.next/server/app/hail/[id]/interview/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/hail/[id]/interview/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/hail/[id]/page.js +1 -1
- package/.next/standalone/.next/server/app/hail/[id]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/hail/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/hail/[id]/setup/page.js +2 -2
- package/.next/standalone/.next/server/app/hail/[id]/setup/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/hail/[id]/setup/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/hail/page.js +3 -3
- package/.next/standalone/.next/server/app/hail/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/hail/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/help/[slug]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/help/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/index.html +2 -2
- package/.next/standalone/.next/server/app/index.rsc +2 -2
- package/.next/standalone/.next/server/app/join/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/join.html +1 -1
- package/.next/standalone/.next/server/app/join.rsc +2 -2
- package/.next/standalone/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/marketplace/page.js +2 -2
- package/.next/standalone/.next/server/app/marketplace/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/mines/[projectId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/mines/[projectId]/results/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/mines/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/missions/page.js +1 -1
- package/.next/standalone/.next/server/app/missions/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/onboarding/org/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/onboarding.html +2 -2
- package/.next/standalone/.next/server/app/onboarding.rsc +2 -2
- package/.next/standalone/.next/server/app/org/page.js +1 -1
- package/.next/standalone/.next/server/app/org/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/org/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/projects/[slug]/log/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/projects/[slug]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/projects/new/page.js +1 -1
- package/.next/standalone/.next/server/app/projects/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/projects/new.html +1 -1
- package/.next/standalone/.next/server/app/projects/new.rsc +3 -3
- package/.next/standalone/.next/server/app/projects/page.js +20 -20
- package/.next/standalone/.next/server/app/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/reports/[file]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/reports/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/runtime/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/schedules/page.js +2 -2
- package/.next/standalone/.next/server/app/schedules/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/schedules/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/account/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/advanced/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/appearance/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/brand/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/brand.html +2 -2
- package/.next/standalone/.next/server/app/settings/brand.rsc +2 -2
- package/.next/standalone/.next/server/app/settings/connectors/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/engines/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/onboarding/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/onboarding.html +2 -2
- package/.next/standalone/.next/server/app/settings/onboarding.rsc +2 -2
- package/.next/standalone/.next/server/app/settings/organization/page.js +1 -1
- package/.next/standalone/.next/server/app/settings/organization/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/settings/organization/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/runtime/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/team/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings/tools/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/settings.html +2 -2
- package/.next/standalone/.next/server/app/settings.rsc +2 -2
- package/.next/standalone/.next/server/app/share/[token]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/share/space/[token]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/tasks/[id]/page.js +1 -1
- package/.next/standalone/.next/server/app/tasks/[id]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/tasks/page.js +2 -2
- package/.next/standalone/.next/server/app/tasks/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/team/[agentId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/team/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/tools/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/whatsapp/page.js +1 -1
- package/.next/standalone/.next/server/app/whatsapp/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/whatsapp.html +1 -1
- package/.next/standalone/.next/server/app/whatsapp.rsc +3 -3
- package/.next/standalone/.next/server/app/workflows/[caseId]/page.js +1 -1
- package/.next/standalone/.next/server/app/workflows/[caseId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workflows/[caseId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workflows/new/[caseId]/page.js +1 -1
- package/.next/standalone/.next/server/app/workflows/new/[caseId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workflows/new/[caseId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workflows/new/definition/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workflows/page.js +1 -1
- package/.next/standalone/.next/server/app/workflows/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workflows/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app/workflows/share/[caseId]/page.js +1 -1
- package/.next/standalone/.next/server/app/workflows/share/[caseId]/page.js.nft.json +1 -1
- package/.next/standalone/.next/server/app/workflows/share/[caseId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/app-paths-manifest.json +76 -77
- package/.next/standalone/.next/server/chunks/1699.js +19 -19
- package/.next/standalone/.next/server/chunks/51.js +1 -0
- package/.next/standalone/.next/server/chunks/5185.js +4 -27
- package/.next/standalone/.next/server/chunks/5257.js +1 -1
- package/.next/standalone/.next/server/chunks/6355.js +1 -0
- package/.next/standalone/.next/server/functions-config-manifest.json +15 -15
- package/.next/standalone/.next/server/middleware-build-manifest.js +1 -1
- package/.next/standalone/.next/server/middleware-manifest.json +5 -5
- package/.next/standalone/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/standalone/.next/server/pages/404.html +1 -1
- package/.next/standalone/.next/server/pages/500.html +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/.next/static/chunks/4119-cfb6260557a0a3d2.js +1 -0
- package/.next/standalone/.next/static/chunks/app/projects/page-f136822590202f9f.js +1 -0
- package/.next/standalone/.next/static/chunks/app/workflows/[caseId]/page-9949ff1c223e771d.js +1 -0
- package/.next/{static/chunks/app/workflows/page-25cb2c4cb90273a8.js → standalone/.next/static/chunks/app/workflows/page-d0484521369bce4c.js} +1 -1
- package/.next/standalone/.next/static/chunks/{webpack-0cfb048137bd7fce.js → webpack-f916d679fe38a701.js} +1 -1
- package/.next/standalone/.next/static/css/0bd4c357d4f0c4f2.css +1 -0
- package/.next/standalone/.next/static/tMcPS9JR5cRXSe0u5ne95/_buildManifest.js +1 -0
- package/.next/standalone/CHANGELOG.md +28 -0
- package/.next/standalone/data/.artifacts-migrated-v1 +1 -1
- package/.next/standalone/data/.default-project-seeded +1 -1
- package/.next/standalone/data/madarx.sqlite +0 -0
- package/.next/standalone/data/madarx.sqlite-shm +0 -0
- package/.next/standalone/data/madarx.sqlite-wal +0 -0
- package/.next/standalone/lib/process/seeds/specs/mine-project-intake.json +12 -4
- package/.next/standalone/lib/process/seeds/specs/mine-valuation.json +6 -2
- package/.next/standalone/lib/process/stages/policy-dsl-legacy.js +178 -0
- package/.next/standalone/lib/process/stages/policy-gate.js +24 -168
- package/.next/standalone/package.json +2 -2
- package/.next/static/chunks/4119-cfb6260557a0a3d2.js +1 -0
- package/.next/static/chunks/app/projects/page-f136822590202f9f.js +1 -0
- package/.next/static/chunks/app/workflows/[caseId]/page-9949ff1c223e771d.js +1 -0
- package/.next/{standalone/.next/static/chunks/app/workflows/page-25cb2c4cb90273a8.js → static/chunks/app/workflows/page-d0484521369bce4c.js} +1 -1
- package/.next/static/chunks/{webpack-0cfb048137bd7fce.js → webpack-f916d679fe38a701.js} +1 -1
- package/.next/static/css/0bd4c357d4f0c4f2.css +1 -0
- package/.next/static/tMcPS9JR5cRXSe0u5ne95/_buildManifest.js +1 -0
- package/CHANGELOG.md +28 -0
- package/ai-docs/process-engine.md +33 -1
- package/app/api/processes/start-and-route/route.js +5 -3
- package/app/components/dashboard/whatsapp-section.jsx +54 -13
- package/app/workflows/[caseId]/case-detail-client.jsx +2 -2
- package/app/workflows/definition-card.jsx +12 -18
- package/app/workflows/new/[caseId]/page.js +8 -8
- package/app/workflows/page.js +0 -5
- package/app/workflows/share/[caseId]/page.js +0 -1
- package/lib/cli/prompt.js +110 -0
- package/lib/cli/setup.js +152 -87
- package/lib/process/artifacts.js +12 -60
- package/lib/process/engine.js +5 -5
- package/lib/process/policy-predicates.js +116 -0
- package/lib/process/seeds/specs/mine-project-intake.json +12 -4
- package/lib/process/seeds/specs/mine-valuation.json +6 -2
- package/lib/process/spec-validator.js +46 -1
- package/lib/process/stages/policy-dsl-legacy.js +178 -0
- package/lib/process/stages/policy-gate.js +24 -168
- package/lib/runtime.js +8 -2
- package/package.json +2 -2
- package/scripts/postbuild-standalone.mjs +9 -0
- package/scripts/whatsapp-reset.mjs +15 -0
- package/.next/standalone/.next/server/app/workflows/new/page.js +0 -2
- package/.next/standalone/.next/server/app/workflows/new/page.js.nft.json +0 -1
- package/.next/standalone/.next/server/app/workflows/new/page_client-reference-manifest.js +0 -1
- package/.next/standalone/.next/server/chunks/1092.js +0 -1
- package/.next/standalone/.next/static/cR6E_4o8_rHXujVNesWiZ/_buildManifest.js +0 -1
- package/.next/standalone/.next/static/chunks/4119-3b6adff3c7187ef3.js +0 -1
- package/.next/standalone/.next/static/chunks/app/projects/page-2166c214f854766e.js +0 -1
- package/.next/standalone/.next/static/chunks/app/workflows/[caseId]/page-423e4c194c7f5bf5.js +0 -1
- package/.next/standalone/.next/static/chunks/app/workflows/new/page-1eda41616cbfc4f3.js +0 -1
- package/.next/standalone/.next/static/css/0bfed9e12afa1dc1.css +0 -1
- package/.next/static/cR6E_4o8_rHXujVNesWiZ/_buildManifest.js +0 -1
- package/.next/static/chunks/4119-3b6adff3c7187ef3.js +0 -1
- package/.next/static/chunks/app/projects/page-2166c214f854766e.js +0 -1
- package/.next/static/chunks/app/workflows/[caseId]/page-423e4c194c7f5bf5.js +0 -1
- package/.next/static/chunks/app/workflows/new/page-1eda41616cbfc4f3.js +0 -1
- package/.next/static/css/0bfed9e12afa1dc1.css +0 -1
- package/app/workflows/new/new-case-flow.jsx +0 -256
- package/app/workflows/new/page.js +0 -27
- /package/.next/standalone/.next/static/{cR6E_4o8_rHXujVNesWiZ → tMcPS9JR5cRXSe0u5ne95}/_ssgManifest.js +0 -0
- /package/.next/static/{cR6E_4o8_rHXujVNesWiZ → tMcPS9JR5cRXSe0u5ne95}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
self.__BUILD_MANIFEST=function(e,r,t,_){return{__rewrites:{afterFiles:[],beforeFiles:[],fallback:[]},__routerFilterStatic:{numItems:141,errorRate:1e-4,numBits:2703,numHashes:14,bitArray:[1,0,1,0,r,e,r,r,e,r,e,e,e,r,e,r,e,e,e,r,r,r,r,r,r,e,e,r,e,r,e,r,e,e,r,r,r,e,r,r,r,e,e,r,r,e,e,e,r,r,r,r,r,e,e,e,e,e,e,e,r,e,r,e,e,r,r,e,e,r,r,r,e,r,r,r,e,r,r,r,e,e,e,r,r,r,e,r,e,r,e,e,r,r,e,r,e,e,r,e,e,e,r,e,e,e,e,r,r,r,e,e,e,e,r,r,r,r,r,e,r,r,e,r,r,e,r,e,e,e,e,e,r,r,e,e,e,e,e,e,e,r,r,r,e,e,r,e,e,e,r,r,r,e,r,e,e,e,e,r,r,e,e,r,r,r,e,r,r,r,r,r,e,r,r,e,e,e,e,r,r,e,r,e,r,e,e,e,r,e,e,r,r,r,r,r,r,r,e,e,e,r,e,r,r,r,r,e,r,e,r,e,e,r,e,e,e,r,r,r,e,r,e,r,r,r,r,e,e,e,r,e,e,r,e,e,r,e,r,e,r,r,e,r,e,r,r,r,r,e,r,e,e,e,e,r,e,e,e,e,e,r,r,e,r,r,e,r,r,r,e,e,e,r,r,e,r,e,e,e,r,e,e,e,e,e,e,e,r,e,e,e,r,e,r,r,r,r,e,e,r,r,r,r,r,e,r,e,r,e,r,r,e,r,r,e,r,e,e,r,e,e,e,r,r,e,e,e,r,r,e,e,e,e,r,r,e,e,e,r,r,r,e,r,r,r,e,r,r,r,r,e,e,e,e,r,r,e,r,r,r,e,e,e,e,e,e,e,e,r,e,e,r,e,r,e,e,e,e,e,r,r,r,r,r,e,e,r,e,r,e,e,e,r,e,r,e,r,r,e,r,e,r,r,e,r,r,r,r,r,e,e,r,e,e,e,e,e,e,r,e,e,r,r,e,r,e,r,e,e,r,e,e,r,e,r,e,e,e,e,r,e,r,e,e,e,r,r,r,r,e,r,r,r,e,r,e,r,r,e,e,e,e,e,e,r,e,e,e,e,r,r,r,e,e,e,e,e,e,r,e,r,e,e,r,e,e,e,e,e,r,r,e,r,r,e,r,r,e,e,r,e,e,r,e,r,r,e,r,e,e,e,e,e,e,e,e,r,e,e,e,r,e,e,e,e,r,r,e,r,r,e,r,r,r,r,r,r,r,e,r,e,e,e,r,e,r,e,e,r,e,r,e,r,r,r,e,r,r,e,e,e,r,r,e,r,r,e,r,r,e,e,e,r,r,e,e,e,r,r,e,e,e,r,r,r,e,r,r,r,e,e,r,r,r,e,r,e,e,r,e,r,e,r,r,r,r,r,e,e,r,e,r,e,r,r,r,r,r,r,e,e,e,e,r,r,r,r,r,e,r,r,e,r,e,r,r,r,e,r,e,r,e,r,e,e,e,e,r,r,e,r,e,e,e,e,e,r,e,r,e,e,e,r,e,e,r,e,r,e,e,e,r,e,r,e,e,r,e,r,e,e,e,e,e,r,r,e,r,r,e,r,r,r,r,e,r,e,e,r,r,e,r,e,e,e,e,e,r,e,r,r,e,e,e,r,r,e,r,r,r,e,e,e,e,e,e,e,e,e,e,e,e,e,e,e,r,r,r,r,r,r,r,r,r,r,e,e,e,e,r,e,r,r,e,e,r,e,e,r,e,e,e,e,e,e,e,r,e,r,r,e,r,e,r,e,r,e,r,r,r,e,e,e,e,r,e,r,r,e,e,e,e,r,e,r,e,e,r,r,e,e,e,r,e,e,r,e,e,r,e,e,e,e,r,r,e,e,r,r,r,r,r,r,r,e,e,e,e,r,r,r,r,r,r,r,e,e,r,r,e,r,e,r,e,r,r,r,e,e,e,e,r,e,e,e,r,r,r,r,e,e,e,e,e,e,r,e,r,e,r,e,r,r,e,e,r,r,r,e,e,r,e,e,r,r,e,r,r,r,r,e,e,e,r,r,r,r,e,r,e,r,e,e,r,e,e,r,r,e,e,r,r,e,e,r,r,r,r,r,r,e,e,e,e,r,r,r,r,r,e,r,e,e,e,e,e,e,r,e,r,e,e,e,e,r,r,e,r,e,r,r,r,e,e,r,r,e,r,r,e,r,e,e,r,r,r,e,r,e,r,r,r,e,e,r,r,e,r,e,e,e,r,r,r,r,e,e,e,r,r,e,e,r,e,r,e,e,e,r,r,r,e,e,e,e,e,r,e,e,e,e,r,e,e,e,r,e,r,r,e,e,e,r,r,r,r,r,r,r,e,r,r,r,e,e,e,r,r,e,e,r,r,e,r,r,e,r,r,e,r,r,e,e,r,r,e,e,e,e,r,e,r,r,r,r,e,e,e,r,r,r,e,r,e,e,r,e,r,e,e,r,r,r,e,e,e,r,r,r,r,r,e,r,e,r,r,e,r,e,e,r,r,r,r,e,r,e,r,r,r,r,e,r,e,e,e,r,r,r,r,e,e,e,r,e,e,e,e,r,r,e,e,r,e,e,e,r,r,r,r,e,e,e,e,e,r,r,r,e,e,r,r,e,r,r,e,r,e,e,e,r,e,e,r,e,e,e,r,r,r,e,r,e,r,e,r,r,e,e,r,r,e,r,r,e,r,r,r,e,r,r,r,e,r,r,r,r,e,e,e,e,r,e,e,r,e,e,r,r,r,e,r,r,r,e,e,e,r,e,e,r,r,r,r,r,r,r,r,r,r,r,e,r,r,r,e,e,e,e,e,r,e,e,e,r,e,e,e,e,e,e,e,r,e,e,r,r,e,r,r,r,e,r,e,e,e,r,r,r,e,e,r,e,r,r,r,r,r,r,r,e,e,r,r,r,e,e,r,e,e,e,r,e,e,e,e,e,e,e,r,e,e,r,e,e,r,r,e,r,r,e,r,e,e,r,e,r,e,r,e,e,r,e,r,e,r,r,e,e,r,e,r,e,r,e,e,e,e,e,r,r,e,r,e,r,r,e,e,r,r,r,e,e,e,e,e,e,r,e,e,r,r,e,r,r,r,e,e,e,e,r,e,e,r,r,r,r,r,e,e,r,r,e,e,e,r,e,r,e,r,e,e,e,r,e,r,r,e,e,e,r,e,r,e,e,r,e,e,e,e,r,r,r,r,e,e,r,e,r,r,e,e,e,r,r,r,r,e,r,r,r,e,e,r,r,e,e,r,e,e,r,r,r,e,r,r,r,r,r,r,e,e,r,r,e,e,e,r,r,r,e,r,e,r,r,e,e,e,e,e,e,e,e,e,r,e,e,r,e,e,r,r,r,r,e,e,r,e,e,r,e,e,e,e,e,r,e,e,e,e,e,e,e,r,r,e,r,r,e,r,r,r,r,e,e,r,r,r,e,r,e,e,e,r,e,r,r,e,r,e,r,e,r,r,r,r,e,e,r,e,e,e,r,e,r,r,r,e,e,r,e,r,e,e,r,e,e,e,r,e,r,r,e,r,r,r,e,e,r,e,e,e,e,e,r,e,e,r,r,r,e,e,e,e,r,e,e,r,e,r,r,e,e,e,e,e,r,e,r,r,e,r,e,e,r,e,r,e,r,e,e,e,r,e,e,r,e,e,e,e,e,e,r,r,e,r,r,e,e,r,e,e,e,e,e,r,e,r,e,e,r,r,r,r,e,e,e,e,r,e,e,r,e,r,r,r,r,r,r,r,r,r,e,e,e,e,r,e,r,r,r,e,e,r,r,r,r,r,r,r,e,r,r,e,e,e,e,r,e,r,r,e,r,e,e,e,e,e,r,r,e,r,e,e,e,r,e,e,e,e,r,e,e,r,e,e,r,e,r,r,e,r,e,e,e,e,e,r,e,e,r,e,e,e,r,e,r,e,e,e,e,e,e,r,r,r,e,r,e,e,e,e,r,e,r,e,e,r,r,r,e,r,r,r,r,e,e,r,r,r,e,e,e,e,r,e,e,r,r,e,e,e,r,r,e,r,e,r,r,e,r,r,e,r,e,e,r,e,r,r,e,e,e,r,e,e,r,r,e,e,e,e,r,r,e,r,r,e,e,r,r,e,r,r,e,e,r,e,e,e,r,e,r,e,e,e,e,r,r,r,e,e,r,e,r,r,e,e,r,r,e,r,e,e,e,r,e,r,r,e,e,e,r,e,r,r,r,e,r,e,e,e,e,e,r,e,e,e,e,r,r,r,e,r,r,e,e,r,e,e,e,r,r,r,r,e,e,e,r,e,e,e,e,r,r,e,r,e,e,r,r,e,e,r,r,e,r,e,e,e,e,e,e,r,r,e,e,r,r,e,r,e,r,r,e,e,e,e,r,e,e,r,r,e,e,r,e,r,r,e,r,e,e,r,e,r,e,e,r,r,e,r,e,r,e,e,r,e,r,e,e,r,e,r,e,r,e,r,r,r,e,r,r,e,e,r,r,e,r,e,r,r,r,r,r,r,r,e,r,r,e,r,r,r,e,r,r,e,r,e,r,r,r,r,e,e,e,e,r,r,r,r,r,r,r,r,r,r,e,r,r,e,r,r,e,e,e,r,r,e,r,r,r,e,r,e,e,e,e,r,e,r,e,e,e,e,e,r,e,e,e,e,e,e,r,e,e,r,r,r,r,r,e,r,e,r,e,e,r,e,r,r,e,e,e,e,r,r,r,e,e,r,e,e,e,r,e,r,e,r,r,r,r,r,r,r,e,r,e,e,e,r,e,e,r,e,e,e,r,r,r,e,r,r,r,e,r,r,r,e,r,e,r,r,r,r,r,e,e,r,e,r,r,e,r,e,e,e,r,r,e,e,r,r,e,e,r,e,r,r,e,r,e,e,e,e,r,e,r,r,e,r,r,e,e,r,r,e,r,r,r,e,r,r,e,r,e,r,e,e,r,e,r,e,r,e,r,e,r,r,r,r,e,e,e,e,r,r,r,e,e,r,e,r,r,r,e,r,e,e,r,e,r,e,e,r,r,r,e,e,e,r,r,r,r,r,r,r,e,e,r,r,e,r,e,r,e,e,r,e,e,r,e,r,r,r,r,r,r,r,r,r,r,e,e,r,r,e,e,e,e,r,r,e,e,e,r,e,e,r,r,r,r,r,r,e,e,e,r,r,r,e,e,r,r,e,e,e,r,e,r,e,e,e,r,e,e,r,e,r,r,e,r,e,e,r,e,r,e,e,r,e,r,e,e,e,r,r,e,e,r,r,r,r,e,e,e,r,r,e,r,r,r,e,e,r,e,e,e,e,e,e,e,r,r,e,r,e,r,r,e,r,r,e,r,e,e,r,e,r,e,e,e,r,r,r,r,r,e,e,r,r,e,r,r,r,e,r,e,e,r,e,e,e,e,e,r,e,r,r,e,e,r,e,e,r,r,r,r,e,e,r,e,e,e,r,r,e,e,r,e,e,e,e,e,e,r,r,e,e,r,r,e,r,r,e,e,e,e,e,r,r,r,e,r,r,e,r,e,e,r,r,r,r,e,r,e,e,e,r,e,e,r,r,e,e,r,r,r,e,e,e,r,r,e,e,r,e,e,e,r,r,r,r,r,e,r,r,e,r,e,r,e,r,r,r,r,r,r,e,r,r,e,r,e,e,r,e,e,r,e,r,r,e,e,e,e,e,r,r,r,r,e,r,e,e,r,e,r,e,e,r,e,r,e,r,e,r,e,r,e,r,r,r,r,r,e,r,e,e,e,r,r,r,r,e,r,r,e,r,r,e,e,e,e,e,e,e,r,r,e,e,r,e,e,r,r,r,r,e,e,e,e,e,e,e,e,r,e,r,r,r,e,r,r,e,r,e,e,e,r,r,e,e,r,r,e,r,r,e,r,r,e,r,e,e,e,e,e,e,r,r,r,e,r,e,e,e,r,r,r,r,e,r,e,r,e,e,e,r,e,r,e,e,e,r,e,e,r,r,e,r,r,e,r,e,r,r,e,e,e,r,e,r,r,r,r,r,r,r,r,e,e,e,r,r,e,e,r,e,e,e,r,e,r,e,r,e,r,e,e,e,e,r,e,r,e,e,r,e,r,r]},__routerFilterDynamic:{numItems:39,errorRate:1e-4,numBits:748,numHashes:14,bitArray:[r,e,r,r,e,e,e,e,r,r,r,e,r,r,e,r,e,r,e,r,e,e,r,e,e,r,e,e,e,e,r,r,e,r,e,r,e,r,e,r,e,e,e,r,r,r,r,r,e,r,r,r,e,e,r,e,e,r,r,r,r,r,e,e,r,r,r,e,e,r,r,e,r,e,e,r,r,e,r,e,e,e,e,e,e,r,e,e,r,r,r,e,e,e,r,e,r,e,r,r,e,r,e,r,e,e,e,r,e,e,e,e,r,r,e,e,r,r,e,r,r,r,r,e,e,r,e,e,e,r,e,e,e,r,r,r,r,r,e,r,r,r,r,e,r,e,e,r,r,e,e,r,e,r,e,r,r,r,r,r,e,r,r,e,r,e,r,r,e,r,r,e,e,e,e,e,r,r,r,e,r,r,e,e,r,r,e,e,e,r,r,e,r,e,e,e,r,r,e,e,r,e,r,r,e,r,e,e,e,e,e,r,r,r,e,r,r,r,e,r,e,e,e,r,e,e,e,e,r,e,r,e,e,r,e,e,r,e,e,r,r,r,r,e,e,r,e,r,r,r,e,e,r,r,r,r,e,e,r,r,e,r,r,r,e,e,e,r,r,e,e,r,e,e,e,e,e,e,e,r,r,e,r,e,r,e,e,r,r,r,r,r,r,r,e,r,r,e,r,r,e,r,e,e,r,e,e,e,e,r,r,e,r,e,e,r,r,r,e,e,e,r,e,e,r,r,e,r,e,r,r,r,r,r,r,e,r,e,e,e,r,r,e,r,e,r,r,e,r,e,r,e,e,e,r,e,e,r,r,r,r,r,r,r,r,e,e,e,e,r,r,e,r,e,e,r,r,e,e,r,e,e,r,e,e,e,e,e,e,e,r,r,e,e,e,r,r,e,e,r,r,e,e,r,r,r,r,r,r,r,r,e,e,r,r,r,e,e,r,r,e,e,e,e,r,r,e,r,r,r,r,r,r,e,r,e,r,e,e,e,e,e,e,r,e,r,r,e,r,r,e,e,r,e,e,r,e,e,r,r,r,r,e,r,r,e,r,r,r,e,e,e,e,r,e,e,e,e,r,r,r,r,r,e,e,e,r,e,e,e,e,r,r,e,r,r,r,e,r,r,e,e,r,r,r,e,e,e,r,r,r,e,r,e,r,r,e,r,e,e,e,e,e,r,r,e,r,r,e,r,e,r,e,r,e,r,e,r,r,r,e,r,e,e,r,r,e,e,r,r,e,e,e,e,r,r,r,e,r,r,e,e,e,e,e,e,e,r,e,r,e,e,r,e,r,e,r,r,e,r,e,e,e,e,e,e,r,r,e,e,r,r,e,e,e,e,e,e,r,e,r,e,e,r,r,r,r,e,r,e,e,e,e,r,r,r,r,e,e,e,r,e,r,r,r,r,e,e,r,e,r,r,r,e,r,e,e,r,e,r,r,e,e,e,r,r,r,r,e,r,r,r,e,r,e,e,r,e,e,r,e,r,r,r,e,r,r,e,e,e,r,e,r,e,e,e,e,r,e,e,e,e,e,e,e,e,r,e,e,r,r,r,r,e,r,e,e,e,r,r,e,r,e,e,r,e,e,e,e,r,e,r,e,e,r,e,e,e,e,e,r,e,e,e,r,e,r,r,e,r,e,e,e,e,r,r,r,e,e,r,e,e,r,e,r,e,r,r]},"/_error":["static/chunks/pages/_error-c970d8b55ace1b48.js"],sortedPages:["/_app","/_error"]}}(1,0,1e-4,14),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[4119],{94119:(e,s,a)=>{a.d(s,{A:()=>r});var n=a(95155),t=a(12115),i=a(52769);let l=[["pairing","Pairing","Bridge status + QR"],["allowlist","Allowlist","Permitted senders"],["messages","Messages","Inbound + outbound"],["send","Send","Manual message"]];async function c(e,s){let a=await fetch(e,s),n=await a.text();try{return{ok:a.ok,status:a.status,json:n?JSON.parse(n):null}}catch(e){return{ok:a.ok,status:a.status,json:null,text:n}}}function r(){var e;let[s,a]=(0,t.useState)("pairing"),[r,d]=(0,t.useState)(null),[o,h]=(0,t.useState)(null),[p,m]=(0,t.useState)(""),[u,x]=(0,t.useState)([]),[j,g]=(0,t.useState)(null),[v,f]=(0,t.useState)(""),[w,N]=(0,t.useState)(""),[b,y]=(0,t.useState)(!1),[S,_]=(0,t.useState)(""),[k,C]=(0,t.useState)(null),[A,D]=(0,t.useState)(!1),[T,q]=(0,t.useState)(!1),[W,L]=(0,t.useState)(""),[R,P]=(0,t.useState)(""),[O,X]=(0,t.useState)(!1),[E,I]=(0,t.useState)(""),[z,F]=(0,t.useState)(!1),M=(0,t.useCallback)(async()=>{try{var e;let[s,a,n]=await Promise.all([c("/api/whatsapp/status"),c("/api/whatsapp/qr"),c("/api/whatsapp/messages?limit=50")]);d(s.json),h(a.json),x((null==(e=n.json)?void 0:e.messages)||[]),g(null)}catch(e){g(e.message)}},[]);(0,t.useEffect)(()=>{M();let e=setInterval(M,3500);return()=>clearInterval(e)},[M]),(0,t.useEffect)(()=>{let e=!1;return async function(){if((null==o?void 0:o.paired)||!(null==o?void 0:o.qr))return m("");try{let s=await i.toDataURL(o.qr,{margin:1,width:220,errorCorrectionLevel:"M"});e||m(s)}catch(s){e||m("")}}(),()=>{e=!0}},[o]);let B=(null==r?void 0:r.health)||{},J=(null==r?void 0:r.allowlist)||[],Q=B.pairing_state||(!1===B.ok?"offline":"unknown"),U=B.last_connected_at?new Date(B.last_connected_at).toLocaleTimeString():"—",Y=(0,t.useMemo)(()=>(0,n.jsx)("p",{className:"whatsapp-warn-copy",children:"Pair only a dedicated WhatsApp number, not your personal account. Baileys is an unofficial WhatsApp Web client and the paired account can be banned."}),[]);async function G(e){if(e.preventDefault(),!v.trim())return;y(!0),_("");let s=await c("/api/whatsapp/allowlist",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({chat_id:v.trim(),label:w.trim()||null})});if(y(!1),!s.ok){var a;_((null==(a=s.json)?void 0:a.error)||"Failed to add");return}f(""),N(""),M()}async function H(e){var s;C(e);let a=await c("/api/whatsapp/allowlist?chat_id=".concat(encodeURIComponent(e)),{method:"DELETE"});C(null),a.ok?M():g((null==(s=a.json)?void 0:s.error)||"Failed to remove")}async function K(){D(!0),g(null);let e=await c("/api/whatsapp/disconnect",{method:"POST"});if(D(!1),q(!1),!e.ok){var s;g((null==(s=e.json)?void 0:s.error)||"Failed to disconnect");return}M()}async function V(e){if(e.preventDefault(),!W.trim()||!R.trim())return;X(!0),I(""),F(!1);let s=await c("/api/whatsapp/send",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({chat_id:W.trim(),text:R.trim()})});if(X(!1),!s.ok){var a;I((null==(a=s.json)?void 0:a.error)||"Failed to send");return}P(""),F(!0),M()}return(0,n.jsxs)("div",{className:"wa-section",children:[(0,n.jsxs)("div",{className:"wa-status-row",children:[(0,n.jsx)("span",{className:"admin-pill ".concat("paired"===Q?"ready":"qr_required"===Q||"reconnecting"===Q||"starting"===Q?"warn":"danger"),children:"paired"===Q?"Connected":"qr_required"===Q?"Awaiting QR scan":"reconnecting"===Q?"Reconnecting":"logged_out"===Q?"Logged out — reset session":"starting"===Q?"Starting":"Bridge offline"}),B.user&&(0,n.jsx)("span",{className:"wa-status-user",children:B.user})]}),j&&(0,n.jsx)("div",{className:"wa-error-banner",children:j}),(0,n.jsx)("nav",{className:"tools-subnav",role:"tablist","aria-label":"WhatsApp sections",children:l.map(e=>{let[t,i,l]=e;return(0,n.jsxs)("button",{type:"button",role:"tab","aria-selected":s===t,className:"tools-subnav-pill"+(s===t?" on":""),onClick:()=>a(t),children:[(0,n.jsx)("b",{children:i}),(0,n.jsx)("small",{children:l})]},t)})}),"pairing"===s&&(0,n.jsxs)("div",{className:"tools-pane",children:[(0,n.jsxs)("div",{className:"wa-stats-row",children:[(0,n.jsxs)("div",{className:"wa-stat",children:[(0,n.jsx)("span",{className:"wa-stat-label",children:"Paired account"}),(0,n.jsx)("span",{className:"wa-stat-value",children:B.user||"—"})]}),(0,n.jsxs)("div",{className:"wa-stat",children:[(0,n.jsx)("span",{className:"wa-stat-label",children:"Bridge queue"}),(0,n.jsx)("span",{className:"wa-stat-value",children:null!=(e=B.queue_size)?e:0})]}),(0,n.jsxs)("div",{className:"wa-stat",children:[(0,n.jsx)("span",{className:"wa-stat-label",children:"Last connected"}),(0,n.jsx)("span",{className:"wa-stat-value",children:U})]})]}),B.last_error&&(0,n.jsx)("div",{className:"wa-error-banner",children:B.last_error}),"paired"!==Q?(0,n.jsxs)("div",{className:"config-secrets-panel",style:{marginTop:0},children:[(0,n.jsx)("div",{className:"config-secrets-head",children:(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"config-section-title",children:"Pair device"}),(0,n.jsx)("p",{children:"Open WhatsApp → Settings → Linked Devices → Link a Device, then scan the code."})]})}),(0,n.jsxs)("div",{className:"whatsapp-pair-row",children:[p?(0,n.jsx)("div",{className:"whatsapp-qr-box",children:(0,n.jsx)("img",{src:p,alt:"WhatsApp pairing QR code",width:220,height:220})}):(0,n.jsx)("div",{className:"whatsapp-qr-pending",children:"Waiting for QR — make sure the daemon is running."}),(0,n.jsxs)("div",{className:"whatsapp-pair-copy",children:[(0,n.jsxs)("p",{children:["Code rotates roughly every 20 seconds. The dashboard re-fetches automatically. The session is saved at ",(0,n.jsx)("code",{children:"data/whatsapp/session/"}),"."]}),Y]})]})]}):(0,n.jsxs)("div",{className:"config-secrets-panel",style:{marginTop:0},children:[(0,n.jsxs)("div",{className:"config-secrets-head",children:[(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"config-section-title",children:"Bridge is paired"}),(0,n.jsx)("p",{children:"The WhatsApp session is active. Allowlisted senders can message this agent directly."})]}),T?(0,n.jsxs)("div",{className:"wa-disconnect-confirm",children:[(0,n.jsx)("button",{type:"button",className:"secrets-action-btn danger",onClick:K,disabled:A,children:A?"Disconnecting...":"Confirm disconnect"}),(0,n.jsx)("button",{type:"button",className:"secrets-action-btn",onClick:()=>q(!1),disabled:A,children:"Cancel"})]}):(0,n.jsx)("button",{type:"button",className:"secrets-action-btn danger",onClick:()=>q(!0),disabled:A,children:"Disconnect"})]}),T&&(0,n.jsx)("p",{className:"whatsapp-warn-copy",children:"Unlinks this device from WhatsApp and wipes the local session. You will need to scan a new QR code to reconnect."}),Y]})]}),"allowlist"===s&&(0,n.jsx)("div",{className:"tools-pane",children:(0,n.jsxs)("div",{className:"config-secrets-panel",children:[(0,n.jsx)("div",{className:"config-secrets-head",children:(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"config-section-title",children:"Allowed senders"}),(0,n.jsx)("p",{children:"Only chats on this list can message the agent. Add new entries below."})]})}),(0,n.jsxs)("form",{className:"secrets-add-form",onSubmit:G,children:[(0,n.jsxs)("div",{className:"secrets-add-fields",children:[(0,n.jsxs)("label",{className:"config-env-field",children:[(0,n.jsx)("span",{className:"config-env-field-top",children:(0,n.jsx)("b",{children:"Chat id"})}),(0,n.jsx)("input",{type:"text",autoComplete:"off",placeholder:"9715XXXXXXXX or full JID",value:v,onChange:e=>f(e.target.value),required:!0})]}),(0,n.jsxs)("label",{className:"config-env-field",children:[(0,n.jsxs)("span",{className:"config-env-field-top",children:[(0,n.jsx)("b",{children:"Label"}),(0,n.jsx)("em",{style:{fontStyle:"normal",fontSize:"10px",color:"#68707b",background:"transparent",padding:0},children:"optional"})]}),(0,n.jsx)("input",{type:"text",autoComplete:"off",placeholder:"e.g. Founder phone",value:w,onChange:e=>N(e.target.value)})]})]}),(0,n.jsxs)("div",{className:"secrets-add-footer",children:[S&&(0,n.jsx)("span",{className:"secrets-error",children:S}),(0,n.jsx)("button",{type:"submit",className:"config-save-btn",disabled:b||!v.trim(),children:b?"Adding...":"Add to allowlist"})]})]}),0===J.length?(0,n.jsx)("div",{className:"allowlists-entries-empty",children:"No senders allowlisted — all inbound messages are dropped. Add at least one chat id above."}):(0,n.jsx)("div",{className:"config-tools-list",children:J.map(e=>(0,n.jsx)("div",{className:"config-tool-row on",children:(0,n.jsxs)("div",{className:"secrets-row-inner",children:[(0,n.jsxs)("div",{className:"secrets-row-meta",children:[(0,n.jsxs)("div",{className:"config-tool-titleline",children:[(0,n.jsx)("span",{className:"config-tool-name",style:{textTransform:"none"},children:(0,n.jsx)("code",{className:"whatsapp-mono",children:e.chat_id})}),e.kind&&(0,n.jsx)("span",{className:"config-tool-risk",children:e.kind})]}),(e.label||e.created_at)&&(0,n.jsxs)("div",{className:"config-tool-status",children:[e.label&&(0,n.jsx)("span",{children:e.label}),e.created_at&&(0,n.jsx)("span",{children:new Date(e.created_at).toLocaleString()})]})]}),(0,n.jsx)("div",{className:"secrets-row-actions",children:(0,n.jsx)("button",{type:"button",className:"secrets-action-btn danger",disabled:k===e.chat_id,onClick:()=>H(e.chat_id),children:k===e.chat_id?"...":"Remove"})})]})},e.chat_id))})]})}),"messages"===s&&(0,n.jsx)("div",{className:"tools-pane",children:(0,n.jsxs)("div",{className:"config-secrets-panel",children:[(0,n.jsx)("div",{className:"config-secrets-head",children:(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"config-section-title",children:"Recent messages"}),(0,n.jsxs)("p",{children:[u.length," of last 50 inbound + outbound."]})]})}),0===u.length?(0,n.jsx)("div",{className:"secrets-empty",children:"No messages yet. Inbound and outbound traffic from the bridge will appear here."}):(0,n.jsx)("div",{style:{overflowX:"auto"},children:(0,n.jsxs)("table",{className:"admin-table",style:{minWidth:520},children:[(0,n.jsx)("thead",{children:(0,n.jsxs)("tr",{children:[(0,n.jsx)("th",{children:"When"}),(0,n.jsx)("th",{children:"Dir"}),(0,n.jsx)("th",{children:"Chat"}),(0,n.jsx)("th",{children:"Sender"}),(0,n.jsx)("th",{children:"Text"})]})}),(0,n.jsx)("tbody",{children:u.map(e=>(0,n.jsxs)("tr",{children:[(0,n.jsx)("td",{style:{whiteSpace:"nowrap"},children:new Date(e.created_at).toLocaleTimeString()}),(0,n.jsx)("td",{children:(0,n.jsx)("span",{className:"admin-pill ".concat("inbound"===e.direction?"warn":"ready"),children:e.direction})}),(0,n.jsx)("td",{children:(0,n.jsx)("code",{className:"whatsapp-mono",children:e.chat_id})}),(0,n.jsx)("td",{children:(0,n.jsx)("code",{className:"whatsapp-mono",children:e.sender||"—"})}),(0,n.jsx)("td",{style:{maxWidth:260,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:e.text})]},e.id))})]})})]})}),"send"===s&&(0,n.jsx)("div",{className:"tools-pane",children:(0,n.jsxs)("div",{className:"config-secrets-panel",children:[(0,n.jsx)("div",{className:"config-secrets-head",children:(0,n.jsxs)("div",{children:[(0,n.jsx)("span",{className:"config-section-title",children:"Send a message"}),(0,n.jsx)("p",{children:"Manual outbound send. Logs to whatsapp_messages with an audit row."})]})}),(0,n.jsxs)("form",{className:"secrets-add-form",onSubmit:V,children:[(0,n.jsxs)("div",{className:"secrets-add-fields",children:[(0,n.jsxs)("label",{className:"config-env-field",children:[(0,n.jsx)("span",{className:"config-env-field-top",children:(0,n.jsx)("b",{children:"Chat id"})}),(0,n.jsx)("input",{type:"text",autoComplete:"off",placeholder:"Digits or full JID",value:W,onChange:e=>{L(e.target.value),F(!1)},required:!0})]}),(0,n.jsxs)("label",{className:"config-env-field",children:[(0,n.jsx)("span",{className:"config-env-field-top",children:(0,n.jsx)("b",{children:"Message"})}),(0,n.jsx)("textarea",{rows:4,placeholder:"Plain text only",value:R,onChange:e=>{P(e.target.value),F(!1)},required:!0,style:{resize:"vertical",fontFamily:"inherit",fontSize:"13px",padding:"8px 10px",borderRadius:8,border:"1px solid rgba(17,19,24,.12)",outline:"none",width:"100%",boxSizing:"border-box"}})]})]}),(0,n.jsxs)("div",{className:"secrets-add-footer",children:[E&&(0,n.jsx)("span",{className:"secrets-error",children:E}),z&&(0,n.jsx)("span",{style:{fontSize:12,color:"#2d7044",fontWeight:650},children:"Sent"}),(0,n.jsx)("button",{type:"submit",className:"config-save-btn",disabled:O||!W.trim()||!R.trim(),children:O?"Sending...":"Send message"})]})]})]})})]})}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[893],{45:(e,a,t)=>{"use strict";t.d(a,{default:()=>o});var s=t(12115),n={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"},l=t(64250);let r=(0,s.createContext)({}),o=(0,s.forwardRef)((e,a)=>{var t,o,c;let{color:i,size:d,strokeWidth:u,absoluteStrokeWidth:m,className:h="",children:p,iconNode:j,...f}=e,{size:x=24,strokeWidth:g=2,absoluteStrokeWidth:v=!1,color:b="currentColor",className:y=""}=null!=(t=(0,s.useContext)(r))?t:{},k=(null!=m?m:v)?24*Number(null!=u?u:g)/Number(null!=d?d:x):null!=u?u:g;return(0,s.createElement)("svg",{ref:a,...n,width:null!=(o=null!=d?d:x)?o:n.width,height:null!=(c=null!=d?d:x)?c:n.height,stroke:null!=i?i:b,strokeWidth:k,className:(0,l.z)("lucide",y,h),...!p&&!(e=>{for(let a in e)if(a.startsWith("aria-")||"role"===a||"title"===a)return!0;return!1})(f)&&{"aria-hidden":"true"},...f},[...j.map(e=>{let[a,t]=e;return(0,s.createElement)(a,t)}),...Array.isArray(p)?p:[p]])})},8707:(e,a,t)=>{"use strict";t.d(a,{default:()=>m});var s=t(95155),n=t(12115),l=t(47650),r=t(85649),o=t(30926);let c=(0,o.createServerReference)("40ab5a4206ede782a1564bd15ede8850606ae1e110",o.callServer,void 0,o.findSourceMapURL,"createProjectAction");var i=t(59097);let d=[{value:"#c2452a",name:"Mars Red"},{value:"#a83a22",name:"Deep Red"},{value:"#7c2b19",name:"Dark Red"},{value:"#111318",name:"Charcoal"},{value:"#3f3a30",name:"Warm Black"},{value:"#68707b",name:"Slate"},{value:"#cdb78a",name:"Warm Sand"},{value:"#1f6c9f",name:"Skill Blue"}];function u(){let{pending:e}=(0,l.useFormStatus)();return(0,s.jsx)("button",{type:"submit",className:"admin-button",disabled:e,"aria-busy":e?"true":void 0,children:e?"Creating…":"Create project"})}function m(e){let{workspaceRoot:a="~/workspace/projects"}=e,[t,l]=n.useState(!1),[o,m]=n.useState(""),[h,p]=n.useState("workspace"),[j,f]=n.useState(""),x=n.useRef(null),g=n.useMemo(()=>"".concat(a.replace(/\/$/,""),"/").concat(String(o||"").toLowerCase().trim().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,64)||"project"),[a,o]);return n.useEffect(()=>{var e;"custom"===h&&(null==(e=x.current)||e.focus())},[h]),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("button",{type:"button",className:"admin-button agents-new-cta",onClick:()=>l(!0),children:[(0,s.jsx)("span",{"aria-hidden":!0,className:"agents-new-cta-glyph",children:"+"}),"New project"]}),(0,s.jsx)(r.A,{open:t,onClose:()=>l(!1),eyebrow:"New project",title:"Create a project",children:(0,s.jsxs)("form",{className:"agents-modal-form",action:c,children:[(0,s.jsx)("p",{className:"agents-modal-help",children:"Scope agents, documents, memory, and integrations together."}),(0,s.jsx)("section",{className:"agents-modal-section",children:(0,s.jsxs)("label",{className:"agents-modal-field wide",children:[(0,s.jsx)("span",{children:"Name"}),(0,s.jsx)("input",{name:"name",type:"text",required:!0,placeholder:"Acme Co.",autoComplete:"off",value:o,onChange:e=>m(e.target.value),autoFocus:!0})]})}),(0,s.jsxs)("section",{className:"agents-modal-section",children:[(0,s.jsxs)("div",{className:"agents-modal-section-head",children:[(0,s.jsx)("span",{children:"Folder location"}),(0,s.jsx)("small",{children:"Where this project lives on disk."})]}),(0,s.jsxs)("div",{className:"agents-modal-radio-group",children:[(0,s.jsxs)("label",{className:"agents-modal-radio ".concat("workspace"===h?"on":""),children:[(0,s.jsx)("input",{type:"radio",name:"folder_mode",value:"workspace",checked:"workspace"===h,onChange:()=>p("workspace")}),(0,s.jsxs)("span",{className:"agents-modal-radio-body",children:[(0,s.jsx)("b",{children:"madarX workspace"}),(0,s.jsx)("code",{title:g,children:function(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:48;if(!e||e.length<=a)return e;let t=e.slice(0,Math.floor(a/2)-1),s=e.slice(e.length-Math.floor(a/2)+2);return"".concat(t,"…").concat(s)}(g)})]})]}),(0,s.jsxs)("label",{className:"agents-modal-radio ".concat("custom"===h?"on":""),children:[(0,s.jsx)("input",{type:"radio",name:"folder_mode",value:"custom",checked:"custom"===h,onChange:()=>p("custom")}),(0,s.jsxs)("span",{className:"agents-modal-radio-body",children:[(0,s.jsx)("b",{children:"Custom path"}),(0,s.jsx)("small",{children:"Any absolute folder. Created if missing."})]})]})]}),"custom"===h?(0,s.jsx)(i.A,{inputRef:x,value:j,onChange:f}):(0,s.jsx)("input",{type:"hidden",name:"folder_path",value:""})]}),(0,s.jsxs)("section",{className:"agents-modal-section",children:[(0,s.jsxs)("div",{className:"agents-modal-section-head",children:[(0,s.jsx)("span",{children:"Color"}),(0,s.jsx)("small",{children:"Used for the project tile across the app."})]}),(0,s.jsxs)("fieldset",{className:"agents-modal-swatches",children:[(0,s.jsx)("legend",{className:"visually-hidden",children:"Project color"}),d.map(e=>(0,s.jsxs)("label",{className:"agents-modal-swatch",style:{"--swatch":e.value},children:[(0,s.jsx)("input",{type:"radio",name:"color",value:e.value,defaultChecked:"#c2452a"===e.value}),(0,s.jsx)("span",{className:"agents-modal-swatch-ring","aria-hidden":"true"}),(0,s.jsx)("span",{className:"visually-hidden",children:e.name})]},e.value))]})]}),(0,s.jsxs)("section",{className:"agents-modal-section",children:[(0,s.jsxs)("div",{className:"agents-modal-section-head",children:[(0,s.jsx)("span",{children:"Description"}),(0,s.jsx)("small",{children:"Used as context for agents working in this project."})]}),(0,s.jsx)("label",{className:"agents-modal-field wide",children:(0,s.jsx)("textarea",{name:"description",rows:3,placeholder:"What is this project for? Goals, audience, voice, constraints."})})]}),(0,s.jsxs)("footer",{className:"agents-modal-foot",children:[(0,s.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>l(!1),children:"Cancel"}),(0,s.jsx)(u,{})]})]})})]})}},10677:(e,a,t)=>{"use strict";t.d(a,{default:()=>l});var s=t(95155),n=t(12115);function l(){let[e,a]=(0,n.useState)([]),[t,l]=(0,n.useState)("");return(0,n.useEffect)(()=>{l(localStorage.getItem("madarx.activeProjectId")||""),fetch("/api/projects").then(e=>e.json()).then(e=>a(e.projects||[])).catch(()=>{})},[]),(0,s.jsx)("div",{className:"project-switcher","data-project-switcher":!0,children:(0,s.jsxs)("select",{value:t,onChange:e=>{var a;l(a=e.target.value),a?localStorage.setItem("madarx.activeProjectId",a):localStorage.removeItem("madarx.activeProjectId"),window.dispatchEvent(new CustomEvent("madarx:project-change",{detail:{project_id:a||null}}))},"aria-label":"Active project",children:[(0,s.jsx)("option",{value:"",children:"All projects"}),e.map(e=>(0,s.jsx)("option",{value:e.id,children:e.name},e.id))]})})}},13185:(e,a,t)=>{"use strict";t.d(a,{A:()=>o});var s=t(12115),n=t(64250);let l=e=>{let a=e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,a,t)=>t?t.toUpperCase():a.toLowerCase());return a.charAt(0).toUpperCase()+a.slice(1)};var r=t(45);let o=(e,a)=>{let t=(0,s.forwardRef)((t,o)=>{let{className:c,...i}=t;return(0,s.createElement)(r.default,{ref:o,iconNode:a,className:(0,n.z)("lucide-".concat(l(e).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()),"lucide-".concat(e),c),...i})});return t.displayName=l(e),t}},16111:(e,a,t)=>{"use strict";t.d(a,{default:()=>d});var s=t(95155),n=t(12115),l=t(47650),r=t(85649),o=t(30926);let c=(0,o.createServerReference)("4042d31a1eb062b91673d5a505d5b45e67f8e7aaf3",o.callServer,void 0,o.findSourceMapURL,"deleteProjectAction");function i(e){let{disabled:a}=e,{pending:t}=(0,l.useFormStatus)();return(0,s.jsx)("button",{type:"submit",className:"admin-button danger",disabled:t||a,"aria-busy":t?"true":void 0,children:t?"Deleting…":"Delete project"})}function d(e){let{projectId:a,projectName:t,projectSlug:l,isProtected:o}=e,[d,u]=n.useState(!1),[m,h]=n.useState("");if(o)return(0,s.jsxs)("span",{className:"admin-button secondary project-delete is-locked","aria-disabled":"true",title:"The Personal project is the default scope and cannot be deleted.",children:[(0,s.jsxs)("svg",{width:"11",height:"11",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"2",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",style:{marginRight:6,verticalAlign:"-1px"},children:[(0,s.jsx)("rect",{x:"3",y:"11",width:"18",height:"11",rx:"2"}),(0,s.jsx)("path",{d:"M7 11V7a5 5 0 0 1 10 0v4"})]}),"Protected"]});n.useEffect(()=>{d||h("")},[d]);let p=m.trim()===l;return(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("button",{type:"button",className:"admin-button secondary project-delete",onClick:()=>u(!0),"aria-label":"Delete ".concat(t),children:"Delete"}),(0,s.jsx)(r.A,{open:d,onClose:()=>u(!1),eyebrow:"Delete project",title:"Delete ".concat(t,"?"),tone:"danger",children:(0,s.jsxs)("form",{className:"agents-modal-form",action:c,children:[(0,s.jsx)("input",{type:"hidden",name:"project_id",value:a}),(0,s.jsx)("p",{className:"agents-modal-help",children:"This removes the project, its agents, Disk files, memory, secrets, and audit history. The folder on your local drive is left untouched."}),(0,s.jsx)("section",{className:"agents-modal-section",children:(0,s.jsxs)("label",{className:"agents-modal-field wide",children:[(0,s.jsxs)("span",{children:["Type ",(0,s.jsx)("code",{className:"agents-modal-inline-code",children:l})," to confirm"]}),(0,s.jsx)("input",{type:"text",autoComplete:"off",spellCheck:!1,value:m,onChange:e=>h(e.target.value),placeholder:l,autoFocus:!0})]})}),(0,s.jsxs)("footer",{className:"agents-modal-foot",children:[(0,s.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>u(!1),children:"Cancel"}),(0,s.jsx)(i,{disabled:!p})]})]})})]})}},30926:(e,a,t)=>{"use strict";Object.defineProperty(a,"__esModule",{value:!0}),!function(e,a){for(var t in a)Object.defineProperty(e,t,{enumerable:!0,get:a[t]})}(a,{callServer:function(){return s.callServer},createServerReference:function(){return l.createServerReference},findSourceMapURL:function(){return n.findSourceMapURL}});let s=t(41209),n=t(85153),l=t(77197)},34788:(e,a,t)=>{"use strict";t.d(a,{A:()=>s});let s=(0,t(13185).A)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]])},59097:(e,a,t)=>{"use strict";t.d(a,{A:()=>l});var s=t(95155),n=t(12115);function l(e){let{name:a="folder_path",value:t,onChange:l,inputRef:r,placeholder:o="/Users/you/Documents/my-project"}=e,[c,i]=n.useState(null),[d,u]=n.useState(!1),[m,h]=n.useState(""),[p,j]=n.useState(""),[f,x]=n.useState(null);async function g(){var e;let a;if(i(null),!(null==(e=navigator.clipboard)?void 0:e.readText))return void i({kind:"error",message:"Clipboard not available."});try{a=await navigator.clipboard.readText()}catch(e){i({kind:"error",message:"Allow clipboard access."});return}let t=(a||"").trim();if((t.startsWith('"')&&t.endsWith('"')||t.startsWith("'")&&t.endsWith("'"))&&(t=t.slice(1,-1)),t.startsWith("file://"))try{t=decodeURI(t.slice(7))}catch(e){}return t?t.startsWith("/")||t.startsWith("~")?void(l(t),i({kind:"success",message:"Pasted."})):void i({kind:"error",message:"Path must be absolute."}):void i({kind:"error",message:"Clipboard is empty."})}async function v(){i(null),x("pick");try{let e=await fetch("/api/fs/pick-folder",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({title:"Choose project folder",start_path:t&&t.startsWith("/")?t:void 0})});if(499===e.status)return void i({kind:"error",message:"Cancelled."});let a=await e.json();if(!e.ok)return void i({kind:"error",message:a.error||"Picker failed."});l(a.folder_path),i({kind:"success",message:"Selected ".concat(a.folder_path)})}catch(e){i({kind:"error",message:String((null==e?void 0:e.message)||e)})}finally{x(null)}}async function b(){if(i(null),!m.trim()||!p.trim())return void i({kind:"error",message:"Parent and name required."});x("create");try{let e=await fetch("/api/fs/create-folder",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({parent:m.trim(),name:p.trim()})}),a=await e.json();if(!e.ok)return void i({kind:"error",message:a.error||"Create failed."});l(a.folder_path),u(!1),j(""),i({kind:"success",message:"Created ".concat(a.folder_path)})}catch(e){i({kind:"error",message:String((null==e?void 0:e.message)||e)})}finally{x(null)}}return n.useEffect(()=>{d&&!m&&h(t||"~/Documents")},[d,t,m]),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("div",{className:"agents-modal-paste-row",children:[(0,s.jsx)("input",{ref:r,name:a,type:"text",placeholder:o,autoComplete:"off",spellCheck:!1,value:t||"",onChange:e=>{l(e.target.value),c&&i(null)},required:!0}),(0,s.jsx)("button",{type:"button",className:"admin-button secondary",onClick:v,disabled:"pick"===f,children:"pick"===f?"Opening…":"Choose folder…"})]}),(0,s.jsxs)("div",{className:"agents-modal-folder-tools",children:[(0,s.jsx)("button",{type:"button",className:"admin-button secondary",onClick:g,children:"Paste from clipboard"}),(0,s.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>l("~/Documents"),children:"~/Documents"}),(0,s.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>l("~/Desktop"),children:"~/Desktop"}),(0,s.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>u(e=>!e),children:d?"Cancel new folder":"+ New folder"})]}),d?(0,s.jsxs)("div",{className:"agents-modal-create-folder",children:[(0,s.jsx)("small",{children:"Create a folder anywhere outside system directories. Parent must exist."}),(0,s.jsx)("div",{className:"agents-modal-create-row",children:(0,s.jsx)("input",{type:"text",placeholder:"Parent (e.g. ~/Documents)",value:m,onChange:e=>h(e.target.value),spellCheck:!1,autoComplete:"off"})}),(0,s.jsxs)("div",{className:"agents-modal-create-row",children:[(0,s.jsx)("input",{type:"text",placeholder:"New folder name",value:p,onChange:e=>j(e.target.value),spellCheck:!1,autoComplete:"off"}),(0,s.jsx)("button",{type:"button",className:"admin-button",onClick:b,disabled:"create"===f,children:"create"===f?"Creating…":"Create"})]})]}):null,c?(0,s.jsx)("p",{className:"agents-modal-feedback ".concat(c.kind),role:"status","aria-live":"polite",children:c.message}):null]})}},64250:(e,a,t)=>{"use strict";t.d(a,{z:()=>s});let s=function(){for(var e=arguments.length,a=Array(e),t=0;t<e;t++)a[t]=arguments[t];return a.filter((e,a,t)=>!!e&&""!==e.trim()&&t.indexOf(e)===a).join(" ").trim()}},79350:(e,a,t)=>{"use strict";t.d(a,{default:()=>m});var s=t(95155),n=t(12115),l=t(47650),r=t(85649),o=t(30926);let c=(0,o.createServerReference)("408009ab2e25b2caddc8395de45563df06bae39d83",o.callServer,void 0,o.findSourceMapURL,"updateProjectAction");var i=t(59097);let d=[{value:"#c2452a",name:"Mars Red"},{value:"#a83a22",name:"Deep Red"},{value:"#7c2b19",name:"Dark Red"},{value:"#111318",name:"Charcoal"},{value:"#3f3a30",name:"Warm Black"},{value:"#68707b",name:"Slate"},{value:"#cdb78a",name:"Warm Sand"},{value:"#1f6c9f",name:"Skill Blue"}];function u(){let{pending:e}=(0,l.useFormStatus)();return(0,s.jsx)("button",{type:"submit",className:"admin-button",disabled:e,"aria-busy":e?"true":void 0,children:e?"Saving…":"Save changes"})}function m(e){let{projectId:a,projectName:t,projectColor:l,projectDescription:o,projectFolderPath:m}=e,[h,p]=n.useState(!1),[j,f]=n.useState("keep"),[x,g]=n.useState(m||""),v=n.useRef(null);return n.useEffect(()=>{h&&(f("keep"),g(m||""))},[h,m]),n.useEffect(()=>{var e;"custom"===j&&(null==(e=v.current)||e.focus())},[j]),(0,s.jsxs)(s.Fragment,{children:[(0,s.jsx)("button",{type:"button",className:"admin-button secondary project-edit",onClick:()=>p(!0),"aria-label":"Edit ".concat(t),children:"Edit"}),(0,s.jsx)(r.A,{open:h,onClose:()=>p(!1),eyebrow:"Edit project",title:"Edit ".concat(t),children:(0,s.jsxs)("form",{className:"agents-modal-form",action:c,children:[(0,s.jsx)("input",{type:"hidden",name:"project_id",value:a}),(0,s.jsx)("section",{className:"agents-modal-section",children:(0,s.jsxs)("label",{className:"agents-modal-field wide",children:[(0,s.jsx)("span",{children:"Name"}),(0,s.jsx)("input",{name:"name",type:"text",defaultValue:t,autoComplete:"off",required:!0})]})}),(0,s.jsxs)("section",{className:"agents-modal-section",children:[(0,s.jsxs)("div",{className:"agents-modal-section-head",children:[(0,s.jsx)("span",{children:"Folder location"}),(0,s.jsx)("small",{children:"Where project files live on disk. Move only if you've already moved the folder yourself."})]}),(0,s.jsxs)("div",{className:"agents-modal-radio-group",children:[(0,s.jsxs)("label",{className:"agents-modal-radio ".concat("keep"===j?"on":""),children:[(0,s.jsx)("input",{type:"radio",name:"folder_mode",value:"keep",checked:"keep"===j,onChange:()=>f("keep")}),(0,s.jsxs)("span",{className:"agents-modal-radio-body",children:[(0,s.jsx)("b",{children:"Keep current"}),(0,s.jsx)("code",{title:m||"",children:function(e){let a=arguments.length>1&&void 0!==arguments[1]?arguments[1]:48;if(!e||e.length<=a)return e;let t=e.slice(0,Math.floor(a/2)-1),s=e.slice(e.length-Math.floor(a/2)+2);return"".concat(t,"…").concat(s)}(m)||"(not set)"})]})]}),(0,s.jsxs)("label",{className:"agents-modal-radio ".concat("custom"===j?"on":""),children:[(0,s.jsx)("input",{type:"radio",name:"folder_mode",value:"custom",checked:"custom"===j,onChange:()=>f("custom")}),(0,s.jsxs)("span",{className:"agents-modal-radio-body",children:[(0,s.jsx)("b",{children:"Change to…"}),(0,s.jsx)("small",{children:"Absolute path. Must already exist or be writable."})]})]})]}),"custom"===j?(0,s.jsx)(i.A,{inputRef:v,value:x,onChange:g}):(0,s.jsx)("input",{type:"hidden",name:"folder_path",value:""})]}),(0,s.jsxs)("section",{className:"agents-modal-section",children:[(0,s.jsxs)("div",{className:"agents-modal-section-head",children:[(0,s.jsx)("span",{children:"Color"}),(0,s.jsx)("small",{children:"Tile color across the app."})]}),(0,s.jsxs)("fieldset",{className:"agents-modal-swatches",children:[(0,s.jsx)("legend",{className:"visually-hidden",children:"Project color"}),d.map(e=>(0,s.jsxs)("label",{className:"agents-modal-swatch",style:{"--swatch":e.value},children:[(0,s.jsx)("input",{type:"radio",name:"color",value:e.value,defaultChecked:e.value===(l||"#c2452a")}),(0,s.jsx)("span",{className:"agents-modal-swatch-ring","aria-hidden":"true"}),(0,s.jsx)("span",{className:"visually-hidden",children:e.name})]},e.value))]})]}),(0,s.jsxs)("section",{className:"agents-modal-section",children:[(0,s.jsxs)("div",{className:"agents-modal-section-head",children:[(0,s.jsx)("span",{children:"Description"}),(0,s.jsx)("small",{children:"Used as context for agents working in this project."})]}),(0,s.jsx)("label",{className:"agents-modal-field wide",children:(0,s.jsx)("textarea",{name:"description",rows:3,defaultValue:o||"",placeholder:"What is this project for? Goals, audience, voice, constraints."})})]}),(0,s.jsxs)("footer",{className:"agents-modal-foot",children:[(0,s.jsx)("button",{type:"button",className:"admin-button secondary",onClick:()=>p(!1),children:"Cancel"}),(0,s.jsx)(u,{})]})]})})]})}},85649:(e,a,t)=>{"use strict";t.d(a,{A:()=>r});var s=t(95155),n=t(12115),l=t(34788);function r(e){let{open:a,onClose:t,eyebrow:r,title:o,tone:c="default",size:i="default",children:d}=e,u=n.useRef(null);return n.useEffect(()=>{let e=u.current;e&&(a&&!e.open&&("function"==typeof e.showModal?e.showModal():e.setAttribute("open","")),!a&&e.open&&e.close())},[a]),n.useEffect(()=>{let e=u.current;if(!e)return;let a=e=>{e.preventDefault(),t()};return e.addEventListener("cancel",a),()=>e.removeEventListener("cancel",a)},[t]),(0,s.jsx)("dialog",{ref:u,className:"agents-modal".concat("wide"===i?" agents-modal--wide":""),onClick:e=>{e.target===u.current&&t()},children:a?(0,s.jsxs)("div",{className:"agents-modal-card".concat("danger"===c?" agents-modal-card--danger":""),onClick:e=>e.stopPropagation(),children:[(0,s.jsxs)("header",{className:"agents-modal-head",children:[(0,s.jsxs)("div",{children:[r?(0,s.jsx)("span",{className:"admin-kicker",children:r}):null,(0,s.jsx)("h2",{children:o})]}),(0,s.jsx)("button",{type:"button",className:"agents-modal-close",onClick:t,"aria-label":"Close",children:(0,s.jsx)(l.A,{size:14})})]}),d]}):null})}},99168:(e,a,t)=>{Promise.resolve().then(t.bind(t,10677)),Promise.resolve().then(t.bind(t,16111)),Promise.resolve().then(t.bind(t,79350)),Promise.resolve().then(t.bind(t,8707)),Promise.resolve().then(t.t.bind(t,52619,23))}},e=>{e.O(0,[2619,8441,1255,7358],()=>e(e.s=99168)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[3427],{10677:(e,a,t)=>{"use strict";t.d(a,{default:()=>l});var s=t(95155),n=t(12115);function l(){let[e,a]=(0,n.useState)([]),[t,l]=(0,n.useState)("");return(0,n.useEffect)(()=>{l(localStorage.getItem("madarx.activeProjectId")||""),fetch("/api/projects").then(e=>e.json()).then(e=>a(e.projects||[])).catch(()=>{})},[]),(0,s.jsx)("div",{className:"project-switcher","data-project-switcher":!0,children:(0,s.jsxs)("select",{value:t,onChange:e=>{var a;l(a=e.target.value),a?localStorage.setItem("madarx.activeProjectId",a):localStorage.removeItem("madarx.activeProjectId"),window.dispatchEvent(new CustomEvent("madarx:project-change",{detail:{project_id:a||null}}))},"aria-label":"Active project",children:[(0,s.jsx)("option",{value:"",children:"All projects"}),e.map(e=>(0,s.jsx)("option",{value:e.id,children:e.name},e.id))]})})}},20063:(e,a,t)=>{"use strict";var s=t(47260);t.o(s,"usePathname")&&t.d(a,{usePathname:function(){return s.usePathname}}),t.o(s,"useRouter")&&t.d(a,{useRouter:function(){return s.useRouter}}),t.o(s,"useSearchParams")&&t.d(a,{useSearchParams:function(){return s.useSearchParams}})},22157:(e,a,t)=>{"use strict";t.d(a,{default:()=>j});var s=t(95155),n=t(12115),l=t(20063),i=t(55799);let r={intake:"neutral",running:"info",awaiting_approval:"warning",complete:"success",rejected:"danger",failed:"danger",cancelled:"neutral"},c={intake:"Intake",running:"Running",awaiting_approval:"Awaiting approval",complete:"Complete",rejected:"Rejected",failed:"Failed",cancelled:"Cancelled"},d={queued:"neutral",running:"info",awaiting_approval:"warning",pass:"success",fail:"danger",skipped:"neutral",cancelled:"neutral"},o=new Set(["complete","rejected","failed","cancelled"]);function u(e){return e?new Date(e).toLocaleString():"—"}function h(e){let{artifact:a}=e;if(!a)return null;let t="html"===a.kind;return(0,s.jsxs)("li",{className:"case-artifact-card",children:[(0,s.jsxs)("div",{className:"case-artifact-card-meta",children:[(0,s.jsx)("span",{className:"case-artifact-title",children:a.title||a.path}),(0,s.jsxs)("span",{className:"muted",children:[" \xb7 ",a.kind]})]}),t?(0,s.jsx)("iframe",{title:a.title||a.id,src:"/api/artifacts/".concat(a.id,"/raw"),sandbox:"allow-scripts",loading:"lazy"}):null]})}function m(e){let{title:a,label:t,artifact:n,helpText:l}=e,i=(null==n?void 0:n.kind)==="html";return(0,s.jsxs)("div",{className:"intake-artifact-card",children:[(0,s.jsxs)("header",{children:[(0,s.jsx)("h4",{children:t}),(0,s.jsx)("span",{className:"muted",children:(null==n?void 0:n.title)||""})]}),i?(0,s.jsx)("iframe",{title:a,src:"/api/artifacts/".concat(n.id,"/raw"),sandbox:"allow-scripts",loading:"lazy"}):(0,s.jsx)("p",{className:"muted",children:"Artifact content unavailable."}),l?(0,s.jsx)("small",{className:"muted",children:l}):null]})}function p(e){var a;let{caseRow:t,artifacts:n,latestExec:l}=e,i=null==t||null==(a=t.context)?void 0:a.intake_form_artifact_id,r=(null==l?void 0:l.artifact_ids)||[],c=n.find(e=>e.id===i),d=n.find(e=>r.includes(e.id)&&e.id!==i);return(0,s.jsxs)(s.Fragment,{children:[c?(0,s.jsx)(m,{title:"Intake form artifact",label:"Intake form artifact",artifact:c,helpText:"Artifact-first intake page \xb7 canonical presentation record for this case."}):null,t.intake_payload?null:(0,s.jsxs)("p",{children:["Intake form not submitted yet. Submit via"," ",(0,s.jsx)("a",{href:"/workflows/new?definition=".concat(t.definition_slug),children:"the new-case page"})," ","for this definition."]}),d?(0,s.jsx)(m,{title:"Intake submission",label:"Intake submission",artifact:d,helpText:"Sensitive identifiers (passport / national IDs) are redacted in this artifact."}):null,t.intake_payload?(0,s.jsxs)("details",{className:"payload-card",children:[(0,s.jsx)("summary",{children:"Raw intake payload (engine state)"}),(0,s.jsx)("pre",{children:JSON.stringify(t.intake_payload,null,2)})]}):null]})}function f(e){let{artifacts:a}=e;return a&&0!==a.length?(0,s.jsxs)("section",{className:"case-artifacts-gallery",children:[(0,s.jsx)("h3",{children:"Case artifacts"}),(0,s.jsx)("p",{className:"muted",children:"Every workflow touchpoint is rendered as an HTML artifact. These artifacts are also visible in the project library."}),(0,s.jsx)("ul",{className:"case-artifact-list",children:a.map(e=>(0,s.jsx)(h,{artifact:e},e.id))})]}):null}function j(e){var a,t;let{caseRow:h,definition:m,stages:j,executions:x,approvals:g,artifacts:v}=e,N=(0,l.useRouter)(),[y,k]=(0,n.useState)(h),[w,_]=(0,n.useState)(x),[b,S]=(0,n.useState)(g),[P,C]=(0,n.useState)(v),[I,E]=(0,n.useState)(y.current_stage_slug||(null==(a=j[0])?void 0:a.slug)),[A,R]=(0,n.useState)(!1),[O,T]=(0,n.useState)(null);(0,n.useEffect)(()=>{if(o.has(y.status))return;let e=!1,a=setInterval(async()=>{try{var a;let t=await fetch("/api/processes/".concat(y.id));if(!t.ok)return;let s=await t.json();if(e)return;k(s.case),_(s.executions||[]),S(s.approvals||[]),C(s.artifacts||[]),(null==(a=s.case)?void 0:a.current_stage_slug)&&E(s.case.current_stage_slug)}catch(e){}},4e3);return()=>{e=!0,clearInterval(a)}},[y.id,y.status]);let q=(0,n.useMemo)(()=>(function(e){let a=new Map;for(let t of e){let e=a.get(t.stage_slug)||[];e.push(t),a.set(t.stage_slug,e)}return a})(w),[w]),J=(0,n.useMemo)(()=>j.find(e=>e.slug===I)||j[0],[j,I]);async function H(e){R(!0),T(null);try{let a=await fetch("/api/approvals/".concat(e),{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify({decision:"approved"})});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error((null==e?void 0:e.error)||"approve failed")}}catch(e){T((null==e?void 0:e.message)||String(e))}finally{R(!1)}}async function M(e){R(!0),T(null);try{let a=await fetch("/api/approvals/".concat(e),{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify({decision:"denied"})});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error((null==e?void 0:e.error)||"deny failed")}}catch(e){T((null==e?void 0:e.message)||String(e))}finally{R(!1)}}async function D(e){R(!0),T(null);try{let a=await fetch("/api/processes/".concat(y.id,"/stages/").concat(e,"/retry"),{method:"POST"});if(!a.ok){let e=await a.json().catch(()=>({}));throw Error((null==e?void 0:e.error)||"retry failed")}}catch(e){T((null==e?void 0:e.message)||String(e))}finally{R(!1)}}async function F(){if(confirm("Cancel this case?")){R(!0);try{let e=await fetch("/api/processes/".concat(y.id),{method:"PATCH",headers:{"content-type":"application/json"},body:JSON.stringify({status:"cancelled"})});if(!e.ok){let a=await e.json().catch(()=>({}));throw Error((null==a?void 0:a.error)||"cancel failed")}N.refresh()}catch(e){T((null==e?void 0:e.message)||String(e))}finally{R(!1)}}}let L=q.get(null==J?void 0:J.slug)||[],z=L[L.length-1],U=b.find(e=>{var a;return"pending"===e.status&&(null==(a=e.payload)?void 0:a.stage_slug)===(null==J?void 0:J.slug)});return(0,s.jsxs)("div",{className:"case-detail","data-page":"case",children:[(0,s.jsxs)("header",{className:"case-header",children:[(0,s.jsx)(i.qs,{tone:r[y.status]||"neutral",children:c[y.status]||y.status}),(0,s.jsxs)("div",{className:"case-header-meta",children:[(0,s.jsxs)("span",{className:"muted",children:["Project: ",y.project_id]}),(0,s.jsxs)("span",{className:"muted",children:["Updated: ",u(y.updated_at)]})]}),o.has(y.status)?null:(0,s.jsx)("button",{className:"btn-tertiary",onClick:F,disabled:A,children:"Cancel case"})]}),O?(0,s.jsx)("p",{className:"form-error",role:"alert",children:O}):null,(0,s.jsxs)("div",{className:"case-grid",children:[(0,s.jsxs)("aside",{className:"case-timeline",children:[(0,s.jsx)("h3",{children:"Stages"}),(0,s.jsx)("ol",{children:j.map(e=>{let a=q.get(e.slug)||[],t=a[a.length-1],n=e.slug===(null==J?void 0:J.slug),l=e.slug===y.current_stage_slug,r=(null==t?void 0:t.status)||(l?"running":"pending");return(0,s.jsx)("li",{className:"stage-node ".concat(n?"active":""," ").concat(l?"current":""),"data-status":r,children:(0,s.jsxs)("button",{type:"button",onClick:()=>E(e.slug),children:[(0,s.jsx)("span",{className:"stage-name",children:e.name}),(0,s.jsx)("span",{className:"stage-kind muted",children:e.kind.replace("_"," ")}),(0,s.jsx)(i.qs,{tone:d[r]||"neutral",children:r})]})},e.id)})})]}),(0,s.jsx)("section",{className:"case-stage-panel",children:J?(0,s.jsxs)(s.Fragment,{children:[(0,s.jsxs)("header",{children:[(0,s.jsx)("h3",{children:J.name}),(0,s.jsx)("span",{className:"muted",children:J.kind})]}),"intake_form"===J.kind?(0,s.jsx)(p,{caseRow:y,artifacts:P,latestExec:z}):null,"human_approval"===J.kind&&U?(0,s.jsxs)("div",{className:"approval-card",children:[(0,s.jsxs)("p",{children:[(0,s.jsx)("strong",{children:"Approval requested:"})," ",U.summary]}),(0,s.jsxs)("div",{className:"approval-actions",children:[(0,s.jsx)("button",{className:"btn-primary",onClick:()=>H(U.id),disabled:A,children:"Approve"}),(0,s.jsx)("button",{className:"btn-danger",onClick:()=>M(U.id),disabled:A,children:"Deny"})]}),(0,s.jsxs)("small",{className:"muted",children:["Risk: ",U.risk," \xb7 created ",u(U.created_at)]})]}):null,z?(0,s.jsxs)("div",{className:"exec-card",children:[(0,s.jsxs)("header",{children:[(0,s.jsx)("h4",{children:"Latest execution"}),(0,s.jsx)(i.qs,{tone:d[z.status]||"neutral",children:z.status}),z.attempt>1?(0,s.jsxs)("span",{className:"muted",children:["Attempt ",z.attempt]}):null]}),z.output?(0,s.jsxs)("details",{open:!0,children:[(0,s.jsx)("summary",{children:"Structured output"}),(0,s.jsx)("pre",{children:JSON.stringify(z.output,null,2)})]}):null,z.error?(0,s.jsxs)("p",{className:"form-error",children:["Error: ",z.error]}):null,"fail"===z.status?(0,s.jsx)("button",{className:"btn-secondary",onClick:()=>D(J.id),disabled:A,children:"Retry stage"}):null]}):(0,s.jsx)("p",{className:"muted",children:"No execution recorded yet."}),P.length&&((null==z||null==(t=z.artifact_ids)?void 0:t.length)||"package"===J.kind)?(0,s.jsxs)("div",{className:"artifacts-card",children:[(0,s.jsx)("h4",{children:"Stage artifacts"}),(0,s.jsx)("ul",{children:P.filter(e=>((null==z?void 0:z.artifact_ids)||[]).includes(e.id)).map(e=>(0,s.jsxs)("li",{children:[(0,s.jsx)("span",{className:"case-artifact-title",children:e.title||e.path}),(0,s.jsxs)("span",{className:"muted",children:[" \xb7 ",e.kind]})]},e.id))})]}):null]}):(0,s.jsx)("p",{children:"Pick a stage from the timeline."})})]}),(0,s.jsx)(f,{artifacts:P})]})}},55799:(e,a,t)=>{"use strict";t.d(a,{iN:()=>l,qs:()=>i});var s=t(95155),n=t(10677);function l(e){let{kicker:a="madarX OS v1.0",title:t,description:l,actions:i,hideProjectSwitcher:r,children:c}=e;return(0,s.jsxs)("main",{className:"admin-shell",children:[(0,s.jsxs)("header",{className:"admin-header",children:[(0,s.jsxs)("div",{children:[(0,s.jsx)("span",{className:"admin-kicker",children:a}),(0,s.jsx)("h1",{children:t}),l?(0,s.jsx)("p",{children:l}):null]}),(0,s.jsxs)("div",{className:"admin-header-actions",children:[r?null:(0,s.jsx)(n.default,{}),i]})]}),c]})}function i(e){let{children:a,tone:t="neutral"}=e;return(0,s.jsx)("span",{className:"admin-pill ".concat(t),children:a})}},59531:(e,a,t)=>{Promise.resolve().then(t.bind(t,10677)),Promise.resolve().then(t.bind(t,22157)),Promise.resolve().then(t.t.bind(t,52619,23))}},e=>{e.O(0,[2619,8441,1255,7358],()=>e(e.s=59531)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[106],{10677:(e,a,t)=>{"use strict";t.d(a,{default:()=>r});var l=t(95155),n=t(12115);function r(){let[e,a]=(0,n.useState)([]),[t,r]=(0,n.useState)("");return(0,n.useEffect)(()=>{r(localStorage.getItem("madarx.activeProjectId")||""),fetch("/api/projects").then(e=>e.json()).then(e=>a(e.projects||[])).catch(()=>{})},[]),(0,l.jsx)("div",{className:"project-switcher","data-project-switcher":!0,children:(0,l.jsxs)("select",{value:t,onChange:e=>{var a;r(a=e.target.value),a?localStorage.setItem("madarx.activeProjectId",a):localStorage.removeItem("madarx.activeProjectId"),window.dispatchEvent(new CustomEvent("madarx:project-change",{detail:{project_id:a||null}}))},"aria-label":"Active project",children:[(0,l.jsx)("option",{value:"",children:"All projects"}),e.map(e=>(0,l.jsx)("option",{value:e.id,children:e.name},e.id))]})})}},20063:(e,a,t)=>{"use strict";var l=t(47260);t.o(l,"usePathname")&&t.d(a,{usePathname:function(){return l.usePathname}}),t.o(l,"useRouter")&&t.d(a,{useRouter:function(){return l.useRouter}}),t.o(l,"useSearchParams")&&t.d(a,{useSearchParams:function(){return l.useSearchParams}})},69663:(e,a,t)=>{"use strict";t.d(a,{default:()=>o});var l=t(95155),n=t(12115),r=t(20063);function s(e){let{value:a,onChange:t}=e,n=Array.isArray(a)?a:[],r=n.reduce((e,a)=>e+Number(a.percentage||0),0);return(0,l.jsxs)("div",{className:"shareholders-field",children:[n.map((e,a)=>(0,l.jsxs)("div",{className:"shareholder-row",children:[(0,l.jsx)("input",{type:"text",value:e.name,placeholder:"Shareholder name",onChange:e=>t(n.map((t,l)=>l===a?{...t,name:e.target.value}:t))}),(0,l.jsx)("input",{type:"number",value:e.percentage,min:0,max:100,step:.01,onChange:e=>t(n.map((t,l)=>l===a?{...t,percentage:Number(e.target.value)}:t))}),(0,l.jsx)("span",{children:"%"}),n.length>1?(0,l.jsx)("button",{type:"button",className:"btn-tertiary",onClick:()=>t(n.filter((e,t)=>t!==a)),children:"Remove"}):null]},a)),(0,l.jsxs)("div",{className:"shareholder-actions",children:[(0,l.jsx)("button",{type:"button",className:"btn-secondary",onClick:()=>t([...n,{name:"",percentage:0}]),children:"Add shareholder"}),(0,l.jsxs)("span",{className:"muted",children:["Total: ",r,"%"]})]})]})}function i(e){let{field:a,value:t,error:n,onChange:r}=e,i={id:"f-".concat(a.name),name:a.name,required:a.required,"aria-invalid":n?"true":void 0};return(0,l.jsxs)("label",{className:"form-field".concat(n?" has-error":""),children:[(0,l.jsxs)("span",{className:"form-field-label",children:[a.label,a.required?(0,l.jsx)("span",{className:"req",children:" *"}):null]}),"textarea"===a.type?(0,l.jsx)("textarea",{...i,value:t||"",rows:5,placeholder:a.placeholder||"",onChange:e=>r(e.target.value)}):"select"===a.type?(0,l.jsxs)("select",{...i,value:t||"",onChange:e=>r(e.target.value),children:[(0,l.jsx)("option",{value:"",disabled:!0,children:"Pick one…"}),(a.options||[]).map(e=>(0,l.jsx)("option",{value:e,children:e},e))]}):"shareholders"===a.type?(0,l.jsx)(s,{value:t,onChange:r}):(0,l.jsx)("input",{...i,type:"number"===a.type?"number":"email"===a.type?"email":"text",value:t||"",placeholder:a.placeholder||"",min:a.min,onChange:e=>r((a.type,e.target.value))}),a.help?(0,l.jsx)("small",{className:"form-help",children:a.help}):null,n?(0,l.jsx)("small",{className:"form-error",children:n}):null]})}function o(e){var a,t;let{definitions:s,projects:o,initialDefinitionSlug:c}=e,u=(0,r.useRouter)(),[d,m]=(0,n.useState)(c||(null==(a=s[0])?void 0:a.slug)||""),[h,p]=(0,n.useState)((null==(t=o[0])?void 0:t.id)||"personal"),[f,j]=(0,n.useState)(""),[v,x]=(0,n.useState)(null),[g,b]=(0,n.useState)({}),[N,y]=(0,n.useState)({}),[S,_]=(0,n.useState)(!1),[w,C]=(0,n.useState)(null);(0,n.useEffect)(()=>{if(!d)return;let e=!1;return fetch("/api/processes/definitions/".concat(d)).then(e=>e.json()).then(a=>{var t;if(e)return;let l=(null==a?void 0:a.intake_form_schema)||null;x(l),b(function(e){let a={};for(let t of(null==e?void 0:e.fields)||[])"shareholders"===t.type?a[t.name]=[{name:"",percentage:100}]:(t.type,a[t.name]="");return a}(l)),y({}),!f&&(null==a||null==(t=a.definition)?void 0:t.name)&&j("".concat(a.definition.name," — ").concat(new Date().toISOString().slice(0,10)))}).catch(()=>{e||x(null)}),()=>{e=!0}},[d]);let P=(0,n.useMemo)(()=>(null==v?void 0:v.fields)||[],[v]);async function k(e){e.preventDefault(),C(null);let a=function(e,a){let t={};for(let l of(null==e?void 0:e.fields)||[]){let e=a[l.name];if(l.required)if("shareholders"===l.type){let a=Array.isArray(e)?e:[];0===a.length&&(t[l.name]="At least one shareholder required.");let n=a.reduce((e,a)=>e+Number(a.percentage||0),0);Math.abs(n-100)>.01&&(t[l.name]="Shareholder percentages must total 100. Got ".concat(n,".")),a.some(e=>!String(e.name||"").trim())&&(t[l.name]="Each shareholder needs a name.")}else(null==e||""===String(e).trim())&&(t[l.name]="Required.");if("number"===l.type&&""!==e&&null!=e){let a=Number(e);Number.isFinite(a)?"number"==typeof l.min&&a<l.min&&(t[l.name]="Must be at least ".concat(l.min,".")):t[l.name]="Must be a number."}l.min_length&&"string"==typeof e&&e.length<l.min_length&&(t[l.name]="Must be at least ".concat(l.min_length," characters."))}return t}(v,g);if(y(a),!(Object.keys(a).length>0)){_(!0);try{let e=await fetch("/api/processes",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({definition_slug:d,project_id:h,title:f||null,intake_payload:{...g,share_capital_usd:Number(g.share_capital_usd)||0}})}),a=await e.json();if(!e.ok)throw Error((null==a?void 0:a.error)||"Failed to start case");u.push("/workflows/".concat(a.case.id))}catch(e){C((null==e?void 0:e.message)||String(e))}finally{_(!1)}}}return(0,l.jsxs)("form",{className:"new-case-form",onSubmit:k,children:[(0,l.jsxs)("section",{className:"form-section",children:[(0,l.jsx)("h2",{children:"Process and project"}),(0,l.jsxs)("div",{className:"form-row",children:[(0,l.jsxs)("label",{className:"form-field",children:[(0,l.jsx)("span",{className:"form-field-label",children:"Process definition"}),(0,l.jsx)("select",{value:d,onChange:e=>m(e.target.value),children:s.map(e=>(0,l.jsx)("option",{value:e.slug,children:e.name},e.slug))})]}),(0,l.jsxs)("label",{className:"form-field",children:[(0,l.jsx)("span",{className:"form-field-label",children:"Project"}),(0,l.jsx)("select",{value:h,onChange:e=>p(e.target.value),children:o.map(e=>(0,l.jsx)("option",{value:e.id,children:e.name},e.id))})]})]}),(0,l.jsxs)("label",{className:"form-field",children:[(0,l.jsx)("span",{className:"form-field-label",children:"Case title"}),(0,l.jsx)("input",{type:"text",value:f,onChange:e=>j(e.target.value),placeholder:"e.g. ADGM setup — Acme Holdings Ltd"})]})]}),(0,l.jsxs)("section",{className:"form-section",children:[(0,l.jsx)("h2",{children:(null==v?void 0:v.title)||"Intake form"}),(null==v?void 0:v.description)?(0,l.jsx)("p",{className:"muted",children:v.description}):null,P.map(e=>(0,l.jsx)(i,{field:e,value:g[e.name],error:N[e.name],onChange:a=>b(t=>({...t,[e.name]:a}))},e.name))]}),w?(0,l.jsx)("p",{className:"form-error",role:"alert",children:w}):null,(0,l.jsx)("div",{className:"form-actions",children:(0,l.jsx)("button",{type:"submit",className:"btn-primary",disabled:S,children:S?"Starting case…":"Start case"})})]})}},79855:(e,a,t)=>{Promise.resolve().then(t.bind(t,10677)),Promise.resolve().then(t.bind(t,69663))}},e=>{e.O(0,[8441,1255,7358],()=>e(e.s=79855)),_N_E=e.O()}]);
|