@rsalmn/extremerouter 0.8.2 → 0.8.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +89 -89
- package/app/.next-cli-build/BUILD_ID +1 -1
- package/app/.next-cli-build/app-path-routes-manifest.json +9 -9
- package/app/.next-cli-build/build-manifest.json +4 -4
- package/app/.next-cli-build/prerender-manifest.json +3 -3
- package/app/.next-cli-build/react-loadable-manifest.json +1 -13
- package/app/.next-cli-build/required-server-files.json +23 -23
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/alerts/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/alerts/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/alerts/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/health/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/health/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/overview/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/overview/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/overview/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/swarm/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/swarm/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/swarm/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error/page.js +3 -3
- package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error.html +1 -1
- package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found/page.js +2 -2
- package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_not-found.html +1 -1
- package/app/.next-cli-build/server/app/_not-found.rsc +7 -6
- package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +7 -6
- package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +3 -2
- package/app/.next-cli-build/server/app/api/alerts/test/route.js +2 -2
- package/app/.next-cli-build/server/app/api/alerts/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/alerts/test/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/callback/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/start/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/test/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/reset-password/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/reset-password/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/reset-password/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/breaker/route.js +1 -1
- package/app/.next-cli-build/server/app/api/breaker/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/breaker/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cache/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cache/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cache/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +4 -4
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +3 -3
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +3 -3
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/validate-roles/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/validate-roles/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/validate-roles/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/dashboard/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/stream/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/start/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/status/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/stop/route.js +2 -2
- package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/stop/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/health/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/health/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/health/providers/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/health/route.js +1 -1
- package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/health/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/health/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/health/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/health/stream/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/init/route.js +1 -1
- package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/init/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
- package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/locale/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +2 -2
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +2 -2
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/availability/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/disabled/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/test/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/1min/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/1min/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/1min/import/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/qwen/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/qwen/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/qwen/import/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/wp-studio/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/wp-studio/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/wp-studio/import/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/zed/auto-import/route.js +38 -2
- package/app/.next-cli-build/server/app/api/oauth/zed/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/zed/auto-import/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/zed/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/zed/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/zed/import/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
- package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pricing/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/agnes-profile/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/agnes-profile/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/agnes-profile/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/freebuff-profile/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/freebuff-profile/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/freebuff-profile/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/health-timeline/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/health-timeline/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/health-timeline/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/inxora-profile/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/inxora-profile/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/inxora-profile/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/onemin-api-profile/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/onemin-api-profile/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/onemin-api-profile/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/onemin-profile/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/onemin-profile/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/onemin-profile/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/qwencloud-profile/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/qwencloud-profile/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/qwencloud-profile/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/v0-profile/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/v0-profile/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/v0-profile/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/vault-pool/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/vault-pool/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/vault-pool/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/zenmux-plans/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/zenmux-plans/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/zenmux-plans/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/install/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/install/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/status/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/require-login/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/swarm/active/route.js +1 -1
- package/app/.next-cli-build/server/app/api/swarm/active/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/swarm/active/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/swarm/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/swarm/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/swarm/stream/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/tags/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tags/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/save/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/send/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/disable/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/enable/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/status/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/chart/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/history/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/leaderboard/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/leaderboard/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/leaderboard/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/logs/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/meta/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/meta/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/meta/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/retry-stats/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/retry-stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/retry-stats/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stream/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[kind]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/callback/page.js +2 -2
- package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/callback.html +1 -1
- package/app/.next-cli-build/server/app/callback.rsc +8 -7
- package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +8 -7
- package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +3 -2
- package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +8 -7
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +8 -7
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +3 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
- package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/index.html +1 -1
- package/app/.next-cli-build/server/app/index.rsc +7 -6
- package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +7 -6
- package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +3 -2
- package/app/.next-cli-build/server/app/landing/page.js +2 -2
- package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/landing.html +1 -1
- package/app/.next-cli-build/server/app/landing.rsc +8 -7
- package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +8 -7
- package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +3 -2
- package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login/page.js +2 -2
- package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/login.html +1 -1
- package/app/.next-cli-build/server/app/login.rsc +8 -7
- package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +8 -7
- package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +3 -2
- package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/page.js +2 -2
- package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app-paths-manifest.json +9 -9
- package/app/.next-cli-build/server/chunks/1212.js +1 -0
- package/app/.next-cli-build/server/chunks/1241.js +1 -1
- package/app/.next-cli-build/server/chunks/1350.js +1 -1
- package/app/.next-cli-build/server/chunks/1719.js +1 -1
- package/app/.next-cli-build/server/chunks/212.js +1 -1
- package/app/.next-cli-build/server/chunks/2231.js +1 -1
- package/app/.next-cli-build/server/chunks/319.js +3 -3
- package/app/.next-cli-build/server/chunks/{2926.js → 3437.js} +9 -9
- package/app/.next-cli-build/server/chunks/3735.js +1 -1
- package/app/.next-cli-build/server/chunks/4046.js +1 -0
- package/app/.next-cli-build/server/chunks/5330.js +66 -66
- package/app/.next-cli-build/server/chunks/5612.js +1 -1
- package/app/.next-cli-build/server/chunks/5615.js +1 -1
- package/app/.next-cli-build/server/chunks/5852.js +1 -1
- package/app/.next-cli-build/server/chunks/5961.js +1 -1
- package/app/.next-cli-build/server/chunks/6070.js +1 -1
- package/app/.next-cli-build/server/chunks/{7152.js → 6482.js} +2 -2
- package/app/.next-cli-build/server/chunks/6686.js +1 -1
- package/app/.next-cli-build/server/chunks/6777.js +1 -1
- package/app/.next-cli-build/server/chunks/7187.js +1 -1
- package/app/.next-cli-build/server/chunks/7218.js +1 -0
- package/app/.next-cli-build/server/chunks/7410.js +1 -0
- package/app/.next-cli-build/server/chunks/7566.js +3 -0
- package/app/.next-cli-build/server/chunks/7774.js +18 -18
- package/app/.next-cli-build/server/chunks/7872.js +1 -1
- package/app/.next-cli-build/server/chunks/7965.js +1 -1
- package/app/.next-cli-build/server/chunks/8238.js +1 -1
- package/app/.next-cli-build/server/chunks/8271.js +1 -1
- package/app/.next-cli-build/server/chunks/8520.js +1 -1
- package/app/.next-cli-build/server/chunks/8802.js +2 -0
- package/app/.next-cli-build/server/chunks/8895.js +6 -6
- package/app/.next-cli-build/server/chunks/{4502.js → 8955.js} +2 -2
- package/app/.next-cli-build/server/chunks/9422.js +1 -1
- package/app/.next-cli-build/server/chunks/9609.js +1 -1
- package/app/.next-cli-build/server/chunks/9703.js +1 -1
- package/app/.next-cli-build/server/chunks/9903.js +1 -1
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware-react-loadable-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware.js +5 -5
- package/app/.next-cli-build/server/next-font-manifest.js +1 -1
- package/app/.next-cli-build/server/next-font-manifest.json +1 -1
- package/app/.next-cli-build/server/pages/404.html +1 -1
- package/app/.next-cli-build/server/pages/500.html +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
- package/app/.next-cli-build/static/chunks/{1321-aa0d45362a7ebc08.js → 1321-5792bb21361dcd65.js} +1 -1
- package/app/.next-cli-build/static/chunks/705-cfe5cd65ea2dc6f1.js +1 -0
- package/app/.next-cli-build/static/chunks/8105-37d0f6450b27ac6b.js +1 -0
- package/app/.next-cli-build/static/chunks/{8720-bbafc2ad7d186ebd.js → 8982-6d1803817450bcd4.js} +2 -2
- package/app/.next-cli-build/static/chunks/981-777b2911f938c030.js +3 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/alerts/{page-920869c698a8b3cf.js → page-c263cd784e69e6f1.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/{page-75247ad22e97f7cc.js → page-ecd3a85a40e51c66.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-3c3074cf3f61df46.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/{page-8b043b8296199edb.js → page-f7cdc992cb310077.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-648e105b4f37fef0.js +3 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-959b3ee3c662de33.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-5689c88f2746c37a.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/health/{page-ec1dc4e44702257d.js → page-133cf1aa2ce53c87.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-b635b8b051acb5a5.js → page-3828106aa4f490c1.js} +2 -2
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/{page-d9958dfec1d2e28e.js → page-e086fed7677d4852.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-a36b3b632d16f4cb.js → page-f36e5ac11783fd1e.js} +2 -2
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/page-e794909abbc7a09a.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/page-1d972fd3baee7474.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/overview/page-2dae733c8e1582bf.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-7325c65533e4cf60.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/playground/{page-dc8e49b1fe778d9c.js → page-e7ba910803086460.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-0f877a8a2550a1ea.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-2e82495d63f499e9.js → page-201ce34cf7a0a9ed.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/{page-8965749fb7d0fac3.js → page-bcf9d97ab4dc20d9.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-5b11b61863963cad.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/proxy-pools/{page-843c810c0818ce1b.js → page-58d8d0fa5523ff95.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/{page-9a44fa1600f3ff42.js → page-0be4cac4f06ef3e2.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/{page-97c920b552343488.js → page-a8b151d5ae9004ea.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/swarm/page-594a59006196a03a.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-d57c129c03c9cb36.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/{page-a8af04fbd6293d2f.js → page-61d162d7a7f88a11.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/{page-bd421513fd2dc28a.js → page-483f01fd35d212f5.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/{layout-9144cc5f6a208199.js → layout-d62e22634bbd6c94.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/_not-found/{page-732ac0fa56005849.js → page-0161671512f52984.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/callback/{page-4e8ab9d9128acffb.js → page-20e990994d8da6d3.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/{page-d4eb2ba84eef2143.js → page-bb9f307074c5c23a.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/landing/{page-ade86a48ca5749f4.js → page-468c5cb1d127c02a.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/layout-10bff7b57a2a3c2c.js +1 -0
- package/app/.next-cli-build/static/chunks/app/login/page-32ab5d7c75651107.js +1 -0
- package/app/.next-cli-build/static/chunks/main-ab3c4d38db15f747.js +5 -0
- package/app/.next-cli-build/static/chunks/main-app-f661afc91c813cfe.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/global-error-8fecb2690f5e9ae2.js +1 -0
- package/app/.next-cli-build/static/chunks/webpack-c2bac8d80aa27536.js +1 -0
- package/app/.next-cli-build/static/css/27a3eadf22014a5b.css +1 -0
- package/app/custom-server.js +9 -0
- package/app/package.json +5 -4
- package/app/public/i18n/literals/ar.json +195 -195
- package/app/public/i18n/literals/bn.json +195 -195
- package/app/public/i18n/literals/cs.json +195 -195
- package/app/public/i18n/literals/da.json +195 -195
- package/app/public/i18n/literals/de.json +195 -195
- package/app/public/i18n/literals/el.json +195 -195
- package/app/public/i18n/literals/es.json +195 -195
- package/app/public/i18n/literals/fi.json +195 -195
- package/app/public/i18n/literals/fr.json +195 -195
- package/app/public/i18n/literals/he.json +195 -195
- package/app/public/i18n/literals/hi.json +195 -195
- package/app/public/i18n/literals/hu.json +195 -195
- package/app/public/i18n/literals/id.json +195 -195
- package/app/public/i18n/literals/it.json +195 -195
- package/app/public/i18n/literals/ja.json +195 -195
- package/app/public/i18n/literals/ko.json +195 -195
- package/app/public/i18n/literals/nl.json +195 -195
- package/app/public/i18n/literals/no.json +195 -195
- package/app/public/i18n/literals/pl.json +195 -195
- package/app/public/i18n/literals/pt-BR.json +195 -195
- package/app/public/i18n/literals/pt-PT.json +195 -195
- package/app/public/i18n/literals/ro.json +195 -195
- package/app/public/i18n/literals/ru.json +195 -195
- package/app/public/i18n/literals/sv.json +195 -195
- package/app/public/i18n/literals/th.json +195 -195
- package/app/public/i18n/literals/tl.json +195 -195
- package/app/public/i18n/literals/tr.json +195 -195
- package/app/public/i18n/literals/uk.json +195 -195
- package/app/public/i18n/literals/ur.json +195 -195
- package/app/public/i18n/literals/vi.json +195 -195
- package/app/public/i18n/literals/zh-CN.json +773 -773
- package/app/public/i18n/literals/zh-TW.json +195 -195
- package/app/public/providers/agnes-api.svg +6 -6
- package/app/public/providers/agnes-web.svg +6 -6
- package/app/public/providers/alibaba-cn.svg +11 -11
- package/app/public/providers/alibaba.svg +11 -11
- package/app/public/providers/bynara.svg +22 -22
- package/app/public/providers/devin.svg +5 -5
- package/app/public/providers/featherless.svg +8 -8
- package/app/public/providers/forge.svg +9 -9
- package/app/public/providers/freebuff-web.svg +6 -6
- package/app/public/providers/hcnsec.svg +10 -10
- package/app/public/providers/inxorastudio-web.svg +4 -4
- package/app/public/providers/inxorastudio.svg +4 -4
- package/app/public/providers/moonshot.svg +8 -8
- package/app/public/providers/openvecta.svg +7 -7
- package/app/public/providers/perplexity-agent.svg +13 -13
- package/app/public/providers/qwen-cloud.svg +1 -1
- package/app/public/providers/qwencloud.svg +6 -6
- package/app/public/providers/stepfun.svg +53 -53
- package/app/public/providers/tokenrouter.svg +15 -15
- package/app/public/providers/wp-studio.svg +11 -11
- package/app/public/providers/zed.svg +11 -11
- package/app/public/providers/zenmux-free.svg +9 -9
- package/app/server.js +1 -1
- package/app/src/lib/db/adapters/sqljsAdapter.js +115 -115
- package/app/src/lib/db/migrate.js +286 -286
- package/app/src/lib/network/pickProxyPoolId.js +38 -38
- package/app/src/lib/updater/updater.js +235 -235
- package/app/src/mitm/server.js +2 -2
- package/cli.js +830 -830
- package/package.json +66 -66
- package/src/cli/api/client.js +556 -556
- package/src/cli/menus/cliTools.js +618 -618
- package/src/cli/terminalUI.js +121 -121
- package/src/cli/tray/autostart.js +306 -306
- package/src/cli/tray/tray.js +322 -322
- package/src/cli/tray/tray.ps1 +130 -130
- package/app/.next-cli-build/server/chunks/1051.js +0 -1
- package/app/.next-cli-build/server/chunks/1216.js +0 -3
- package/app/.next-cli-build/server/chunks/541.js +0 -1
- package/app/.next-cli-build/server/chunks/6316.js +0 -2
- package/app/.next-cli-build/server/chunks/9140.js +0 -1
- package/app/.next-cli-build/server/chunks/9630.js +0 -1
- package/app/.next-cli-build/static/chunks/1696-bafe4b44a7a0439e.js +0 -3
- package/app/.next-cli-build/static/chunks/1966.b8f83f7ba376c962.js +0 -1
- package/app/.next-cli-build/static/chunks/3899.3f761f7e3a944e8c.js +0 -1
- package/app/.next-cli-build/static/chunks/705-b7d7b61f41806f0d.js +0 -1
- package/app/.next-cli-build/static/chunks/8105-204edc780a329497.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-cd77e53dbcd46b6c.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-dbf52954681b093c.js +0 -3
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-a8c4d8c681e19868.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-408845bd809806a6.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/page-92a0799a23d869b3.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/page-a67cd1c5f77da355.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/overview/page-262fa6911888d4f1.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-f644da989b8878c3.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-aa26b25a26b5dac8.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-96d3eb0dfde0711b.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/swarm/page-9739651f4f19cec6.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-2f3b8761d7b32ec0.js +0 -1
- package/app/.next-cli-build/static/chunks/app/layout-16b611f4f5717ccd.js +0 -1
- package/app/.next-cli-build/static/chunks/app/login/page-0831b035aa4c0f17.js +0 -1
- package/app/.next-cli-build/static/chunks/main-28015457a328b97c.js +0 -5
- package/app/.next-cli-build/static/chunks/main-app-705d8c306f358a5f.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/global-error-22e44aa316880902.js +0 -1
- package/app/.next-cli-build/static/chunks/webpack-a990cabb6976f421.js +0 -1
- package/app/.next-cli-build/static/css/68d66160ca549ddc.css +0 -1
- package/app/cli/.build-home/AppData/Local/npm-cache/_update-notifier-last-checked +0 -0
- package/app/cli/.build-home/AppData/Roaming/extremerouter/.migrated-from +0 -1
- package/app/cli/.build-home/AppData/Roaming/extremerouter/db/backups/schema-3-to-4-0.8.0-20260802-152036/data.sqlite +0 -0
- package/app/cli/.build-home/AppData/Roaming/extremerouter/db/backups/upgrade-0.7.8-to-0.7.9-0.7.9-20260729-181011/data.sqlite +0 -0
- package/app/cli/.build-home/AppData/Roaming/extremerouter/db/backups/upgrade-0.7.9-to-0.8.0-0.8.0-20260729-213634/data.sqlite +0 -0
- package/app/cli/.build-home/AppData/Roaming/extremerouter/db/backups/upgrade-0.8.0-to-0.8.1-0.8.1-20260802-152517/data.sqlite +0 -0
- package/app/cli/.build-home/AppData/Roaming/extremerouter/db/data.sqlite +0 -0
- package/app/cli/.build-home/AppData/Roaming/extremerouter/db/data.sqlite-shm +0 -0
- package/app/cli/.build-home/AppData/Roaming/extremerouter/db/data.sqlite-wal +0 -0
- package/app/cli/.build-home/AppData/Roaming/extremerouter/jwt-secret +0 -1
- package/app/cli/.build-home/AppData/Roaming/extremerouter/machine-id +0 -1
- package/app/cli/.build-home/AppData/Roaming/nextjs-nodejs/Config/config.json +0 -7
- /package/app/.next-cli-build/static/{S-pbWChrUiCkwFyfx4Su3 → j7bBgtavtSkTBPfbmetr9}/_buildManifest.js +0 -0
- /package/app/.next-cli-build/static/{S-pbWChrUiCkwFyfx4Su3 → j7bBgtavtSkTBPfbmetr9}/_ssgManifest.js +0 -0
|
@@ -1,306 +1,306 @@
|
|
|
1
|
-
const fs = require("fs");
|
|
2
|
-
const path = require("path");
|
|
3
|
-
const os = require("os");
|
|
4
|
-
const { execSync } = require("child_process");
|
|
5
|
-
|
|
6
|
-
const APP_NAME = "extremerouter";
|
|
7
|
-
const APP_LABEL = "com.extremerouter.autostart";
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Resolve the absolute path to this package's cli.js.
|
|
11
|
-
*
|
|
12
|
-
* Order of preference:
|
|
13
|
-
* 1. Explicit `cliPath` argument — cleanest, used when called from running
|
|
14
|
-
* cli.js with `__filename`.
|
|
15
|
-
* 2. `process.argv[1]` if it's our cli.js — true when extremerouter is currently
|
|
16
|
-
* running and the tray menu fires this code path.
|
|
17
|
-
* 3. Compute relative to this file's own location. autostart.js lives at
|
|
18
|
-
* `<pkg>/src/cli/tray/autostart.js`, so cli.js is three levels up.
|
|
19
|
-
* This works for any global install layout (nvm, Volta, asdf, Homebrew,
|
|
20
|
-
* /usr/local, etc.) without depending on `npm bin -g` (removed in npm 9)
|
|
21
|
-
* or a hardcoded `/usr/local/...` path.
|
|
22
|
-
*
|
|
23
|
-
* Returns null if no candidate exists — callers should not write an autostart
|
|
24
|
-
* entry pointing at a non-existent script.
|
|
25
|
-
*/
|
|
26
|
-
function getCliJsPath(cliPath) {
|
|
27
|
-
if (cliPath) {
|
|
28
|
-
const resolved = path.resolve(cliPath);
|
|
29
|
-
if (fs.existsSync(resolved)) return resolved;
|
|
30
|
-
}
|
|
31
|
-
if (process.argv[1]) {
|
|
32
|
-
const resolved = path.resolve(process.argv[1]);
|
|
33
|
-
if (path.basename(resolved) === "cli.js" && fs.existsSync(resolved)) {
|
|
34
|
-
return resolved;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
const computed = path.resolve(__dirname, "..", "..", "..", "cli.js");
|
|
38
|
-
if (fs.existsSync(computed)) return computed;
|
|
39
|
-
return null;
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
/**
|
|
43
|
-
* Enable auto startup on OS boot
|
|
44
|
-
* @param {string} cliPath - Optional path to cli.js (defaults to auto-detect)
|
|
45
|
-
* @returns {boolean} success
|
|
46
|
-
*/
|
|
47
|
-
function enableAutoStart(cliPath) {
|
|
48
|
-
const platform = process.platform;
|
|
49
|
-
|
|
50
|
-
if (!["darwin", "win32", "linux"].includes(platform)) return false;
|
|
51
|
-
if (platform === "linux" && !process.env.DISPLAY) return false;
|
|
52
|
-
|
|
53
|
-
try {
|
|
54
|
-
if (platform === "darwin") return enableMacOS(cliPath);
|
|
55
|
-
if (platform === "win32") return enableWindows(cliPath);
|
|
56
|
-
if (platform === "linux") return enableLinux(cliPath);
|
|
57
|
-
} catch (err) {
|
|
58
|
-
// Silent fail — autostart is optional
|
|
59
|
-
}
|
|
60
|
-
return false;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* Disable auto startup
|
|
65
|
-
* @returns {boolean} success
|
|
66
|
-
*/
|
|
67
|
-
function disableAutoStart() {
|
|
68
|
-
const platform = process.platform;
|
|
69
|
-
try {
|
|
70
|
-
if (platform === "darwin") return disableMacOS();
|
|
71
|
-
if (platform === "win32") return disableWindows();
|
|
72
|
-
if (platform === "linux") return disableLinux();
|
|
73
|
-
} catch (err) {}
|
|
74
|
-
return false;
|
|
75
|
-
}
|
|
76
|
-
|
|
77
|
-
/**
|
|
78
|
-
* Check if autostart is enabled.
|
|
79
|
-
*
|
|
80
|
-
* On macOS, both the plist file and the launchd registration must be present —
|
|
81
|
-
* otherwise the tray menu would lie about the state (showing "✓ Enabled" even
|
|
82
|
-
* when launchd has the agent in a failed state or hasn't loaded it).
|
|
83
|
-
*/
|
|
84
|
-
function isAutoStartEnabled() {
|
|
85
|
-
const platform = process.platform;
|
|
86
|
-
|
|
87
|
-
try {
|
|
88
|
-
if (platform === "darwin") {
|
|
89
|
-
const plistPath = path.join(os.homedir(), "Library", "LaunchAgents", `${APP_LABEL}.plist`);
|
|
90
|
-
if (!fs.existsSync(plistPath)) return false;
|
|
91
|
-
try {
|
|
92
|
-
execSync(`launchctl list ${APP_LABEL}`, {
|
|
93
|
-
stdio: ["ignore", "ignore", "ignore"],
|
|
94
|
-
timeout: 3000
|
|
95
|
-
});
|
|
96
|
-
return true;
|
|
97
|
-
} catch (e) {
|
|
98
|
-
return false;
|
|
99
|
-
}
|
|
100
|
-
} else if (platform === "win32") {
|
|
101
|
-
const startupPath = path.join(process.env.APPDATA || "", "Microsoft", "Windows", "Start Menu", "Programs", "Startup", `${APP_NAME}.vbs`);
|
|
102
|
-
return fs.existsSync(startupPath);
|
|
103
|
-
} else if (platform === "linux") {
|
|
104
|
-
const desktopPath = path.join(os.homedir(), ".config", "autostart", `${APP_NAME}.desktop`);
|
|
105
|
-
return fs.existsSync(desktopPath);
|
|
106
|
-
}
|
|
107
|
-
} catch (e) {}
|
|
108
|
-
return false;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
// ============ macOS ============
|
|
112
|
-
|
|
113
|
-
/**
|
|
114
|
-
* Returns true when the current Node process IS the running instance that
|
|
115
|
-
* launchd is managing under our agent label.
|
|
116
|
-
*
|
|
117
|
-
* `launchctl unload <plist>` (and `load`) for an Aqua user-domain agent sends
|
|
118
|
-
* SIGTERM to the running process. When the running extremerouter cli.js was itself
|
|
119
|
-
* spawned by the autostart launchd agent (i.e. user enabled autostart at
|
|
120
|
-
* some point, then rebooted, then clicked the tray icon's "Disable
|
|
121
|
-
* Auto-start" menu item), an unload would kill the very process executing
|
|
122
|
-
* the click handler — and the tray icon would disappear instead of the menu
|
|
123
|
-
* label flipping back to "Enable Auto-start". This helper lets the enable
|
|
124
|
-
* and disable paths sidestep that by skipping launchctl when we'd otherwise
|
|
125
|
-
* be killing ourselves.
|
|
126
|
-
*/
|
|
127
|
-
function isAgentSelfMacOS() {
|
|
128
|
-
try {
|
|
129
|
-
const output = execSync(`launchctl list ${APP_LABEL}`, {
|
|
130
|
-
encoding: "utf8",
|
|
131
|
-
stdio: ["ignore", "pipe", "ignore"],
|
|
132
|
-
timeout: 3000
|
|
133
|
-
});
|
|
134
|
-
const match = output.match(/"PID"\s*=\s*(\d+)/);
|
|
135
|
-
return !!(match && parseInt(match[1], 10) === process.pid);
|
|
136
|
-
} catch (e) {
|
|
137
|
-
return false;
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
function enableMacOS(cliPath) {
|
|
142
|
-
const launchAgentsDir = path.join(os.homedir(), "Library", "LaunchAgents");
|
|
143
|
-
const plistPath = path.join(launchAgentsDir, `${APP_LABEL}.plist`);
|
|
144
|
-
|
|
145
|
-
if (!fs.existsSync(launchAgentsDir)) {
|
|
146
|
-
fs.mkdirSync(launchAgentsDir, { recursive: true });
|
|
147
|
-
}
|
|
148
|
-
|
|
149
|
-
const nodePath = process.execPath;
|
|
150
|
-
const routerScript = getCliJsPath(cliPath);
|
|
151
|
-
// Don't write a broken plist that references a non-existent script.
|
|
152
|
-
if (!routerScript) return false;
|
|
153
|
-
|
|
154
|
-
// Invoke node + cli.js directly with absolute paths — no shell wrapper.
|
|
155
|
-
// The previous design ran `zsh -l -c "..."` so a login shell would source
|
|
156
|
-
// nvm/.zshrc and set PATH; that's fragile (nvm.sh sourcing varies by user,
|
|
157
|
-
// some setups don't put node on PATH from a non-interactive login shell).
|
|
158
|
-
// EnvironmentVariables.PATH explicitly includes node's bin dir so child
|
|
159
|
-
// processes spawned by cli.js (npm install at runtime, etc.) resolve.
|
|
160
|
-
const launchPath = `${path.dirname(nodePath)}:/usr/local/bin:/usr/bin:/bin`;
|
|
161
|
-
|
|
162
|
-
const plistContent = `<?xml version="1.0" encoding="UTF-8"?>
|
|
163
|
-
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
164
|
-
<plist version="1.0">
|
|
165
|
-
<dict>
|
|
166
|
-
<key>Label</key>
|
|
167
|
-
<string>${APP_LABEL}</string>
|
|
168
|
-
<key>ProgramArguments</key>
|
|
169
|
-
<array>
|
|
170
|
-
<string>${nodePath}</string>
|
|
171
|
-
<string>${routerScript}</string>
|
|
172
|
-
<string>--tray</string>
|
|
173
|
-
<string>--skip-update</string>
|
|
174
|
-
</array>
|
|
175
|
-
<key>EnvironmentVariables</key>
|
|
176
|
-
<dict>
|
|
177
|
-
<key>PATH</key>
|
|
178
|
-
<string>${launchPath}</string>
|
|
179
|
-
</dict>
|
|
180
|
-
<key>RunAtLoad</key>
|
|
181
|
-
<true/>
|
|
182
|
-
<key>KeepAlive</key>
|
|
183
|
-
<false/>
|
|
184
|
-
<key>StandardOutPath</key>
|
|
185
|
-
<string>/tmp/extremerouter.log</string>
|
|
186
|
-
<key>StandardErrorPath</key>
|
|
187
|
-
<string>/tmp/extremerouter.error.log</string>
|
|
188
|
-
</dict>
|
|
189
|
-
</plist>`;
|
|
190
|
-
|
|
191
|
-
fs.writeFileSync(plistPath, plistContent);
|
|
192
|
-
|
|
193
|
-
// If we're the running agent already, launchctl unload/load would send
|
|
194
|
-
// ourselves SIGTERM. Skip it — the plist file is updated on disk and
|
|
195
|
-
// launchd will pick it up at next login. isAutoStartEnabled() will still
|
|
196
|
-
// return true because launchctl already has the agent loaded.
|
|
197
|
-
if (isAgentSelfMacOS()) {
|
|
198
|
-
return true;
|
|
199
|
-
}
|
|
200
|
-
|
|
201
|
-
// Register with launchd in the current session. Without this, the agent
|
|
202
|
-
// only takes effect on the next user login and the user has no signal that
|
|
203
|
-
// anything actually happened. `unload` first defends against re-enable
|
|
204
|
-
// replacing an existing plist.
|
|
205
|
-
try {
|
|
206
|
-
execSync(`launchctl unload "${plistPath}"`, { stdio: "ignore" });
|
|
207
|
-
} catch (e) {}
|
|
208
|
-
try {
|
|
209
|
-
execSync(`launchctl load -w "${plistPath}"`, { stdio: "ignore" });
|
|
210
|
-
} catch (e) {
|
|
211
|
-
// Even if load fails, the plist is on disk and will be picked up at next
|
|
212
|
-
// login; report success based on the file write.
|
|
213
|
-
}
|
|
214
|
-
return true;
|
|
215
|
-
}
|
|
216
|
-
|
|
217
|
-
function disableMacOS() {
|
|
218
|
-
const plistPath = path.join(os.homedir(), "Library", "LaunchAgents", `${APP_LABEL}.plist`);
|
|
219
|
-
|
|
220
|
-
// Don't kill ourselves: when the current process is the running agent,
|
|
221
|
-
// `launchctl unload` would send SIGTERM and the user clicking
|
|
222
|
-
// "Disable Auto-start" from the tray menu would lose their tray icon
|
|
223
|
-
// instead of just flipping the menu label. Skip the unload — removing the
|
|
224
|
-
// plist file is enough to prevent the agent from starting on next login.
|
|
225
|
-
if (!isAgentSelfMacOS()) {
|
|
226
|
-
try {
|
|
227
|
-
execSync(`launchctl unload "${plistPath}"`, { stdio: "ignore" });
|
|
228
|
-
} catch (e) {}
|
|
229
|
-
}
|
|
230
|
-
|
|
231
|
-
if (fs.existsSync(plistPath)) {
|
|
232
|
-
fs.unlinkSync(plistPath);
|
|
233
|
-
}
|
|
234
|
-
return true;
|
|
235
|
-
}
|
|
236
|
-
|
|
237
|
-
// ============ Windows ============
|
|
238
|
-
|
|
239
|
-
function enableWindows(cliPath) {
|
|
240
|
-
const startupDir = path.join(process.env.APPDATA || "", "Microsoft", "Windows", "Start Menu", "Programs", "Startup");
|
|
241
|
-
const vbsPath = path.join(startupDir, `${APP_NAME}.vbs`);
|
|
242
|
-
|
|
243
|
-
if (!fs.existsSync(startupDir)) return false;
|
|
244
|
-
|
|
245
|
-
const nodePath = process.execPath;
|
|
246
|
-
const routerScript = getCliJsPath(cliPath);
|
|
247
|
-
if (!routerScript) return false;
|
|
248
|
-
|
|
249
|
-
// Run node + cli.js directly, hidden window. Avoids the fragile
|
|
250
|
-
// `extremerouter.cmd` lookup that depended on the npm prefix path.
|
|
251
|
-
const vbsContent = `Set WshShell = CreateObject("WScript.Shell")
|
|
252
|
-
WshShell.Run """${nodePath}"" ""${routerScript}"" --tray --skip-update", 0, False
|
|
253
|
-
`;
|
|
254
|
-
fs.writeFileSync(vbsPath, vbsContent);
|
|
255
|
-
return true;
|
|
256
|
-
}
|
|
257
|
-
|
|
258
|
-
function disableWindows() {
|
|
259
|
-
const vbsPath = path.join(process.env.APPDATA || "", "Microsoft", "Windows", "Start Menu", "Programs", "Startup", `${APP_NAME}.vbs`);
|
|
260
|
-
if (fs.existsSync(vbsPath)) {
|
|
261
|
-
fs.unlinkSync(vbsPath);
|
|
262
|
-
}
|
|
263
|
-
return true;
|
|
264
|
-
}
|
|
265
|
-
|
|
266
|
-
// ============ Linux ============
|
|
267
|
-
|
|
268
|
-
function enableLinux(cliPath) {
|
|
269
|
-
const autostartDir = path.join(os.homedir(), ".config", "autostart");
|
|
270
|
-
const desktopPath = path.join(autostartDir, `${APP_NAME}.desktop`);
|
|
271
|
-
|
|
272
|
-
if (!fs.existsSync(autostartDir)) {
|
|
273
|
-
try { fs.mkdirSync(autostartDir, { recursive: true }); }
|
|
274
|
-
catch (e) { return false; }
|
|
275
|
-
}
|
|
276
|
-
|
|
277
|
-
const nodePath = process.execPath;
|
|
278
|
-
const routerScript = getCliJsPath(cliPath);
|
|
279
|
-
if (!routerScript) return false;
|
|
280
|
-
|
|
281
|
-
const desktopContent = `[Desktop Entry]
|
|
282
|
-
Type=Application
|
|
283
|
-
Name=ExtremeRouter
|
|
284
|
-
Comment=ExtremeRouter API Proxy
|
|
285
|
-
Exec=${nodePath} ${routerScript} --tray --skip-update
|
|
286
|
-
Hidden=false
|
|
287
|
-
NoDisplay=false
|
|
288
|
-
X-GNOME-Autostart-enabled=true
|
|
289
|
-
`;
|
|
290
|
-
fs.writeFileSync(desktopPath, desktopContent);
|
|
291
|
-
return true;
|
|
292
|
-
}
|
|
293
|
-
|
|
294
|
-
function disableLinux() {
|
|
295
|
-
const desktopPath = path.join(os.homedir(), ".config", "autostart", `${APP_NAME}.desktop`);
|
|
296
|
-
if (fs.existsSync(desktopPath)) {
|
|
297
|
-
fs.unlinkSync(desktopPath);
|
|
298
|
-
}
|
|
299
|
-
return true;
|
|
300
|
-
}
|
|
301
|
-
|
|
302
|
-
module.exports = {
|
|
303
|
-
enableAutoStart,
|
|
304
|
-
disableAutoStart,
|
|
305
|
-
isAutoStartEnabled
|
|
306
|
-
};
|
|
1
|
+
const fs = require("fs");
|
|
2
|
+
const path = require("path");
|
|
3
|
+
const os = require("os");
|
|
4
|
+
const { execSync } = require("child_process");
|
|
5
|
+
|
|
6
|
+
const APP_NAME = "extremerouter";
|
|
7
|
+
const APP_LABEL = "com.extremerouter.autostart";
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* Resolve the absolute path to this package's cli.js.
|
|
11
|
+
*
|
|
12
|
+
* Order of preference:
|
|
13
|
+
* 1. Explicit `cliPath` argument — cleanest, used when called from running
|
|
14
|
+
* cli.js with `__filename`.
|
|
15
|
+
* 2. `process.argv[1]` if it's our cli.js — true when extremerouter is currently
|
|
16
|
+
* running and the tray menu fires this code path.
|
|
17
|
+
* 3. Compute relative to this file's own location. autostart.js lives at
|
|
18
|
+
* `<pkg>/src/cli/tray/autostart.js`, so cli.js is three levels up.
|
|
19
|
+
* This works for any global install layout (nvm, Volta, asdf, Homebrew,
|
|
20
|
+
* /usr/local, etc.) without depending on `npm bin -g` (removed in npm 9)
|
|
21
|
+
* or a hardcoded `/usr/local/...` path.
|
|
22
|
+
*
|
|
23
|
+
* Returns null if no candidate exists — callers should not write an autostart
|
|
24
|
+
* entry pointing at a non-existent script.
|
|
25
|
+
*/
|
|
26
|
+
function getCliJsPath(cliPath) {
|
|
27
|
+
if (cliPath) {
|
|
28
|
+
const resolved = path.resolve(cliPath);
|
|
29
|
+
if (fs.existsSync(resolved)) return resolved;
|
|
30
|
+
}
|
|
31
|
+
if (process.argv[1]) {
|
|
32
|
+
const resolved = path.resolve(process.argv[1]);
|
|
33
|
+
if (path.basename(resolved) === "cli.js" && fs.existsSync(resolved)) {
|
|
34
|
+
return resolved;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
const computed = path.resolve(__dirname, "..", "..", "..", "cli.js");
|
|
38
|
+
if (fs.existsSync(computed)) return computed;
|
|
39
|
+
return null;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Enable auto startup on OS boot
|
|
44
|
+
* @param {string} cliPath - Optional path to cli.js (defaults to auto-detect)
|
|
45
|
+
* @returns {boolean} success
|
|
46
|
+
*/
|
|
47
|
+
function enableAutoStart(cliPath) {
|
|
48
|
+
const platform = process.platform;
|
|
49
|
+
|
|
50
|
+
if (!["darwin", "win32", "linux"].includes(platform)) return false;
|
|
51
|
+
if (platform === "linux" && !process.env.DISPLAY) return false;
|
|
52
|
+
|
|
53
|
+
try {
|
|
54
|
+
if (platform === "darwin") return enableMacOS(cliPath);
|
|
55
|
+
if (platform === "win32") return enableWindows(cliPath);
|
|
56
|
+
if (platform === "linux") return enableLinux(cliPath);
|
|
57
|
+
} catch (err) {
|
|
58
|
+
// Silent fail — autostart is optional
|
|
59
|
+
}
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Disable auto startup
|
|
65
|
+
* @returns {boolean} success
|
|
66
|
+
*/
|
|
67
|
+
function disableAutoStart() {
|
|
68
|
+
const platform = process.platform;
|
|
69
|
+
try {
|
|
70
|
+
if (platform === "darwin") return disableMacOS();
|
|
71
|
+
if (platform === "win32") return disableWindows();
|
|
72
|
+
if (platform === "linux") return disableLinux();
|
|
73
|
+
} catch (err) {}
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Check if autostart is enabled.
|
|
79
|
+
*
|
|
80
|
+
* On macOS, both the plist file and the launchd registration must be present —
|
|
81
|
+
* otherwise the tray menu would lie about the state (showing "✓ Enabled" even
|
|
82
|
+
* when launchd has the agent in a failed state or hasn't loaded it).
|
|
83
|
+
*/
|
|
84
|
+
function isAutoStartEnabled() {
|
|
85
|
+
const platform = process.platform;
|
|
86
|
+
|
|
87
|
+
try {
|
|
88
|
+
if (platform === "darwin") {
|
|
89
|
+
const plistPath = path.join(os.homedir(), "Library", "LaunchAgents", `${APP_LABEL}.plist`);
|
|
90
|
+
if (!fs.existsSync(plistPath)) return false;
|
|
91
|
+
try {
|
|
92
|
+
execSync(`launchctl list ${APP_LABEL}`, {
|
|
93
|
+
stdio: ["ignore", "ignore", "ignore"],
|
|
94
|
+
timeout: 3000
|
|
95
|
+
});
|
|
96
|
+
return true;
|
|
97
|
+
} catch (e) {
|
|
98
|
+
return false;
|
|
99
|
+
}
|
|
100
|
+
} else if (platform === "win32") {
|
|
101
|
+
const startupPath = path.join(process.env.APPDATA || "", "Microsoft", "Windows", "Start Menu", "Programs", "Startup", `${APP_NAME}.vbs`);
|
|
102
|
+
return fs.existsSync(startupPath);
|
|
103
|
+
} else if (platform === "linux") {
|
|
104
|
+
const desktopPath = path.join(os.homedir(), ".config", "autostart", `${APP_NAME}.desktop`);
|
|
105
|
+
return fs.existsSync(desktopPath);
|
|
106
|
+
}
|
|
107
|
+
} catch (e) {}
|
|
108
|
+
return false;
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
// ============ macOS ============
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Returns true when the current Node process IS the running instance that
|
|
115
|
+
* launchd is managing under our agent label.
|
|
116
|
+
*
|
|
117
|
+
* `launchctl unload <plist>` (and `load`) for an Aqua user-domain agent sends
|
|
118
|
+
* SIGTERM to the running process. When the running extremerouter cli.js was itself
|
|
119
|
+
* spawned by the autostart launchd agent (i.e. user enabled autostart at
|
|
120
|
+
* some point, then rebooted, then clicked the tray icon's "Disable
|
|
121
|
+
* Auto-start" menu item), an unload would kill the very process executing
|
|
122
|
+
* the click handler — and the tray icon would disappear instead of the menu
|
|
123
|
+
* label flipping back to "Enable Auto-start". This helper lets the enable
|
|
124
|
+
* and disable paths sidestep that by skipping launchctl when we'd otherwise
|
|
125
|
+
* be killing ourselves.
|
|
126
|
+
*/
|
|
127
|
+
function isAgentSelfMacOS() {
|
|
128
|
+
try {
|
|
129
|
+
const output = execSync(`launchctl list ${APP_LABEL}`, {
|
|
130
|
+
encoding: "utf8",
|
|
131
|
+
stdio: ["ignore", "pipe", "ignore"],
|
|
132
|
+
timeout: 3000
|
|
133
|
+
});
|
|
134
|
+
const match = output.match(/"PID"\s*=\s*(\d+)/);
|
|
135
|
+
return !!(match && parseInt(match[1], 10) === process.pid);
|
|
136
|
+
} catch (e) {
|
|
137
|
+
return false;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
|
|
141
|
+
function enableMacOS(cliPath) {
|
|
142
|
+
const launchAgentsDir = path.join(os.homedir(), "Library", "LaunchAgents");
|
|
143
|
+
const plistPath = path.join(launchAgentsDir, `${APP_LABEL}.plist`);
|
|
144
|
+
|
|
145
|
+
if (!fs.existsSync(launchAgentsDir)) {
|
|
146
|
+
fs.mkdirSync(launchAgentsDir, { recursive: true });
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
const nodePath = process.execPath;
|
|
150
|
+
const routerScript = getCliJsPath(cliPath);
|
|
151
|
+
// Don't write a broken plist that references a non-existent script.
|
|
152
|
+
if (!routerScript) return false;
|
|
153
|
+
|
|
154
|
+
// Invoke node + cli.js directly with absolute paths — no shell wrapper.
|
|
155
|
+
// The previous design ran `zsh -l -c "..."` so a login shell would source
|
|
156
|
+
// nvm/.zshrc and set PATH; that's fragile (nvm.sh sourcing varies by user,
|
|
157
|
+
// some setups don't put node on PATH from a non-interactive login shell).
|
|
158
|
+
// EnvironmentVariables.PATH explicitly includes node's bin dir so child
|
|
159
|
+
// processes spawned by cli.js (npm install at runtime, etc.) resolve.
|
|
160
|
+
const launchPath = `${path.dirname(nodePath)}:/usr/local/bin:/usr/bin:/bin`;
|
|
161
|
+
|
|
162
|
+
const plistContent = `<?xml version="1.0" encoding="UTF-8"?>
|
|
163
|
+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
|
164
|
+
<plist version="1.0">
|
|
165
|
+
<dict>
|
|
166
|
+
<key>Label</key>
|
|
167
|
+
<string>${APP_LABEL}</string>
|
|
168
|
+
<key>ProgramArguments</key>
|
|
169
|
+
<array>
|
|
170
|
+
<string>${nodePath}</string>
|
|
171
|
+
<string>${routerScript}</string>
|
|
172
|
+
<string>--tray</string>
|
|
173
|
+
<string>--skip-update</string>
|
|
174
|
+
</array>
|
|
175
|
+
<key>EnvironmentVariables</key>
|
|
176
|
+
<dict>
|
|
177
|
+
<key>PATH</key>
|
|
178
|
+
<string>${launchPath}</string>
|
|
179
|
+
</dict>
|
|
180
|
+
<key>RunAtLoad</key>
|
|
181
|
+
<true/>
|
|
182
|
+
<key>KeepAlive</key>
|
|
183
|
+
<false/>
|
|
184
|
+
<key>StandardOutPath</key>
|
|
185
|
+
<string>/tmp/extremerouter.log</string>
|
|
186
|
+
<key>StandardErrorPath</key>
|
|
187
|
+
<string>/tmp/extremerouter.error.log</string>
|
|
188
|
+
</dict>
|
|
189
|
+
</plist>`;
|
|
190
|
+
|
|
191
|
+
fs.writeFileSync(plistPath, plistContent);
|
|
192
|
+
|
|
193
|
+
// If we're the running agent already, launchctl unload/load would send
|
|
194
|
+
// ourselves SIGTERM. Skip it — the plist file is updated on disk and
|
|
195
|
+
// launchd will pick it up at next login. isAutoStartEnabled() will still
|
|
196
|
+
// return true because launchctl already has the agent loaded.
|
|
197
|
+
if (isAgentSelfMacOS()) {
|
|
198
|
+
return true;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
// Register with launchd in the current session. Without this, the agent
|
|
202
|
+
// only takes effect on the next user login and the user has no signal that
|
|
203
|
+
// anything actually happened. `unload` first defends against re-enable
|
|
204
|
+
// replacing an existing plist.
|
|
205
|
+
try {
|
|
206
|
+
execSync(`launchctl unload "${plistPath}"`, { stdio: "ignore" });
|
|
207
|
+
} catch (e) {}
|
|
208
|
+
try {
|
|
209
|
+
execSync(`launchctl load -w "${plistPath}"`, { stdio: "ignore" });
|
|
210
|
+
} catch (e) {
|
|
211
|
+
// Even if load fails, the plist is on disk and will be picked up at next
|
|
212
|
+
// login; report success based on the file write.
|
|
213
|
+
}
|
|
214
|
+
return true;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
function disableMacOS() {
|
|
218
|
+
const plistPath = path.join(os.homedir(), "Library", "LaunchAgents", `${APP_LABEL}.plist`);
|
|
219
|
+
|
|
220
|
+
// Don't kill ourselves: when the current process is the running agent,
|
|
221
|
+
// `launchctl unload` would send SIGTERM and the user clicking
|
|
222
|
+
// "Disable Auto-start" from the tray menu would lose their tray icon
|
|
223
|
+
// instead of just flipping the menu label. Skip the unload — removing the
|
|
224
|
+
// plist file is enough to prevent the agent from starting on next login.
|
|
225
|
+
if (!isAgentSelfMacOS()) {
|
|
226
|
+
try {
|
|
227
|
+
execSync(`launchctl unload "${plistPath}"`, { stdio: "ignore" });
|
|
228
|
+
} catch (e) {}
|
|
229
|
+
}
|
|
230
|
+
|
|
231
|
+
if (fs.existsSync(plistPath)) {
|
|
232
|
+
fs.unlinkSync(plistPath);
|
|
233
|
+
}
|
|
234
|
+
return true;
|
|
235
|
+
}
|
|
236
|
+
|
|
237
|
+
// ============ Windows ============
|
|
238
|
+
|
|
239
|
+
function enableWindows(cliPath) {
|
|
240
|
+
const startupDir = path.join(process.env.APPDATA || "", "Microsoft", "Windows", "Start Menu", "Programs", "Startup");
|
|
241
|
+
const vbsPath = path.join(startupDir, `${APP_NAME}.vbs`);
|
|
242
|
+
|
|
243
|
+
if (!fs.existsSync(startupDir)) return false;
|
|
244
|
+
|
|
245
|
+
const nodePath = process.execPath;
|
|
246
|
+
const routerScript = getCliJsPath(cliPath);
|
|
247
|
+
if (!routerScript) return false;
|
|
248
|
+
|
|
249
|
+
// Run node + cli.js directly, hidden window. Avoids the fragile
|
|
250
|
+
// `extremerouter.cmd` lookup that depended on the npm prefix path.
|
|
251
|
+
const vbsContent = `Set WshShell = CreateObject("WScript.Shell")
|
|
252
|
+
WshShell.Run """${nodePath}"" ""${routerScript}"" --tray --skip-update", 0, False
|
|
253
|
+
`;
|
|
254
|
+
fs.writeFileSync(vbsPath, vbsContent);
|
|
255
|
+
return true;
|
|
256
|
+
}
|
|
257
|
+
|
|
258
|
+
function disableWindows() {
|
|
259
|
+
const vbsPath = path.join(process.env.APPDATA || "", "Microsoft", "Windows", "Start Menu", "Programs", "Startup", `${APP_NAME}.vbs`);
|
|
260
|
+
if (fs.existsSync(vbsPath)) {
|
|
261
|
+
fs.unlinkSync(vbsPath);
|
|
262
|
+
}
|
|
263
|
+
return true;
|
|
264
|
+
}
|
|
265
|
+
|
|
266
|
+
// ============ Linux ============
|
|
267
|
+
|
|
268
|
+
function enableLinux(cliPath) {
|
|
269
|
+
const autostartDir = path.join(os.homedir(), ".config", "autostart");
|
|
270
|
+
const desktopPath = path.join(autostartDir, `${APP_NAME}.desktop`);
|
|
271
|
+
|
|
272
|
+
if (!fs.existsSync(autostartDir)) {
|
|
273
|
+
try { fs.mkdirSync(autostartDir, { recursive: true }); }
|
|
274
|
+
catch (e) { return false; }
|
|
275
|
+
}
|
|
276
|
+
|
|
277
|
+
const nodePath = process.execPath;
|
|
278
|
+
const routerScript = getCliJsPath(cliPath);
|
|
279
|
+
if (!routerScript) return false;
|
|
280
|
+
|
|
281
|
+
const desktopContent = `[Desktop Entry]
|
|
282
|
+
Type=Application
|
|
283
|
+
Name=ExtremeRouter
|
|
284
|
+
Comment=ExtremeRouter API Proxy
|
|
285
|
+
Exec=${nodePath} ${routerScript} --tray --skip-update
|
|
286
|
+
Hidden=false
|
|
287
|
+
NoDisplay=false
|
|
288
|
+
X-GNOME-Autostart-enabled=true
|
|
289
|
+
`;
|
|
290
|
+
fs.writeFileSync(desktopPath, desktopContent);
|
|
291
|
+
return true;
|
|
292
|
+
}
|
|
293
|
+
|
|
294
|
+
function disableLinux() {
|
|
295
|
+
const desktopPath = path.join(os.homedir(), ".config", "autostart", `${APP_NAME}.desktop`);
|
|
296
|
+
if (fs.existsSync(desktopPath)) {
|
|
297
|
+
fs.unlinkSync(desktopPath);
|
|
298
|
+
}
|
|
299
|
+
return true;
|
|
300
|
+
}
|
|
301
|
+
|
|
302
|
+
module.exports = {
|
|
303
|
+
enableAutoStart,
|
|
304
|
+
disableAutoStart,
|
|
305
|
+
isAutoStartEnabled
|
|
306
|
+
};
|