@withbuddi/buddi 0.1.0-pre.23 → 0.1.0-pre.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +66 -50
- package/extension/background.js +24 -1
- package/extension/blob.png +0 -0
- package/extension/fonts/dm-mono-latin-400-normal.woff2 +0 -0
- package/extension/fonts/dm-mono-latin-500-normal.woff2 +0 -0
- package/extension/fonts/dm-sans-latin-ext-standard-normal.woff2 +0 -0
- package/extension/fonts/dm-sans-latin-standard-normal.woff2 +0 -0
- package/extension/icons/128.png +0 -0
- package/extension/icons/16.png +0 -0
- package/extension/icons/32.png +0 -0
- package/extension/icons/48.png +0 -0
- package/extension/manifest.json +4 -3
- package/extension/popup.css +199 -81
- package/extension/popup.html +39 -17
- package/extension/popup.js +133 -37
- package/node_modules/@buddi/cli/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/cli/dist/args.d.ts +59 -0
- package/node_modules/@buddi/cli/dist/args.d.ts.map +1 -1
- package/node_modules/@buddi/cli/dist/args.js +141 -0
- package/node_modules/@buddi/cli/dist/args.js.map +1 -1
- package/node_modules/@buddi/cli/dist/commands.d.ts +2 -0
- package/node_modules/@buddi/cli/dist/commands.d.ts.map +1 -1
- package/node_modules/@buddi/cli/dist/commands.js +83 -3
- package/node_modules/@buddi/cli/dist/commands.js.map +1 -1
- package/node_modules/@buddi/cli/dist/connections-cmd.d.ts +93 -0
- package/node_modules/@buddi/cli/dist/connections-cmd.d.ts.map +1 -0
- package/node_modules/@buddi/cli/dist/connections-cmd.js +657 -0
- package/node_modules/@buddi/cli/dist/connections-cmd.js.map +1 -0
- package/node_modules/@buddi/cli/dist/doctor-probes.d.ts.map +1 -1
- package/node_modules/@buddi/cli/dist/doctor-probes.js +53 -9
- package/node_modules/@buddi/cli/dist/doctor-probes.js.map +1 -1
- package/node_modules/@buddi/cli/dist/doctor.d.ts +1 -8
- package/node_modules/@buddi/cli/dist/doctor.d.ts.map +1 -1
- package/node_modules/@buddi/cli/dist/doctor.js +1 -15
- package/node_modules/@buddi/cli/dist/doctor.js.map +1 -1
- package/node_modules/@buddi/cli/dist/init-plan.d.ts +1 -2
- package/node_modules/@buddi/cli/dist/init-plan.d.ts.map +1 -1
- package/node_modules/@buddi/cli/dist/init-plan.js +2 -6
- package/node_modules/@buddi/cli/dist/init-plan.js.map +1 -1
- package/node_modules/@buddi/cli/dist/init.d.ts.map +1 -1
- package/node_modules/@buddi/cli/dist/init.js +5 -29
- package/node_modules/@buddi/cli/dist/init.js.map +1 -1
- package/node_modules/@buddi/cli/dist/main.d.ts.map +1 -1
- package/node_modules/@buddi/cli/dist/main.js +12 -2
- package/node_modules/@buddi/cli/dist/main.js.map +1 -1
- package/node_modules/@buddi/cli/dist/mcp/gateway-client.d.ts +5 -0
- package/node_modules/@buddi/cli/dist/mcp/gateway-client.d.ts.map +1 -1
- package/node_modules/@buddi/cli/dist/mcp/gateway-client.js +15 -4
- package/node_modules/@buddi/cli/dist/mcp/gateway-client.js.map +1 -1
- package/node_modules/@buddi/cli/dist/plugins-toggle.d.ts +9 -0
- package/node_modules/@buddi/cli/dist/plugins-toggle.d.ts.map +1 -0
- package/node_modules/@buddi/cli/dist/plugins-toggle.js +20 -0
- package/node_modules/@buddi/cli/dist/plugins-toggle.js.map +1 -0
- package/node_modules/@buddi/cli/dist/service/index.d.ts +4 -2
- package/node_modules/@buddi/cli/dist/service/index.d.ts.map +1 -1
- package/node_modules/@buddi/cli/dist/service/index.js +5 -7
- package/node_modules/@buddi/cli/dist/service/index.js.map +1 -1
- package/node_modules/@buddi/core/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/core/dist/agents/provider-from-env.d.ts +7 -6
- package/node_modules/@buddi/core/dist/agents/provider-from-env.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/agents/provider-from-env.js +9 -12
- package/node_modules/@buddi/core/dist/agents/provider-from-env.js.map +1 -1
- package/node_modules/@buddi/core/dist/backup/load.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/backup/load.js +37 -0
- package/node_modules/@buddi/core/dist/backup/load.js.map +1 -1
- package/node_modules/@buddi/core/dist/backup/restore.js +2 -2
- package/node_modules/@buddi/core/dist/backup/restore.js.map +1 -1
- package/node_modules/@buddi/core/dist/connection-config.d.ts +96 -0
- package/node_modules/@buddi/core/dist/connection-config.d.ts.map +1 -0
- package/node_modules/@buddi/core/dist/connection-config.js +308 -0
- package/node_modules/@buddi/core/dist/connection-config.js.map +1 -0
- package/node_modules/@buddi/core/dist/failures/owner-message.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/failures/owner-message.js +37 -10
- package/node_modules/@buddi/core/dist/failures/owner-message.js.map +1 -1
- package/node_modules/@buddi/core/dist/host/build.d.ts +7 -0
- package/node_modules/@buddi/core/dist/host/build.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/host/build.js +14 -1
- package/node_modules/@buddi/core/dist/host/build.js.map +1 -1
- package/node_modules/@buddi/core/dist/onboarding/store.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/onboarding/store.js +17 -1
- package/node_modules/@buddi/core/dist/onboarding/store.js.map +1 -1
- package/node_modules/@buddi/core/dist/onboarding/types.d.ts +14 -0
- package/node_modules/@buddi/core/dist/onboarding/types.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/provider-accounts.d.ts +21 -1
- package/node_modules/@buddi/core/dist/provider-accounts.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/provider-accounts.js +31 -1
- package/node_modules/@buddi/core/dist/provider-accounts.js.map +1 -1
- package/node_modules/@buddi/core/dist/provider.d.ts +4 -3
- package/node_modules/@buddi/core/dist/provider.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/provider.js +7 -4
- package/node_modules/@buddi/core/dist/provider.js.map +1 -1
- package/node_modules/@buddi/core/dist/registry.d.ts +9 -0
- package/node_modules/@buddi/core/dist/registry.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/registry.js +32 -2
- package/node_modules/@buddi/core/dist/registry.js.map +1 -1
- package/node_modules/@buddi/core/dist/secrets/destinations.d.ts +2 -0
- package/node_modules/@buddi/core/dist/secrets/destinations.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/secrets/destinations.js +6 -0
- package/node_modules/@buddi/core/dist/secrets/destinations.js.map +1 -1
- package/node_modules/@buddi/core/dist/testing/accounts.d.ts +12 -0
- package/node_modules/@buddi/core/dist/testing/accounts.d.ts.map +1 -0
- package/node_modules/@buddi/core/dist/testing/accounts.js +7 -0
- package/node_modules/@buddi/core/dist/testing/accounts.js.map +1 -0
- package/node_modules/@buddi/core/dist/testing/index.d.ts +1 -0
- package/node_modules/@buddi/core/dist/testing/index.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/testing/index.js +1 -0
- package/node_modules/@buddi/core/dist/testing/index.js.map +1 -1
- package/node_modules/@buddi/core/dist/vault/resolve.d.ts.map +1 -1
- package/node_modules/@buddi/core/dist/vault/resolve.js +0 -2
- package/node_modules/@buddi/core/dist/vault/resolve.js.map +1 -1
- package/node_modules/@buddi/core/migrations/053_drop_legacy_anthropic_env.sql +31 -0
- package/node_modules/@buddi/core/package.json +4 -0
- package/node_modules/@buddi/gateway/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/gateway/dist/agents/catalog.d.ts +3 -2
- package/node_modules/@buddi/gateway/dist/agents/catalog.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/agents/catalog.js +3 -2
- package/node_modules/@buddi/gateway/dist/agents/catalog.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/agents-cli.js +1 -1
- package/node_modules/@buddi/gateway/dist/agents-cli.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/bootstrap.d.ts +1 -3
- package/node_modules/@buddi/gateway/dist/bootstrap.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/bootstrap.js +13 -8
- package/node_modules/@buddi/gateway/dist/bootstrap.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/cli.js +1 -1
- package/node_modules/@buddi/gateway/dist/index.d.ts +1 -1
- package/node_modules/@buddi/gateway/dist/index.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/index.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/mlxh.d.ts +44 -0
- package/node_modules/@buddi/gateway/dist/mlxh.d.ts.map +1 -0
- package/node_modules/@buddi/gateway/dist/mlxh.js +98 -0
- package/node_modules/@buddi/gateway/dist/mlxh.js.map +1 -0
- package/node_modules/@buddi/gateway/dist/owner-secrets.d.ts +21 -1
- package/node_modules/@buddi/gateway/dist/owner-secrets.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/owner-secrets.js +96 -2
- package/node_modules/@buddi/gateway/dist/owner-secrets.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/plugins/live.d.ts +42 -0
- package/node_modules/@buddi/gateway/dist/plugins/live.d.ts.map +1 -0
- package/node_modules/@buddi/gateway/dist/plugins/live.js +81 -0
- package/node_modules/@buddi/gateway/dist/plugins/live.js.map +1 -0
- package/node_modules/@buddi/gateway/dist/plugins/stage.d.ts +4 -0
- package/node_modules/@buddi/gateway/dist/plugins/stage.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/plugins/stage.js +3 -0
- package/node_modules/@buddi/gateway/dist/plugins/stage.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/plugins/toggle.d.ts +18 -2
- package/node_modules/@buddi/gateway/dist/plugins/toggle.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/plugins/toggle.js +36 -12
- package/node_modules/@buddi/gateway/dist/plugins/toggle.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/plugins/update.d.ts +8 -0
- package/node_modules/@buddi/gateway/dist/plugins/update.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/plugins/update.js +8 -2
- package/node_modules/@buddi/gateway/dist/plugins/update.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/plugins-cli.d.ts +44 -5
- package/node_modules/@buddi/gateway/dist/plugins-cli.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/plugins-cli.js +177 -20
- package/node_modules/@buddi/gateway/dist/plugins-cli.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/provider-accounts.d.ts +6 -13
- package/node_modules/@buddi/gateway/dist/provider-accounts.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/provider-accounts.js +76 -16
- package/node_modules/@buddi/gateway/dist/provider-accounts.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/providers.d.ts +3 -3
- package/node_modules/@buddi/gateway/dist/providers.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/providers.js +7 -7
- package/node_modules/@buddi/gateway/dist/providers.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/serve.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/serve.js +2 -0
- package/node_modules/@buddi/gateway/dist/serve.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/surfaces/context-budget.d.ts +1 -1
- package/node_modules/@buddi/gateway/dist/surfaces/context-budget.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/surfaces/context-budget.js +46 -3
- package/node_modules/@buddi/gateway/dist/surfaces/context-budget.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/surfaces/pending-question.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/surfaces/pending-question.js +2 -1
- package/node_modules/@buddi/gateway/dist/surfaces/pending-question.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/tips/rules.d.ts +2 -0
- package/node_modules/@buddi/gateway/dist/tips/rules.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/tips/rules.js +10 -0
- package/node_modules/@buddi/gateway/dist/tips/rules.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/agents.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/agents.js +5 -1
- package/node_modules/@buddi/gateway/dist/web/agents.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/connections.d.ts +15 -5
- package/node_modules/@buddi/gateway/dist/web/connections.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/connections.js +70 -2
- package/node_modules/@buddi/gateway/dist/web/connections.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/extension.d.ts +6 -0
- package/node_modules/@buddi/gateway/dist/web/extension.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/extension.js +5 -1
- package/node_modules/@buddi/gateway/dist/web/extension.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/folders.d.ts +23 -0
- package/node_modules/@buddi/gateway/dist/web/folders.d.ts.map +1 -0
- package/node_modules/@buddi/gateway/dist/web/folders.js +100 -0
- package/node_modules/@buddi/gateway/dist/web/folders.js.map +1 -0
- package/node_modules/@buddi/gateway/dist/web/market.d.ts +129 -0
- package/node_modules/@buddi/gateway/dist/web/market.d.ts.map +1 -0
- package/node_modules/@buddi/gateway/dist/web/market.js +353 -0
- package/node_modules/@buddi/gateway/dist/web/market.js.map +1 -0
- package/node_modules/@buddi/gateway/dist/web/onboarding.d.ts +21 -7
- package/node_modules/@buddi/gateway/dist/web/onboarding.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/onboarding.js +59 -9
- package/node_modules/@buddi/gateway/dist/web/onboarding.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/plugins.d.ts +42 -7
- package/node_modules/@buddi/gateway/dist/web/plugins.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/plugins.js +54 -14
- package/node_modules/@buddi/gateway/dist/web/plugins.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/recovery.js +1 -1
- package/node_modules/@buddi/gateway/dist/web/recovery.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/server.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/server.js +100 -3
- package/node_modules/@buddi/gateway/dist/web/server.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/static.d.ts +8 -0
- package/node_modules/@buddi/gateway/dist/web/static.d.ts.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/static.js +21 -1
- package/node_modules/@buddi/gateway/dist/web/static.js.map +1 -1
- package/node_modules/@buddi/gateway/dist/web/svg.d.ts +23 -0
- package/node_modules/@buddi/gateway/dist/web/svg.d.ts.map +1 -0
- package/node_modules/@buddi/gateway/dist/web/svg.js +125 -0
- package/node_modules/@buddi/gateway/dist/web/svg.js.map +1 -0
- package/node_modules/@buddi/gateway/dist/web/take-on.d.ts +91 -0
- package/node_modules/@buddi/gateway/dist/web/take-on.d.ts.map +1 -0
- package/node_modules/@buddi/gateway/dist/web/take-on.js +287 -0
- package/node_modules/@buddi/gateway/dist/web/take-on.js.map +1 -0
- package/node_modules/@buddi/install/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/runtime/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/runtime/dist/anthropic.d.ts +7 -0
- package/node_modules/@buddi/runtime/dist/anthropic.d.ts.map +1 -1
- package/node_modules/@buddi/runtime/dist/anthropic.js +29 -3
- package/node_modules/@buddi/runtime/dist/anthropic.js.map +1 -1
- package/node_modules/@buddi/runtime/dist/provider-models.d.ts +2 -0
- package/node_modules/@buddi/runtime/dist/provider-models.d.ts.map +1 -1
- package/node_modules/@buddi/runtime/dist/provider-models.js +22 -0
- package/node_modules/@buddi/runtime/dist/provider-models.js.map +1 -1
- package/node_modules/@buddi/runtime/dist/search.js +2 -2
- package/node_modules/@buddi/tool-artifacts/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/tool-browser/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/tool-email/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/tool-host/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/tool-mcp/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/tool-mcp/dist/catalog.d.ts +32 -2
- package/node_modules/@buddi/tool-mcp/dist/catalog.d.ts.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/catalog.js +41 -7
- package/node_modules/@buddi/tool-mcp/dist/catalog.js.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/device.d.ts +53 -0
- package/node_modules/@buddi/tool-mcp/dist/device.d.ts.map +1 -0
- package/node_modules/@buddi/tool-mcp/dist/device.js +100 -0
- package/node_modules/@buddi/tool-mcp/dist/device.js.map +1 -0
- package/node_modules/@buddi/tool-mcp/dist/fetch.d.ts +10 -1
- package/node_modules/@buddi/tool-mcp/dist/fetch.d.ts.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/fetch.js +7 -1
- package/node_modules/@buddi/tool-mcp/dist/fetch.js.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/index.d.ts +5 -3
- package/node_modules/@buddi/tool-mcp/dist/index.d.ts.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/index.js +7 -4
- package/node_modules/@buddi/tool-mcp/dist/index.js.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/ports.d.ts +31 -0
- package/node_modules/@buddi/tool-mcp/dist/ports.d.ts.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/preview.d.ts +16 -0
- package/node_modules/@buddi/tool-mcp/dist/preview.d.ts.map +1 -0
- package/node_modules/@buddi/tool-mcp/dist/preview.js +52 -0
- package/node_modules/@buddi/tool-mcp/dist/preview.js.map +1 -0
- package/node_modules/@buddi/tool-mcp/dist/program.d.ts +73 -0
- package/node_modules/@buddi/tool-mcp/dist/program.d.ts.map +1 -0
- package/node_modules/@buddi/tool-mcp/dist/program.js +306 -0
- package/node_modules/@buddi/tool-mcp/dist/program.js.map +1 -0
- package/node_modules/@buddi/tool-mcp/dist/service.d.ts +131 -22
- package/node_modules/@buddi/tool-mcp/dist/service.d.ts.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/service.js +717 -29
- package/node_modules/@buddi/tool-mcp/dist/service.js.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/session.d.ts +13 -1
- package/node_modules/@buddi/tool-mcp/dist/session.d.ts.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/session.js +27 -4
- package/node_modules/@buddi/tool-mcp/dist/session.js.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/store.d.ts +39 -1
- package/node_modules/@buddi/tool-mcp/dist/store.d.ts.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/store.js +24 -0
- package/node_modules/@buddi/tool-mcp/dist/store.js.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/testing/fake.d.ts +6 -0
- package/node_modules/@buddi/tool-mcp/dist/testing/fake.d.ts.map +1 -1
- package/node_modules/@buddi/tool-mcp/dist/testing/fake.js +26 -0
- package/node_modules/@buddi/tool-mcp/dist/testing/fake.js.map +1 -1
- package/node_modules/@buddi/tool-mcp/migrations/003_token_auth.sql +14 -0
- package/node_modules/@buddi/tool-mcp/migrations/004_programs.sql +26 -0
- package/node_modules/@buddi/tool-memory/dist/.tsbuildinfo +1 -1
- package/node_modules/@buddi/tool-web/dist/.tsbuildinfo +1 -1
- package/node_modules/@hono/node-server/README.md +21 -10
- package/node_modules/@hono/node-server/dist/early-hints.cjs +1 -1
- package/node_modules/@hono/node-server/dist/early-hints.mjs +1 -1
- package/node_modules/@hono/node-server/dist/index.cjs +41 -19
- package/node_modules/@hono/node-server/dist/index.mjs +42 -20
- package/node_modules/@hono/node-server/dist/serve-static.cjs +1 -0
- package/node_modules/@hono/node-server/dist/serve-static.d.cts +2 -1
- package/node_modules/@hono/node-server/dist/serve-static.d.mts +2 -1
- package/node_modules/@hono/node-server/dist/serve-static.mjs +1 -0
- package/node_modules/@hono/node-server/package.json +3 -2
- package/node_modules/hono/dist/cjs/adapter/bun/websocket.js +1 -1
- package/node_modules/hono/dist/cjs/middleware/language/language.js +1 -1
- package/node_modules/hono/dist/cjs/middleware/serve-static/index.js +1 -0
- package/node_modules/hono/dist/middleware/language/language.js +1 -1
- package/node_modules/hono/dist/middleware/serve-static/index.js +1 -0
- package/node_modules/hono/dist/types/middleware/serve-static/index.d.ts +2 -0
- package/node_modules/hono/package.json +1 -1
- package/package.json +2 -2
- package/packages/cli/dist/.tsbuildinfo +1 -1
- package/packages/cli/dist/args.d.ts +59 -0
- package/packages/cli/dist/args.d.ts.map +1 -1
- package/packages/cli/dist/args.js +141 -0
- package/packages/cli/dist/args.js.map +1 -1
- package/packages/cli/dist/commands.d.ts +2 -0
- package/packages/cli/dist/commands.d.ts.map +1 -1
- package/packages/cli/dist/commands.js +83 -3
- package/packages/cli/dist/commands.js.map +1 -1
- package/packages/cli/dist/connections-cmd.d.ts +93 -0
- package/packages/cli/dist/connections-cmd.d.ts.map +1 -0
- package/packages/cli/dist/connections-cmd.js +657 -0
- package/packages/cli/dist/connections-cmd.js.map +1 -0
- package/packages/cli/dist/doctor-probes.d.ts.map +1 -1
- package/packages/cli/dist/doctor-probes.js +53 -9
- package/packages/cli/dist/doctor-probes.js.map +1 -1
- package/packages/cli/dist/doctor.d.ts +1 -8
- package/packages/cli/dist/doctor.d.ts.map +1 -1
- package/packages/cli/dist/doctor.js +1 -15
- package/packages/cli/dist/doctor.js.map +1 -1
- package/packages/cli/dist/init-plan.d.ts +1 -2
- package/packages/cli/dist/init-plan.d.ts.map +1 -1
- package/packages/cli/dist/init-plan.js +2 -6
- package/packages/cli/dist/init-plan.js.map +1 -1
- package/packages/cli/dist/init.d.ts.map +1 -1
- package/packages/cli/dist/init.js +5 -29
- package/packages/cli/dist/init.js.map +1 -1
- package/packages/cli/dist/main.d.ts.map +1 -1
- package/packages/cli/dist/main.js +12 -2
- package/packages/cli/dist/main.js.map +1 -1
- package/packages/cli/dist/mcp/gateway-client.d.ts +5 -0
- package/packages/cli/dist/mcp/gateway-client.d.ts.map +1 -1
- package/packages/cli/dist/mcp/gateway-client.js +15 -4
- package/packages/cli/dist/mcp/gateway-client.js.map +1 -1
- package/packages/cli/dist/plugins-toggle.d.ts +9 -0
- package/packages/cli/dist/plugins-toggle.d.ts.map +1 -0
- package/packages/cli/dist/plugins-toggle.js +20 -0
- package/packages/cli/dist/plugins-toggle.js.map +1 -0
- package/packages/cli/dist/service/index.d.ts +4 -2
- package/packages/cli/dist/service/index.d.ts.map +1 -1
- package/packages/cli/dist/service/index.js +5 -7
- package/packages/cli/dist/service/index.js.map +1 -1
- package/packages/core/dist/.tsbuildinfo +1 -1
- package/packages/core/dist/agents/provider-from-env.d.ts +7 -6
- package/packages/core/dist/agents/provider-from-env.d.ts.map +1 -1
- package/packages/core/dist/agents/provider-from-env.js +9 -12
- package/packages/core/dist/agents/provider-from-env.js.map +1 -1
- package/packages/core/dist/backup/load.d.ts.map +1 -1
- package/packages/core/dist/backup/load.js +37 -0
- package/packages/core/dist/backup/load.js.map +1 -1
- package/packages/core/dist/backup/restore.js +2 -2
- package/packages/core/dist/backup/restore.js.map +1 -1
- package/packages/core/dist/connection-config.d.ts +96 -0
- package/packages/core/dist/connection-config.d.ts.map +1 -0
- package/packages/core/dist/connection-config.js +308 -0
- package/packages/core/dist/connection-config.js.map +1 -0
- package/packages/core/dist/failures/owner-message.d.ts.map +1 -1
- package/packages/core/dist/failures/owner-message.js +37 -10
- package/packages/core/dist/failures/owner-message.js.map +1 -1
- package/packages/core/dist/host/build.d.ts +7 -0
- package/packages/core/dist/host/build.d.ts.map +1 -1
- package/packages/core/dist/host/build.js +14 -1
- package/packages/core/dist/host/build.js.map +1 -1
- package/packages/core/dist/onboarding/store.d.ts.map +1 -1
- package/packages/core/dist/onboarding/store.js +17 -1
- package/packages/core/dist/onboarding/store.js.map +1 -1
- package/packages/core/dist/onboarding/types.d.ts +14 -0
- package/packages/core/dist/onboarding/types.d.ts.map +1 -1
- package/packages/core/dist/provider-accounts.d.ts +21 -1
- package/packages/core/dist/provider-accounts.d.ts.map +1 -1
- package/packages/core/dist/provider-accounts.js +31 -1
- package/packages/core/dist/provider-accounts.js.map +1 -1
- package/packages/core/dist/provider.d.ts +4 -3
- package/packages/core/dist/provider.d.ts.map +1 -1
- package/packages/core/dist/provider.js +7 -4
- package/packages/core/dist/provider.js.map +1 -1
- package/packages/core/dist/registry.d.ts +9 -0
- package/packages/core/dist/registry.d.ts.map +1 -1
- package/packages/core/dist/registry.js +32 -2
- package/packages/core/dist/registry.js.map +1 -1
- package/packages/core/dist/secrets/destinations.d.ts +2 -0
- package/packages/core/dist/secrets/destinations.d.ts.map +1 -1
- package/packages/core/dist/secrets/destinations.js +6 -0
- package/packages/core/dist/secrets/destinations.js.map +1 -1
- package/packages/core/dist/testing/accounts.d.ts +12 -0
- package/packages/core/dist/testing/accounts.d.ts.map +1 -0
- package/packages/core/dist/testing/accounts.js +7 -0
- package/packages/core/dist/testing/accounts.js.map +1 -0
- package/packages/core/dist/testing/index.d.ts +1 -0
- package/packages/core/dist/testing/index.d.ts.map +1 -1
- package/packages/core/dist/testing/index.js +1 -0
- package/packages/core/dist/testing/index.js.map +1 -1
- package/packages/core/dist/vault/resolve.d.ts.map +1 -1
- package/packages/core/dist/vault/resolve.js +0 -2
- package/packages/core/dist/vault/resolve.js.map +1 -1
- package/packages/core/migrations/053_drop_legacy_anthropic_env.sql +31 -0
- package/packages/core/package.json +4 -0
- package/packages/gateway/dist/.tsbuildinfo +1 -1
- package/packages/gateway/dist/agents/catalog.d.ts +3 -2
- package/packages/gateway/dist/agents/catalog.d.ts.map +1 -1
- package/packages/gateway/dist/agents/catalog.js +3 -2
- package/packages/gateway/dist/agents/catalog.js.map +1 -1
- package/packages/gateway/dist/agents-cli.js +1 -1
- package/packages/gateway/dist/agents-cli.js.map +1 -1
- package/packages/gateway/dist/bootstrap.d.ts +1 -3
- package/packages/gateway/dist/bootstrap.d.ts.map +1 -1
- package/packages/gateway/dist/bootstrap.js +13 -8
- package/packages/gateway/dist/bootstrap.js.map +1 -1
- package/packages/gateway/dist/cli.js +1 -1
- package/packages/gateway/dist/index.d.ts +1 -1
- package/packages/gateway/dist/index.d.ts.map +1 -1
- package/packages/gateway/dist/index.js.map +1 -1
- package/packages/gateway/dist/mlxh.d.ts +44 -0
- package/packages/gateway/dist/mlxh.d.ts.map +1 -0
- package/packages/gateway/dist/mlxh.js +98 -0
- package/packages/gateway/dist/mlxh.js.map +1 -0
- package/packages/gateway/dist/owner-secrets.d.ts +21 -1
- package/packages/gateway/dist/owner-secrets.d.ts.map +1 -1
- package/packages/gateway/dist/owner-secrets.js +96 -2
- package/packages/gateway/dist/owner-secrets.js.map +1 -1
- package/packages/gateway/dist/plugins/live.d.ts +42 -0
- package/packages/gateway/dist/plugins/live.d.ts.map +1 -0
- package/packages/gateway/dist/plugins/live.js +81 -0
- package/packages/gateway/dist/plugins/live.js.map +1 -0
- package/packages/gateway/dist/plugins/stage.d.ts +4 -0
- package/packages/gateway/dist/plugins/stage.d.ts.map +1 -1
- package/packages/gateway/dist/plugins/stage.js +3 -0
- package/packages/gateway/dist/plugins/stage.js.map +1 -1
- package/packages/gateway/dist/plugins/toggle.d.ts +18 -2
- package/packages/gateway/dist/plugins/toggle.d.ts.map +1 -1
- package/packages/gateway/dist/plugins/toggle.js +36 -12
- package/packages/gateway/dist/plugins/toggle.js.map +1 -1
- package/packages/gateway/dist/plugins/update.d.ts +8 -0
- package/packages/gateway/dist/plugins/update.d.ts.map +1 -1
- package/packages/gateway/dist/plugins/update.js +8 -2
- package/packages/gateway/dist/plugins/update.js.map +1 -1
- package/packages/gateway/dist/plugins-cli.d.ts +44 -5
- package/packages/gateway/dist/plugins-cli.d.ts.map +1 -1
- package/packages/gateway/dist/plugins-cli.js +177 -20
- package/packages/gateway/dist/plugins-cli.js.map +1 -1
- package/packages/gateway/dist/provider-accounts.d.ts +6 -13
- package/packages/gateway/dist/provider-accounts.d.ts.map +1 -1
- package/packages/gateway/dist/provider-accounts.js +76 -16
- package/packages/gateway/dist/provider-accounts.js.map +1 -1
- package/packages/gateway/dist/providers.d.ts +3 -3
- package/packages/gateway/dist/providers.d.ts.map +1 -1
- package/packages/gateway/dist/providers.js +7 -7
- package/packages/gateway/dist/providers.js.map +1 -1
- package/packages/gateway/dist/serve.d.ts.map +1 -1
- package/packages/gateway/dist/serve.js +2 -0
- package/packages/gateway/dist/serve.js.map +1 -1
- package/packages/gateway/dist/surfaces/context-budget.d.ts +1 -1
- package/packages/gateway/dist/surfaces/context-budget.d.ts.map +1 -1
- package/packages/gateway/dist/surfaces/context-budget.js +46 -3
- package/packages/gateway/dist/surfaces/context-budget.js.map +1 -1
- package/packages/gateway/dist/surfaces/pending-question.d.ts.map +1 -1
- package/packages/gateway/dist/surfaces/pending-question.js +2 -1
- package/packages/gateway/dist/surfaces/pending-question.js.map +1 -1
- package/packages/gateway/dist/tips/rules.d.ts +2 -0
- package/packages/gateway/dist/tips/rules.d.ts.map +1 -1
- package/packages/gateway/dist/tips/rules.js +10 -0
- package/packages/gateway/dist/tips/rules.js.map +1 -1
- package/packages/gateway/dist/web/agents.d.ts.map +1 -1
- package/packages/gateway/dist/web/agents.js +5 -1
- package/packages/gateway/dist/web/agents.js.map +1 -1
- package/packages/gateway/dist/web/connections.d.ts +15 -5
- package/packages/gateway/dist/web/connections.d.ts.map +1 -1
- package/packages/gateway/dist/web/connections.js +70 -2
- package/packages/gateway/dist/web/connections.js.map +1 -1
- package/packages/gateway/dist/web/extension.d.ts +6 -0
- package/packages/gateway/dist/web/extension.d.ts.map +1 -1
- package/packages/gateway/dist/web/extension.js +5 -1
- package/packages/gateway/dist/web/extension.js.map +1 -1
- package/packages/gateway/dist/web/folders.d.ts +23 -0
- package/packages/gateway/dist/web/folders.d.ts.map +1 -0
- package/packages/gateway/dist/web/folders.js +100 -0
- package/packages/gateway/dist/web/folders.js.map +1 -0
- package/packages/gateway/dist/web/market.d.ts +129 -0
- package/packages/gateway/dist/web/market.d.ts.map +1 -0
- package/packages/gateway/dist/web/market.js +353 -0
- package/packages/gateway/dist/web/market.js.map +1 -0
- package/packages/gateway/dist/web/onboarding.d.ts +21 -7
- package/packages/gateway/dist/web/onboarding.d.ts.map +1 -1
- package/packages/gateway/dist/web/onboarding.js +59 -9
- package/packages/gateway/dist/web/onboarding.js.map +1 -1
- package/packages/gateway/dist/web/plugins.d.ts +42 -7
- package/packages/gateway/dist/web/plugins.d.ts.map +1 -1
- package/packages/gateway/dist/web/plugins.js +54 -14
- package/packages/gateway/dist/web/plugins.js.map +1 -1
- package/packages/gateway/dist/web/recovery.js +1 -1
- package/packages/gateway/dist/web/recovery.js.map +1 -1
- package/packages/gateway/dist/web/server.d.ts.map +1 -1
- package/packages/gateway/dist/web/server.js +100 -3
- package/packages/gateway/dist/web/server.js.map +1 -1
- package/packages/gateway/dist/web/static.d.ts +8 -0
- package/packages/gateway/dist/web/static.d.ts.map +1 -1
- package/packages/gateway/dist/web/static.js +21 -1
- package/packages/gateway/dist/web/static.js.map +1 -1
- package/packages/gateway/dist/web/svg.d.ts +23 -0
- package/packages/gateway/dist/web/svg.d.ts.map +1 -0
- package/packages/gateway/dist/web/svg.js +125 -0
- package/packages/gateway/dist/web/svg.js.map +1 -0
- package/packages/gateway/dist/web/take-on.d.ts +91 -0
- package/packages/gateway/dist/web/take-on.d.ts.map +1 -0
- package/packages/gateway/dist/web/take-on.js +287 -0
- package/packages/gateway/dist/web/take-on.js.map +1 -0
- package/packages/install/dist/.tsbuildinfo +1 -1
- package/packages/runtime/dist/.tsbuildinfo +1 -1
- package/packages/runtime/dist/anthropic.d.ts +7 -0
- package/packages/runtime/dist/anthropic.d.ts.map +1 -1
- package/packages/runtime/dist/anthropic.js +29 -3
- package/packages/runtime/dist/anthropic.js.map +1 -1
- package/packages/runtime/dist/provider-models.d.ts +2 -0
- package/packages/runtime/dist/provider-models.d.ts.map +1 -1
- package/packages/runtime/dist/provider-models.js +22 -0
- package/packages/runtime/dist/provider-models.js.map +1 -1
- package/packages/runtime/dist/search.js +2 -2
- package/packages/tools/artifacts/dist/.tsbuildinfo +1 -1
- package/packages/tools/browser/dist/.tsbuildinfo +1 -1
- package/packages/tools/email/dist/.tsbuildinfo +1 -1
- package/packages/tools/host/dist/.tsbuildinfo +1 -1
- package/packages/tools/mcp/dist/.tsbuildinfo +1 -1
- package/packages/tools/mcp/dist/catalog.d.ts +32 -2
- package/packages/tools/mcp/dist/catalog.d.ts.map +1 -1
- package/packages/tools/mcp/dist/catalog.js +41 -7
- package/packages/tools/mcp/dist/catalog.js.map +1 -1
- package/packages/tools/mcp/dist/device.d.ts +53 -0
- package/packages/tools/mcp/dist/device.d.ts.map +1 -0
- package/packages/tools/mcp/dist/device.js +100 -0
- package/packages/tools/mcp/dist/device.js.map +1 -0
- package/packages/tools/mcp/dist/fetch.d.ts +10 -1
- package/packages/tools/mcp/dist/fetch.d.ts.map +1 -1
- package/packages/tools/mcp/dist/fetch.js +7 -1
- package/packages/tools/mcp/dist/fetch.js.map +1 -1
- package/packages/tools/mcp/dist/index.d.ts +5 -3
- package/packages/tools/mcp/dist/index.d.ts.map +1 -1
- package/packages/tools/mcp/dist/index.js +7 -4
- package/packages/tools/mcp/dist/index.js.map +1 -1
- package/packages/tools/mcp/dist/ports.d.ts +31 -0
- package/packages/tools/mcp/dist/ports.d.ts.map +1 -1
- package/packages/tools/mcp/dist/preview.d.ts +16 -0
- package/packages/tools/mcp/dist/preview.d.ts.map +1 -0
- package/packages/tools/mcp/dist/preview.js +52 -0
- package/packages/tools/mcp/dist/preview.js.map +1 -0
- package/packages/tools/mcp/dist/program.d.ts +73 -0
- package/packages/tools/mcp/dist/program.d.ts.map +1 -0
- package/packages/tools/mcp/dist/program.js +306 -0
- package/packages/tools/mcp/dist/program.js.map +1 -0
- package/packages/tools/mcp/dist/service.d.ts +131 -22
- package/packages/tools/mcp/dist/service.d.ts.map +1 -1
- package/packages/tools/mcp/dist/service.js +717 -29
- package/packages/tools/mcp/dist/service.js.map +1 -1
- package/packages/tools/mcp/dist/session.d.ts +13 -1
- package/packages/tools/mcp/dist/session.d.ts.map +1 -1
- package/packages/tools/mcp/dist/session.js +27 -4
- package/packages/tools/mcp/dist/session.js.map +1 -1
- package/packages/tools/mcp/dist/store.d.ts +39 -1
- package/packages/tools/mcp/dist/store.d.ts.map +1 -1
- package/packages/tools/mcp/dist/store.js +24 -0
- package/packages/tools/mcp/dist/store.js.map +1 -1
- package/packages/tools/mcp/dist/testing/fake.d.ts +6 -0
- package/packages/tools/mcp/dist/testing/fake.d.ts.map +1 -1
- package/packages/tools/mcp/dist/testing/fake.js +26 -0
- package/packages/tools/mcp/dist/testing/fake.js.map +1 -1
- package/packages/tools/mcp/migrations/003_token_auth.sql +14 -0
- package/packages/tools/mcp/migrations/004_programs.sql +26 -0
- package/packages/tools/memory/dist/.tsbuildinfo +1 -1
- package/packages/tools/web/dist/.tsbuildinfo +1 -1
- package/packages/web/dist/assets/index-DIXokQ4n.css +1 -0
- package/packages/web/dist/assets/index-uqQyuYjR.js +128 -0
- package/packages/web/dist/assets/{lottie_light-e1djomjW.js → lottie_light-j3HICV9o.js} +1 -1
- package/packages/web/dist/build.json +1 -1
- package/packages/web/dist/index.html +2 -2
- package/packages/web/dist/manifest.webmanifest +24 -5
- package/packages/web/dist/precache.json +4 -4
- package/packages/web/dist/assets/index-4hpqlMjL.css +0 -1
- package/packages/web/dist/assets/index-B8crjABB.js +0 -125
package/extension/popup.html
CHANGED
|
@@ -2,34 +2,56 @@
|
|
|
2
2
|
<html lang="en">
|
|
3
3
|
<head>
|
|
4
4
|
<meta charset="utf-8" />
|
|
5
|
+
<meta name="viewport" content="width=340" />
|
|
5
6
|
<title>buddi</title>
|
|
6
7
|
<link rel="stylesheet" href="popup.css" />
|
|
7
8
|
</head>
|
|
8
|
-
<body>
|
|
9
|
+
<body data-view="address">
|
|
9
10
|
<header class="head">
|
|
10
|
-
<
|
|
11
|
-
<span class="
|
|
12
|
-
<span class="
|
|
11
|
+
<img class="blob" src="blob.png" alt="" width="28" height="28" />
|
|
12
|
+
<span class="wordmark">buddi</span>
|
|
13
|
+
<span class="pill" id="pill" data-tone="idle" role="status">Not connected</span>
|
|
13
14
|
</header>
|
|
14
15
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
<
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
<!-- Not connected, and Connecting: the address of the buddi to pair with. -->
|
|
17
|
+
<section class="view" id="view-address" data-view="address">
|
|
18
|
+
<div class="field-group">
|
|
19
|
+
<label class="label" for="gateway">Your buddi</label>
|
|
20
|
+
<input class="field" id="gateway" type="url" value="http://127.0.0.1:4317" placeholder="http://127.0.0.1:4317" spellcheck="false" autocomplete="off" />
|
|
21
|
+
<p class="hint" id="hint">The address of the buddi running on this machine.</p>
|
|
22
|
+
</div>
|
|
23
|
+
<p class="notice" id="notice" data-tone="critical" role="alert" hidden></p>
|
|
24
|
+
<p class="quiet" id="asking" hidden>Asking your buddi for a code…</p>
|
|
25
|
+
<div class="actions" id="address-actions">
|
|
26
|
+
<button class="btn" data-variant="accent" id="connect" type="button">Connect</button>
|
|
27
|
+
</div>
|
|
20
28
|
</section>
|
|
21
29
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
<div class="code-
|
|
25
|
-
<p class="code" id="code"
|
|
26
|
-
<button class="
|
|
30
|
+
<!-- Pairing: the six digits to type into buddi. -->
|
|
31
|
+
<section class="view" id="view-pairing" data-view="pairing" hidden>
|
|
32
|
+
<div class="code-tile">
|
|
33
|
+
<p class="code" id="code" aria-label="Pairing code"></p>
|
|
34
|
+
<button class="btn" data-size="sm" id="copy" type="button">Copy</button>
|
|
35
|
+
</div>
|
|
36
|
+
<p class="hint">Type it into buddi under Settings → Computer & browser, within five minutes.</p>
|
|
37
|
+
<div class="actions actions-split">
|
|
38
|
+
<button class="link" id="not-this" type="button">Not this buddi</button>
|
|
39
|
+
<button class="btn" id="open-settings" type="button">Open buddi settings</button>
|
|
27
40
|
</div>
|
|
28
|
-
<p class="hint">Type this code into buddi, under Settings, Computer & browser, within five minutes.</p>
|
|
29
41
|
</section>
|
|
30
42
|
|
|
31
|
-
|
|
32
|
-
|
|
43
|
+
<!-- Connected: which buddi, and what it is doing here. -->
|
|
44
|
+
<section class="view" id="view-paired" data-view="paired" hidden>
|
|
45
|
+
<div class="facts">
|
|
46
|
+
<p class="fact" id="paired-to"></p>
|
|
47
|
+
<p class="quiet" id="working">Nothing open right now.</p>
|
|
48
|
+
</div>
|
|
49
|
+
<div class="actions">
|
|
50
|
+
<button class="btn" id="open-buddi" type="button">Open buddi</button>
|
|
51
|
+
</div>
|
|
52
|
+
<footer class="foot">
|
|
53
|
+
<button class="link" id="forget" type="button">Forget this buddi</button>
|
|
54
|
+
</footer>
|
|
33
55
|
</section>
|
|
34
56
|
|
|
35
57
|
<script src="popup.js" type="module"></script>
|
package/extension/popup.js
CHANGED
|
@@ -1,11 +1,65 @@
|
|
|
1
1
|
// src/popup.ts
|
|
2
|
-
var
|
|
2
|
+
var SETTINGS_HASH = "#/settings/computer";
|
|
3
|
+
var PILL = {
|
|
3
4
|
offline: { word: "Not connected", tone: "idle" },
|
|
4
|
-
connecting: { word: "Connecting", tone: "waiting" },
|
|
5
|
-
pairing: { word: "
|
|
5
|
+
connecting: { word: "Connecting\u2026", tone: "waiting" },
|
|
6
|
+
pairing: { word: "Pairing", tone: "waiting" },
|
|
6
7
|
paired: { word: "Connected", tone: "good" }
|
|
7
8
|
};
|
|
8
|
-
|
|
9
|
+
function viewOf(model) {
|
|
10
|
+
const { connection, code } = model.state;
|
|
11
|
+
if (connection === "paired") return "paired";
|
|
12
|
+
if (connection === "pairing" && code && !model.editing) return "pairing";
|
|
13
|
+
return "address";
|
|
14
|
+
}
|
|
15
|
+
function dashboardUrl(gateway, hash = "") {
|
|
16
|
+
try {
|
|
17
|
+
const url = new URL(gateway);
|
|
18
|
+
if (url.protocol !== "http:" && url.protocol !== "https:") return null;
|
|
19
|
+
return `${url.origin}/${hash}`;
|
|
20
|
+
} catch {
|
|
21
|
+
return null;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
function hostOf(gateway) {
|
|
25
|
+
try {
|
|
26
|
+
return new URL(gateway).host;
|
|
27
|
+
} catch {
|
|
28
|
+
return gateway;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
function groupCode(code) {
|
|
32
|
+
const digits = code.replace(/[^0-9]/g, "");
|
|
33
|
+
return digits.length === 6 ? `${digits.slice(0, 3)} ${digits.slice(3)}` : code;
|
|
34
|
+
}
|
|
35
|
+
function workingLine(tabs) {
|
|
36
|
+
if (!tabs) return "Nothing open right now.";
|
|
37
|
+
return tabs === 1 ? "Working in 1 tab" : `Working in ${tabs} tabs`;
|
|
38
|
+
}
|
|
39
|
+
var byId = (doc, id) => doc.getElementById(id);
|
|
40
|
+
function render(model, doc = document) {
|
|
41
|
+
const { state } = model;
|
|
42
|
+
const view = viewOf(model);
|
|
43
|
+
const pill = byId(doc, "pill");
|
|
44
|
+
const { word, tone } = PILL[state.connection] ?? PILL.offline;
|
|
45
|
+
const failure = model.refused ?? (state.connection === "offline" ? state.error : null);
|
|
46
|
+
pill.textContent = word;
|
|
47
|
+
pill.dataset["tone"] = failure ? "bad" : tone;
|
|
48
|
+
for (const section of doc.querySelectorAll(".view")) section.hidden = section.dataset["view"] !== view;
|
|
49
|
+
doc.body.dataset["view"] = view;
|
|
50
|
+
const connecting = view === "address" && state.connection === "connecting" && !model.editing;
|
|
51
|
+
const field = byId(doc, "gateway");
|
|
52
|
+
field.disabled = connecting;
|
|
53
|
+
const notice = byId(doc, "notice");
|
|
54
|
+
notice.hidden = !failure || connecting;
|
|
55
|
+
notice.textContent = failure ?? "";
|
|
56
|
+
byId(doc, "asking").hidden = !connecting;
|
|
57
|
+
byId(doc, "address-actions").hidden = connecting;
|
|
58
|
+
byId(doc, "connect").textContent = failure ? "Try again" : "Connect";
|
|
59
|
+
byId(doc, "code").textContent = view === "pairing" ? groupCode(state.code ?? "") : "";
|
|
60
|
+
byId(doc, "paired-to").textContent = view === "paired" ? `Your buddi at ${state.installation ?? hostOf(model.gateway)}` : "";
|
|
61
|
+
byId(doc, "working").textContent = workingLine(model.tabs);
|
|
62
|
+
}
|
|
9
63
|
var COPIED_FOR = 2e3;
|
|
10
64
|
function wireCopy(button, read) {
|
|
11
65
|
let restore;
|
|
@@ -25,19 +79,14 @@ function wireCopy(button, read) {
|
|
|
25
79
|
})();
|
|
26
80
|
});
|
|
27
81
|
}
|
|
28
|
-
function
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
pairing.hidden = false;
|
|
36
|
-
el("code").textContent = state.code;
|
|
37
|
-
} else {
|
|
38
|
-
pairing.hidden = true;
|
|
82
|
+
async function countBuddiTabs(api) {
|
|
83
|
+
try {
|
|
84
|
+
const groups = new Set((await api.tabGroups.query({ title: "buddi" })).map((group) => group.id));
|
|
85
|
+
if (groups.size === 0) return 0;
|
|
86
|
+
return (await api.tabs.query({})).filter((tab) => tab.groupId !== void 0 && groups.has(tab.groupId)).length;
|
|
87
|
+
} catch {
|
|
88
|
+
return null;
|
|
39
89
|
}
|
|
40
|
-
el("hint").textContent = state.error && state.connection === "offline" ? state.error : "The address of the buddi running on this machine.";
|
|
41
90
|
}
|
|
42
91
|
async function ask(message) {
|
|
43
92
|
try {
|
|
@@ -47,33 +96,80 @@ async function ask(message) {
|
|
|
47
96
|
}
|
|
48
97
|
}
|
|
49
98
|
async function main() {
|
|
50
|
-
const field =
|
|
99
|
+
const field = byId(document, "gateway");
|
|
100
|
+
const model = {
|
|
101
|
+
state: { connection: "offline", code: null, installation: null, error: null },
|
|
102
|
+
gateway: field.value,
|
|
103
|
+
editing: false,
|
|
104
|
+
tabs: null,
|
|
105
|
+
refused: null
|
|
106
|
+
};
|
|
107
|
+
const draw = () => render(model, document);
|
|
108
|
+
const recount = async () => {
|
|
109
|
+
if (model.state.connection !== "paired") return;
|
|
110
|
+
model.tabs = await countBuddiTabs(chrome);
|
|
111
|
+
draw();
|
|
112
|
+
};
|
|
51
113
|
const address = await ask({ type: "buddi-gateway" });
|
|
52
|
-
|
|
114
|
+
if (address?.gateway) {
|
|
115
|
+
model.gateway = address.gateway;
|
|
116
|
+
field.value = address.gateway;
|
|
117
|
+
}
|
|
53
118
|
const current = await ask({ type: "buddi-get-state" });
|
|
54
|
-
if (current?.state)
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
const answer = await ask({ type: "buddi-connect", gateway: field.value.trim() });
|
|
58
|
-
if (answer?.error) {
|
|
59
|
-
el("hint").textContent = answer.error;
|
|
60
|
-
return;
|
|
61
|
-
}
|
|
62
|
-
if (answer?.state) render(answer.state);
|
|
63
|
-
});
|
|
64
|
-
el("forget").addEventListener("click", async () => {
|
|
65
|
-
const answer = await ask({ type: "buddi-forget" });
|
|
66
|
-
if (answer?.state) render(answer.state);
|
|
67
|
-
});
|
|
68
|
-
}
|
|
69
|
-
if (typeof chrome !== "undefined") {
|
|
119
|
+
if (current?.state) model.state = current.state;
|
|
120
|
+
draw();
|
|
121
|
+
void recount();
|
|
70
122
|
chrome.runtime.onMessage.addListener((message) => {
|
|
71
123
|
const frame = message;
|
|
72
|
-
if (frame?.type
|
|
124
|
+
if (frame?.type !== "buddi-state" || !frame.state) return;
|
|
125
|
+
model.state = frame.state;
|
|
126
|
+
draw();
|
|
127
|
+
void recount();
|
|
128
|
+
});
|
|
129
|
+
wireCopy(byId(document, "copy"), () => byId(document, "code").textContent ?? "");
|
|
130
|
+
byId(document, "connect").addEventListener("click", async () => {
|
|
131
|
+
const gateway = field.value.trim();
|
|
132
|
+
model.refused = null;
|
|
133
|
+
model.editing = false;
|
|
134
|
+
const answer = await ask({ type: "buddi-connect", gateway });
|
|
135
|
+
if (answer?.error) model.refused = answer.error;
|
|
136
|
+
else model.gateway = gateway || model.gateway;
|
|
137
|
+
if (answer?.state) model.state = answer.state;
|
|
138
|
+
draw();
|
|
139
|
+
});
|
|
140
|
+
field.addEventListener("keydown", (event) => {
|
|
141
|
+
if (event.key === "Enter") byId(document, "connect").click();
|
|
142
|
+
});
|
|
143
|
+
byId(document, "not-this").addEventListener("click", () => {
|
|
144
|
+
model.editing = true;
|
|
145
|
+
draw();
|
|
146
|
+
field.focus();
|
|
147
|
+
field.select();
|
|
148
|
+
});
|
|
149
|
+
const open = (hash) => {
|
|
150
|
+
const url = dashboardUrl(model.gateway, hash);
|
|
151
|
+
if (url) void chrome.tabs.create({ url });
|
|
152
|
+
};
|
|
153
|
+
byId(document, "open-settings").addEventListener("click", () => open(SETTINGS_HASH));
|
|
154
|
+
byId(document, "open-buddi").addEventListener("click", () => open(""));
|
|
155
|
+
byId(document, "forget").addEventListener("click", async () => {
|
|
156
|
+
const answer = await ask({ type: "buddi-forget" });
|
|
157
|
+
if (answer?.state) {
|
|
158
|
+
model.state = answer.state;
|
|
159
|
+
model.tabs = null;
|
|
160
|
+
draw();
|
|
161
|
+
}
|
|
73
162
|
});
|
|
74
|
-
void main();
|
|
75
163
|
}
|
|
164
|
+
if (typeof chrome !== "undefined" && chrome?.runtime?.onMessage) void main();
|
|
76
165
|
export {
|
|
77
166
|
COPIED_FOR,
|
|
78
|
-
|
|
167
|
+
SETTINGS_HASH,
|
|
168
|
+
countBuddiTabs,
|
|
169
|
+
dashboardUrl,
|
|
170
|
+
groupCode,
|
|
171
|
+
render,
|
|
172
|
+
viewOf,
|
|
173
|
+
wireCopy,
|
|
174
|
+
workingLine
|
|
79
175
|
};
|