zevairouter 1.0.119 → 1.0.121
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/CHANGELOG.md +48 -0
- package/cli/app/.next-cli-build/BUILD_ID +1 -1
- package/cli/app/.next-cli-build/app-path-routes-manifest.json +13 -13
- package/cli/app/.next-cli-build/build-manifest.json +2 -2
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page.js +4 -4
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.html +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/_not-found.html +1 -1
- package/cli/app/.next-cli-build/server/app/_not-found.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cache/stats/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/changelog/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/combos/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/context/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/context/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/dashboard/chat/completions/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/health/ready/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/init/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/keys/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/metrics/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/models/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/latest/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/latest/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/latest/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/pxpipe/start/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/pxpipe/status/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/settings/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/terminal/auth/setup/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/terminal/auth/setup/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/terminal/auth/status/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/terminal/auth/status/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/terminal/auth/unlock/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/terminal/auth/unlock/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/input/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/resize/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/stream/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/terminal/session/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/version/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
- package/cli/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/callback.html +1 -1
- package/cli/app/.next-cli-build/server/app/callback.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/automation.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/automation.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/combos.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/context.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/context.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/playground.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/playground.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard/playground/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard/playground.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/profile.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/quota.rsc +7 -7
- package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
- package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +7 -7
- package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/translator.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/usage.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard.html +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +6 -6
- package/cli/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/index.html +1 -1
- package/cli/app/.next-cli-build/server/app/index.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/landing.html +1 -1
- package/cli/app/.next-cli-build/server/app/landing.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app/login.html +1 -1
- package/cli/app/.next-cli-build/server/app/login.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +5 -5
- package/cli/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +4 -4
- package/cli/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/cli/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
- package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/page.js.nft.json +1 -1
- package/cli/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/app-paths-manifest.json +13 -13
- package/cli/app/.next-cli-build/server/chunks/1656.js +1 -0
- package/cli/app/.next-cli-build/server/chunks/3155.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/3407.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/412.js +2 -2
- package/cli/app/.next-cli-build/server/chunks/415.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/4746.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/4765.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/5469.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/6269.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/8157.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/8242.js +2 -2
- package/cli/app/.next-cli-build/server/chunks/8450.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/8895.js +1 -1
- package/cli/app/.next-cli-build/server/chunks/915.js +1 -1
- package/cli/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/cli/app/.next-cli-build/server/pages/404.html +1 -1
- package/cli/app/.next-cli-build/server/pages/500.html +1 -1
- package/cli/app/.next-cli-build/static/chunks/1992-b492aa3235a8c259.js +1 -0
- package/cli/app/.next-cli-build/static/chunks/523-81108e84df92e883.js +3 -0
- package/cli/app/.next-cli-build/static/chunks/5472-544ea4e7aa338d84.js +1 -0
- package/cli/app/.next-cli-build/static/chunks/5497-b25ed8039d5058b3.js +7 -0
- package/cli/app/.next-cli-build/static/chunks/85-db69928a84a17025.js +1 -0
- package/cli/app/.next-cli-build/static/chunks/9126-3c87cb0aee89bca5.js +1 -0
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/automation/{page-d41499964854d23d.js → page-a3939b72418749b7.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/page-fa9d3452d69f2fc7.js +1 -0
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/{page-307e7a994072d3fe.js → page-2361fd82cdac58f9.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/{page-c99774d53ed03829.js → page-0186f028c4f68aa9.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/{page-a80bc0ef9e6c1e11.js → page-81c25ef219dfc38b.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-b055dfe6fb0c0172.js +1 -0
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/context/{page-f654f75ab4d3b2b4.js → page-fb93d56bfaccdc19.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-09e6213a0742752b.js +1 -0
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-e9f89f6f7f2695ac.js → page-0fafff8a72986a98.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/{page-0546fd3c6b301483.js → page-7b6e1ef525e44bd1.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-59911fe6fc9fbfc8.js → page-85e7b6f5b4af1dd4.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/{page-2744a3a7ee2b2f3b.js → page-29893b095259085d.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/{page-f11795f09a7e359c.js → page-c03ae64868d6bc4d.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-fd2453044462eb4f.js +1 -0
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/playground/page-13833a8f417b8d7e.js +1 -0
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/{page-da5d11d26f23d010.js → page-e95034d5b34bc360.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-e8bec03d8a8df237.js → page-6deaa1a0e3ad0eb6.js} +2 -2
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/{page-0d7a893a9acb3db1.js → page-c38381db33d5aafc.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/{page-a2d55f0103564e42.js → page-5ab697596491a658.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/proxy-pools/{page-b4c7d4b4ec9ecdc8.js → page-eb11e852f7a314c9.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/pxpipe/{page-d10896022aaed6ef.js → page-f1c47c7778f23895.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/{page-f3b77e4749e85bd8.js → page-ac445dab96ac6223.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/terminal/page-a3689f5a124bc27a.js +4 -0
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/{page-1fa380d58608995a.js → page-26d372726ae6df38.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/{page-7d617ed8a6c73a39.js → page-a408f0954e4812ab.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/{page-a57ed10cad355f8f.js → page-2de7b12af94b8721.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/{layout-d5ac11eba9159f43.js → layout-2ae824d2d09c81ea.js} +1 -1
- package/cli/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/page-1ea7bc18570814a7.js +1 -0
- package/cli/app/.next-cli-build/static/chunks/app/layout-2aaca42ecdf3a056.js +1 -0
- package/cli/app/.next-cli-build/static/chunks/app/login/{page-b47f2bec3372a1a3.js → page-b5822dd005b1f5c2.js} +1 -1
- package/cli/app/.next-cli-build/static/css/479786e77e87b74c.css +1 -0
- package/cli/app/.openclaude/worktrees/agent-a54d8692/.next/standalone/src/lib/terminal/ptyBridge.py +163 -0
- package/cli/app/.openclaude/worktrees/agent-a54d8692/src/lib/terminal/ptyBridge.py +163 -0
- package/cli/app/.openclaude/worktrees/agent-aa0a3950/src/lib/terminal/ptyBridge.py +163 -0
- package/cli/app/.openclaude/worktrees/agent-aeb70241/src/lib/terminal/ptyBridge.py +163 -0
- package/cli/app/CHANGELOG.md +48 -0
- package/cli/app/package.json +1 -1
- package/cli/app/public/favicon.svg +11 -7
- package/cli/app/public/icons/icon-192.svg +11 -7
- package/cli/app/public/icons/icon-512.svg +11 -7
- package/cli/package.json +1 -1
- package/cli/src/cli/tray/icon.ico +0 -0
- package/cli/src/cli/tray/icon.png +0 -0
- package/open-sse/services/accountFallback.js +30 -0
- package/package.json +1 -1
- package/public/favicon.svg +11 -7
- package/public/icons/icon-192.svg +11 -7
- package/public/icons/icon-512.svg +11 -7
- package/src/app/(dashboard)/dashboard/basic-chat/BasicChatPageClient.js +49 -10
- package/src/app/(dashboard)/dashboard/console-log/ConsoleLogClient.js +76 -49
- package/src/app/(dashboard)/dashboard/endpoint/EndpointPageClient.js +74 -41
- package/src/app/(dashboard)/dashboard/providers/[id]/ConnectionRow.js +10 -0
- package/src/app/(dashboard)/dashboard/terminal/TerminalPageClient.js +60 -47
- package/src/app/api/providers/[id]/test/testUtils.js +11 -5
- package/src/shared/components/Button.js +4 -3
- package/src/shared/components/Card.js +2 -2
- package/src/shared/components/Header.js +1 -1
- package/src/shared/components/Input.js +15 -4
- package/src/shared/components/Modal.js +55 -16
- package/src/shared/components/SegmentedControl.js +6 -1
- package/src/shared/components/Sidebar.js +6 -7
- package/src/shared/components/Toggle.js +14 -4
- package/src/shared/components/layouts/DashboardLayout.js +6 -3
- package/src/sse/services/auth.js +51 -9
- package/cli/app/.next-cli-build/static/chunks/3702-5f52882fbc19ed29.js +0 -1
- package/cli/app/.next-cli-build/static/chunks/523-4021d26bfc04bcf5.js +0 -3
- package/cli/app/.next-cli-build/static/chunks/5497-54c8b503897135ae.js +0 -7
- package/cli/app/.next-cli-build/static/chunks/9126-2efa8985d72b10b7.js +0 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/page-d021e06a6f101f16.js +0 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-51791daa7ebe6710.js +0 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-6a64fa03d091fe28.js +0 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-8912f47631cdced9.js +0 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/playground/page-42a74aa05fd08ed9.js +0 -1
- package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/terminal/page-1f6733fa5712fc3d.js +0 -4
- package/cli/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/page-d886f4bea6d1980a.js +0 -1
- package/cli/app/.next-cli-build/static/chunks/app/layout-66d404d6c5a82e5c.js +0 -1
- package/cli/app/.next-cli-build/static/css/3b43d9c2833b7940.css +0 -1
- /package/cli/app/.next-cli-build/static/{EsPNkWozNCaNTZu9U2Fs3 → edIIBLHejtiMImOMvHpmV}/_buildManifest.js +0 -0
- /package/cli/app/.next-cli-build/static/{EsPNkWozNCaNTZu9U2Fs3 → edIIBLHejtiMImOMvHpmV}/_ssgManifest.js +0 -0
|
@@ -57,6 +57,8 @@ export default function APIPageClient({ machineId }) {
|
|
|
57
57
|
const [newKeyName, setNewKeyName] = useState("");
|
|
58
58
|
const [createdKey, setCreatedKey] = useState(null);
|
|
59
59
|
const [confirmState, setConfirmState] = useState(null);
|
|
60
|
+
const [keyPending, setKeyPending] = useState(null);
|
|
61
|
+
const [keyStatus, setKeyStatus] = useState(null);
|
|
60
62
|
|
|
61
63
|
const [requireApiKey, setRequireApiKey] = useState(false);
|
|
62
64
|
const [requireLogin, setRequireLogin] = useState(true);
|
|
@@ -643,9 +645,11 @@ export default function APIPageClient({ machineId }) {
|
|
|
643
645
|
}
|
|
644
646
|
};
|
|
645
647
|
|
|
646
|
-
const handleCreateKey = async () => {
|
|
647
|
-
|
|
648
|
-
|
|
648
|
+
const handleCreateKey = async (event) => {
|
|
649
|
+
event.preventDefault();
|
|
650
|
+
if (!newKeyName.trim() || keyPending) return;
|
|
651
|
+
setKeyPending("create");
|
|
652
|
+
setKeyStatus(null);
|
|
649
653
|
try {
|
|
650
654
|
const res = await fetch("/api/keys", {
|
|
651
655
|
method: "POST",
|
|
@@ -653,69 +657,85 @@ export default function APIPageClient({ machineId }) {
|
|
|
653
657
|
body: JSON.stringify({ name: newKeyName }),
|
|
654
658
|
});
|
|
655
659
|
const data = await res.json();
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
|
|
660
|
-
|
|
661
|
-
|
|
662
|
-
}
|
|
660
|
+
if (!res.ok) throw new Error(data.error || `Failed to create key (${res.status})`);
|
|
661
|
+
setCreatedKey(data.key);
|
|
662
|
+
await fetchData();
|
|
663
|
+
setNewKeyName("");
|
|
664
|
+
setShowAddModal(false);
|
|
665
|
+
setKeyStatus({ type: "success", message: "API key created" });
|
|
663
666
|
} catch (error) {
|
|
664
|
-
|
|
667
|
+
setKeyStatus({ type: "error", message: error.message });
|
|
668
|
+
} finally {
|
|
669
|
+
setKeyPending(null);
|
|
665
670
|
}
|
|
666
671
|
};
|
|
667
672
|
|
|
668
|
-
const handleDeleteKey =
|
|
673
|
+
const handleDeleteKey = (id) => {
|
|
674
|
+
if (keyPending) return;
|
|
669
675
|
setConfirmState({
|
|
670
676
|
title: "Delete API Key",
|
|
671
677
|
message: "Delete this API key?",
|
|
672
678
|
onConfirm: async () => {
|
|
673
679
|
setConfirmState(null);
|
|
680
|
+
setKeyPending(`delete:${id}`);
|
|
681
|
+
setKeyStatus(null);
|
|
674
682
|
try {
|
|
675
683
|
const res = await fetch(`/api/keys/${id}`, { method: "DELETE" });
|
|
676
|
-
if (res.ok) {
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
}
|
|
684
|
+
if (!res.ok) throw new Error(`Failed to delete key (${res.status})`);
|
|
685
|
+
setKeys((prev) => prev.filter((key) => key.id !== id));
|
|
686
|
+
setVisibleKeys((prev) => {
|
|
687
|
+
const next = new Set(prev);
|
|
688
|
+
next.delete(id);
|
|
689
|
+
return next;
|
|
690
|
+
});
|
|
691
|
+
setKeyStatus({ type: "success", message: "API key deleted" });
|
|
684
692
|
} catch (error) {
|
|
685
|
-
|
|
693
|
+
setKeyStatus({ type: "error", message: error.message });
|
|
694
|
+
} finally {
|
|
695
|
+
setKeyPending(null);
|
|
686
696
|
}
|
|
687
|
-
}
|
|
697
|
+
},
|
|
688
698
|
});
|
|
689
699
|
};
|
|
690
700
|
|
|
691
701
|
const handleToggleKey = async (id, isActive) => {
|
|
702
|
+
if (keyPending) return;
|
|
703
|
+
setKeyPending(`toggle:${id}`);
|
|
704
|
+
setKeyStatus(null);
|
|
692
705
|
try {
|
|
693
706
|
const res = await fetch(`/api/keys/${id}`, {
|
|
694
707
|
method: "PUT",
|
|
695
708
|
headers: { "Content-Type": "application/json" },
|
|
696
709
|
body: JSON.stringify({ isActive }),
|
|
697
710
|
});
|
|
698
|
-
if (res.ok) {
|
|
699
|
-
|
|
700
|
-
}
|
|
711
|
+
if (!res.ok) throw new Error(`Failed to update key (${res.status})`);
|
|
712
|
+
setKeys((prev) => prev.map((key) => key.id === id ? { ...key, isActive } : key));
|
|
713
|
+
setKeyStatus({ type: "success", message: "API key updated" });
|
|
701
714
|
} catch (error) {
|
|
702
|
-
|
|
715
|
+
setKeyStatus({ type: "error", message: error.message });
|
|
716
|
+
} finally {
|
|
717
|
+
setKeyPending(null);
|
|
703
718
|
}
|
|
704
719
|
};
|
|
705
720
|
|
|
706
721
|
const handleBudgetChange = async (id, field, value) => {
|
|
722
|
+
if (keyPending) return;
|
|
707
723
|
const num = value === "" ? 0 : Math.max(0, Number(value) || 0);
|
|
724
|
+
setKeyPending(`budget:${id}`);
|
|
725
|
+
setKeyStatus(null);
|
|
708
726
|
try {
|
|
709
727
|
const res = await fetch(`/api/keys/${id}`, {
|
|
710
728
|
method: "PUT",
|
|
711
729
|
headers: { "Content-Type": "application/json" },
|
|
712
730
|
body: JSON.stringify({ [field]: num }),
|
|
713
731
|
});
|
|
714
|
-
if (res.ok) {
|
|
715
|
-
|
|
716
|
-
}
|
|
732
|
+
if (!res.ok) throw new Error(`Failed to update budget (${res.status})`);
|
|
733
|
+
setKeys((prev) => prev.map((key) => key.id === id ? { ...key, [field]: num } : key));
|
|
734
|
+
setKeyStatus({ type: "success", message: "Budget updated" });
|
|
717
735
|
} catch (error) {
|
|
718
|
-
|
|
736
|
+
setKeyStatus({ type: "error", message: error.message });
|
|
737
|
+
} finally {
|
|
738
|
+
setKeyPending(null);
|
|
719
739
|
}
|
|
720
740
|
};
|
|
721
741
|
|
|
@@ -736,7 +756,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
736
756
|
|
|
737
757
|
if (loading) {
|
|
738
758
|
return (
|
|
739
|
-
<div className="flex flex-col gap-
|
|
759
|
+
<div className="flex flex-col gap-6 lg:gap-7">
|
|
740
760
|
<CardSkeleton />
|
|
741
761
|
<CardSkeleton />
|
|
742
762
|
</div>
|
|
@@ -746,7 +766,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
746
766
|
const currentEndpoint = baseUrl;
|
|
747
767
|
|
|
748
768
|
return (
|
|
749
|
-
<div className="flex flex-col gap-
|
|
769
|
+
<div className="flex flex-col gap-6 lg:gap-7">
|
|
750
770
|
{/* Endpoint Card */}
|
|
751
771
|
<Card>
|
|
752
772
|
<h2 className="text-lg font-semibold mb-4 flex items-center gap-2">
|
|
@@ -771,7 +791,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
771
791
|
}`}>Tunnel</span>
|
|
772
792
|
{tunnelEnabled && !tunnelLoading && tunnelReachable ? (
|
|
773
793
|
<>
|
|
774
|
-
<Input value={`${tunnelPublicUrl || tunnelUrl}/v1`} readOnly className="flex-1 font-mono text-sm" />
|
|
794
|
+
<Input aria-label="Cloudflare Tunnel endpoint URL" value={`${tunnelPublicUrl || tunnelUrl}/v1`} readOnly className="flex-1 font-mono text-sm" />
|
|
775
795
|
<button
|
|
776
796
|
onClick={() => copy(`${tunnelPublicUrl || tunnelUrl}/v1`, "tunnel_url")}
|
|
777
797
|
className="p-2 hover:bg-black/5 dark:hover:bg-white/5 rounded text-text-muted hover:text-primary transition-colors shrink-0"
|
|
@@ -863,7 +883,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
863
883
|
}`}>Tailscale</span>
|
|
864
884
|
{tsEnabled && !tsLoading && tsReachable ? (
|
|
865
885
|
<>
|
|
866
|
-
<Input value={`${tsUrl}/v1`} readOnly className="flex-1 font-mono text-sm" />
|
|
886
|
+
<Input aria-label="Tailscale endpoint URL" value={`${tsUrl}/v1`} readOnly className="flex-1 font-mono text-sm" />
|
|
867
887
|
<button
|
|
868
888
|
onClick={() => copy(`${tsUrl}/v1`, "ts_url")}
|
|
869
889
|
className="p-2 hover:bg-black/5 dark:hover:bg-white/5 rounded text-text-muted hover:text-primary transition-colors shrink-0"
|
|
@@ -981,6 +1001,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
981
1001
|
{(tunnelEnabled || tsEnabled) && (
|
|
982
1002
|
<div className="mt-4 pt-4 border-t border-border flex items-center gap-3">
|
|
983
1003
|
<Toggle
|
|
1004
|
+
label="Allow dashboard access via tunnel"
|
|
984
1005
|
checked={tunnelDashboardAccess}
|
|
985
1006
|
onChange={() => handleTunnelDashboardAccess(!tunnelDashboardAccess)}
|
|
986
1007
|
/>
|
|
@@ -1026,7 +1047,13 @@ export default function APIPageClient({ machineId }) {
|
|
|
1026
1047
|
</Button>
|
|
1027
1048
|
</div>
|
|
1028
1049
|
|
|
1029
|
-
|
|
1050
|
+
{keyStatus && (
|
|
1051
|
+
<p role="status" className={`mb-4 text-sm ${keyStatus.type === "error" ? "text-red-500" : "text-green-500"}`}>
|
|
1052
|
+
{keyStatus.message}
|
|
1053
|
+
</p>
|
|
1054
|
+
)}
|
|
1055
|
+
|
|
1056
|
+
<div className="flex flex-wrap items-center justify-between gap-3 pb-4 mb-4 border-b border-border">
|
|
1030
1057
|
<div>
|
|
1031
1058
|
<p className="font-medium">Require API key</p>
|
|
1032
1059
|
<p className="text-sm text-text-muted">
|
|
@@ -1034,6 +1061,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
1034
1061
|
</p>
|
|
1035
1062
|
</div>
|
|
1036
1063
|
<Toggle
|
|
1064
|
+
label="Require API key"
|
|
1037
1065
|
checked={requireApiKey}
|
|
1038
1066
|
onChange={() => handleRequireApiKey(!requireApiKey)}
|
|
1039
1067
|
/>
|
|
@@ -1061,7 +1089,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
1061
1089
|
{keys.map((key) => (
|
|
1062
1090
|
<div
|
|
1063
1091
|
key={key.id}
|
|
1064
|
-
className={`group flex items-center justify-between py-3 border-b border-black/[0.03] dark:border-white/[0.03] last:border-b-0 ${key.isActive === false ? "opacity-60" : ""}`}
|
|
1092
|
+
className={`group flex flex-wrap items-center justify-between gap-3 py-3 border-b border-black/[0.03] dark:border-white/[0.03] last:border-b-0 ${key.isActive === false ? "opacity-60" : ""}`}
|
|
1065
1093
|
>
|
|
1066
1094
|
<div className="flex-1 min-w-0">
|
|
1067
1095
|
<p className="text-sm font-medium">{key.name}</p>
|
|
@@ -1082,6 +1110,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
1082
1110
|
Daily $
|
|
1083
1111
|
<input
|
|
1084
1112
|
type="number" min="0" step="0.01"
|
|
1113
|
+
disabled={keyPending === `budget:${key.id}`}
|
|
1085
1114
|
defaultValue={key.budgetDaily || 0}
|
|
1086
1115
|
onBlur={(e) => handleBudgetChange(key.id, "budgetDaily", e.target.value)}
|
|
1087
1116
|
className="w-16 px-1 py-0.5 text-[11px] bg-transparent border border-border rounded"
|
|
@@ -1092,6 +1121,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
1092
1121
|
Monthly $
|
|
1093
1122
|
<input
|
|
1094
1123
|
type="number" min="0" step="0.01"
|
|
1124
|
+
disabled={keyPending === `budget:${key.id}`}
|
|
1095
1125
|
defaultValue={key.budgetMonthly || 0}
|
|
1096
1126
|
onBlur={(e) => handleBudgetChange(key.id, "budgetMonthly", e.target.value)}
|
|
1097
1127
|
className="w-16 px-1 py-0.5 text-[11px] bg-transparent border border-border rounded"
|
|
@@ -1103,6 +1133,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
1103
1133
|
<div className="flex items-center gap-2">
|
|
1104
1134
|
<Toggle
|
|
1105
1135
|
size="sm"
|
|
1136
|
+
disabled={keyPending === `toggle:${key.id}`}
|
|
1106
1137
|
checked={key.isActive ?? true}
|
|
1107
1138
|
onChange={(checked) => {
|
|
1108
1139
|
if (key.isActive && !checked) {
|
|
@@ -1121,6 +1152,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
1121
1152
|
title={key.isActive ? "Pause key" : "Resume key"}
|
|
1122
1153
|
/>
|
|
1123
1154
|
<button
|
|
1155
|
+
disabled={keyPending === `delete:${key.id}`}
|
|
1124
1156
|
onClick={() => handleDeleteKey(key.id)}
|
|
1125
1157
|
className="p-2 hover:bg-red-500/10 rounded text-red-500 opacity-100 sm:opacity-0 sm:group-hover:opacity-100 transition-all"
|
|
1126
1158
|
>
|
|
@@ -1142,7 +1174,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
1142
1174
|
setNewKeyName("");
|
|
1143
1175
|
}}
|
|
1144
1176
|
>
|
|
1145
|
-
<
|
|
1177
|
+
<form className="flex flex-col gap-4" onSubmit={handleCreateKey}>
|
|
1146
1178
|
<Input
|
|
1147
1179
|
label="Key Name"
|
|
1148
1180
|
value={newKeyName}
|
|
@@ -1150,10 +1182,11 @@ export default function APIPageClient({ machineId }) {
|
|
|
1150
1182
|
placeholder="Production Key"
|
|
1151
1183
|
/>
|
|
1152
1184
|
<div className="flex gap-2">
|
|
1153
|
-
<Button
|
|
1154
|
-
Create
|
|
1185
|
+
<Button type="submit" fullWidth disabled={!newKeyName.trim() || keyPending === "create"}>
|
|
1186
|
+
{keyPending === "create" ? "Creating..." : "Create"}
|
|
1155
1187
|
</Button>
|
|
1156
1188
|
<Button
|
|
1189
|
+
type="button"
|
|
1157
1190
|
onClick={() => {
|
|
1158
1191
|
setShowAddModal(false);
|
|
1159
1192
|
setNewKeyName("");
|
|
@@ -1164,7 +1197,7 @@ export default function APIPageClient({ machineId }) {
|
|
|
1164
1197
|
Cancel
|
|
1165
1198
|
</Button>
|
|
1166
1199
|
</div>
|
|
1167
|
-
</
|
|
1200
|
+
</form>
|
|
1168
1201
|
</Modal>
|
|
1169
1202
|
|
|
1170
1203
|
{/* Created Key Modal */}
|
|
@@ -1368,7 +1401,7 @@ function EndpointRow({ label, url, copyId, copied, onCopy, badge, actions }) {
|
|
|
1368
1401
|
<span className={`text-xs font-mono px-1.5 py-0.5 rounded shrink-0 min-w-[88px] text-center ${
|
|
1369
1402
|
(badge === "CF" || badge === "TS") ? "bg-primary/10 text-primary" : "bg-surface-2 text-text-muted"
|
|
1370
1403
|
}`}>{label}</span>
|
|
1371
|
-
<Input value={url} readOnly className="flex-1 font-mono text-sm" />
|
|
1404
|
+
<Input aria-label={`${label} endpoint URL`} value={url} readOnly className="flex-1 font-mono text-sm" />
|
|
1372
1405
|
<button
|
|
1373
1406
|
onClick={() => onCopy(url, copyId)}
|
|
1374
1407
|
className="p-2 hover:bg-black/5 dark:hover:bg-white/5 rounded text-text-muted hover:text-primary transition-colors shrink-0"
|
|
@@ -182,6 +182,16 @@ export default function ConnectionRow({ connection, proxyPools, isOAuth, isFirst
|
|
|
182
182
|
</span>
|
|
183
183
|
)}
|
|
184
184
|
{isCooldown && connection.isActive !== false && <CooldownTimer until={modelLockUntil} />}
|
|
185
|
+
{isCooldown && connection.modelLockReason && connection.isActive !== false && (
|
|
186
|
+
<span
|
|
187
|
+
className="max-w-full truncate text-xs text-amber-600 dark:text-amber-400 sm:max-w-[360px]"
|
|
188
|
+
title={`${connection.modelLockReason.reason} — resets ${new Date(connection.modelLockReason.resetsAt).toLocaleString()}`}
|
|
189
|
+
>
|
|
190
|
+
{connection.modelLockReason.model}
|
|
191
|
+
{connection.modelLockReason.providerErrorCode ? ` (${connection.modelLockReason.providerErrorCode})` : ""}
|
|
192
|
+
{` — resets ${new Date(connection.modelLockReason.resetsAt).toLocaleString()}`}
|
|
193
|
+
</span>
|
|
194
|
+
)}
|
|
185
195
|
{connection.lastError && connection.isActive !== false && (
|
|
186
196
|
<span className="max-w-full truncate text-xs text-red-500 sm:max-w-[300px]" title={connection.lastError}>
|
|
187
197
|
{connection.lastError}
|
|
@@ -4,11 +4,39 @@ import { useCallback, useEffect, useRef, useState } from "react";
|
|
|
4
4
|
import { Terminal } from "@xterm/xterm";
|
|
5
5
|
import { FitAddon } from "@xterm/addon-fit";
|
|
6
6
|
import { WebLinksAddon } from "@xterm/addon-web-links";
|
|
7
|
+
import { useTheme } from "@/shared/hooks/useTheme";
|
|
7
8
|
import "@xterm/xterm/css/xterm.css";
|
|
8
9
|
|
|
9
10
|
const BRAND = "#E56A4A";
|
|
10
11
|
|
|
12
|
+
const TERMINAL_THEMES = {
|
|
13
|
+
light: {
|
|
14
|
+
background: "#f7f7f6",
|
|
15
|
+
foreground: "#262626",
|
|
16
|
+
cursor: BRAND,
|
|
17
|
+
cursorAccent: "#f7f7f6",
|
|
18
|
+
selectionBackground: "rgba(229, 106, 74, 0.25)",
|
|
19
|
+
black: "#262626", red: "#b91c1c", green: "#15803d", yellow: "#a16207",
|
|
20
|
+
blue: "#1d4ed8", magenta: "#7e22ce", cyan: "#0e7490", white: "#e5e5e5",
|
|
21
|
+
brightBlack: "#737373", brightRed: "#dc2626", brightGreen: "#16a34a", brightYellow: "#ca8a04",
|
|
22
|
+
brightBlue: "#2563eb", brightMagenta: "#9333ea", brightCyan: "#0891b2", brightWhite: "#fafafa",
|
|
23
|
+
},
|
|
24
|
+
dark: {
|
|
25
|
+
background: "#0d0d0d",
|
|
26
|
+
foreground: "#e8e8e8",
|
|
27
|
+
cursor: BRAND,
|
|
28
|
+
cursorAccent: "#0d0d0d",
|
|
29
|
+
selectionBackground: "rgba(229, 106, 74, 0.35)",
|
|
30
|
+
black: "#1a1a1a", red: "#f87171", green: "#4ade80", yellow: "#fbbf24",
|
|
31
|
+
blue: "#60a5fa", magenta: "#c084fc", cyan: "#22d3ee", white: "#e5e5e5",
|
|
32
|
+
brightBlack: "#737373", brightRed: "#fca5a5", brightGreen: "#86efac", brightYellow: "#fde68a",
|
|
33
|
+
brightBlue: "#93c5fd", brightMagenta: "#d8b4fe", brightCyan: "#67e8f9", brightWhite: "#fafafa",
|
|
34
|
+
},
|
|
35
|
+
};
|
|
36
|
+
|
|
11
37
|
export default function TerminalPageClient() {
|
|
38
|
+
const { isDark } = useTheme();
|
|
39
|
+
const themeRef = useRef(isDark);
|
|
12
40
|
const hostRef = useRef(null);
|
|
13
41
|
const termRef = useRef(null);
|
|
14
42
|
const fitRef = useRef(null);
|
|
@@ -424,29 +452,7 @@ export default function TerminalPageClient() {
|
|
|
424
452
|
scrollback: 5000,
|
|
425
453
|
allowProposedApi: true,
|
|
426
454
|
disableStdin: false,
|
|
427
|
-
theme:
|
|
428
|
-
background: "#0d0d0d",
|
|
429
|
-
foreground: "#e8e8e8",
|
|
430
|
-
cursor: BRAND,
|
|
431
|
-
cursorAccent: "#0d0d0d",
|
|
432
|
-
selectionBackground: "rgba(229, 106, 74, 0.35)",
|
|
433
|
-
black: "#1a1a1a",
|
|
434
|
-
red: "#f87171",
|
|
435
|
-
green: "#4ade80",
|
|
436
|
-
yellow: "#fbbf24",
|
|
437
|
-
blue: "#60a5fa",
|
|
438
|
-
magenta: "#c084fc",
|
|
439
|
-
cyan: "#22d3ee",
|
|
440
|
-
white: "#e5e5e5",
|
|
441
|
-
brightBlack: "#737373",
|
|
442
|
-
brightRed: "#fca5a5",
|
|
443
|
-
brightGreen: "#86efac",
|
|
444
|
-
brightYellow: "#fde68a",
|
|
445
|
-
brightBlue: "#93c5fd",
|
|
446
|
-
brightMagenta: "#d8b4fe",
|
|
447
|
-
brightCyan: "#67e8f9",
|
|
448
|
-
brightWhite: "#fafafa",
|
|
449
|
-
},
|
|
455
|
+
theme: TERMINAL_THEMES[themeRef.current ? "dark" : "light"],
|
|
450
456
|
});
|
|
451
457
|
|
|
452
458
|
const fit = new FitAddon();
|
|
@@ -549,6 +555,13 @@ export default function TerminalPageClient() {
|
|
|
549
555
|
};
|
|
550
556
|
}, [gate, handleTermData, sendResize, startSession, focusTerm]);
|
|
551
557
|
|
|
558
|
+
useEffect(() => {
|
|
559
|
+
themeRef.current = isDark;
|
|
560
|
+
if (termRef.current) {
|
|
561
|
+
termRef.current.options.theme = TERMINAL_THEMES[isDark ? "dark" : "light"];
|
|
562
|
+
}
|
|
563
|
+
}, [isDark]);
|
|
564
|
+
|
|
552
565
|
const statusColor =
|
|
553
566
|
status === "ready"
|
|
554
567
|
? "bg-emerald-500"
|
|
@@ -560,7 +573,7 @@ export default function TerminalPageClient() {
|
|
|
560
573
|
|
|
561
574
|
if (gate === "checking") {
|
|
562
575
|
return (
|
|
563
|
-
<div className="flex h-full min-h-0 w-full items-center justify-center bg-
|
|
576
|
+
<div className="flex h-full min-h-0 w-full items-center justify-center bg-bg text-sm text-text-muted">
|
|
564
577
|
Checking terminal lock…
|
|
565
578
|
</div>
|
|
566
579
|
);
|
|
@@ -569,8 +582,8 @@ export default function TerminalPageClient() {
|
|
|
569
582
|
if (gate === "setup" || gate === "unlock") {
|
|
570
583
|
const isSetup = gate === "setup";
|
|
571
584
|
return (
|
|
572
|
-
<div className="flex h-full min-h-0 w-full flex-col items-center justify-center bg-
|
|
573
|
-
<div className="w-full max-w-md rounded-2xl border border-
|
|
585
|
+
<div className="flex h-full min-h-0 w-full flex-col items-center justify-center bg-bg px-4">
|
|
586
|
+
<div className="w-full max-w-md rounded-2xl border border-border-subtle bg-surface p-6 shadow-xl">
|
|
574
587
|
<div className="mb-4 flex items-center gap-3">
|
|
575
588
|
<div className="flex size-10 items-center justify-center rounded-xl bg-[color:var(--brand,#E56A4A)]/15 text-[color:var(--brand,#E56A4A)]">
|
|
576
589
|
<span className="material-symbols-outlined text-[22px]">
|
|
@@ -578,10 +591,10 @@ export default function TerminalPageClient() {
|
|
|
578
591
|
</span>
|
|
579
592
|
</div>
|
|
580
593
|
<div>
|
|
581
|
-
<h1 className="text-base font-semibold text-
|
|
594
|
+
<h1 className="text-base font-semibold text-text-main">
|
|
582
595
|
{isSetup ? "Set terminal password" : "Unlock terminal"}
|
|
583
596
|
</h1>
|
|
584
|
-
<p className="text-xs text-
|
|
597
|
+
<p className="text-xs text-text-muted">
|
|
585
598
|
{isSetup
|
|
586
599
|
? "First time — pick a password different from dashboard login."
|
|
587
600
|
: "Dashboard login is not enough. Enter your terminal password."}
|
|
@@ -593,7 +606,7 @@ export default function TerminalPageClient() {
|
|
|
593
606
|
{isSetup ? (
|
|
594
607
|
<>
|
|
595
608
|
<label className="block space-y-1">
|
|
596
|
-
<span className="text-[11px] font-medium uppercase tracking-wide text-
|
|
609
|
+
<span className="text-[11px] font-medium uppercase tracking-wide text-text-muted">
|
|
597
610
|
New terminal password
|
|
598
611
|
</span>
|
|
599
612
|
<input
|
|
@@ -602,14 +615,14 @@ export default function TerminalPageClient() {
|
|
|
602
615
|
autoComplete="new-password"
|
|
603
616
|
value={password}
|
|
604
617
|
onChange={(e) => setPassword(e.target.value)}
|
|
605
|
-
className="w-full rounded-lg border border-
|
|
618
|
+
className="w-full rounded-lg border border-border-subtle bg-bg-alt px-3 py-2.5 text-sm text-text-main outline-none focus:border-[color:var(--brand,#E56A4A)]/60"
|
|
606
619
|
placeholder="Min 6 characters"
|
|
607
620
|
required
|
|
608
621
|
minLength={6}
|
|
609
622
|
/>
|
|
610
623
|
</label>
|
|
611
624
|
<label className="block space-y-1">
|
|
612
|
-
<span className="text-[11px] font-medium uppercase tracking-wide text-
|
|
625
|
+
<span className="text-[11px] font-medium uppercase tracking-wide text-text-muted">
|
|
613
626
|
Confirm
|
|
614
627
|
</span>
|
|
615
628
|
<input
|
|
@@ -617,20 +630,20 @@ export default function TerminalPageClient() {
|
|
|
617
630
|
autoComplete="new-password"
|
|
618
631
|
value={confirm}
|
|
619
632
|
onChange={(e) => setConfirm(e.target.value)}
|
|
620
|
-
className="w-full rounded-lg border border-
|
|
633
|
+
className="w-full rounded-lg border border-border-subtle bg-bg-alt px-3 py-2.5 text-sm text-text-main outline-none focus:border-[color:var(--brand,#E56A4A)]/60"
|
|
621
634
|
placeholder="Repeat password"
|
|
622
635
|
required
|
|
623
636
|
minLength={6}
|
|
624
637
|
/>
|
|
625
638
|
</label>
|
|
626
|
-
<p className="text-[11px] leading-relaxed text-
|
|
627
|
-
Must <strong className="text-
|
|
639
|
+
<p className="text-[11px] leading-relaxed text-text-muted">
|
|
640
|
+
Must <strong className="text-text-main">not</strong> match the dashboard password.
|
|
628
641
|
Unlock lasts ~4 hours on this browser.
|
|
629
642
|
</p>
|
|
630
643
|
</>
|
|
631
644
|
) : (
|
|
632
645
|
<label className="block space-y-1">
|
|
633
|
-
<span className="text-[11px] font-medium uppercase tracking-wide text-
|
|
646
|
+
<span className="text-[11px] font-medium uppercase tracking-wide text-text-muted">
|
|
634
647
|
Terminal password
|
|
635
648
|
</span>
|
|
636
649
|
<input
|
|
@@ -639,7 +652,7 @@ export default function TerminalPageClient() {
|
|
|
639
652
|
autoComplete="current-password"
|
|
640
653
|
value={password}
|
|
641
654
|
onChange={(e) => setPassword(e.target.value)}
|
|
642
|
-
className="w-full rounded-lg border border-
|
|
655
|
+
className="w-full rounded-lg border border-border-subtle bg-bg-alt px-3 py-2.5 text-sm text-text-main outline-none focus:border-[color:var(--brand,#E56A4A)]/60"
|
|
643
656
|
placeholder="••••••••"
|
|
644
657
|
required
|
|
645
658
|
/>
|
|
@@ -647,7 +660,7 @@ export default function TerminalPageClient() {
|
|
|
647
660
|
)}
|
|
648
661
|
|
|
649
662
|
{gateError ? (
|
|
650
|
-
<p className="rounded-lg border border-red-500/30 bg-red-500/10 px-3 py-2 text-xs text-red-300">
|
|
663
|
+
<p role="alert" className="rounded-lg border border-red-500/30 bg-red-500/10 px-3 py-2 text-xs text-red-700 dark:text-red-300">
|
|
651
664
|
{gateError}
|
|
652
665
|
</p>
|
|
653
666
|
) : null}
|
|
@@ -662,14 +675,14 @@ export default function TerminalPageClient() {
|
|
|
662
675
|
</form>
|
|
663
676
|
|
|
664
677
|
{gate === "unlock" ? (
|
|
665
|
-
<p className="mt-3 text-center text-[11px] leading-relaxed text-
|
|
678
|
+
<p className="mt-3 text-center text-[11px] leading-relaxed text-text-muted">
|
|
666
679
|
Forgot terminal password? On the host run CLI →{" "}
|
|
667
|
-
<code className="text-
|
|
680
|
+
<code className="text-text-main">Settings → Clear Terminal Password</code>
|
|
668
681
|
{" "}then set a new one here. Reset is not available in the browser.
|
|
669
682
|
</p>
|
|
670
683
|
) : null}
|
|
671
684
|
|
|
672
|
-
<p className="mt-4 text-center text-[11px] text-
|
|
685
|
+
<p className="mt-4 text-center text-[11px] text-text-muted">
|
|
673
686
|
Protected by dashboard login + terminal password
|
|
674
687
|
</p>
|
|
675
688
|
</div>
|
|
@@ -678,14 +691,14 @@ export default function TerminalPageClient() {
|
|
|
678
691
|
}
|
|
679
692
|
|
|
680
693
|
return (
|
|
681
|
-
<div className="flex h-full min-h-0 w-full flex-col bg-
|
|
682
|
-
<div className="flex shrink-0 items-center justify-between gap-3 border-b border-
|
|
694
|
+
<div className="flex h-full min-h-0 w-full flex-col bg-bg">
|
|
695
|
+
<div className="flex shrink-0 items-center justify-between gap-3 border-b border-border-subtle px-4 py-2.5">
|
|
683
696
|
<div className="flex min-w-0 items-center gap-3">
|
|
684
697
|
<div className="flex items-center gap-2">
|
|
685
698
|
<span className={`inline-block size-2 rounded-full ${statusColor}`} />
|
|
686
|
-
<span className="text-sm font-semibold text-
|
|
699
|
+
<span className="text-sm font-semibold text-text-main">Terminal</span>
|
|
687
700
|
</div>
|
|
688
|
-
<span className="truncate text-xs text-
|
|
701
|
+
<span role="status" aria-live="polite" className="truncate text-xs text-text-muted">
|
|
689
702
|
{statusText}
|
|
690
703
|
{meta.shell ? ` · ${meta.shell}` : ""}
|
|
691
704
|
{meta.mode ? ` · ${meta.mode}` : ""}
|
|
@@ -695,7 +708,7 @@ export default function TerminalPageClient() {
|
|
|
695
708
|
<button
|
|
696
709
|
type="button"
|
|
697
710
|
onClick={handleLock}
|
|
698
|
-
className="rounded-lg border border-
|
|
711
|
+
className="rounded-lg border border-border-subtle bg-surface px-3 py-1.5 text-xs font-medium text-text-muted transition hover:border-border hover:text-text-main"
|
|
699
712
|
title="Lock terminal (require password again)"
|
|
700
713
|
>
|
|
701
714
|
Lock
|
|
@@ -703,7 +716,7 @@ export default function TerminalPageClient() {
|
|
|
703
716
|
<button
|
|
704
717
|
type="button"
|
|
705
718
|
onClick={handleRestart}
|
|
706
|
-
className="rounded-lg border border-
|
|
719
|
+
className="rounded-lg border border-border-subtle bg-surface px-3 py-1.5 text-xs font-medium text-text-main transition hover:border-[color:var(--brand,#E56A4A)]/50 hover:bg-bg-alt"
|
|
707
720
|
>
|
|
708
721
|
New session
|
|
709
722
|
</button>
|
|
@@ -714,7 +727,7 @@ export default function TerminalPageClient() {
|
|
|
714
727
|
<div ref={hostRef} className="absolute inset-0 px-2 py-2 outline-none" />
|
|
715
728
|
</div>
|
|
716
729
|
|
|
717
|
-
<div className="shrink-0 border-t border-
|
|
730
|
+
<div className="shrink-0 border-t border-border-subtle px-4 py-1.5 text-[11px] text-text-muted">
|
|
718
731
|
Dashboard login + terminal password · click the black area then type · idle sessions close after 30m
|
|
719
732
|
</div>
|
|
720
733
|
</div>
|
|
@@ -721,6 +721,10 @@ async function testApiKeyConnection(connection, effectiveProxy = null) {
|
|
|
721
721
|
messages: [{ role: "user", content: "hi" }],
|
|
722
722
|
}),
|
|
723
723
|
}, effectiveProxy);
|
|
724
|
+
const body = await res.clone().json().catch(() => null);
|
|
725
|
+
if (body?.code === 11102) {
|
|
726
|
+
return { valid: false, inconclusive: true, error: "Test model is not available for this account" };
|
|
727
|
+
}
|
|
724
728
|
const valid = res.ok || res.status === 429 || res.status === 400;
|
|
725
729
|
return { valid, error: valid ? null : `Invalid API key (${res.status})` };
|
|
726
730
|
}
|
|
@@ -765,11 +769,13 @@ export async function testSingleConnection(id) {
|
|
|
765
769
|
|
|
766
770
|
const latencyMs = Date.now() - start;
|
|
767
771
|
|
|
768
|
-
const updateData =
|
|
769
|
-
|
|
770
|
-
|
|
771
|
-
|
|
772
|
-
|
|
772
|
+
const updateData = result.inconclusive
|
|
773
|
+
? {}
|
|
774
|
+
: {
|
|
775
|
+
testStatus: result.valid ? "active" : "error",
|
|
776
|
+
lastError: result.valid ? null : result.error,
|
|
777
|
+
lastErrorAt: result.valid ? null : new Date().toISOString(),
|
|
778
|
+
};
|
|
773
779
|
|
|
774
780
|
if (result.refreshed && result.newTokens) {
|
|
775
781
|
if (result.newTokens.accessToken) updateData.accessToken = result.newTokens.accessToken;
|
|
@@ -40,16 +40,17 @@ export default function Button({
|
|
|
40
40
|
className
|
|
41
41
|
)}
|
|
42
42
|
disabled={disabled || loading}
|
|
43
|
+
aria-busy={loading || undefined}
|
|
43
44
|
{...props}
|
|
44
45
|
>
|
|
45
46
|
{loading ? (
|
|
46
|
-
<span className="material-symbols-outlined animate-spin text-[18px]">progress_activity</span>
|
|
47
|
+
<span aria-hidden="true" className="material-symbols-outlined animate-spin text-[18px]">progress_activity</span>
|
|
47
48
|
) : icon ? (
|
|
48
|
-
<span className="material-symbols-outlined text-[18px]">{icon}</span>
|
|
49
|
+
<span aria-hidden="true" className="material-symbols-outlined text-[18px]">{icon}</span>
|
|
49
50
|
) : null}
|
|
50
51
|
{children}
|
|
51
52
|
{iconRight && !loading && (
|
|
52
|
-
<span className="material-symbols-outlined text-[18px]">{iconRight}</span>
|
|
53
|
+
<span aria-hidden="true" className="material-symbols-outlined text-[18px]">{iconRight}</span>
|
|
53
54
|
)}
|
|
54
55
|
</button>
|
|
55
56
|
);
|
|
@@ -25,9 +25,9 @@ export default function Card({
|
|
|
25
25
|
return (
|
|
26
26
|
<div
|
|
27
27
|
className={cn(
|
|
28
|
-
"card-3d border border-border-subtle rounded-[14px]",
|
|
28
|
+
"card-3d border border-border-subtle rounded-[14px] transition-[border-color,box-shadow,transform] duration-200",
|
|
29
29
|
elev && "card-3d-elev",
|
|
30
|
-
hover && "hover:border-brand-500/30 cursor-pointer",
|
|
30
|
+
hover && "hover:-translate-y-0.5 hover:border-brand-500/30 hover:shadow-[var(--shadow-warm)] cursor-pointer",
|
|
31
31
|
paddings[padding],
|
|
32
32
|
className
|
|
33
33
|
)}
|
|
@@ -261,7 +261,7 @@ export default function Header({ onMenuClick, showMenuButton = true }) {
|
|
|
261
261
|
};
|
|
262
262
|
|
|
263
263
|
return (
|
|
264
|
-
<header className="shrink-0 flex items-center justify-between gap-3 px-4 lg:px-8
|
|
264
|
+
<header className="shrink-0 flex min-h-16 items-center justify-between gap-3 px-4 lg:px-8 py-3 border-b border-border-subtle bg-surface/80 backdrop-blur-xl z-20">
|
|
265
265
|
{/* Mobile menu button */}
|
|
266
266
|
<div className="flex items-center gap-3 lg:hidden shrink-0">
|
|
267
267
|
{showMenuButton && (
|