@openagt/dashboard 0.0.0-stage → 0.8.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/LICENSE +21 -0
- package/README.md +125 -2
- package/dist/agent-archive.d.ts +35 -0
- package/dist/agent-archive.d.ts.map +1 -0
- package/dist/agent-archive.js +67 -0
- package/dist/agent-archive.js.map +1 -0
- package/dist/agent-commit.d.ts +140 -0
- package/dist/agent-commit.d.ts.map +1 -0
- package/dist/agent-commit.js +254 -0
- package/dist/agent-commit.js.map +1 -0
- package/dist/agent-driver.d.ts +28 -0
- package/dist/agent-driver.d.ts.map +1 -0
- package/dist/agent-driver.js +18 -0
- package/dist/agent-driver.js.map +1 -0
- package/dist/agent-id.d.ts +13 -0
- package/dist/agent-id.d.ts.map +1 -0
- package/dist/agent-id.js +20 -0
- package/dist/agent-id.js.map +1 -0
- package/dist/agent-location.d.ts +11 -0
- package/dist/agent-location.d.ts.map +1 -0
- package/dist/agent-location.js +10 -0
- package/dist/agent-location.js.map +1 -0
- package/dist/agent-locks.d.ts +3 -0
- package/dist/agent-locks.d.ts.map +1 -0
- package/dist/agent-locks.js +40 -0
- package/dist/agent-locks.js.map +1 -0
- package/dist/agent-messages.d.ts +55 -0
- package/dist/agent-messages.d.ts.map +1 -0
- package/dist/agent-messages.js +73 -0
- package/dist/agent-messages.js.map +1 -0
- package/dist/agent-names.d.ts +24 -0
- package/dist/agent-names.d.ts.map +1 -0
- package/dist/agent-names.js +33 -0
- package/dist/agent-names.js.map +1 -0
- package/dist/agent-options.d.ts +45 -0
- package/dist/agent-options.d.ts.map +1 -0
- package/dist/agent-options.js +83 -0
- package/dist/agent-options.js.map +1 -0
- package/dist/agent-spec.d.ts +56 -0
- package/dist/agent-spec.d.ts.map +1 -0
- package/dist/agent-spec.js +56 -0
- package/dist/agent-spec.js.map +1 -0
- package/dist/agent-telemetry.d.ts +88 -0
- package/dist/agent-telemetry.d.ts.map +1 -0
- package/dist/agent-telemetry.js +97 -0
- package/dist/agent-telemetry.js.map +1 -0
- package/dist/agent-view.d.ts +39 -0
- package/dist/agent-view.d.ts.map +1 -0
- package/dist/agent-view.js +45 -0
- package/dist/agent-view.js.map +1 -0
- package/dist/agent.d.ts +113 -0
- package/dist/agent.d.ts.map +1 -0
- package/dist/agent.js +168 -0
- package/dist/agent.js.map +1 -0
- package/dist/archived-agent-patch.d.ts +14 -0
- package/dist/archived-agent-patch.d.ts.map +1 -0
- package/dist/archived-agent-patch.js +22 -0
- package/dist/archived-agent-patch.js.map +1 -0
- package/dist/auto-pm.d.ts +538 -0
- package/dist/auto-pm.d.ts.map +1 -0
- package/dist/auto-pm.js +707 -0
- package/dist/auto-pm.js.map +1 -0
- package/dist/await-gate.d.ts +184 -0
- package/dist/await-gate.d.ts.map +1 -0
- package/dist/await-gate.js +252 -0
- package/dist/await-gate.js.map +1 -0
- package/dist/bin.d.ts +3 -0
- package/dist/bin.d.ts.map +1 -0
- package/dist/bin.js +11 -0
- package/dist/bin.js.map +1 -0
- package/dist/branch-links-pass.d.ts +15 -0
- package/dist/branch-links-pass.d.ts.map +1 -0
- package/dist/branch-links-pass.js +13 -0
- package/dist/branch-links-pass.js.map +1 -0
- package/dist/branch-links.d.ts +53 -0
- package/dist/branch-links.d.ts.map +1 -0
- package/dist/branch-links.js +94 -0
- package/dist/branch-links.js.map +1 -0
- package/dist/branch-name.d.ts +8 -0
- package/dist/branch-name.d.ts.map +1 -0
- package/dist/branch-name.js +20 -0
- package/dist/branch-name.js.map +1 -0
- package/dist/branch-names.d.ts +57 -0
- package/dist/branch-names.d.ts.map +1 -0
- package/dist/branch-names.js +72 -0
- package/dist/branch-names.js.map +1 -0
- package/dist/bridge-browser.d.ts +217 -0
- package/dist/bridge-browser.d.ts.map +1 -0
- package/dist/bridge-browser.js +520 -0
- package/dist/bridge-browser.js.map +1 -0
- package/dist/browser-stream.d.ts +20 -0
- package/dist/browser-stream.d.ts.map +1 -0
- package/dist/browser-stream.js +51 -0
- package/dist/browser-stream.js.map +1 -0
- package/dist/browser.d.ts +16 -0
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +38 -0
- package/dist/browser.js.map +1 -0
- package/dist/built-in.d.ts +29 -0
- package/dist/built-in.d.ts.map +1 -0
- package/dist/built-in.js +78 -0
- package/dist/built-in.js.map +1 -0
- package/dist/chrome-extension/background.js +532 -0
- package/dist/chrome-extension/content.js +1475 -0
- package/dist/chrome-extension/driver-plan.js +41 -0
- package/dist/chrome-extension/fingerprint.js +43 -0
- package/dist/chrome-extension/manifest.json +31 -0
- package/dist/chrome-extension/options.html +48 -0
- package/dist/chrome-extension/options.js +122 -0
- package/dist/ci-watch.d.ts +123 -0
- package/dist/ci-watch.d.ts.map +1 -0
- package/dist/ci-watch.js +228 -0
- package/dist/ci-watch.js.map +1 -0
- package/dist/claude-trust.d.ts +16 -0
- package/dist/claude-trust.d.ts.map +1 -0
- package/dist/claude-trust.js +72 -0
- package/dist/claude-trust.js.map +1 -0
- package/dist/cli-exec.d.ts +36 -0
- package/dist/cli-exec.d.ts.map +1 -0
- package/dist/cli-exec.js +44 -0
- package/dist/cli-exec.js.map +1 -0
- package/dist/cli.d.ts +43 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +186 -0
- package/dist/cli.js.map +1 -0
- package/dist/client.d.ts +16 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +30 -0
- package/dist/client.js.map +1 -0
- package/dist/closing-keywords.d.ts +28 -0
- package/dist/closing-keywords.d.ts.map +1 -0
- package/dist/closing-keywords.js +49 -0
- package/dist/closing-keywords.js.map +1 -0
- package/dist/cloud-run-state.d.ts +27 -0
- package/dist/cloud-run-state.d.ts.map +1 -0
- package/dist/cloud-run-state.js +36 -0
- package/dist/cloud-run-state.js.map +1 -0
- package/dist/cloud-scratch-refs.d.ts +85 -0
- package/dist/cloud-scratch-refs.d.ts.map +1 -0
- package/dist/cloud-scratch-refs.js +275 -0
- package/dist/cloud-scratch-refs.js.map +1 -0
- package/dist/cloud-work.d.ts +66 -0
- package/dist/cloud-work.d.ts.map +1 -0
- package/dist/cloud-work.js +204 -0
- package/dist/cloud-work.js.map +1 -0
- package/dist/config-layers.d.ts +62 -0
- package/dist/config-layers.d.ts.map +1 -0
- package/dist/config-layers.js +70 -0
- package/dist/config-layers.js.map +1 -0
- package/dist/config.d.ts +54 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +78 -0
- package/dist/config.js.map +1 -0
- package/dist/consumption-guard.d.ts +53 -0
- package/dist/consumption-guard.d.ts.map +1 -0
- package/dist/consumption-guard.js +69 -0
- package/dist/consumption-guard.js.map +1 -0
- package/dist/control.d.ts +75 -0
- package/dist/control.d.ts.map +1 -0
- package/dist/control.js +68 -0
- package/dist/control.js.map +1 -0
- package/dist/conversation-commit.d.ts +166 -0
- package/dist/conversation-commit.d.ts.map +1 -0
- package/dist/conversation-commit.js +309 -0
- package/dist/conversation-commit.js.map +1 -0
- package/dist/conversations.d.ts +93 -0
- package/dist/conversations.d.ts.map +1 -0
- package/dist/conversations.js +176 -0
- package/dist/conversations.js.map +1 -0
- package/dist/daemon-runtime.d.ts +41 -0
- package/dist/daemon-runtime.d.ts.map +1 -0
- package/dist/daemon-runtime.js +133 -0
- package/dist/daemon-runtime.js.map +1 -0
- package/dist/daemon-services.d.ts +36 -0
- package/dist/daemon-services.d.ts.map +1 -0
- package/dist/daemon-services.js +120 -0
- package/dist/daemon-services.js.map +1 -0
- package/dist/daemon-tick.d.ts +68 -0
- package/dist/daemon-tick.d.ts.map +1 -0
- package/dist/daemon-tick.js +97 -0
- package/dist/daemon-tick.js.map +1 -0
- package/dist/daemon-writes.d.ts +33 -0
- package/dist/daemon-writes.d.ts.map +1 -0
- package/dist/daemon-writes.js +45 -0
- package/dist/daemon-writes.js.map +1 -0
- package/dist/daemon.d.ts +76 -0
- package/dist/daemon.d.ts.map +1 -0
- package/dist/daemon.js +225 -0
- package/dist/daemon.js.map +1 -0
- package/dist/dashboard/activity.d.ts +41 -0
- package/dist/dashboard/activity.d.ts.map +1 -0
- package/dist/dashboard/activity.js +56 -0
- package/dist/dashboard/activity.js.map +1 -0
- package/dist/dashboard/agent-handoff.d.ts +244 -0
- package/dist/dashboard/agent-handoff.d.ts.map +1 -0
- package/dist/dashboard/agent-handoff.js +310 -0
- package/dist/dashboard/agent-handoff.js.map +1 -0
- package/dist/dashboard/agent-tree.d.ts +106 -0
- package/dist/dashboard/agent-tree.d.ts.map +1 -0
- package/dist/dashboard/agent-tree.js +180 -0
- package/dist/dashboard/agent-tree.js.map +1 -0
- package/dist/dashboard/bridge-endpoints.d.ts +158 -0
- package/dist/dashboard/bridge-endpoints.d.ts.map +1 -0
- package/dist/dashboard/bridge-endpoints.js +382 -0
- package/dist/dashboard/bridge-endpoints.js.map +1 -0
- package/dist/dashboard/bridge-question.d.ts +33 -0
- package/dist/dashboard/bridge-question.d.ts.map +1 -0
- package/dist/dashboard/bridge-question.js +20 -0
- package/dist/dashboard/bridge-question.js.map +1 -0
- package/dist/dashboard/bridge-sessions.d.ts +25 -0
- package/dist/dashboard/bridge-sessions.d.ts.map +1 -0
- package/dist/dashboard/bridge-sessions.js +46 -0
- package/dist/dashboard/bridge-sessions.js.map +1 -0
- package/dist/dashboard/bridge-starts.d.ts +61 -0
- package/dist/dashboard/bridge-starts.d.ts.map +1 -0
- package/dist/dashboard/bridge-starts.js +94 -0
- package/dist/dashboard/bridge-starts.js.map +1 -0
- package/dist/dashboard/bridge-store.d.ts +179 -0
- package/dist/dashboard/bridge-store.d.ts.map +1 -0
- package/dist/dashboard/bridge-store.js +262 -0
- package/dist/dashboard/bridge-store.js.map +1 -0
- package/dist/dashboard/browser-proxy.d.ts +41 -0
- package/dist/dashboard/browser-proxy.d.ts.map +1 -0
- package/dist/dashboard/browser-proxy.js +96 -0
- package/dist/dashboard/browser-proxy.js.map +1 -0
- package/dist/dashboard/bundle.d.ts +12 -0
- package/dist/dashboard/bundle.d.ts.map +1 -0
- package/dist/dashboard/bundle.js +22 -0
- package/dist/dashboard/bundle.js.map +1 -0
- package/dist/dashboard/cache.d.ts +47 -0
- package/dist/dashboard/cache.d.ts.map +1 -0
- package/dist/dashboard/cache.js +87 -0
- package/dist/dashboard/cache.js.map +1 -0
- package/dist/dashboard/content-type.d.ts +3 -0
- package/dist/dashboard/content-type.d.ts.map +1 -0
- package/dist/dashboard/content-type.js +31 -0
- package/dist/dashboard/content-type.js.map +1 -0
- package/dist/dashboard/dashboard.d.ts +38 -0
- package/dist/dashboard/dashboard.d.ts.map +1 -0
- package/dist/dashboard/dashboard.js +42 -0
- package/dist/dashboard/dashboard.js.map +1 -0
- package/dist/dashboard/discord-webhook.d.ts +17 -0
- package/dist/dashboard/discord-webhook.d.ts.map +1 -0
- package/dist/dashboard/discord-webhook.js +36 -0
- package/dist/dashboard/discord-webhook.js.map +1 -0
- package/dist/dashboard/docs.d.ts +39 -0
- package/dist/dashboard/docs.d.ts.map +1 -0
- package/dist/dashboard/docs.js +59 -0
- package/dist/dashboard/docs.js.map +1 -0
- package/dist/dashboard/file-diff.d.ts +67 -0
- package/dist/dashboard/file-diff.d.ts.map +1 -0
- package/dist/dashboard/file-diff.js +132 -0
- package/dist/dashboard/file-diff.js.map +1 -0
- package/dist/dashboard/file-read.d.ts +42 -0
- package/dist/dashboard/file-read.d.ts.map +1 -0
- package/dist/dashboard/file-read.js +69 -0
- package/dist/dashboard/file-read.js.map +1 -0
- package/dist/dashboard/file-status.d.ts +21 -0
- package/dist/dashboard/file-status.d.ts.map +1 -0
- package/dist/dashboard/file-status.js +37 -0
- package/dist/dashboard/file-status.js.map +1 -0
- package/dist/dashboard/gh.d.ts +131 -0
- package/dist/dashboard/gh.d.ts.map +1 -0
- package/dist/dashboard/gh.js +150 -0
- package/dist/dashboard/gh.js.map +1 -0
- package/dist/dashboard/git-status.d.ts +44 -0
- package/dist/dashboard/git-status.d.ts.map +1 -0
- package/dist/dashboard/git-status.js +37 -0
- package/dist/dashboard/git-status.js.map +1 -0
- package/dist/dashboard/github.d.ts +11 -0
- package/dist/dashboard/github.d.ts.map +1 -0
- package/dist/dashboard/github.js +33 -0
- package/dist/dashboard/github.js.map +1 -0
- package/dist/dashboard/http.d.ts +29 -0
- package/dist/dashboard/http.d.ts.map +1 -0
- package/dist/dashboard/http.js +74 -0
- package/dist/dashboard/http.js.map +1 -0
- package/dist/dashboard/index.d.ts +24 -0
- package/dist/dashboard/index.d.ts.map +1 -0
- package/dist/dashboard/index.js +23 -0
- package/dist/dashboard/index.js.map +1 -0
- package/dist/dashboard/interventions.d.ts +67 -0
- package/dist/dashboard/interventions.d.ts.map +1 -0
- package/dist/dashboard/interventions.js +169 -0
- package/dist/dashboard/interventions.js.map +1 -0
- package/dist/dashboard/keyed-watcher.d.ts +29 -0
- package/dist/dashboard/keyed-watcher.d.ts.map +1 -0
- package/dist/dashboard/keyed-watcher.js +42 -0
- package/dist/dashboard/keyed-watcher.js.map +1 -0
- package/dist/dashboard/keys.d.ts +31 -0
- package/dist/dashboard/keys.d.ts.map +1 -0
- package/dist/dashboard/keys.js +37 -0
- package/dist/dashboard/keys.js.map +1 -0
- package/dist/dashboard/models.d.ts +25 -0
- package/dist/dashboard/models.d.ts.map +1 -0
- package/dist/dashboard/models.js +30 -0
- package/dist/dashboard/models.js.map +1 -0
- package/dist/dashboard/module-host.d.ts +44 -0
- package/dist/dashboard/module-host.d.ts.map +1 -0
- package/dist/dashboard/module-host.js +91 -0
- package/dist/dashboard/module-host.js.map +1 -0
- package/dist/dashboard/module-serve.d.ts +15 -0
- package/dist/dashboard/module-serve.d.ts.map +1 -0
- package/dist/dashboard/module-serve.js +45 -0
- package/dist/dashboard/module-serve.js.map +1 -0
- package/dist/dashboard/open-in-app.d.ts +43 -0
- package/dist/dashboard/open-in-app.d.ts.map +1 -0
- package/dist/dashboard/open-in-app.js +98 -0
- package/dist/dashboard/open-in-app.js.map +1 -0
- package/dist/dashboard/open-questions.d.ts +45 -0
- package/dist/dashboard/open-questions.d.ts.map +1 -0
- package/dist/dashboard/open-questions.js +62 -0
- package/dist/dashboard/open-questions.js.map +1 -0
- package/dist/dashboard/overview.d.ts +78 -0
- package/dist/dashboard/overview.d.ts.map +1 -0
- package/dist/dashboard/overview.js +87 -0
- package/dist/dashboard/overview.js.map +1 -0
- package/dist/dashboard/projects.d.ts +100 -0
- package/dist/dashboard/projects.d.ts.map +1 -0
- package/dist/dashboard/projects.js +63 -0
- package/dist/dashboard/projects.js.map +1 -0
- package/dist/dashboard/pull-requests.d.ts +127 -0
- package/dist/dashboard/pull-requests.d.ts.map +1 -0
- package/dist/dashboard/pull-requests.js +137 -0
- package/dist/dashboard/pull-requests.js.map +1 -0
- package/dist/dashboard/queue.d.ts +17 -0
- package/dist/dashboard/queue.d.ts.map +1 -0
- package/dist/dashboard/queue.js +19 -0
- package/dist/dashboard/queue.js.map +1 -0
- package/dist/dashboard/quota.d.ts +53 -0
- package/dist/dashboard/quota.d.ts.map +1 -0
- package/dist/dashboard/quota.js +42 -0
- package/dist/dashboard/quota.js.map +1 -0
- package/dist/dashboard/relay-endpoints.d.ts +32 -0
- package/dist/dashboard/relay-endpoints.d.ts.map +1 -0
- package/dist/dashboard/relay-endpoints.js +115 -0
- package/dist/dashboard/relay-endpoints.js.map +1 -0
- package/dist/dashboard/remote-run.d.ts +95 -0
- package/dist/dashboard/remote-run.d.ts.map +1 -0
- package/dist/dashboard/remote-run.js +235 -0
- package/dist/dashboard/remote-run.js.map +1 -0
- package/dist/dashboard/rpc-serve.d.ts +103 -0
- package/dist/dashboard/rpc-serve.d.ts.map +1 -0
- package/dist/dashboard/rpc-serve.js +180 -0
- package/dist/dashboard/rpc-serve.js.map +1 -0
- package/dist/dashboard/run-handoff.d.ts +311 -0
- package/dist/dashboard/run-handoff.d.ts.map +1 -0
- package/dist/dashboard/run-handoff.js +485 -0
- package/dist/dashboard/run-handoff.js.map +1 -0
- package/dist/dashboard/run-inbox.d.ts +31 -0
- package/dist/dashboard/run-inbox.d.ts.map +1 -0
- package/dist/dashboard/run-inbox.js +51 -0
- package/dist/dashboard/run-inbox.js.map +1 -0
- package/dist/dashboard/scheduler-state.d.ts +73 -0
- package/dist/dashboard/scheduler-state.d.ts.map +1 -0
- package/dist/dashboard/scheduler-state.js +120 -0
- package/dist/dashboard/scheduler-state.js.map +1 -0
- package/dist/dashboard/server.d.ts +103 -0
- package/dist/dashboard/server.d.ts.map +1 -0
- package/dist/dashboard/server.js +230 -0
- package/dist/dashboard/server.js.map +1 -0
- package/dist/dashboard/static.d.ts +9 -0
- package/dist/dashboard/static.d.ts.map +1 -0
- package/dist/dashboard/static.js +54 -0
- package/dist/dashboard/static.js.map +1 -0
- package/dist/dashboard/subagent-settings.d.ts +26 -0
- package/dist/dashboard/subagent-settings.d.ts.map +1 -0
- package/dist/dashboard/subagent-settings.js +52 -0
- package/dist/dashboard/subagent-settings.js.map +1 -0
- package/dist/dashboard/telefunc-serve.d.ts +118 -0
- package/dist/dashboard/telefunc-serve.d.ts.map +1 -0
- package/dist/dashboard/telefunc-serve.js +108 -0
- package/dist/dashboard/telefunc-serve.js.map +1 -0
- package/dist/dashboard/tickets.d.ts +29 -0
- package/dist/dashboard/tickets.d.ts.map +1 -0
- package/dist/dashboard/tickets.js +38 -0
- package/dist/dashboard/tickets.js.map +1 -0
- package/dist/dashboard/types.d.ts +109 -0
- package/dist/dashboard/types.d.ts.map +1 -0
- package/dist/dashboard/types.js +2 -0
- package/dist/dashboard/types.js.map +1 -0
- package/dist/dashboard/web-start-endpoints.d.ts +32 -0
- package/dist/dashboard/web-start-endpoints.d.ts.map +1 -0
- package/dist/dashboard/web-start-endpoints.js +75 -0
- package/dist/dashboard/web-start-endpoints.js.map +1 -0
- package/dist/dashboard/widget-serve.d.ts +15 -0
- package/dist/dashboard/widget-serve.d.ts.map +1 -0
- package/dist/dashboard/widget-serve.js +45 -0
- package/dist/dashboard/widget-serve.js.map +1 -0
- package/dist/dashboard-bundle/assets/client-CbBRB9m4.js +9 -0
- package/dist/dashboard-bundle/assets/jsx-runtime-By8HlURe.js +1 -0
- package/dist/dashboard-bundle/assets/main-B3HghPQy.css +2 -0
- package/dist/dashboard-bundle/assets/main-om0WOAku.js +140 -0
- package/dist/dashboard-bundle/assets/module-jASZmfSB.js +21 -0
- package/dist/dashboard-bundle/assets/react-CZI7_Jkm.js +1 -0
- package/dist/dashboard-bundle/assets/react-dom-cJyBB_A4.js +1 -0
- package/dist/dashboard-bundle/assets/rolldown-runtime-QTnfLwEv.js +1 -0
- package/dist/dashboard-bundle/host/module.js +1 -0
- package/dist/dashboard-bundle/host/react-dom-client.js +1 -0
- package/dist/dashboard-bundle/host/react-dom.js +1 -0
- package/dist/dashboard-bundle/host/react-jsx-runtime.js +1 -0
- package/dist/dashboard-bundle/host/react.js +1 -0
- package/dist/dashboard-bundle/index.html +42 -0
- package/dist/dashboard-bundle/logo-animated.svg +34 -0
- package/dist/dashboard-bundle/logo.svg +16 -0
- package/dist/dashboard-client/assets/chunks/chunk-BF9pJudf.js +4 -0
- package/dist/dashboard-client/assets/entries/entry-client-routing.CT1e9F0o.js +1 -0
- package/dist/dashboard-client/assets/entries/pages_index.CkW5JQ8X.js +428 -0
- package/dist/dashboard-client/assets/static/layouts_tailwind-00e65532.8OjKGAbA.css +2 -0
- package/dist/dashboard-client/index.html +27 -0
- package/dist/dashboard-client/index.pageContext.json +1 -0
- package/dist/dashboard-client/logo-animated.svg +34 -0
- package/dist/dashboard-client/logo.svg +16 -0
- package/dist/dashboard-rpc/context.d.ts +54 -0
- package/dist/dashboard-rpc/context.d.ts.map +1 -0
- package/dist/dashboard-rpc/context.js +102 -0
- package/dist/dashboard-rpc/context.js.map +1 -0
- package/dist/dashboard-rpc/control.d.ts +124 -0
- package/dist/dashboard-rpc/control.d.ts.map +1 -0
- package/dist/dashboard-rpc/control.js +284 -0
- package/dist/dashboard-rpc/control.js.map +1 -0
- package/dist/dashboard-rpc/control.telefunc.d.ts +176 -0
- package/dist/dashboard-rpc/control.telefunc.d.ts.map +1 -0
- package/dist/dashboard-rpc/control.telefunc.js +373 -0
- package/dist/dashboard-rpc/control.telefunc.js.map +1 -0
- package/dist/dashboard-rpc/devices.d.ts +9 -0
- package/dist/dashboard-rpc/devices.d.ts.map +1 -0
- package/dist/dashboard-rpc/devices.js +12 -0
- package/dist/dashboard-rpc/devices.js.map +1 -0
- package/dist/dashboard-rpc/devices.telefunc.d.ts +9 -0
- package/dist/dashboard-rpc/devices.telefunc.d.ts.map +1 -0
- package/dist/dashboard-rpc/devices.telefunc.js +12 -0
- package/dist/dashboard-rpc/devices.telefunc.js.map +1 -0
- package/dist/dashboard-rpc/events-tail.d.ts +68 -0
- package/dist/dashboard-rpc/events-tail.d.ts.map +1 -0
- package/dist/dashboard-rpc/events-tail.js +257 -0
- package/dist/dashboard-rpc/events-tail.js.map +1 -0
- package/dist/dashboard-rpc/events.d.ts +39 -0
- package/dist/dashboard-rpc/events.d.ts.map +1 -0
- package/dist/dashboard-rpc/events.js +47 -0
- package/dist/dashboard-rpc/events.js.map +1 -0
- package/dist/dashboard-rpc/events.telefunc.d.ts +36 -0
- package/dist/dashboard-rpc/events.telefunc.d.ts.map +1 -0
- package/dist/dashboard-rpc/events.telefunc.js +70 -0
- package/dist/dashboard-rpc/events.telefunc.js.map +1 -0
- package/dist/dashboard-rpc/index.d.ts +29 -0
- package/dist/dashboard-rpc/index.d.ts.map +1 -0
- package/dist/dashboard-rpc/index.js +40 -0
- package/dist/dashboard-rpc/index.js.map +1 -0
- package/dist/dashboard-rpc/models.d.ts +4 -0
- package/dist/dashboard-rpc/models.d.ts.map +1 -0
- package/dist/dashboard-rpc/models.js +8 -0
- package/dist/dashboard-rpc/models.js.map +1 -0
- package/dist/dashboard-rpc/modules.d.ts +43 -0
- package/dist/dashboard-rpc/modules.d.ts.map +1 -0
- package/dist/dashboard-rpc/modules.js +77 -0
- package/dist/dashboard-rpc/modules.js.map +1 -0
- package/dist/dashboard-rpc/preferences.d.ts +41 -0
- package/dist/dashboard-rpc/preferences.d.ts.map +1 -0
- package/dist/dashboard-rpc/preferences.js +65 -0
- package/dist/dashboard-rpc/preferences.js.map +1 -0
- package/dist/dashboard-rpc/preferences.telefunc.d.ts +97 -0
- package/dist/dashboard-rpc/preferences.telefunc.d.ts.map +1 -0
- package/dist/dashboard-rpc/preferences.telefunc.js +157 -0
- package/dist/dashboard-rpc/preferences.telefunc.js.map +1 -0
- package/dist/dashboard-rpc/projects.d.ts +59 -0
- package/dist/dashboard-rpc/projects.d.ts.map +1 -0
- package/dist/dashboard-rpc/projects.js +87 -0
- package/dist/dashboard-rpc/projects.js.map +1 -0
- package/dist/dashboard-rpc/projects.telefunc.d.ts +56 -0
- package/dist/dashboard-rpc/projects.telefunc.d.ts.map +1 -0
- package/dist/dashboard-rpc/projects.telefunc.js +96 -0
- package/dist/dashboard-rpc/projects.telefunc.js.map +1 -0
- package/dist/dashboard-rpc/quota.d.ts +4 -0
- package/dist/dashboard-rpc/quota.d.ts.map +1 -0
- package/dist/dashboard-rpc/quota.js +15 -0
- package/dist/dashboard-rpc/quota.js.map +1 -0
- package/dist/dashboard-rpc/quota.telefunc.d.ts +40 -0
- package/dist/dashboard-rpc/quota.telefunc.d.ts.map +1 -0
- package/dist/dashboard-rpc/quota.telefunc.js +84 -0
- package/dist/dashboard-rpc/quota.telefunc.js.map +1 -0
- package/dist/dashboard-rpc/reads.d.ts +185 -0
- package/dist/dashboard-rpc/reads.d.ts.map +1 -0
- package/dist/dashboard-rpc/reads.js +370 -0
- package/dist/dashboard-rpc/reads.js.map +1 -0
- package/dist/dashboard-rpc/reads.telefunc.d.ts +197 -0
- package/dist/dashboard-rpc/reads.telefunc.d.ts.map +1 -0
- package/dist/dashboard-rpc/reads.telefunc.js +403 -0
- package/dist/dashboard-rpc/reads.telefunc.js.map +1 -0
- package/dist/dashboard-rpc/register.d.ts +18 -0
- package/dist/dashboard-rpc/register.d.ts.map +1 -0
- package/dist/dashboard-rpc/register.js +66 -0
- package/dist/dashboard-rpc/register.js.map +1 -0
- package/dist/dashboard-rpc/relay-agent.d.ts +9 -0
- package/dist/dashboard-rpc/relay-agent.d.ts.map +1 -0
- package/dist/dashboard-rpc/relay-agent.js +21 -0
- package/dist/dashboard-rpc/relay-agent.js.map +1 -0
- package/dist/dashboard-rpc/relay-dispatch.d.ts +9 -0
- package/dist/dashboard-rpc/relay-dispatch.d.ts.map +1 -0
- package/dist/dashboard-rpc/relay-dispatch.js +24 -0
- package/dist/dashboard-rpc/relay-dispatch.js.map +1 -0
- package/dist/dashboard-rpc/relay-run.d.ts +9 -0
- package/dist/dashboard-rpc/relay-run.d.ts.map +1 -0
- package/dist/dashboard-rpc/relay-run.js +21 -0
- package/dist/dashboard-rpc/relay-run.js.map +1 -0
- package/dist/dashboard-rpc/stream-channel.d.ts +23 -0
- package/dist/dashboard-rpc/stream-channel.d.ts.map +1 -0
- package/dist/dashboard-rpc/stream-channel.js +52 -0
- package/dist/dashboard-rpc/stream-channel.js.map +1 -0
- package/dist/dashboard-rpc/stream-forward.d.ts +17 -0
- package/dist/dashboard-rpc/stream-forward.d.ts.map +1 -0
- package/dist/dashboard-rpc/stream-forward.js +38 -0
- package/dist/dashboard-rpc/stream-forward.js.map +1 -0
- package/dist/dashboard-rpc/subagents.d.ts +12 -0
- package/dist/dashboard-rpc/subagents.d.ts.map +1 -0
- package/dist/dashboard-rpc/subagents.js +13 -0
- package/dist/dashboard-rpc/subagents.js.map +1 -0
- package/dist/dashboard-rpc/test-context.d.ts +23 -0
- package/dist/dashboard-rpc/test-context.d.ts.map +1 -0
- package/dist/dashboard-rpc/test-context.js +42 -0
- package/dist/dashboard-rpc/test-context.js.map +1 -0
- package/dist/dashboard-rpc/widgets.d.ts +33 -0
- package/dist/dashboard-rpc/widgets.d.ts.map +1 -0
- package/dist/dashboard-rpc/widgets.js +54 -0
- package/dist/dashboard-rpc/widgets.js.map +1 -0
- package/dist/data-branch.d.ts +120 -0
- package/dist/data-branch.d.ts.map +1 -0
- package/dist/data-branch.js +319 -0
- package/dist/data-branch.js.map +1 -0
- package/dist/discord/bot.d.ts +61 -0
- package/dist/discord/bot.d.ts.map +1 -0
- package/dist/discord/bot.js +94 -0
- package/dist/discord/bot.js.map +1 -0
- package/dist/discord/gateway.d.ts +137 -0
- package/dist/discord/gateway.d.ts.map +1 -0
- package/dist/discord/gateway.js +315 -0
- package/dist/discord/gateway.js.map +1 -0
- package/dist/discord/live-run.d.ts +31 -0
- package/dist/discord/live-run.d.ts.map +1 -0
- package/dist/discord/live-run.js +57 -0
- package/dist/discord/live-run.js.map +1 -0
- package/dist/discord/reply-mirror.d.ts +83 -0
- package/dist/discord/reply-mirror.d.ts.map +1 -0
- package/dist/discord/reply-mirror.js +84 -0
- package/dist/discord/reply-mirror.js.map +1 -0
- package/dist/discord/rest.d.ts +20 -0
- package/dist/discord/rest.d.ts.map +1 -0
- package/dist/discord/rest.js +41 -0
- package/dist/discord/rest.js.map +1 -0
- package/dist/discord/routing.d.ts +81 -0
- package/dist/discord/routing.d.ts.map +1 -0
- package/dist/discord/routing.js +91 -0
- package/dist/discord/routing.js.map +1 -0
- package/dist/discord-credentials-store.d.ts +14 -0
- package/dist/discord-credentials-store.d.ts.map +1 -0
- package/dist/discord-credentials-store.js +53 -0
- package/dist/discord-credentials-store.js.map +1 -0
- package/dist/discord-credentials.d.ts +80 -0
- package/dist/discord-credentials.d.ts.map +1 -0
- package/dist/discord-credentials.js +55 -0
- package/dist/discord-credentials.js.map +1 -0
- package/dist/driver/actions-zip.d.ts +2 -0
- package/dist/driver/actions-zip.d.ts.map +1 -0
- package/dist/driver/actions-zip.js +70 -0
- package/dist/driver/actions-zip.js.map +1 -0
- package/dist/driver/actions.d.ts +130 -0
- package/dist/driver/actions.d.ts.map +1 -0
- package/dist/driver/actions.js +261 -0
- package/dist/driver/actions.js.map +1 -0
- package/dist/driver/agent-cli.d.ts +57 -0
- package/dist/driver/agent-cli.d.ts.map +1 -0
- package/dist/driver/agent-cli.js +134 -0
- package/dist/driver/agent-cli.js.map +1 -0
- package/dist/driver/child-registry.d.ts +25 -0
- package/dist/driver/child-registry.d.ts.map +1 -0
- package/dist/driver/child-registry.js +53 -0
- package/dist/driver/child-registry.js.map +1 -0
- package/dist/driver/claude-code-quota.d.ts +40 -0
- package/dist/driver/claude-code-quota.d.ts.map +1 -0
- package/dist/driver/claude-code-quota.js +144 -0
- package/dist/driver/claude-code-quota.js.map +1 -0
- package/dist/driver/claude-code.d.ts +104 -0
- package/dist/driver/claude-code.d.ts.map +1 -0
- package/dist/driver/claude-code.js +314 -0
- package/dist/driver/claude-code.js.map +1 -0
- package/dist/driver/cli-session.d.ts +57 -0
- package/dist/driver/cli-session.d.ts.map +1 -0
- package/dist/driver/cli-session.js +134 -0
- package/dist/driver/cli-session.js.map +1 -0
- package/dist/driver/cloud.d.ts +109 -0
- package/dist/driver/cloud.d.ts.map +1 -0
- package/dist/driver/cloud.js +232 -0
- package/dist/driver/cloud.js.map +1 -0
- package/dist/driver/codex.d.ts +99 -0
- package/dist/driver/codex.d.ts.map +1 -0
- package/dist/driver/codex.js +190 -0
- package/dist/driver/codex.js.map +1 -0
- package/dist/driver/fake.d.ts +54 -0
- package/dist/driver/fake.d.ts.map +1 -0
- package/dist/driver/fake.js +73 -0
- package/dist/driver/fake.js.map +1 -0
- package/dist/driver/index.d.ts +10 -0
- package/dist/driver/index.d.ts.map +1 -0
- package/dist/driver/index.js +14 -0
- package/dist/driver/index.js.map +1 -0
- package/dist/driver/session-support.d.ts +14 -0
- package/dist/driver/session-support.d.ts.map +1 -0
- package/dist/driver/session-support.js +37 -0
- package/dist/driver/session-support.js.map +1 -0
- package/dist/driver/types.d.ts +310 -0
- package/dist/driver/types.d.ts.map +1 -0
- package/dist/driver/types.js +5 -0
- package/dist/driver/types.js.map +1 -0
- package/dist/driver-cli.d.ts +61 -0
- package/dist/driver-cli.d.ts.map +1 -0
- package/dist/driver-cli.js +66 -0
- package/dist/driver-cli.js.map +1 -0
- package/dist/driver-names.d.ts +22 -0
- package/dist/driver-names.d.ts.map +1 -0
- package/dist/driver-names.js +29 -0
- package/dist/driver-names.js.map +1 -0
- package/dist/error-message.d.ts +8 -0
- package/dist/error-message.d.ts.map +1 -0
- package/dist/error-message.js +10 -0
- package/dist/error-message.js.map +1 -0
- package/dist/event-stream.d.ts +33 -0
- package/dist/event-stream.d.ts.map +1 -0
- package/dist/event-stream.js +104 -0
- package/dist/event-stream.js.map +1 -0
- package/dist/events.d.ts +236 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +5 -0
- package/dist/events.js.map +1 -0
- package/dist/fake-script.d.ts +15 -0
- package/dist/fake-script.d.ts.map +1 -0
- package/dist/fake-script.js +58 -0
- package/dist/fake-script.js.map +1 -0
- package/dist/format-bytes.d.ts +3 -0
- package/dist/format-bytes.d.ts.map +1 -0
- package/dist/format-bytes.js +18 -0
- package/dist/format-bytes.js.map +1 -0
- package/dist/framework-dir.d.ts +11 -0
- package/dist/framework-dir.d.ts.map +1 -0
- package/dist/framework-dir.js +11 -0
- package/dist/framework-dir.js.map +1 -0
- package/dist/framework-gitignore.d.ts +12 -0
- package/dist/framework-gitignore.d.ts.map +1 -0
- package/dist/framework-gitignore.js +19 -0
- package/dist/framework-gitignore.js.map +1 -0
- package/dist/gate-keepalive.d.ts +47 -0
- package/dist/gate-keepalive.d.ts.map +1 -0
- package/dist/gate-keepalive.js +62 -0
- package/dist/gate-keepalive.js.map +1 -0
- package/dist/git-exclude.d.ts +11 -0
- package/dist/git-exclude.d.ts.map +1 -0
- package/dist/git-exclude.js +23 -0
- package/dist/git-exclude.js.map +1 -0
- package/dist/handoff-level.d.ts +56 -0
- package/dist/handoff-level.d.ts.map +1 -0
- package/dist/handoff-level.js +62 -0
- package/dist/handoff-level.js.map +1 -0
- package/dist/has-remote.d.ts +8 -0
- package/dist/has-remote.d.ts.map +1 -0
- package/dist/has-remote.js +10 -0
- package/dist/has-remote.js.map +1 -0
- package/dist/host-exec.d.ts +21 -0
- package/dist/host-exec.d.ts.map +1 -0
- package/dist/host-exec.js +30 -0
- package/dist/host-exec.js.map +1 -0
- package/dist/index.d.ts +41 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +16 -0
- package/dist/index.js.map +1 -0
- package/dist/install.d.ts +29 -0
- package/dist/install.d.ts.map +1 -0
- package/dist/install.js +40 -0
- package/dist/install.js.map +1 -0
- package/dist/jsonl-tail.d.ts +59 -0
- package/dist/jsonl-tail.d.ts.map +1 -0
- package/dist/jsonl-tail.js +152 -0
- package/dist/jsonl-tail.js.map +1 -0
- package/dist/layout.d.ts +41 -0
- package/dist/layout.d.ts.map +1 -0
- package/dist/layout.js +69 -0
- package/dist/layout.js.map +1 -0
- package/dist/logs.d.ts +73 -0
- package/dist/logs.d.ts.map +1 -0
- package/dist/logs.js +218 -0
- package/dist/logs.js.map +1 -0
- package/dist/loopback-host.d.ts +20 -0
- package/dist/loopback-host.d.ts.map +1 -0
- package/dist/loopback-host.js +31 -0
- package/dist/loopback-host.js.map +1 -0
- package/dist/maintenance.d.ts +90 -0
- package/dist/maintenance.d.ts.map +1 -0
- package/dist/maintenance.js +141 -0
- package/dist/maintenance.js.map +1 -0
- package/dist/merged-worktrees.d.ts +74 -0
- package/dist/merged-worktrees.d.ts.map +1 -0
- package/dist/merged-worktrees.js +84 -0
- package/dist/merged-worktrees.js.map +1 -0
- package/dist/module-server.d.ts +56 -0
- package/dist/module-types/dashboard/components/DiffStat.d.ts +6 -0
- package/dist/module-types/dashboard/components/DriverModelMenu.d.ts +23 -0
- package/dist/module-types/dashboard/components/LinkActions.d.ts +26 -0
- package/dist/module-types/dashboard/components/Markdown.d.ts +4 -0
- package/dist/module-types/dashboard/components/SettingsRows.d.ts +37 -0
- package/dist/module-types/dashboard/components/StartAgentButton.d.ts +39 -0
- package/dist/module-types/dashboard/components/ui/badge.d.ts +2 -0
- package/dist/module-types/dashboard/components/ui/button.d.ts +10 -0
- package/dist/module-types/dashboard/components/ui/card.d.ts +5 -0
- package/dist/module-types/dashboard/components/ui/checkbox.d.ts +7 -0
- package/dist/module-types/dashboard/components/ui/dropdown-menu.d.ts +16 -0
- package/dist/module-types/dashboard/components/ui/input.d.ts +2 -0
- package/dist/module-types/dashboard/components/ui/option-label.d.ts +4 -0
- package/dist/module-types/dashboard/components/ui/popover.d.ts +8 -0
- package/dist/module-types/dashboard/components/ui/scroll-area.d.ts +10 -0
- package/dist/module-types/dashboard/components/ui/separator.d.ts +3 -0
- package/dist/module-types/dashboard/components/ui/skeleton.d.ts +2 -0
- package/dist/module-types/dashboard/components/ui/slider.d.ts +9 -0
- package/dist/module-types/dashboard/components/ui/tooltip.d.ts +11 -0
- package/dist/module-types/dashboard/lib/agent-settings.d.ts +2 -0
- package/dist/module-types/dashboard/lib/draft-handoff.d.ts +15 -0
- package/dist/module-types/dashboard/lib/format-date.d.ts +51 -0
- package/dist/module-types/dashboard/lib/host-services.d.ts +12 -0
- package/dist/module-types/dashboard/lib/models.d.ts +24 -0
- package/dist/module-types/dashboard/lib/route.d.ts +37 -0
- package/dist/module-types/dashboard/lib/rpc.d.ts +31 -0
- package/dist/module-types/dashboard/lib/use-action.d.ts +25 -0
- package/dist/module-types/dashboard/lib/use-async.d.ts +45 -0
- package/dist/module-types/dashboard/lib/use-modules.d.ts +78 -0
- package/dist/module-types/dashboard/lib/utils.d.ts +3 -0
- package/dist/module-types/dashboard/module/index.d.ts +335 -0
- package/dist/module-types/dashboard/rpc/models.d.ts +2 -0
- package/dist/module-types/dashboard/rpc/modules.d.ts +5 -0
- package/dist/module-types/src/agent-id.d.ts +12 -0
- package/dist/module-types/src/agent-locks.d.ts +2 -0
- package/dist/module-types/src/agent-view.d.ts +38 -0
- package/dist/module-types/src/bridge-browser.d.ts +216 -0
- package/dist/module-types/src/browser-stream.d.ts +19 -0
- package/dist/module-types/src/browser.d.ts +15 -0
- package/dist/module-types/src/built-in.d.ts +28 -0
- package/dist/module-types/src/client.d.ts +15 -0
- package/dist/module-types/src/cloud-run-state.d.ts +26 -0
- package/dist/module-types/src/dashboard/activity.d.ts +40 -0
- package/dist/module-types/src/dashboard/agent-handoff.d.ts +243 -0
- package/dist/module-types/src/dashboard/agent-tree.d.ts +105 -0
- package/dist/module-types/src/dashboard/bridge-endpoints.d.ts +157 -0
- package/dist/module-types/src/dashboard/bridge-question.d.ts +32 -0
- package/dist/module-types/src/dashboard/bridge-store.d.ts +178 -0
- package/dist/module-types/src/dashboard/cache.d.ts +46 -0
- package/dist/module-types/src/dashboard/content-type.d.ts +2 -0
- package/dist/module-types/src/dashboard/dashboard.d.ts +37 -0
- package/dist/module-types/src/dashboard/docs.d.ts +38 -0
- package/dist/module-types/src/dashboard/file-diff.d.ts +66 -0
- package/dist/module-types/src/dashboard/file-read.d.ts +41 -0
- package/dist/module-types/src/dashboard/file-status.d.ts +20 -0
- package/dist/module-types/src/dashboard/git-status.d.ts +43 -0
- package/dist/module-types/src/dashboard/http.d.ts +28 -0
- package/dist/module-types/src/dashboard/interventions.d.ts +66 -0
- package/dist/module-types/src/dashboard/keyed-watcher.d.ts +28 -0
- package/dist/module-types/src/dashboard/keys.d.ts +30 -0
- package/dist/module-types/src/dashboard/models.d.ts +24 -0
- package/dist/module-types/src/dashboard/module-host.d.ts +43 -0
- package/dist/module-types/src/dashboard/module-serve.d.ts +14 -0
- package/dist/module-types/src/dashboard/open-in-app.d.ts +42 -0
- package/dist/module-types/src/dashboard/open-questions.d.ts +44 -0
- package/dist/module-types/src/dashboard/overview.d.ts +77 -0
- package/dist/module-types/src/dashboard/projects.d.ts +99 -0
- package/dist/module-types/src/dashboard/pull-requests.d.ts +126 -0
- package/dist/module-types/src/dashboard/queue.d.ts +16 -0
- package/dist/module-types/src/dashboard/quota.d.ts +52 -0
- package/dist/module-types/src/dashboard/remote-run.d.ts +94 -0
- package/dist/module-types/src/dashboard/rpc-serve.d.ts +102 -0
- package/dist/module-types/src/dashboard/run-inbox.d.ts +30 -0
- package/dist/module-types/src/dashboard/scheduler-state.d.ts +72 -0
- package/dist/module-types/src/dashboard/subagent-settings.d.ts +25 -0
- package/dist/module-types/src/dashboard/types.d.ts +108 -0
- package/dist/module-types/src/dashboard-rpc/context.d.ts +53 -0
- package/dist/module-types/src/dashboard-rpc/control.d.ts +123 -0
- package/dist/module-types/src/dashboard-rpc/devices.d.ts +8 -0
- package/dist/module-types/src/dashboard-rpc/events-tail.d.ts +67 -0
- package/dist/module-types/src/dashboard-rpc/events.d.ts +38 -0
- package/dist/module-types/src/dashboard-rpc/index.d.ts +28 -0
- package/dist/module-types/src/dashboard-rpc/models.d.ts +3 -0
- package/dist/module-types/src/dashboard-rpc/modules.d.ts +42 -0
- package/dist/module-types/src/dashboard-rpc/preferences.d.ts +40 -0
- package/dist/module-types/src/dashboard-rpc/projects.d.ts +58 -0
- package/dist/module-types/src/dashboard-rpc/quota.d.ts +3 -0
- package/dist/module-types/src/dashboard-rpc/reads.d.ts +184 -0
- package/dist/module-types/src/dashboard-rpc/relay-agent.d.ts +8 -0
- package/dist/module-types/src/dashboard-rpc/stream-forward.d.ts +16 -0
- package/dist/module-types/src/dashboard-rpc/subagents.d.ts +11 -0
- package/dist/module-types/src/driver-names.d.ts +21 -0
- package/dist/module-types/src/error-message.d.ts +7 -0
- package/dist/module-types/src/event-stream.d.ts +32 -0
- package/dist/module-types/src/events.d.ts +235 -0
- package/dist/module-types/src/format-bytes.d.ts +2 -0
- package/dist/module-types/src/framework-dir.d.ts +10 -0
- package/dist/module-types/src/framework-gitignore.d.ts +11 -0
- package/dist/module-types/src/has-remote.d.ts +7 -0
- package/dist/module-types/src/index.d.ts +40 -0
- package/dist/module-types/src/jsonl-tail.d.ts +58 -0
- package/dist/module-types/src/loopback-host.d.ts +19 -0
- package/dist/module-types/src/node-fs.d.ts +32 -0
- package/dist/module-types/src/open-choices.d.ts +14 -0
- package/dist/module-types/src/pick-directory.d.ts +29 -0
- package/dist/module-types/src/preference-defaults.d.ts +42 -0
- package/dist/module-types/src/project-commands.d.ts +23 -0
- package/dist/module-types/src/project-errors.d.ts +55 -0
- package/dist/module-types/src/project-hooks.d.ts +129 -0
- package/dist/module-types/src/project-modules.d.ts +49 -0
- package/dist/module-types/src/project-presets.d.ts +29 -0
- package/dist/module-types/src/project.d.ts +28 -0
- package/dist/module-types/src/publish-levels.d.ts +32 -0
- package/dist/module-types/src/quota-boundary.d.ts +64 -0
- package/dist/module-types/src/quota-poller.d.ts +82 -0
- package/dist/module-types/src/registry.d.ts +220 -0
- package/dist/module-types/src/store/agent-checkout.d.ts +53 -0
- package/dist/module-types/src/store/agent-store.d.ts +266 -0
- package/dist/module-types/src/store/branches.d.ts +163 -0
- package/dist/module-types/src/store/git-host.d.ts +113 -0
- package/dist/module-types/src/store/index.d.ts +9 -0
- package/dist/module-types/src/store/provided.d.ts +16 -0
- package/dist/module-types/src/store/queue.d.ts +45 -0
- package/dist/module-types/src/store/repository.d.ts +32 -0
- package/dist/module-types/src/store/run-record.d.ts +21 -0
- package/dist/module-types/src/store/runs.d.ts +107 -0
- package/dist/module-types/src/store/tickets.d.ts +72 -0
- package/dist/module-types/src/subagent-settings.d.ts +26 -0
- package/dist/module-types/src/terminal.d.ts +3 -0
- package/dist/module-types/src/worktrees.d.ts +89 -0
- package/dist/module.css +50 -0
- package/dist/node-fs.d.ts +33 -0
- package/dist/node-fs.d.ts.map +1 -0
- package/dist/node-fs.js +57 -0
- package/dist/node-fs.js.map +1 -0
- package/dist/on-before-mergeable-prompt.d.ts +32 -0
- package/dist/on-before-mergeable-prompt.d.ts.map +1 -0
- package/dist/on-before-mergeable-prompt.js +26 -0
- package/dist/on-before-mergeable-prompt.js.map +1 -0
- package/dist/open-choices.d.ts +15 -0
- package/dist/open-choices.d.ts.map +1 -0
- package/dist/open-choices.js +31 -0
- package/dist/open-choices.js.map +1 -0
- package/dist/pick-directory.d.ts +30 -0
- package/dist/pick-directory.d.ts.map +1 -0
- package/dist/pick-directory.js +102 -0
- package/dist/pick-directory.js.map +1 -0
- package/dist/planned-quick-wins.d.ts +102 -0
- package/dist/planned-quick-wins.d.ts.map +1 -0
- package/dist/planned-quick-wins.js +171 -0
- package/dist/planned-quick-wins.js.map +1 -0
- package/dist/preference-defaults.d.ts +43 -0
- package/dist/preference-defaults.d.ts.map +1 -0
- package/dist/preference-defaults.js +34 -0
- package/dist/preference-defaults.js.map +1 -0
- package/dist/preflight.d.ts +77 -0
- package/dist/preflight.d.ts.map +1 -0
- package/dist/preflight.js +91 -0
- package/dist/preflight.js.map +1 -0
- package/dist/preset-catalog.d.ts +98 -0
- package/dist/preset-catalog.d.ts.map +1 -0
- package/dist/preset-catalog.js +129 -0
- package/dist/preset-catalog.js.map +1 -0
- package/dist/preset-prompt.d.ts +81 -0
- package/dist/preset-prompt.d.ts.map +1 -0
- package/dist/preset-prompt.js +51 -0
- package/dist/preset-prompt.js.map +1 -0
- package/dist/preset-registry.d.ts +32 -0
- package/dist/preset-registry.d.ts.map +1 -0
- package/dist/preset-registry.js +35 -0
- package/dist/preset-registry.js.map +1 -0
- package/dist/presets.d.ts +20 -0
- package/dist/presets.d.ts.map +1 -0
- package/dist/presets.js +33 -0
- package/dist/presets.js.map +1 -0
- package/dist/preview-runtime.d.ts +33 -0
- package/dist/preview-runtime.d.ts.map +1 -0
- package/dist/preview-runtime.js +96 -0
- package/dist/preview-runtime.js.map +1 -0
- package/dist/preview.d.ts +78 -0
- package/dist/preview.d.ts.map +1 -0
- package/dist/preview.js +301 -0
- package/dist/preview.js.map +1 -0
- package/dist/project-commands.d.ts +24 -0
- package/dist/project-commands.d.ts.map +1 -0
- package/dist/project-commands.js +57 -0
- package/dist/project-commands.js.map +1 -0
- package/dist/project-errors.d.ts +56 -0
- package/dist/project-errors.d.ts.map +1 -0
- package/dist/project-errors.js +49 -0
- package/dist/project-errors.js.map +1 -0
- package/dist/project-hooks.d.ts +130 -0
- package/dist/project-hooks.d.ts.map +1 -0
- package/dist/project-hooks.js +232 -0
- package/dist/project-hooks.js.map +1 -0
- package/dist/project-modules.d.ts +50 -0
- package/dist/project-modules.d.ts.map +1 -0
- package/dist/project-modules.js +110 -0
- package/dist/project-modules.js.map +1 -0
- package/dist/project-pass.d.ts +32 -0
- package/dist/project-pass.d.ts.map +1 -0
- package/dist/project-pass.js +45 -0
- package/dist/project-pass.js.map +1 -0
- package/dist/project-presets.d.ts +30 -0
- package/dist/project-presets.d.ts.map +1 -0
- package/dist/project-presets.js +74 -0
- package/dist/project-presets.js.map +1 -0
- package/dist/project-widgets.d.ts +46 -0
- package/dist/project-widgets.d.ts.map +1 -0
- package/dist/project-widgets.js +93 -0
- package/dist/project-widgets.js.map +1 -0
- package/dist/project.d.ts +29 -0
- package/dist/project.d.ts.map +1 -0
- package/dist/project.js +41 -0
- package/dist/project.js.map +1 -0
- package/dist/prompt-run.d.ts +104 -0
- package/dist/prompt-run.d.ts.map +1 -0
- package/dist/prompt-run.js +112 -0
- package/dist/prompt-run.js.map +1 -0
- package/dist/prompt-template.d.ts +16 -0
- package/dist/prompt-template.d.ts.map +1 -0
- package/dist/prompt-template.js +56 -0
- package/dist/prompt-template.js.map +1 -0
- package/dist/prompts.generated.d.ts +53 -0
- package/dist/prompts.generated.d.ts.map +1 -0
- package/dist/prompts.generated.js +55 -0
- package/dist/prompts.generated.js.map +1 -0
- package/dist/publish-levels.d.ts +33 -0
- package/dist/publish-levels.d.ts.map +1 -0
- package/dist/publish-levels.js +51 -0
- package/dist/publish-levels.js.map +1 -0
- package/dist/queue-promote.d.ts +70 -0
- package/dist/queue-promote.d.ts.map +1 -0
- package/dist/queue-promote.js +118 -0
- package/dist/queue-promote.js.map +1 -0
- package/dist/quota-boundary.d.ts +65 -0
- package/dist/quota-boundary.d.ts.map +1 -0
- package/dist/quota-boundary.js +135 -0
- package/dist/quota-boundary.js.map +1 -0
- package/dist/quota-poller.d.ts +83 -0
- package/dist/quota-poller.d.ts.map +1 -0
- package/dist/quota-poller.js +118 -0
- package/dist/quota-poller.js.map +1 -0
- package/dist/registry.d.ts +221 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +348 -0
- package/dist/registry.js.map +1 -0
- package/dist/relay.d.ts +84 -0
- package/dist/relay.d.ts.map +1 -0
- package/dist/relay.js +199 -0
- package/dist/relay.js.map +1 -0
- package/dist/repos-directory.d.ts +19 -0
- package/dist/repos-directory.d.ts.map +1 -0
- package/dist/repos-directory.js +23 -0
- package/dist/repos-directory.js.map +1 -0
- package/dist/request-path.d.ts +10 -0
- package/dist/request-path.d.ts.map +1 -0
- package/dist/request-path.js +16 -0
- package/dist/request-path.js.map +1 -0
- package/dist/retired-project-settings.d.ts +43 -0
- package/dist/retired-project-settings.d.ts.map +1 -0
- package/dist/retired-project-settings.js +125 -0
- package/dist/retired-project-settings.js.map +1 -0
- package/dist/routine-locks.d.ts +53 -0
- package/dist/routine-locks.d.ts.map +1 -0
- package/dist/routine-locks.js +125 -0
- package/dist/routine-locks.js.map +1 -0
- package/dist/run-driver.d.ts +26 -0
- package/dist/run-driver.d.ts.map +1 -0
- package/dist/run-driver.js +17 -0
- package/dist/run-driver.js.map +1 -0
- package/dist/run-locks.d.ts +3 -0
- package/dist/run-locks.d.ts.map +1 -0
- package/dist/run-locks.js +39 -0
- package/dist/run-locks.js.map +1 -0
- package/dist/run-messages.d.ts +64 -0
- package/dist/run-messages.d.ts.map +1 -0
- package/dist/run-messages.js +76 -0
- package/dist/run-messages.js.map +1 -0
- package/dist/run-options.d.ts +53 -0
- package/dist/run-options.d.ts.map +1 -0
- package/dist/run-options.js +110 -0
- package/dist/run-options.js.map +1 -0
- package/dist/run-telemetry.d.ts +115 -0
- package/dist/run-telemetry.d.ts.map +1 -0
- package/dist/run-telemetry.js +137 -0
- package/dist/run-telemetry.js.map +1 -0
- package/dist/run-view.d.ts +109 -0
- package/dist/run-view.d.ts.map +1 -0
- package/dist/run-view.js +118 -0
- package/dist/run-view.js.map +1 -0
- package/dist/run.d.ts +261 -0
- package/dist/run.d.ts.map +1 -0
- package/dist/run.js +420 -0
- package/dist/run.js.map +1 -0
- package/dist/runtime-keys.d.ts +17 -0
- package/dist/runtime-keys.d.ts.map +1 -0
- package/dist/runtime-keys.js +17 -0
- package/dist/runtime-keys.js.map +1 -0
- package/dist/sandbox.d.ts +27 -0
- package/dist/sandbox.d.ts.map +1 -0
- package/dist/sandbox.js +63 -0
- package/dist/sandbox.js.map +1 -0
- package/dist/session-link.d.ts +19 -0
- package/dist/session-link.d.ts.map +1 -0
- package/dist/session-link.js +26 -0
- package/dist/session-link.js.map +1 -0
- package/dist/sessions.d.ts +77 -0
- package/dist/sessions.d.ts.map +1 -0
- package/dist/sessions.js +146 -0
- package/dist/sessions.js.map +1 -0
- package/dist/spike-locks.d.ts +75 -0
- package/dist/spike-locks.d.ts.map +1 -0
- package/dist/spike-locks.js +208 -0
- package/dist/spike-locks.js.map +1 -0
- package/dist/stale-branch.d.ts +21 -0
- package/dist/stale-branch.d.ts.map +1 -0
- package/dist/stale-branch.js +32 -0
- package/dist/stale-branch.js.map +1 -0
- package/dist/steps.d.ts +9 -0
- package/dist/steps.d.ts.map +1 -0
- package/dist/steps.js +13 -0
- package/dist/steps.js.map +1 -0
- package/dist/store/agent-checkout.d.ts +54 -0
- package/dist/store/agent-checkout.d.ts.map +1 -0
- package/dist/store/agent-checkout.js +61 -0
- package/dist/store/agent-checkout.js.map +1 -0
- package/dist/store/agent-store.d.ts +267 -0
- package/dist/store/agent-store.d.ts.map +1 -0
- package/dist/store/agent-store.js +190 -0
- package/dist/store/agent-store.js.map +1 -0
- package/dist/store/branches.d.ts +164 -0
- package/dist/store/branches.d.ts.map +1 -0
- package/dist/store/branches.js +187 -0
- package/dist/store/branches.js.map +1 -0
- package/dist/store/forge.d.ts +110 -0
- package/dist/store/forge.d.ts.map +1 -0
- package/dist/store/forge.js +97 -0
- package/dist/store/forge.js.map +1 -0
- package/dist/store/git-host.d.ts +114 -0
- package/dist/store/git-host.d.ts.map +1 -0
- package/dist/store/git-host.js +103 -0
- package/dist/store/git-host.js.map +1 -0
- package/dist/store/index.d.ts +10 -0
- package/dist/store/index.d.ts.map +1 -0
- package/dist/store/index.js +10 -0
- package/dist/store/index.js.map +1 -0
- package/dist/store/provided.d.ts +17 -0
- package/dist/store/provided.d.ts.map +1 -0
- package/dist/store/provided.js +37 -0
- package/dist/store/provided.js.map +1 -0
- package/dist/store/queue.d.ts +46 -0
- package/dist/store/queue.d.ts.map +1 -0
- package/dist/store/queue.js +61 -0
- package/dist/store/queue.js.map +1 -0
- package/dist/store/repository.d.ts +33 -0
- package/dist/store/repository.d.ts.map +1 -0
- package/dist/store/repository.js +25 -0
- package/dist/store/repository.js.map +1 -0
- package/dist/store/run-checkout.d.ts +33 -0
- package/dist/store/run-checkout.d.ts.map +1 -0
- package/dist/store/run-checkout.js +59 -0
- package/dist/store/run-checkout.js.map +1 -0
- package/dist/store/run-record.d.ts +22 -0
- package/dist/store/run-record.d.ts.map +1 -0
- package/dist/store/run-record.js +108 -0
- package/dist/store/run-record.js.map +1 -0
- package/dist/store/run-store.d.ts +501 -0
- package/dist/store/run-store.d.ts.map +1 -0
- package/dist/store/run-store.js +806 -0
- package/dist/store/run-store.js.map +1 -0
- package/dist/store/runs.d.ts +108 -0
- package/dist/store/runs.d.ts.map +1 -0
- package/dist/store/runs.js +146 -0
- package/dist/store/runs.js.map +1 -0
- package/dist/store/suspend.d.ts +38 -0
- package/dist/store/suspend.d.ts.map +1 -0
- package/dist/store/suspend.js +45 -0
- package/dist/store/suspend.js.map +1 -0
- package/dist/store/test-branches.d.ts +18 -0
- package/dist/store/test-branches.d.ts.map +1 -0
- package/dist/store/test-branches.js +59 -0
- package/dist/store/test-branches.js.map +1 -0
- package/dist/store/test-runs.d.ts +15 -0
- package/dist/store/test-runs.d.ts.map +1 -0
- package/dist/store/test-runs.js +37 -0
- package/dist/store/test-runs.js.map +1 -0
- package/dist/store/tickets.d.ts +73 -0
- package/dist/store/tickets.d.ts.map +1 -0
- package/dist/store/tickets.js +67 -0
- package/dist/store/tickets.js.map +1 -0
- package/dist/store/worktree-deps.d.ts +30 -0
- package/dist/store/worktree-deps.d.ts.map +1 -0
- package/dist/store/worktree-deps.js +115 -0
- package/dist/store/worktree-deps.js.map +1 -0
- package/dist/store/worktree.d.ts +194 -0
- package/dist/store/worktree.d.ts.map +1 -0
- package/dist/store/worktree.js +331 -0
- package/dist/store/worktree.js.map +1 -0
- package/dist/subagent-settings.d.ts +27 -0
- package/dist/subagent-settings.d.ts.map +1 -0
- package/dist/subagent-settings.js +35 -0
- package/dist/subagent-settings.js.map +1 -0
- package/dist/system-prompt-file.d.ts +18 -0
- package/dist/system-prompt-file.d.ts.map +1 -0
- package/dist/system-prompt-file.js +28 -0
- package/dist/system-prompt-file.js.map +1 -0
- package/dist/system-prompt.d.ts +148 -0
- package/dist/system-prompt.d.ts.map +1 -0
- package/dist/system-prompt.js +170 -0
- package/dist/system-prompt.js.map +1 -0
- package/dist/target-driver.d.ts +28 -0
- package/dist/target-driver.d.ts.map +1 -0
- package/dist/target-driver.js +18 -0
- package/dist/target-driver.js.map +1 -0
- package/dist/terminal.d.ts +4 -0
- package/dist/terminal.d.ts.map +1 -0
- package/dist/terminal.js +97 -0
- package/dist/terminal.js.map +1 -0
- package/dist/ticket-locks.d.ts +61 -0
- package/dist/ticket-locks.d.ts.map +1 -0
- package/dist/ticket-locks.js +137 -0
- package/dist/ticket-locks.js.map +1 -0
- package/dist/tickets-file.d.ts +7 -0
- package/dist/tickets-file.d.ts.map +1 -0
- package/dist/tickets-file.js +21 -0
- package/dist/tickets-file.js.map +1 -0
- package/dist/tickets.d.ts +18 -0
- package/dist/tickets.d.ts.map +1 -0
- package/dist/tickets.js +23 -0
- package/dist/tickets.js.map +1 -0
- package/dist/todo-loop.d.ts +110 -0
- package/dist/todo-loop.d.ts.map +1 -0
- package/dist/todo-loop.js +175 -0
- package/dist/todo-loop.js.map +1 -0
- package/dist/turn-gate.d.ts +144 -0
- package/dist/turn-gate.d.ts.map +1 -0
- package/dist/turn-gate.js +217 -0
- package/dist/turn-gate.js.map +1 -0
- package/dist/update-check.d.ts +44 -0
- package/dist/update-check.d.ts.map +1 -0
- package/dist/update-check.js +71 -0
- package/dist/update-check.js.map +1 -0
- package/dist/usage.d.ts +32 -0
- package/dist/usage.d.ts.map +1 -0
- package/dist/usage.js +46 -0
- package/dist/usage.js.map +1 -0
- package/dist/widget-types/dashboard/components/LinkActions.d.ts +26 -0
- package/dist/widget-types/dashboard/components/Markdown.d.ts +4 -0
- package/dist/widget-types/dashboard/components/StartAgentButton.d.ts +39 -0
- package/dist/widget-types/dashboard/components/ui/badge.d.ts +2 -0
- package/dist/widget-types/dashboard/components/ui/button.d.ts +10 -0
- package/dist/widget-types/dashboard/components/ui/card.d.ts +5 -0
- package/dist/widget-types/dashboard/components/ui/checkbox.d.ts +7 -0
- package/dist/widget-types/dashboard/components/ui/dropdown-menu.d.ts +16 -0
- package/dist/widget-types/dashboard/components/ui/input.d.ts +2 -0
- package/dist/widget-types/dashboard/components/ui/option-label.d.ts +4 -0
- package/dist/widget-types/dashboard/components/ui/popover.d.ts +8 -0
- package/dist/widget-types/dashboard/components/ui/scroll-area.d.ts +10 -0
- package/dist/widget-types/dashboard/components/ui/separator.d.ts +3 -0
- package/dist/widget-types/dashboard/components/ui/skeleton.d.ts +2 -0
- package/dist/widget-types/dashboard/components/ui/slider.d.ts +9 -0
- package/dist/widget-types/dashboard/components/ui/tooltip.d.ts +11 -0
- package/dist/widget-types/dashboard/lib/draft-handoff.d.ts +15 -0
- package/dist/widget-types/dashboard/lib/format-date.d.ts +51 -0
- package/dist/widget-types/dashboard/lib/host-services.d.ts +12 -0
- package/dist/widget-types/dashboard/lib/route.d.ts +24 -0
- package/dist/widget-types/dashboard/lib/rpc.d.ts +31 -0
- package/dist/widget-types/dashboard/lib/use-action.d.ts +25 -0
- package/dist/widget-types/dashboard/lib/use-async.d.ts +39 -0
- package/dist/widget-types/dashboard/lib/use-widgets.d.ts +42 -0
- package/dist/widget-types/dashboard/lib/utils.d.ts +3 -0
- package/dist/widget-types/dashboard/rpc/widgets.d.ts +4 -0
- package/dist/widget-types/dashboard/widget/index.d.ts +207 -0
- package/dist/widget-types/src/agent-id.d.ts +12 -0
- package/dist/widget-types/src/agent-locks.d.ts +2 -0
- package/dist/widget-types/src/agent-view.d.ts +38 -0
- package/dist/widget-types/src/bridge-browser.d.ts +216 -0
- package/dist/widget-types/src/browser-stream.d.ts +19 -0
- package/dist/widget-types/src/browser.d.ts +15 -0
- package/dist/widget-types/src/cli-exec.d.ts +35 -0
- package/dist/widget-types/src/cloud-run-state.d.ts +26 -0
- package/dist/widget-types/src/dashboard/activity.d.ts +40 -0
- package/dist/widget-types/src/dashboard/agent-handoff.d.ts +211 -0
- package/dist/widget-types/src/dashboard/agent-tree.d.ts +105 -0
- package/dist/widget-types/src/dashboard/bridge-endpoints.d.ts +157 -0
- package/dist/widget-types/src/dashboard/bridge-question.d.ts +32 -0
- package/dist/widget-types/src/dashboard/bridge-store.d.ts +178 -0
- package/dist/widget-types/src/dashboard/cache.d.ts +46 -0
- package/dist/widget-types/src/dashboard/content-type.d.ts +2 -0
- package/dist/widget-types/src/dashboard/dashboard.d.ts +37 -0
- package/dist/widget-types/src/dashboard/discord-webhook.d.ts +16 -0
- package/dist/widget-types/src/dashboard/docs.d.ts +38 -0
- package/dist/widget-types/src/dashboard/file-diff.d.ts +66 -0
- package/dist/widget-types/src/dashboard/file-read.d.ts +41 -0
- package/dist/widget-types/src/dashboard/file-status.d.ts +20 -0
- package/dist/widget-types/src/dashboard/gh.d.ts +130 -0
- package/dist/widget-types/src/dashboard/git-status.d.ts +32 -0
- package/dist/widget-types/src/dashboard/github.d.ts +10 -0
- package/dist/widget-types/src/dashboard/http.d.ts +28 -0
- package/dist/widget-types/src/dashboard/interventions.d.ts +66 -0
- package/dist/widget-types/src/dashboard/keys.d.ts +30 -0
- package/dist/widget-types/src/dashboard/models.d.ts +24 -0
- package/dist/widget-types/src/dashboard/open-in-app.d.ts +42 -0
- package/dist/widget-types/src/dashboard/open-questions.d.ts +52 -0
- package/dist/widget-types/src/dashboard/overview.d.ts +77 -0
- package/dist/widget-types/src/dashboard/projects.d.ts +89 -0
- package/dist/widget-types/src/dashboard/pull-requests.d.ts +126 -0
- package/dist/widget-types/src/dashboard/queue.d.ts +16 -0
- package/dist/widget-types/src/dashboard/quota.d.ts +59 -0
- package/dist/widget-types/src/dashboard/remote-run.d.ts +94 -0
- package/dist/widget-types/src/dashboard/rpc-serve.d.ts +102 -0
- package/dist/widget-types/src/dashboard/run-inbox.d.ts +30 -0
- package/dist/widget-types/src/dashboard/scheduler-state.d.ts +64 -0
- package/dist/widget-types/src/dashboard/tickets.d.ts +28 -0
- package/dist/widget-types/src/dashboard/types.d.ts +99 -0
- package/dist/widget-types/src/dashboard/widget-serve.d.ts +14 -0
- package/dist/widget-types/src/dashboard-rpc/context.d.ts +53 -0
- package/dist/widget-types/src/dashboard-rpc/control.d.ts +108 -0
- package/dist/widget-types/src/dashboard-rpc/devices.d.ts +8 -0
- package/dist/widget-types/src/dashboard-rpc/events-tail.d.ts +53 -0
- package/dist/widget-types/src/dashboard-rpc/events.d.ts +29 -0
- package/dist/widget-types/src/dashboard-rpc/index.d.ts +28 -0
- package/dist/widget-types/src/dashboard-rpc/models.d.ts +3 -0
- package/dist/widget-types/src/dashboard-rpc/preferences.d.ts +40 -0
- package/dist/widget-types/src/dashboard-rpc/projects.d.ts +54 -0
- package/dist/widget-types/src/dashboard-rpc/quota.d.ts +26 -0
- package/dist/widget-types/src/dashboard-rpc/reads.d.ts +227 -0
- package/dist/widget-types/src/dashboard-rpc/relay-agent.d.ts +8 -0
- package/dist/widget-types/src/dashboard-rpc/stream-forward.d.ts +16 -0
- package/dist/widget-types/src/dashboard-rpc/widgets.d.ts +32 -0
- package/dist/widget-types/src/discord-credentials.d.ts +79 -0
- package/dist/widget-types/src/driver-names.d.ts +21 -0
- package/dist/widget-types/src/error-message.d.ts +7 -0
- package/dist/widget-types/src/event-stream.d.ts +32 -0
- package/dist/widget-types/src/events.d.ts +235 -0
- package/dist/widget-types/src/framework-dir.d.ts +10 -0
- package/dist/widget-types/src/framework-gitignore.d.ts +11 -0
- package/dist/widget-types/src/index.d.ts +42 -0
- package/dist/widget-types/src/jsonl-tail.d.ts +54 -0
- package/dist/widget-types/src/loopback-host.d.ts +19 -0
- package/dist/widget-types/src/node-fs.d.ts +32 -0
- package/dist/widget-types/src/open-choices.d.ts +14 -0
- package/dist/widget-types/src/pick-directory.d.ts +29 -0
- package/dist/widget-types/src/preference-defaults.d.ts +53 -0
- package/dist/widget-types/src/project-commands.d.ts +23 -0
- package/dist/widget-types/src/project-errors.d.ts +43 -0
- package/dist/widget-types/src/project-hooks.d.ts +133 -0
- package/dist/widget-types/src/project-presets.d.ts +29 -0
- package/dist/widget-types/src/project-widgets.d.ts +45 -0
- package/dist/widget-types/src/project.d.ts +28 -0
- package/dist/widget-types/src/quota-boundary.d.ts +115 -0
- package/dist/widget-types/src/quota-poller.d.ts +82 -0
- package/dist/widget-types/src/registry.d.ts +210 -0
- package/dist/widget-types/src/store/agent-checkout.d.ts +46 -0
- package/dist/widget-types/src/store/agent-store.d.ts +237 -0
- package/dist/widget-types/src/store/branches.d.ts +133 -0
- package/dist/widget-types/src/store/forge.d.ts +109 -0
- package/dist/widget-types/src/store/git-host.d.ts +111 -0
- package/dist/widget-types/src/store/index.d.ts +9 -0
- package/dist/widget-types/src/store/provided.d.ts +16 -0
- package/dist/widget-types/src/store/queue.d.ts +45 -0
- package/dist/widget-types/src/store/run-record.d.ts +21 -0
- package/dist/widget-types/src/store/runs.d.ts +101 -0
- package/dist/widget-types/src/store/tickets.d.ts +72 -0
- package/dist/widget-types/src/tickets.d.ts +17 -0
- package/dist/widget-types/src/worktrees.d.ts +89 -0
- package/dist/widget.css +50 -0
- package/dist/worktrees.d.ts +90 -0
- package/dist/worktrees.d.ts.map +1 -0
- package/dist/worktrees.js +123 -0
- package/dist/worktrees.js.map +1 -0
- package/package.json +103 -3
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { realpath, stat } from 'node:fs/promises';
|
|
2
|
+
import { dirname, join, normalize, sep } from 'node:path';
|
|
3
|
+
import { packageBins, projectPackages, runPackageCommand } from '@openagt/agent-data';
|
|
4
|
+
import { builtInPackages } from './built-in.js';
|
|
5
|
+
/** The file an `exports[key]` entry names: a plain path, or the first of `conditions` it has. */
|
|
6
|
+
function exportedFile(exports, key, conditions) {
|
|
7
|
+
if (!exports || typeof exports !== 'object' || Array.isArray(exports))
|
|
8
|
+
return undefined;
|
|
9
|
+
const entry = exports[key];
|
|
10
|
+
if (typeof entry === 'string')
|
|
11
|
+
return entry;
|
|
12
|
+
if (!entry || typeof entry !== 'object' || Array.isArray(entry))
|
|
13
|
+
return undefined;
|
|
14
|
+
for (const condition of conditions) {
|
|
15
|
+
const target = entry[condition];
|
|
16
|
+
if (typeof target === 'string')
|
|
17
|
+
return target;
|
|
18
|
+
}
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
/** Whether `path` is `dir` itself or inside it; both already normalized. */
|
|
22
|
+
function within(dir, path) {
|
|
23
|
+
return path === dir || path.startsWith(dir + sep);
|
|
24
|
+
}
|
|
25
|
+
/** The file `target` names inside the package at `pkgDir`, symlinks resolved; undefined when it is no file there. */
|
|
26
|
+
async function fileInside(pkgDir, target) {
|
|
27
|
+
if (!target)
|
|
28
|
+
return undefined;
|
|
29
|
+
const file = await realpath(join(pkgDir, target)).catch(() => undefined);
|
|
30
|
+
if (!file || !within(pkgDir, file) || !(await stat(file).then(s => s.isFile()).catch(() => false)))
|
|
31
|
+
return undefined;
|
|
32
|
+
return file;
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* The modules a project has: each of its dependencies whose package.json exports `./dashboard` to
|
|
36
|
+
* a file that exists inside the package, plus the modules among the framework's built-in packages (`built-in.ts`). A project that
|
|
37
|
+
* depends on a built-in module's package itself gets its own copy. Sorted by name.
|
|
38
|
+
*/
|
|
39
|
+
export async function readProjectModules(root) {
|
|
40
|
+
const modules = [];
|
|
41
|
+
for (const pkg of await projectPackages(root)) {
|
|
42
|
+
const module = await readModule(pkg);
|
|
43
|
+
if (module)
|
|
44
|
+
modules.push(module);
|
|
45
|
+
}
|
|
46
|
+
for (const pkg of await builtInPackages()) {
|
|
47
|
+
if (modules.some(module => module.package === pkg.name))
|
|
48
|
+
continue;
|
|
49
|
+
const module = await readModule(pkg);
|
|
50
|
+
if (module)
|
|
51
|
+
modules.push(module);
|
|
52
|
+
}
|
|
53
|
+
return modules.sort((a, b) => a.package.localeCompare(b.package));
|
|
54
|
+
}
|
|
55
|
+
async function readModule({ name, dir: pkgDir, manifest: pkg }) {
|
|
56
|
+
const file = await fileInside(pkgDir, exportedFile(pkg.exports, './dashboard', ['browser', 'import', 'default']));
|
|
57
|
+
if (!file)
|
|
58
|
+
return undefined;
|
|
59
|
+
const server = await fileInside(pkgDir, exportedFile(pkg.exports, './server', ['node', 'import', 'default']));
|
|
60
|
+
return {
|
|
61
|
+
package: name,
|
|
62
|
+
...(typeof pkg.version === 'string' ? { version: pkg.version } : {}),
|
|
63
|
+
dir: dirname(file),
|
|
64
|
+
entry: file.slice(dirname(file).length + 1),
|
|
65
|
+
bins: packageBins(name, pkg.bin, pkgDir),
|
|
66
|
+
...(server ? { server } : {}),
|
|
67
|
+
};
|
|
68
|
+
}
|
|
69
|
+
/** The one module of this project that `name` names, or undefined. */
|
|
70
|
+
export async function findProjectModule(root, name) {
|
|
71
|
+
return (await readProjectModules(root)).find(module => module.package === name);
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* The file a module serves at `rel`, a path relative to its module's directory: its module, its
|
|
75
|
+
* stylesheet, a chunk. `undefined` for a path that leaves that directory (symlinks resolved) or
|
|
76
|
+
* names no file, so nothing else of the package, and nothing of the project, is ever served.
|
|
77
|
+
*/
|
|
78
|
+
export async function moduleFile(module, rel) {
|
|
79
|
+
if (!rel)
|
|
80
|
+
return undefined;
|
|
81
|
+
const candidate = await realpath(normalize(join(module.dir, rel))).catch(() => undefined);
|
|
82
|
+
if (!candidate || !within(module.dir, candidate))
|
|
83
|
+
return undefined;
|
|
84
|
+
return (await stat(candidate).then(s => s.isFile()).catch(() => false)) ? candidate : undefined;
|
|
85
|
+
}
|
|
86
|
+
/** How many arguments, and how long each, a module may pass: a command line, not a payload. */
|
|
87
|
+
const MAX_ARGS = 32;
|
|
88
|
+
const MAX_ARG_LENGTH = 4096;
|
|
89
|
+
/**
|
|
90
|
+
* Run one of a module package's own commands in the project, with the given arguments, and read
|
|
91
|
+
* its standard output as JSON. This is how a module reads its data: the same command an agent runs
|
|
92
|
+
* (`npx logs`), so the module and the agent see the same thing and the framework knows neither.
|
|
93
|
+
*
|
|
94
|
+
* `command` picks one of the package's commands; a package with exactly one needs none. The
|
|
95
|
+
* command runs with Node (a package's commands are Node scripts), in the project root, never
|
|
96
|
+
* through a shell, bounded in time and output. Refused: a command the package does not have, too
|
|
97
|
+
* many or too long arguments. A command that exits non-zero answers its last stderr line; one that
|
|
98
|
+
* prints no JSON says so.
|
|
99
|
+
*/
|
|
100
|
+
export async function runModuleCommand(root, module, args, command) {
|
|
101
|
+
const names = Object.keys(module.bins);
|
|
102
|
+
const name = command ?? (names.length === 1 ? names[0] : undefined);
|
|
103
|
+
const bin = name !== undefined ? module.bins[name] : undefined;
|
|
104
|
+
if (bin === undefined)
|
|
105
|
+
return { ok: false, error: command !== undefined ? `${module.package} has no command ${command}` : `${module.package} has ${names.length === 0 ? 'no command' : 'several commands; name one'}` };
|
|
106
|
+
if (args.length > MAX_ARGS || args.some(arg => typeof arg !== 'string' || arg.length > MAX_ARG_LENGTH))
|
|
107
|
+
return { ok: false, error: 'too many or too long arguments' };
|
|
108
|
+
return runPackageCommand(root, { name: name, bin }, args);
|
|
109
|
+
}
|
|
110
|
+
//# sourceMappingURL=project-modules.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-modules.js","sourceRoot":"","sources":["../src/project-modules.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The shape every one of the daemon's background passes over the registered projects has (E4):
|
|
3
|
+
* no timer of its own, one turn per `tick()` call from the daemon's single clock, and a `stop()`
|
|
4
|
+
* that takes effect between projects.
|
|
5
|
+
*
|
|
6
|
+
* Two services walk the projects this way — the cloud scratch-ref sweep (#1547) and cloud work
|
|
7
|
+
* adoption (#1601). They differ only in what they do to one project; the walking, the overlap
|
|
8
|
+
* rule and the stop flag are written out once here.
|
|
9
|
+
*/
|
|
10
|
+
/** A running background pass, in the shape the daemon's services are wired as. */
|
|
11
|
+
export interface ProjectPass {
|
|
12
|
+
/** Run one pass now, awaiting it. Exposed for tests and for a caller that wants it on demand. */
|
|
13
|
+
tick: () => Promise<void>;
|
|
14
|
+
stop: () => void;
|
|
15
|
+
}
|
|
16
|
+
/** The registered projects a pass walks, as the daemon hands them over. */
|
|
17
|
+
export type ProjectsSource = () => Promise<readonly {
|
|
18
|
+
path: string;
|
|
19
|
+
}[]>;
|
|
20
|
+
/**
|
|
21
|
+
* Walk every registered project once per `tick()`, calling `visit` with each project's path.
|
|
22
|
+
*
|
|
23
|
+
* Overlapping ticks join the pass already running rather than being dropped: awaiting `tick()`
|
|
24
|
+
* has to mean the pass finished, or an on-demand caller (and a test) gets a silent no-op whenever
|
|
25
|
+
* the clock's turn happens to be mid-flight. A stopped pass ticks as a no-op, and a `stop()`
|
|
26
|
+
* during a pass takes effect before the next project rather than mid-project.
|
|
27
|
+
*
|
|
28
|
+
* A `projects()` that rejects yields nothing to walk: a registry that cannot be read is this
|
|
29
|
+
* turn's problem, not the daemon's, and the next tick tries again.
|
|
30
|
+
*/
|
|
31
|
+
export declare function startProjectPass(projects: ProjectsSource, visit: (cwd: string) => Promise<void>): ProjectPass;
|
|
32
|
+
//# sourceMappingURL=project-pass.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-pass.d.ts","sourceRoot":"","sources":["../src/project-pass.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,kFAAkF;AAClF,MAAM,WAAW,WAAW;IAC1B,iGAAiG;IACjG,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IACzB,IAAI,EAAE,MAAM,IAAI,CAAA;CACjB;AAED,2EAA2E;AAC3E,MAAM,MAAM,cAAc,GAAG,MAAM,OAAO,CAAC,SAAS;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EAAE,CAAC,CAAA;AAEvE;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,WAAW,CAuB7G"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The shape every one of the daemon's background passes over the registered projects has (E4):
|
|
3
|
+
* no timer of its own, one turn per `tick()` call from the daemon's single clock, and a `stop()`
|
|
4
|
+
* that takes effect between projects.
|
|
5
|
+
*
|
|
6
|
+
* Two services walk the projects this way — the cloud scratch-ref sweep (#1547) and cloud work
|
|
7
|
+
* adoption (#1601). They differ only in what they do to one project; the walking, the overlap
|
|
8
|
+
* rule and the stop flag are written out once here.
|
|
9
|
+
*/
|
|
10
|
+
/**
|
|
11
|
+
* Walk every registered project once per `tick()`, calling `visit` with each project's path.
|
|
12
|
+
*
|
|
13
|
+
* Overlapping ticks join the pass already running rather than being dropped: awaiting `tick()`
|
|
14
|
+
* has to mean the pass finished, or an on-demand caller (and a test) gets a silent no-op whenever
|
|
15
|
+
* the clock's turn happens to be mid-flight. A stopped pass ticks as a no-op, and a `stop()`
|
|
16
|
+
* during a pass takes effect before the next project rather than mid-project.
|
|
17
|
+
*
|
|
18
|
+
* A `projects()` that rejects yields nothing to walk: a registry that cannot be read is this
|
|
19
|
+
* turn's problem, not the daemon's, and the next tick tries again.
|
|
20
|
+
*/
|
|
21
|
+
export function startProjectPass(projects, visit) {
|
|
22
|
+
let stopped = false;
|
|
23
|
+
let inflight;
|
|
24
|
+
const passAll = async () => {
|
|
25
|
+
for (const project of await projects().catch(() => [])) {
|
|
26
|
+
if (stopped)
|
|
27
|
+
break;
|
|
28
|
+
await visit(project.path);
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
return {
|
|
32
|
+
tick: () => {
|
|
33
|
+
if (stopped)
|
|
34
|
+
return Promise.resolve();
|
|
35
|
+
inflight ??= passAll().finally(() => {
|
|
36
|
+
inflight = undefined;
|
|
37
|
+
});
|
|
38
|
+
return inflight;
|
|
39
|
+
},
|
|
40
|
+
stop: () => {
|
|
41
|
+
stopped = true;
|
|
42
|
+
},
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=project-pass.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-pass.js","sourceRoot":"","sources":["../src/project-pass.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAYH;;;;;;;;;;GAUG;AACH,MAAM,UAAU,gBAAgB,CAAC,QAAwB,EAAE,KAAqC;IAC9F,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,IAAI,QAAmC,CAAA;IAEvC,MAAM,OAAO,GAAG,KAAK,IAAmB,EAAE;QACxC,KAAK,MAAM,OAAO,IAAI,MAAM,QAAQ,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC;YACvD,IAAI,OAAO;gBAAE,MAAK;YAClB,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;QAC3B,CAAC;IACH,CAAC,CAAA;IAED,OAAO;QACL,IAAI,EAAE,GAAG,EAAE;YACT,IAAI,OAAO;gBAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;YACrC,QAAQ,KAAK,OAAO,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE;gBAClC,QAAQ,GAAG,SAAS,CAAA;YACtB,CAAC,CAAC,CAAA;YACF,OAAO,QAAQ,CAAA;QACjB,CAAC;QACD,IAAI,EAAE,GAAG,EAAE;YACT,OAAO,GAAG,IAAI,CAAA;QAChB,CAAC;KACF,CAAA;AACH,CAAC"}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import { type CustomPreset } from './registry.js';
|
|
2
|
+
import { type StoreFs } from './store/index.js';
|
|
3
|
+
/**
|
|
4
|
+
* Project-scoped custom presets (#1025).
|
|
5
|
+
*
|
|
6
|
+
* The user tier (#626) saves a custom preset to the user's home file, so it follows the person
|
|
7
|
+
* across every project and stays private. The project tier saves it into the repo instead, so it
|
|
8
|
+
* travels with the code and everyone who clones the repo gets it — the "share your presets" half
|
|
9
|
+
* of the issue.
|
|
10
|
+
*
|
|
11
|
+
* The store is a plain JSON array of {@link CustomPreset}, the exact shape the user tier uses, so
|
|
12
|
+
* the dashboard renders both from one type and the same sanitizer guards both files.
|
|
13
|
+
*/
|
|
14
|
+
/** The committed file holding a project's shared custom presets, under `.the-framework/`. */
|
|
15
|
+
export declare const PROJECT_PRESETS_FILE = ".the-framework/custom-presets.json";
|
|
16
|
+
/**
|
|
17
|
+
* Read a project's shared custom presets. Forgiving like every other read here: a missing,
|
|
18
|
+
* unreadable or malformed file yields `[]`, never throws, and the same sanitizer that guards
|
|
19
|
+
* the home file drops any hand-edited or hostile entry.
|
|
20
|
+
*/
|
|
21
|
+
export declare function readProjectPresets(cwd: string, fs?: StoreFs): Promise<CustomPreset[]>;
|
|
22
|
+
/**
|
|
23
|
+
* Write a project's shared custom presets, sanitizing first so the committed file is always
|
|
24
|
+
* well-formed. Also ensures `.the-framework/.gitignore` un-ignores the file: the dir's ignore is
|
|
25
|
+
* `*` + `!.gitignore` (nothing else is tracked by default), so without a negation git would
|
|
26
|
+
* never see the presets and they could not be shared. Removing every preset writes an empty array
|
|
27
|
+
* rather than deleting the file, so the negation stays in place for the next save.
|
|
28
|
+
*/
|
|
29
|
+
export declare function writeProjectPresets(cwd: string, presets: CustomPreset[], fs?: StoreFs): Promise<void>;
|
|
30
|
+
//# sourceMappingURL=project-presets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-presets.d.ts","sourceRoot":"","sources":["../src/project-presets.ts"],"names":[],"mappings":"AAEA,OAAO,EAAyB,KAAK,YAAY,EAAE,MAAM,eAAe,CAAA;AACxE,OAAO,EAAe,KAAK,OAAO,EAAE,MAAM,kBAAkB,CAAA;AAE5D;;;;;;;;;;GAUG;AAEH,6FAA6F;AAC7F,eAAO,MAAM,oBAAoB,uCAA6C,CAAA;AAS9E;;;;GAIG;AACH,wBAAsB,kBAAkB,CACtC,GAAG,EAAE,MAAM,EACX,EAAE,GAAE,OAAuB,GAC1B,OAAO,CAAC,YAAY,EAAE,CAAC,CAczB;AAED;;;;;;GAMG;AACH,wBAAsB,mBAAmB,CACvC,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,YAAY,EAAE,EACvB,EAAE,GAAE,OAAuB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAKf"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { join } from 'node:path';
|
|
2
|
+
import { THE_FRAMEWORK_DIR } from './framework-dir.js';
|
|
3
|
+
import { sanitizeCustomPresets } from './registry.js';
|
|
4
|
+
import { nodeStoreFs } from './store/index.js';
|
|
5
|
+
/**
|
|
6
|
+
* Project-scoped custom presets (#1025).
|
|
7
|
+
*
|
|
8
|
+
* The user tier (#626) saves a custom preset to the user's home file, so it follows the person
|
|
9
|
+
* across every project and stays private. The project tier saves it into the repo instead, so it
|
|
10
|
+
* travels with the code and everyone who clones the repo gets it — the "share your presets" half
|
|
11
|
+
* of the issue.
|
|
12
|
+
*
|
|
13
|
+
* The store is a plain JSON array of {@link CustomPreset}, the exact shape the user tier uses, so
|
|
14
|
+
* the dashboard renders both from one type and the same sanitizer guards both files.
|
|
15
|
+
*/
|
|
16
|
+
/** The committed file holding a project's shared custom presets, under `.the-framework/`. */
|
|
17
|
+
export const PROJECT_PRESETS_FILE = `${THE_FRAMEWORK_DIR}/custom-presets.json`;
|
|
18
|
+
/** The `.the-framework/.gitignore` line that un-ignores the presets file so git tracks it. */
|
|
19
|
+
const GITIGNORE_NEGATION = '!custom-presets.json';
|
|
20
|
+
function gitignorePath(cwd) {
|
|
21
|
+
return join(cwd, THE_FRAMEWORK_DIR, '.gitignore');
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Read a project's shared custom presets. Forgiving like every other read here: a missing,
|
|
25
|
+
* unreadable or malformed file yields `[]`, never throws, and the same sanitizer that guards
|
|
26
|
+
* the home file drops any hand-edited or hostile entry.
|
|
27
|
+
*/
|
|
28
|
+
export async function readProjectPresets(cwd, fs = nodeStoreFs()) {
|
|
29
|
+
let raw;
|
|
30
|
+
try {
|
|
31
|
+
raw = await fs.read(join(cwd, PROJECT_PRESETS_FILE));
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
return [];
|
|
35
|
+
}
|
|
36
|
+
let parsed;
|
|
37
|
+
try {
|
|
38
|
+
parsed = JSON.parse(raw);
|
|
39
|
+
}
|
|
40
|
+
catch {
|
|
41
|
+
return [];
|
|
42
|
+
}
|
|
43
|
+
return sanitizeCustomPresets(parsed);
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Write a project's shared custom presets, sanitizing first so the committed file is always
|
|
47
|
+
* well-formed. Also ensures `.the-framework/.gitignore` un-ignores the file: the dir's ignore is
|
|
48
|
+
* `*` + `!.gitignore` (nothing else is tracked by default), so without a negation git would
|
|
49
|
+
* never see the presets and they could not be shared. Removing every preset writes an empty array
|
|
50
|
+
* rather than deleting the file, so the negation stays in place for the next save.
|
|
51
|
+
*/
|
|
52
|
+
export async function writeProjectPresets(cwd, presets, fs = nodeStoreFs()) {
|
|
53
|
+
await fs.mkdir(join(cwd, THE_FRAMEWORK_DIR));
|
|
54
|
+
await ensureGitignoreNegation(cwd, fs);
|
|
55
|
+
const sanitized = sanitizeCustomPresets(presets);
|
|
56
|
+
await fs.write(join(cwd, PROJECT_PRESETS_FILE), `${JSON.stringify(sanitized, null, 2)}\n`);
|
|
57
|
+
}
|
|
58
|
+
/** Append the un-ignore line to `.the-framework/.gitignore` unless it is already there. */
|
|
59
|
+
async function ensureGitignoreNegation(cwd, fs) {
|
|
60
|
+
const path = gitignorePath(cwd);
|
|
61
|
+
let current = '';
|
|
62
|
+
try {
|
|
63
|
+
current = await fs.read(path);
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
// No .gitignore yet (a pre-install dir): the negation only bites once the `*` ignore exists,
|
|
67
|
+
// so writing a bare negation is harmless and self-heals when install adds the rest.
|
|
68
|
+
}
|
|
69
|
+
if (current.split('\n').some(line => line.trim() === GITIGNORE_NEGATION))
|
|
70
|
+
return;
|
|
71
|
+
const prefix = current && !current.endsWith('\n') ? `${current}\n` : current;
|
|
72
|
+
await fs.write(path, `${prefix}${GITIGNORE_NEGATION}\n`);
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=project-presets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-presets.js","sourceRoot":"","sources":["../src/project-presets.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAA;AACtD,OAAO,EAAE,qBAAqB,EAAqB,MAAM,eAAe,CAAA;AACxE,OAAO,EAAE,WAAW,EAAgB,MAAM,kBAAkB,CAAA;AAE5D;;;;;;;;;;GAUG;AAEH,6FAA6F;AAC7F,MAAM,CAAC,MAAM,oBAAoB,GAAG,GAAG,iBAAiB,sBAAsB,CAAA;AAE9E,8FAA8F;AAC9F,MAAM,kBAAkB,GAAG,sBAAsB,CAAA;AAEjD,SAAS,aAAa,CAAC,GAAW;IAChC,OAAO,IAAI,CAAC,GAAG,EAAE,iBAAiB,EAAE,YAAY,CAAC,CAAA;AACnD,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,GAAW,EACX,EAAE,GAAY,WAAW,EAAE;IAE3B,IAAI,GAAW,CAAA;IACf,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,CAAC,CAAC,CAAA;IACtD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAA;IACX,CAAC;IACD,IAAI,MAAe,CAAA;IACnB,IAAI,CAAC;QACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAA;IACX,CAAC;IACD,OAAO,qBAAqB,CAAC,MAAM,CAAC,CAAA;AACtC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,GAAW,EACX,OAAuB,EACvB,EAAE,GAAY,WAAW,EAAE;IAE3B,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC,CAAA;IAC5C,MAAM,uBAAuB,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;IACtC,MAAM,SAAS,GAAG,qBAAqB,CAAC,OAAO,CAAC,CAAA;IAChD,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,EAAE,oBAAoB,CAAC,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAA;AAC5F,CAAC;AAED,2FAA2F;AAC3F,KAAK,UAAU,uBAAuB,CAAC,GAAW,EAAE,EAAW;IAC7D,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,CAAA;IAC/B,IAAI,OAAO,GAAG,EAAE,CAAA;IAChB,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,6FAA6F;QAC7F,oFAAoF;IACtF,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,KAAK,kBAAkB,CAAC;QAAE,OAAM;IAChF,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,OAAO,CAAA;IAC5E,MAAM,EAAE,CAAC,KAAK,CAAC,IAAI,EAAE,GAAG,MAAM,GAAG,kBAAkB,IAAI,CAAC,CAAA;AAC1D,CAAC"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { type PackageCommandResult } from '@gemstack/agent-data';
|
|
2
|
+
/**
|
|
3
|
+
* A dashboard widget one of a project's packages brings (#1774): the package's own browser module,
|
|
4
|
+
* named by its `exports["./dashboard"]`. The framework names no package: any dependency of the
|
|
5
|
+
* project that exports `./dashboard` is a widget, whoever wrote it.
|
|
6
|
+
*/
|
|
7
|
+
export interface ProjectWidget {
|
|
8
|
+
/** The package's name, as the project's package.json lists it. */
|
|
9
|
+
package: string;
|
|
10
|
+
/** The package's version, when its package.json says one. */
|
|
11
|
+
version?: string;
|
|
12
|
+
/** The directory the widget's module sits in, symlinks resolved: the only directory served for it. */
|
|
13
|
+
dir: string;
|
|
14
|
+
/** The widget module's file name inside {@link dir}. */
|
|
15
|
+
entry: string;
|
|
16
|
+
/** The package's commands, by name, as absolute paths: what the widget may run in this project. */
|
|
17
|
+
bins: Record<string, string>;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* The widgets a project's packages bring: each of the project's dependencies whose package.json
|
|
21
|
+
* exports `./dashboard` to a file that exists inside the package. Sorted by name.
|
|
22
|
+
*/
|
|
23
|
+
export declare function readProjectWidgets(root: string): Promise<ProjectWidget[]>;
|
|
24
|
+
/** The one widget of this project that `name` names, or undefined. */
|
|
25
|
+
export declare function findProjectWidget(root: string, name: string): Promise<ProjectWidget | undefined>;
|
|
26
|
+
/**
|
|
27
|
+
* The file a widget serves at `rel`, a path relative to its module's directory: its module, its
|
|
28
|
+
* stylesheet, a chunk. `undefined` for a path that leaves that directory (symlinks resolved) or
|
|
29
|
+
* names no file, so nothing else of the package, and nothing of the project, is ever served.
|
|
30
|
+
*/
|
|
31
|
+
export declare function widgetFile(widget: ProjectWidget, rel: string): Promise<string | undefined>;
|
|
32
|
+
/** What a widget's command answered: its JSON output, or why there is none. */
|
|
33
|
+
export type WidgetCommandResult = PackageCommandResult;
|
|
34
|
+
/**
|
|
35
|
+
* Run one of a widget package's own commands in the project, with the given arguments, and read
|
|
36
|
+
* its standard output as JSON. This is how a widget reads its data: the same command an agent runs
|
|
37
|
+
* (`npx logs`), so the widget and the agent see the same thing and the framework knows neither.
|
|
38
|
+
*
|
|
39
|
+
* `command` picks one of the package's commands; a package with exactly one needs none. The
|
|
40
|
+
* command runs with Node (a package's commands are Node scripts), in the project root, never
|
|
41
|
+
* through a shell, bounded in time and output. Refused: a command the package does not have, too
|
|
42
|
+
* many or too long arguments. A command that exits non-zero answers its last stderr line; one that
|
|
43
|
+
* prints no JSON says so.
|
|
44
|
+
*/
|
|
45
|
+
export declare function runWidgetCommand(root: string, widget: ProjectWidget, args: readonly string[], command?: string): Promise<WidgetCommandResult>;
|
|
46
|
+
//# sourceMappingURL=project-widgets.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-widgets.d.ts","sourceRoot":"","sources":["../src/project-widgets.ts"],"names":[],"mappings":"AAEA,OAAO,EAAmD,KAAK,oBAAoB,EAAuB,MAAM,sBAAsB,CAAA;AAEtI;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,kEAAkE;IAClE,OAAO,EAAE,MAAM,CAAA;IACf,6DAA6D;IAC7D,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,sGAAsG;IACtG,GAAG,EAAE,MAAM,CAAA;IACX,wDAAwD;IACxD,KAAK,EAAE,MAAM,CAAA;IACb,mGAAmG;IACnG,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAC7B;AAoBD;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAO/E;AAgBD,sEAAsE;AACtE,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAEtG;AAED;;;;GAIG;AACH,wBAAsB,UAAU,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAKhG;AAED,+EAA+E;AAC/E,MAAM,MAAM,mBAAmB,GAAG,oBAAoB,CAAA;AAMtD;;;;;;;;;;GAUG;AACH,wBAAsB,gBAAgB,CACpC,IAAI,EAAE,MAAM,EACZ,MAAM,EAAE,aAAa,EACrB,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,mBAAmB,CAAC,CAS9B"}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
import { realpath, stat } from 'node:fs/promises';
|
|
2
|
+
import { dirname, join, normalize, sep } from 'node:path';
|
|
3
|
+
import { packageBins, projectPackages, runPackageCommand } from '@gemstack/agent-data';
|
|
4
|
+
/** The file an `exports["./dashboard"]` entry names: a plain path, or the `browser`/`import`/`default` condition. */
|
|
5
|
+
function dashboardExport(exports) {
|
|
6
|
+
if (!exports || typeof exports !== 'object' || Array.isArray(exports))
|
|
7
|
+
return undefined;
|
|
8
|
+
const entry = exports['./dashboard'];
|
|
9
|
+
if (typeof entry === 'string')
|
|
10
|
+
return entry;
|
|
11
|
+
if (!entry || typeof entry !== 'object' || Array.isArray(entry))
|
|
12
|
+
return undefined;
|
|
13
|
+
for (const condition of ['browser', 'import', 'default']) {
|
|
14
|
+
const target = entry[condition];
|
|
15
|
+
if (typeof target === 'string')
|
|
16
|
+
return target;
|
|
17
|
+
}
|
|
18
|
+
return undefined;
|
|
19
|
+
}
|
|
20
|
+
/** Whether `path` is `dir` itself or inside it; both already normalized. */
|
|
21
|
+
function within(dir, path) {
|
|
22
|
+
return path === dir || path.startsWith(dir + sep);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* The widgets a project's packages bring: each of the project's dependencies whose package.json
|
|
26
|
+
* exports `./dashboard` to a file that exists inside the package. Sorted by name.
|
|
27
|
+
*/
|
|
28
|
+
export async function readProjectWidgets(root) {
|
|
29
|
+
const widgets = [];
|
|
30
|
+
for (const pkg of await projectPackages(root)) {
|
|
31
|
+
const widget = await readWidget(pkg);
|
|
32
|
+
if (widget)
|
|
33
|
+
widgets.push(widget);
|
|
34
|
+
}
|
|
35
|
+
return widgets.sort((a, b) => a.package.localeCompare(b.package));
|
|
36
|
+
}
|
|
37
|
+
async function readWidget({ name, dir: pkgDir, manifest: pkg }) {
|
|
38
|
+
const target = dashboardExport(pkg.exports);
|
|
39
|
+
if (!target)
|
|
40
|
+
return undefined;
|
|
41
|
+
const file = await realpath(join(pkgDir, target)).catch(() => undefined);
|
|
42
|
+
if (!file || !within(pkgDir, file) || !(await stat(file).then(s => s.isFile()).catch(() => false)))
|
|
43
|
+
return undefined;
|
|
44
|
+
return {
|
|
45
|
+
package: name,
|
|
46
|
+
...(typeof pkg.version === 'string' ? { version: pkg.version } : {}),
|
|
47
|
+
dir: dirname(file),
|
|
48
|
+
entry: file.slice(dirname(file).length + 1),
|
|
49
|
+
bins: packageBins(name, pkg.bin, pkgDir),
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
/** The one widget of this project that `name` names, or undefined. */
|
|
53
|
+
export async function findProjectWidget(root, name) {
|
|
54
|
+
return (await readProjectWidgets(root)).find(widget => widget.package === name);
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* The file a widget serves at `rel`, a path relative to its module's directory: its module, its
|
|
58
|
+
* stylesheet, a chunk. `undefined` for a path that leaves that directory (symlinks resolved) or
|
|
59
|
+
* names no file, so nothing else of the package, and nothing of the project, is ever served.
|
|
60
|
+
*/
|
|
61
|
+
export async function widgetFile(widget, rel) {
|
|
62
|
+
if (!rel)
|
|
63
|
+
return undefined;
|
|
64
|
+
const candidate = await realpath(normalize(join(widget.dir, rel))).catch(() => undefined);
|
|
65
|
+
if (!candidate || !within(widget.dir, candidate))
|
|
66
|
+
return undefined;
|
|
67
|
+
return (await stat(candidate).then(s => s.isFile()).catch(() => false)) ? candidate : undefined;
|
|
68
|
+
}
|
|
69
|
+
/** How many arguments, and how long each, a widget may pass: a command line, not a payload. */
|
|
70
|
+
const MAX_ARGS = 32;
|
|
71
|
+
const MAX_ARG_LENGTH = 4096;
|
|
72
|
+
/**
|
|
73
|
+
* Run one of a widget package's own commands in the project, with the given arguments, and read
|
|
74
|
+
* its standard output as JSON. This is how a widget reads its data: the same command an agent runs
|
|
75
|
+
* (`npx logs`), so the widget and the agent see the same thing and the framework knows neither.
|
|
76
|
+
*
|
|
77
|
+
* `command` picks one of the package's commands; a package with exactly one needs none. The
|
|
78
|
+
* command runs with Node (a package's commands are Node scripts), in the project root, never
|
|
79
|
+
* through a shell, bounded in time and output. Refused: a command the package does not have, too
|
|
80
|
+
* many or too long arguments. A command that exits non-zero answers its last stderr line; one that
|
|
81
|
+
* prints no JSON says so.
|
|
82
|
+
*/
|
|
83
|
+
export async function runWidgetCommand(root, widget, args, command) {
|
|
84
|
+
const names = Object.keys(widget.bins);
|
|
85
|
+
const name = command ?? (names.length === 1 ? names[0] : undefined);
|
|
86
|
+
const bin = name !== undefined ? widget.bins[name] : undefined;
|
|
87
|
+
if (bin === undefined)
|
|
88
|
+
return { ok: false, error: command !== undefined ? `${widget.package} has no command ${command}` : `${widget.package} has ${names.length === 0 ? 'no command' : 'several commands; name one'}` };
|
|
89
|
+
if (args.length > MAX_ARGS || args.some(arg => typeof arg !== 'string' || arg.length > MAX_ARG_LENGTH))
|
|
90
|
+
return { ok: false, error: 'too many or too long arguments' };
|
|
91
|
+
return runPackageCommand(root, { name: name, bin }, args);
|
|
92
|
+
}
|
|
93
|
+
//# sourceMappingURL=project-widgets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project-widgets.js","sourceRoot":"","sources":["../src/project-widgets.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { type GitRunner } from '@openagt/agent-data';
|
|
2
|
+
/**
|
|
3
|
+
* Project-level repo helpers (#380): the activation marker check and a
|
|
4
|
+
* `git ls-files` crawl. Read-only
|
|
5
|
+
* building blocks for the sidebars (#314); activation/install (writing the
|
|
6
|
+
* marker, the install commit) is a separate, deferred concern.
|
|
7
|
+
*/
|
|
8
|
+
/** Minimal fs seam so activation is unit-testable without touching disk. */
|
|
9
|
+
export interface ProjectFs {
|
|
10
|
+
/** True when `path` exists AND is a file. */
|
|
11
|
+
exists(path: string): Promise<boolean>;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* A repo is "activated"/installed for The Framework when it has the
|
|
15
|
+
* `.the-framework/.gitignore` install writes — the same marker install's own
|
|
16
|
+
* no-op check reads (#1600), so a `.the-framework/` directory something else
|
|
17
|
+
* created can never read as activated while the repo still lacks the ignore
|
|
18
|
+
* file that keeps framework state off its branches. Read-only check; writing
|
|
19
|
+
* the marker + the install commit is a separate, deferred concern.
|
|
20
|
+
*/
|
|
21
|
+
export declare function isActivated(cwd: string, fs?: ProjectFs): Promise<boolean>;
|
|
22
|
+
/**
|
|
23
|
+
* List every file git sees in the repo at `cwd`: tracked + untracked, honoring
|
|
24
|
+
* .gitignore. Uses `git ls-files -z --cached --others --exclude-standard` (the
|
|
25
|
+
* same approach Vike uses). Returns repo-relative paths, deduped and sorted.
|
|
26
|
+
* Forgiving: a non-repo / missing git / any failure yields `[]`, never throws.
|
|
27
|
+
*/
|
|
28
|
+
export declare function crawlRepoFiles(cwd: string, agent?: GitRunner): Promise<string[]>;
|
|
29
|
+
//# sourceMappingURL=project.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,KAAK,SAAS,EAAE,MAAM,qBAAqB,CAAA;AAInE;;;;;GAKG;AAEH,4EAA4E;AAC5E,MAAM,WAAW,SAAS;IACxB,6CAA6C;IAC7C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;CACvC;AAQD;;;;;;;GAOG;AACH,wBAAsB,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,GAAE,SAA2B,GAAG,OAAO,CAAC,OAAO,CAAC,CAEhG;AAED;;;;;GAKG;AACH,wBAAsB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,GAAE,SAA2B,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAYvG"}
|
package/dist/project.js
ADDED
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { nodeGitRunner } from '@openagt/agent-data';
|
|
2
|
+
import { nodeFs } from './node-fs.js';
|
|
3
|
+
import { gitignorePath } from './framework-gitignore.js';
|
|
4
|
+
/** A {@link ProjectFs} backed by `node:fs/promises`. See {@link nodeFs}. */
|
|
5
|
+
function nodeProjectFs() {
|
|
6
|
+
const { exists } = nodeFs();
|
|
7
|
+
return { exists };
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* A repo is "activated"/installed for The Framework when it has the
|
|
11
|
+
* `.the-framework/.gitignore` install writes — the same marker install's own
|
|
12
|
+
* no-op check reads (#1600), so a `.the-framework/` directory something else
|
|
13
|
+
* created can never read as activated while the repo still lacks the ignore
|
|
14
|
+
* file that keeps framework state off its branches. Read-only check; writing
|
|
15
|
+
* the marker + the install commit is a separate, deferred concern.
|
|
16
|
+
*/
|
|
17
|
+
export async function isActivated(cwd, fs = nodeProjectFs()) {
|
|
18
|
+
return fs.exists(gitignorePath(cwd));
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* List every file git sees in the repo at `cwd`: tracked + untracked, honoring
|
|
22
|
+
* .gitignore. Uses `git ls-files -z --cached --others --exclude-standard` (the
|
|
23
|
+
* same approach Vike uses). Returns repo-relative paths, deduped and sorted.
|
|
24
|
+
* Forgiving: a non-repo / missing git / any failure yields `[]`, never throws.
|
|
25
|
+
*/
|
|
26
|
+
export async function crawlRepoFiles(cwd, agent = nodeGitRunner()) {
|
|
27
|
+
try {
|
|
28
|
+
const out = await agent(['ls-files', '-z', '--cached', '--others', '--exclude-standard'], cwd);
|
|
29
|
+
const files = new Set();
|
|
30
|
+
for (const entry of out.split('\0')) {
|
|
31
|
+
const trimmed = entry.trim();
|
|
32
|
+
if (trimmed)
|
|
33
|
+
files.add(trimmed);
|
|
34
|
+
}
|
|
35
|
+
return [...files].sort();
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
return [];
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=project.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"project.js","sourceRoot":"","sources":["../src/project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAkB,MAAM,qBAAqB,CAAA;AACnE,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAA;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAA;AAexD,4EAA4E;AAC5E,SAAS,aAAa;IACpB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAAA;IAC3B,OAAO,EAAE,MAAM,EAAE,CAAA;AACnB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,GAAW,EAAE,EAAE,GAAc,aAAa,EAAE;IAC5E,OAAO,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAA;AACtC,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,GAAW,EAAE,KAAK,GAAc,aAAa,EAAE;IAClF,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,CAAC,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,oBAAoB,CAAC,EAAE,GAAG,CAAC,CAAA;QAC9F,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAA;QAC/B,KAAK,MAAM,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,EAAE,CAAA;YAC5B,IAAI,OAAO;gBAAE,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACjC,CAAC;QACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC,IAAI,EAAE,CAAA;IAC1B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAA;IACX,CAAC;AACH,CAAC"}
|