@rabbi696/ezrouter 0.6.15 → 0.6.16
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 +72 -1
- package/app/.next-cli-build/BUILD_ID +1 -1
- package/app/.next-cli-build/app-path-routes-manifest.json +27 -27
- package/app/.next-cli-build/build-manifest.json +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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/convoy/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/convoy/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/convoy/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +1 -1
- 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/error-log/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/error-log/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/error-log/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mcp-gateway/keys/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mcp-gateway/keys/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mcp-gateway/keys/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mcp-gateway/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mcp-gateway/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mcp-gateway/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mcp-gateway/servers/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mcp-gateway/servers/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mcp-gateway/servers/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +10 -6
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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/page.js +1 -1
- 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/profile/page.js +1 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- 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/pxpipe/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +1 -1
- 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/routing-health/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/routing-health/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/routing-health/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +1 -1
- 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/token-saver/page.js +1 -1
- 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 +1 -1
- 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 +1 -1
- 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.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 +1 -1
- 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 +3 -3
- package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +3 -3
- 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 +3 -3
- 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 +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/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/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/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/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/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/saml/acs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/acs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/start/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/test/route.js.nft.json +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/changelog/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli/providers/codex/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli/providers/codex/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +1 -1
- 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/antigravity-mitm/alias/route.js +1 -1
- 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/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/claude-settings/route.js.nft.json +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/codewhale-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codewhale-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-native/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-native/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-native/readiness/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-native/readiness/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-profiles/route.js.nft.json +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/copilot-settings/route.js +1 -1
- 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/cowork-mcp-registry/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +1 -1
- 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-settings/route.js +1 -1
- 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/crush-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/crush-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +1 -1
- 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/devin-settings/route.js.nft.json +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/forge-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/forge-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js.nft.json +1 -1
- 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/jcode-settings/route.js.nft.json +1 -1
- 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/omp-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/omp-settings/route.js.nft.json +1 -1
- 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/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/pi-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/smelt-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/smelt-settings/route.js.nft.json +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]/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/export/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/export/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/presets/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/presets/route.js.nft.json +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/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/convoy/rules/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/extras/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +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/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/stop/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +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/init/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/internal/codex-native/lease/[action]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/internal/codex-native/lease/[action]/route.js.nft.json +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/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/locale/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +1 -1
- 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]/sse/route.js +1 -1
- 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-gateway/instances/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/instances/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/instances/[id]/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/instances/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/instances/route.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/instances/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/keys/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/keys/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/keys/route.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/keys/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/message/route.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/message/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/oauth/[id]/[action]/route.js +2 -2
- package/app/.next-cli-build/server/app/api/mcp-gateway/oauth/[id]/[action]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/route.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp-gateway/sse/route.js.nft.json +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/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/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/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/voices/route.js.nft.json +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/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/catalog-sync/route.js.nft.json +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/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/enabled/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/enabled/route.js.nft.json +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/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/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/callback/route.js.nft.json +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/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/cursor/auto-import/route.js +1 -1
- 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/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/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/grok-cli/bulk-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js.nft.json +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/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/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/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-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/social-authorize/route.js.nft.json +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/xiaomi-mimo/api-key/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/api-key/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/login/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/login/status/route.js.nft.json +1 -1
- 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/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/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/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/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/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/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]/overrides/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/overrides/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/refresh-profile/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/refresh-profile/route.js.nft.json +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]/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-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/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/kilo/free-models/route.js.nft.json +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/suggested-models/route.js.nft.json +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/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/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]/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/cloudflare-deploy/route.js +1 -1
- 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/deno-deploy/route.js +1 -1
- 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/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/vercel-deploy/route.js +1 -1
- 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/pxpipe/health/route.js.nft.json +1 -1
- 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/logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/start/route.js +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/status/route.js +1 -1
- 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/stop/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/routing-health/route.js +1 -1
- package/app/.next-cli-build/server/app/api/routing-health/route.js.nft.json +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/proxy-test/route.js.nft.json +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/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/shutdown/route.js.nft.json +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/token-saver/stats/route.js +1 -1
- package/app/.next-cli-build/server/app/api/token-saver/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/token-saver/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/token-saver/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tool-disclosure/stats/route.js.nft.json +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/stream/route.js +1 -1
- 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/load/route.js.nft.json +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/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/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/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/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/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/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-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-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-install/route.js +1 -1
- 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/usage/[connectionId]/claude-reset/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/claude-reset/route.js.nft.json +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]/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/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/error-logs/route.js.nft.json +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/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/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/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-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/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/stream/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/alpha/search/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/alpha/search/route.js.nft.json +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/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/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/voices/route.js.nft.json +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/codex/alpha/search/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/alpha/search/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/images/edits/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/images/edits/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/images/generations/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/images/generations/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/memories/trace_summarize/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/memories/trace_summarize/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/responses/compact/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/responses/compact/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/responses/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/codex/responses/route.js.nft.json +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/images/generations/route.js +3 -3
- 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/messages/count_tokens/route.js.nft.json +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/models/[...model]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[...model]/route.js.nft.json +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/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/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/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/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/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/systemone/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/systemone/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +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/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/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/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/shutdown/route.js.nft.json +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/callback/page.js +1 -1
- 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 +3 -3
- package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +3 -3
- 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 +3 -3
- package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/convoy.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/convoy.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/convoy.segments/!KGRhc2hib2FyZCk/dashboard/convoy/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/convoy.segments/!KGRhc2hib2FyZCk/dashboard/convoy.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/convoy.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/convoy.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/convoy.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/convoy.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/convoy.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/convoy.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/keys.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/keys.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/keys.segments/!KGRhc2hib2FyZCk/dashboard/mcp-gateway/keys/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/keys.segments/!KGRhc2hib2FyZCk/dashboard/mcp-gateway/keys.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/keys.segments/!KGRhc2hib2FyZCk/dashboard/mcp-gateway.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/keys.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/keys.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/keys.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/keys.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/keys.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/keys.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/servers.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/servers.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/servers.segments/!KGRhc2hib2FyZCk/dashboard/mcp-gateway/servers/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/servers.segments/!KGRhc2hib2FyZCk/dashboard/mcp-gateway/servers.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/servers.segments/!KGRhc2hib2FyZCk/dashboard/mcp-gateway.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/servers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/servers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/servers.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/servers.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/servers.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway/servers.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway.segments/!KGRhc2hib2FyZCk/dashboard/mcp-gateway/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway.segments/!KGRhc2hib2FyZCk/dashboard/mcp-gateway.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/mcp-gateway.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/routing-health.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/routing-health.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/routing-health.segments/!KGRhc2hib2FyZCk/dashboard/routing-health/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/routing-health.segments/!KGRhc2hib2FyZCk/dashboard/routing-health.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/routing-health.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/routing-health.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/routing-health.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/routing-health.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/routing-health.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/routing-health.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +1 -1
- 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 +3 -3
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +3 -3
- 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 +3 -3
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
- 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/dashboard/skills.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard.html +1 -1
- package/app/.next-cli-build/server/app/dashboard.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +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 +3 -3
- 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 +3 -3
- 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 +3 -3
- package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing/page.js +1 -1
- 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 +3 -3
- package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +3 -3
- 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 +3 -3
- package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login/page.js +1 -1
- 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 +4 -4
- package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +4 -4
- 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 +3 -3
- package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
- 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.nft.json +1 -1
- package/app/.next-cli-build/server/app/page.js +1 -1
- 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 +27 -27
- package/app/.next-cli-build/server/chunks/1253.js +1 -1
- package/app/.next-cli-build/server/chunks/1482.js +4 -2
- package/app/.next-cli-build/server/chunks/1531.js +1 -1
- package/app/.next-cli-build/server/chunks/1641.js +1 -0
- package/app/.next-cli-build/server/chunks/1733.js +1 -1
- package/app/.next-cli-build/server/chunks/1847.js +1 -1
- package/app/.next-cli-build/server/chunks/2269.js +1 -1
- package/app/.next-cli-build/server/chunks/2348.js +1 -1
- package/app/.next-cli-build/server/chunks/2898.js +1 -1
- package/app/.next-cli-build/server/chunks/3583.js +2 -2
- package/app/.next-cli-build/server/chunks/3593.js +2 -2
- package/app/.next-cli-build/server/chunks/369.js +22 -22
- package/app/.next-cli-build/server/chunks/3886.js +1 -1
- package/app/.next-cli-build/server/chunks/3912.js +1 -1
- package/app/.next-cli-build/server/chunks/3977.js +2 -2
- package/app/.next-cli-build/server/chunks/412.js +1 -1
- package/app/.next-cli-build/server/chunks/4378.js +3 -3
- package/app/.next-cli-build/server/chunks/4485.js +1 -1
- package/app/.next-cli-build/server/chunks/4574.js +1 -1
- package/app/.next-cli-build/server/chunks/4646.js +1 -1
- package/app/.next-cli-build/server/chunks/4704.js +2 -2
- package/app/.next-cli-build/server/chunks/4739.js +2 -2
- package/app/.next-cli-build/server/chunks/4768.js +1 -1
- package/app/.next-cli-build/server/chunks/4780.js +2 -2
- package/app/.next-cli-build/server/chunks/4803.js +2 -2
- package/app/.next-cli-build/server/chunks/4827.js +1 -1
- package/app/.next-cli-build/server/chunks/4878.js +1 -1
- package/app/.next-cli-build/server/chunks/5011.js +1 -1
- package/app/.next-cli-build/server/chunks/507.js +2 -2
- package/app/.next-cli-build/server/chunks/5130.js +1 -1
- package/app/.next-cli-build/server/chunks/{8421.js → 5251.js} +1 -1
- package/app/.next-cli-build/server/chunks/5258.js +2 -2
- package/app/.next-cli-build/server/chunks/5434.js +1 -1
- package/app/.next-cli-build/server/chunks/5460.js +40 -0
- package/app/.next-cli-build/server/chunks/5704.js +254 -0
- package/app/.next-cli-build/server/chunks/5872.js +1 -0
- package/app/.next-cli-build/server/chunks/5875.js +1 -1
- package/app/.next-cli-build/server/chunks/6252.js +2 -2
- package/app/.next-cli-build/server/chunks/6420.js +1 -1
- package/app/.next-cli-build/server/chunks/6670.js +2 -2
- package/app/.next-cli-build/server/chunks/6769.js +1 -0
- package/app/.next-cli-build/server/chunks/6799.js +2 -2
- package/app/.next-cli-build/server/chunks/698.js +2 -2
- package/app/.next-cli-build/server/chunks/7073.js +2 -2
- package/app/.next-cli-build/server/chunks/7218.js +1 -1
- package/app/.next-cli-build/server/chunks/7239.js +2 -2
- package/app/.next-cli-build/server/chunks/7362.js +1 -1
- package/app/.next-cli-build/server/chunks/7594.js +6 -6
- package/app/.next-cli-build/server/chunks/7663.js +1 -1
- package/app/.next-cli-build/server/chunks/7677.js +1 -1
- package/app/.next-cli-build/server/chunks/7775.js +1 -1
- package/app/.next-cli-build/server/chunks/7811.js +1 -0
- package/app/.next-cli-build/server/chunks/7965.js +2 -2
- package/app/.next-cli-build/server/chunks/8062.js +2 -2
- package/app/.next-cli-build/server/chunks/8129.js +1 -1
- package/app/.next-cli-build/server/chunks/8231.js +1 -1
- package/app/.next-cli-build/server/chunks/8243.js +5 -5
- package/app/.next-cli-build/server/chunks/8306.js +1 -1
- package/app/.next-cli-build/server/chunks/8469.js +2 -2
- package/app/.next-cli-build/server/chunks/8520.js +2 -2
- package/app/.next-cli-build/server/chunks/8644.js +1 -1
- package/app/.next-cli-build/server/chunks/8772.js +1 -1
- package/app/.next-cli-build/server/chunks/8976.js +1 -1
- package/app/.next-cli-build/server/chunks/9026.js +24 -24
- package/app/.next-cli-build/server/chunks/9062.js +1 -1
- package/app/.next-cli-build/server/chunks/9303.js +1 -1
- package/app/.next-cli-build/server/chunks/9485.js +1 -1
- package/app/.next-cli-build/server/chunks/9718.js +1 -1
- package/app/.next-cli-build/server/instrumentation.js +1 -1
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware.js +3 -3
- 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/static/chunks/1321-73fdccd2b1bf151d.js +1 -0
- package/app/.next-cli-build/static/chunks/{5497-8766958582f95dc7.js → 5497-ff58e90f4053e184.js} +3 -3
- package/app/.next-cli-build/static/chunks/{6252-34f2d410651e1103.js → 6252-886aa8324e135e9c.js} +13 -13
- package/app/.next-cli-build/static/chunks/8105-9b41dc96e4b019cf.js +1 -0
- package/app/.next-cli-build/static/chunks/9227-4471c8f39a105c5f.js +5 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-89b4f70958736f2a.js → page-c35f746b4bd9fc90.js} +18 -14
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-fa195b4f7348e2d6.js → page-0868ecc0d2f1bd04.js} +2 -2
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/{page-a31d9ca05cc3d528.js → page-6cb070834a750fdd.js} +1 -1
- package/app/CHANGELOG.md +54 -32
- package/app/package.json +1 -1
- package/app/public/CHANGELOG.md +54 -32
- package/app/src/mitm/server.js +24 -24
- package/cli.js +71 -69
- package/package.json +1 -1
- package/src/cli/commands/connect.js +157 -15
- package/src/cli/commands/connectTools.js +222 -4
- package/src/cli/commands/show.js +101 -0
- package/src/cli/menus/providers.js +8 -0
- package/app/.next-cli-build/server/chunks/3252.js +0 -1
- package/app/.next-cli-build/server/chunks/3267.js +0 -40
- package/app/.next-cli-build/server/chunks/6707.js +0 -1
- package/app/.next-cli-build/server/chunks/8450.js +0 -254
- package/app/.next-cli-build/server/chunks/9143.js +0 -1
- package/app/.next-cli-build/static/chunks/1321-043afc56cba448b8.js +0 -1
- package/app/.next-cli-build/static/chunks/8105-9dfc2c5ffef6e778.js +0 -1
- package/app/.next-cli-build/static/chunks/9227-af65f6ac1fca28c9.js +0 -3
- /package/app/.next-cli-build/static/{zQapcWqcr7oLVi5jh7t01 → Y5Sk8uSUyB0vJ-ZgW1X1U}/_buildManifest.js +0 -0
- /package/app/.next-cli-build/static/{zQapcWqcr7oLVi5jh7t01 → Y5Sk8uSUyB0vJ-ZgW1X1U}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=7663,exports.ids=[7663],exports.modules={7866:(a,b,c)=>{c.d(b,{w$:()=>e});let d=c(39006).rE||"0.0.0";function e(a,b={}){let c,f=(c=function(a){if("string"!=typeof a)return"";let b=a.trim();return b?b.toLowerCase().startsWith("workos:")?b:/^eyJ[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+/.test(b)?`workos:${b}`:b:""}(a))?`Bearer ${c}`:"",g={"HTTP-Referer":"https://cline.bot","X-Title":"Cline","User-Agent":`9Router/${d}`,"X-PLATFORM":process.platform||"unknown","X-PLATFORM-VERSION":process.version||"unknown","X-CLIENT-TYPE":"9router","X-CLIENT-VERSION":d,"X-CORE-VERSION":d,"X-IS-MULTIROOT":"false",...b};return f&&(g.Authorization=f),g}},8730:(a,b,c)=>{c.d(b,{d:()=>f});var d=c(55511);let e="1.0.0";function f(a={}){let b=a.providerSpecificData||{},c=b.clientId||a.refreshToken||b.profileArn||a.apiKey||a.accessToken||"kiro-anonymous",g=(0,d.createHash)("sha256").update(String(c)).digest("hex"),h=`KiroIDE-0.10.32-${g}`;return{"User-Agent":`aws-sdk-js/${e} ua/2.1 os/windows#10.0.26200 lang/js md/nodejs#22.21.1 api/codewhispererruntime#${e} m/N,E ${h}`,"x-amz-user-agent":`aws-sdk-js/${e} ${h}`,"x-amzn-kiro-agent-mode":"vibe","x-amzn-codewhisperer-optout":"true"}}},39006:a=>{a.exports={rE:"0.6.
|
|
1
|
+
"use strict";exports.id=7663,exports.ids=[7663],exports.modules={7866:(a,b,c)=>{c.d(b,{w$:()=>e});let d=c(39006).rE||"0.0.0";function e(a,b={}){let c,f=(c=function(a){if("string"!=typeof a)return"";let b=a.trim();return b?b.toLowerCase().startsWith("workos:")?b:/^eyJ[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+/.test(b)?`workos:${b}`:b:""}(a))?`Bearer ${c}`:"",g={"HTTP-Referer":"https://cline.bot","X-Title":"Cline","User-Agent":`9Router/${d}`,"X-PLATFORM":process.platform||"unknown","X-PLATFORM-VERSION":process.version||"unknown","X-CLIENT-TYPE":"9router","X-CLIENT-VERSION":d,"X-CORE-VERSION":d,"X-IS-MULTIROOT":"false",...b};return f&&(g.Authorization=f),g}},8730:(a,b,c)=>{c.d(b,{d:()=>f});var d=c(55511);let e="1.0.0";function f(a={}){let b=a.providerSpecificData||{},c=b.clientId||a.refreshToken||b.profileArn||a.apiKey||a.accessToken||"kiro-anonymous",g=(0,d.createHash)("sha256").update(String(c)).digest("hex"),h=`KiroIDE-0.10.32-${g}`;return{"User-Agent":`aws-sdk-js/${e} ua/2.1 os/windows#10.0.26200 lang/js md/nodejs#22.21.1 api/codewhispererruntime#${e} m/N,E ${h}`,"x-amz-user-agent":`aws-sdk-js/${e} ${h}`,"x-amzn-kiro-agent-mode":"vibe","x-amzn-codewhisperer-optout":"true"}}},39006:a=>{a.exports={rE:"0.6.16"}},58569:(a,b,c)=>{c.d(b,{cW:()=>k});var d=c(94755),e=c(55511),f=c(85640),g=c(8730);let h="us-east-1",i=new Map;async function j(a,b){let c,e=a?.providerSpecificData?.profileArn||"",f=a?.providerSpecificData?.authMethod,i=e?function(a){if(!a||"string"!=typeof a)return h;let b=a.split(":");return b.length>=4&&b[3]?b[3]:h}(e):a?.providerSpecificData?.region||h,j=new URLSearchParams;j.set("origin","AI_EDITOR"),e&&j.set("profileArn",e);let k=`https://q.${i}.amazonaws.com/ListAvailableModels?${j.toString()}`,l={...(0,g.d)(a),"amz-sdk-request":"attempt=1; max=1","amz-sdk-invocation-id":(0,d.A)(),Accept:"application/json",Authorization:`Bearer ${a?.accessToken||""}`,..."api_key"===f?{TokenType:"API_KEY"}:{}},m=new AbortController,n=setTimeout(()=>m.abort("timeout"),3e4);b&&"function"==typeof b.addEventListener&&b.addEventListener("abort",()=>m.abort(b.reason));try{c=await fetch(k,{method:"GET",headers:l,signal:m.signal})}finally{clearTimeout(n)}if(!c.ok){let a=await c.text().catch(()=>""),b=Error(`Kiro ListAvailableModels ${c.status}: ${a||c.statusText}`);throw b.status=c.status,b.body=a,b}let o=await c.json();return Array.isArray(o?.models)?o.models:[]}async function k(a,b={}){let c,d,g;if(!a||!a.accessToken)return b.log?.debug?.("KIRO_MODELS","No accessToken; skipping live fetch"),null;let h=(g=(d=a?.providerSpecificData||{}).profileArn||d.clientId||a?.refreshToken||a?.accessToken||"anonymous",(0,e.createHash)("sha256").update(`kiro:${g}`).digest("hex")),l=Date.now();if(!b.forceRefresh){let a=i.get(h);if(a&&a.expiresAt>l)return{models:a.models,rawModels:a.rawModels}}try{c=await j(a,b.signal)}catch(d){if(!d||401!==d.status||!a.refreshToken)return b.log?.warn?.("KIRO_MODELS",`ListAvailableModels failed: ${d?.message||d}`),null;{b.log?.info?.("KIRO_MODELS","Got 401 from Kiro; refreshing token");let d=await (0,f.Ql)(a.refreshToken,a.providerSpecificData,b.log);if(!d?.accessToken)return b.log?.warn?.("KIRO_MODELS","Token refresh did not return accessToken"),null;{let e={...a,...d};if("function"==typeof b.onCredentialsRefreshed)try{await b.onCredentialsRefreshed(d)}catch(a){b.log?.warn?.("KIRO_MODELS",`onCredentialsRefreshed failed: ${a?.message||a}`)}try{c=await j(e,b.signal),a.accessToken=e.accessToken,e.refreshToken&&(a.refreshToken=e.refreshToken)}catch(a){return b.log?.warn?.("KIRO_MODELS",`Retry after refresh failed: ${a?.message||a}`),null}}}}let m=[];for(let a of c){if(!a||"object"!=typeof a)continue;let b=a.modelId||a.id;if(!b)continue;let c=function(a,b,c){let d=(a||b||"Kiro").trim(),e=Number(c);if(!Number.isFinite(e)||1e-9>Math.abs(e-1)||e<=0)return`Kiro ${d}`;let f=e.toFixed(1).replace(",",".");return`Kiro ${d} (${f}x credit)`}(a.modelName,b,a.rateMultiplier),d=Number(a?.tokenLimits?.maxInputTokens)||2e5,e=Number(a?.tokenLimits?.maxOutputTokens)||null;for(let f of function(a,b){let c,d=((c=a).endsWith("-agentic")&&(c=c.slice(0,-8)),c.endsWith("-thinking")&&(c=c.slice(0,-9)),c),e=b||`Kiro ${d}`,f=[{id:d,name:e,capabilities:{thinking:!1,agentic:!1}},{id:`${d}-thinking`,name:`${e} (Thinking)`,capabilities:{thinking:!0,agentic:!1}}];return"auto"!==d&&(f.push({id:`${d}-agentic`,name:`${e} (Agentic)`,capabilities:{thinking:!1,agentic:!0}}),f.push({id:`${d}-thinking-agentic`,name:`${e} (Thinking + Agentic)`,capabilities:{thinking:!0,agentic:!0}})),f}(b,c))m.push({...f,contextLength:d,...e?{maxOutputTokens:e}:{},rateMultiplier:Number.isFinite(Number(a.rateMultiplier))?Number(a.rateMultiplier):1,upstreamModelId:b,description:a.description||""})}return i.set(h,{expiresAt:l+3e5,models:m,rawModels:c}),{models:m,rawModels:c}}},92990:(a,b,c)=>{c.d(b,{DI:()=>i,DV:()=>C,LT:()=>j,MZ:()=>v,Nl:()=>z,Nu:()=>p,OV:()=>h,RY:()=>I,S6:()=>s,SK:()=>F,Td:()=>A,Tx:()=>q,V1:()=>J,WN:()=>t,Ww:()=>K,YT:()=>n,ZL:()=>m,_0:()=>H,aV:()=>u,cD:()=>o,eD:()=>G,f7:()=>y,hF:()=>k,lB:()=>w,oe:()=>E,qp:()=>B,sA:()=>D,t3:()=>l,w1:()=>x});var d=c(21820),e=c(92675),f=c(39141);function g(){let a=(0,d.platform)(),b=(0,d.arch)();return"darwin"===a?"arm64"===b?2:1:"linux"===a?"arm64"===b?4:3:5*("win32"===a)}let h={...f.sr.claude},i={...f.sr.codex},j={...e.dG,...f.sr["gemini-cli"]};({...f.sr.qwen});let k={...f.sr.qoder};({...f.sr["qoderwork-cn"]});let l={...f.sr["qoder-cn"]},m={...f.sr.iflow},n={...e.XP,...f.sr.antigravity,loadCodeAssistClientMetadata:JSON.stringify({ideType:9,platform:g(),pluginType:2})};function o(){return{ideType:9,platform:g(),pluginType:2}}({...f.sr.openai});let p={...f.sr.github},q={...f.sr.kiro},r=/^[a-z]{2}-[a-z]+-\d{1,2}$/;function s(a){if("string"!=typeof a||!r.test(a))throw Error("Invalid region");return a}let t={...f.sr.cursor,tokenStoragePaths:{linux:"~/.config/Cursor/User/globalStorage/state.vscdb",macos:"/Users/<user>/Library/Application Support/Cursor/User/globalStorage/state.vscdb",windows:"%APPDATA%\\Cursor\\User\\globalStorage\\state.vscdb"}},u={...f.sr.kimi,clientId:process.env.KIMI_CODING_OAUTH_CLIENT_ID||process.env.KIMI_OAUTH_CLIENT_ID||f.xq.kimi?.clientId||f.sr.kimi?.clientId},v={...f.sr.kilocode},w={...f.sr.cline},x={...f.sr.clinepass},y={...f.sr.gitlab},z={...f.sr["codebuddy-cn"]},A={...f.sr.kimchi},B={...f.sr["grok-cli"]},C={...f.sr["codebuddy-intl"]},D={...f.sr.muse},E={platformUrl:process.env.MIMO_PLATFORM_URL||"https://platform.xiaomimimo.com",defaultBaseUrl:"https://api.xiaomimimo.com/v1",kn:"mimocode",callbackPath:"/",timeoutMs:3e5},F={clientId:"ono9krqynydwx5",clientSecret:"-",loginGuidanceUrls:["https://api.marscode.com/cloudide/api/v3/trae/GetLoginGuidance","https://api.trae.ai/cloudide/api/v3/trae/GetLoginGuidance","https://www.trae.ai/cloudide/api/v3/trae/GetLoginGuidance"],apiOrigins:["https://api.marscode.com","https://api.trae.ai","https://www.trae.ai","https://www.marscode.com"],exchangeTokenPath:"/cloudide/api/v3/trae/oauth/ExchangeToken",getUserInfoPath:"/cloudide/api/v3/trae/GetUserInfo",authorizationPath:"/authorization",callbackPath:"/callback",minAppVersion:"3.5.54",defaultAppVersion:"3.5.54",defaultAppType:"stable",defaultPluginVersion:"local",defaultDeviceId:"0",userAgent:"Trae/1.0.0 antigravity-cockpit-tools",webUrl:"https://www.trae.ai",authScheme:"Cloud-IDE-JWT",tokenLifetimeDays:14,oauthTimeoutMs:6e5},G={clientId:"3GUryQ7ldAeKEuD2obYnppsnmj58eP5u",authBaseUrl:"https://www.windsurf.com",signInPath:"/windsurf/signin",registerApiBaseUrl:"https://register.windsurf.com",registerPath:"/exa.seat_management_pb.SeatManagementService/RegisterUser",oneTimeAuthPath:"/exa.seat_management_pb.SeatManagementService/GetOneTimeAuthToken",currentUserPath:"/exa.seat_management_pb.SeatManagementService/GetCurrentUser",planStatusPath:"/exa.seat_management_pb.SeatManagementService/GetPlanStatus",userStatusPath:"/exa.seat_management_pb.SeatManagementService/GetUserStatus",defaultApiServerUrl:"https://server.codeium.com",firebaseApiKey:"AIzaSyDsOl-1XpT5err0Tcn0TFFod1H8gVGIycY",callbackPath:"/windsurf-auth-callback",userAgent:"antigravity-cockpit-tools",oauthTimeoutMs:6e5},H={...f.sr.glm},I={webBaseUrl:"https://zed.dev",cloudBaseUrl:"https://cloud.zed.dev",llmBaseUrl:"https://cloud.zed.dev",defaultNativeAppPort:58443,oauthTimeoutMs:6e5},J={...f.sr["frontier-for-all"]},K=3e5}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=7677,exports.ids=[7677],exports.modules={67677:(a,b,c)=>{c.d(b,{Gh:()=>n,IF:()=>s,O9:()=>h,OF:()=>r,WL:()=>i,_6:()=>m,_L:()=>p,bC:()=>q,f5:()=>o,lm:()=>g,q7:()=>l});var d=c(19956),e=c(84646);let f="1"===process.env.LOG_USAGE_VERBOSE,g={reset:"\x1b[0m",red:"\x1b[31m",green:"\x1b[32m",yellow:"\x1b[33m",blue:"\x1b[34m",cyan:"\x1b[36m"};function h(a){if(!a||"object"!=typeof a)return a;let b={...a};return void 0!==b.input_tokens&&(b.input_tokens+=2e3),void 0!==b.prompt_tokens&&(b.prompt_tokens+=2e3),void 0!==b.total_tokens?b.total_tokens+=2e3:void 0!==b.prompt_tokens&&void 0!==b.completion_tokens&&(b.total_tokens=b.prompt_tokens+b.completion_tokens),b}function i(a,b){if(!a||"object"!=typeof a)return a;let c={[d.h.CLAUDE]:["input_tokens","output_tokens","cache_read_input_tokens","cache_creation_input_tokens","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks"],[d.h.GEMINI]:["promptTokenCount","candidatesTokenCount","totalTokenCount","cachedContentTokenCount","thoughtsTokenCount","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks"],[d.h.OPENAI_RESPONSES]:["input_tokens","output_tokens","input_tokens_details","output_tokens_details","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks","cost"],default:["prompt_tokens","completion_tokens","total_tokens","cached_tokens","reasoning_tokens","prompt_tokens_details","completion_tokens_details","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks","cost"]},e=c[b];b===d.h.GEMINI_CLI||b===d.h.ANTIGRAVITY?e=c[d.h.GEMINI]:b===d.h.OPENAI_RESPONSE?e=c[d.h.OPENAI_RESPONSES]:e||(e=c.default);let f={};for(let b of e)void 0!==a[b]&&(f[b]=a[b]);return f}function j(a){if(!a||"object"!=typeof a||Array.isArray(a))return null;let b={},c=(a,c)=>{if(null==c)return;let d=Number(c);Number.isFinite(d)&&(b[a]=d)},d=(a,c)=>{if(null==c||""===c)return;let d=Number(c);Number.isFinite(d)&&d>=0&&(b[a]=d)};c("prompt_tokens",a?.prompt_tokens),c("completion_tokens",a?.completion_tokens),c("total_tokens",a?.total_tokens),c("cache_read_input_tokens",a?.cache_read_input_tokens),c("cache_creation_input_tokens",a?.cache_creation_input_tokens),c("cached_tokens",a?.cached_tokens),c("reasoning_tokens",a?.reasoning_tokens),d("cost_usd",a?.cost_usd),d("cost_in_usd",a?.cost_in_usd),d("cost_in_usd_ticks",a?.cost_in_usd_ticks),a?.prompt_tokens_details&&"object"==typeof a.prompt_tokens_details&&(b.prompt_tokens_details=a.prompt_tokens_details),a?.completion_tokens_details&&"object"==typeof a.completion_tokens_details&&(b.completion_tokens_details=a.completion_tokens_details);let e=k(a?.cost);return(e&&(b.cost=e),0===Object.keys(b).length)?null:b}function k(a){if("number"==typeof a&&Number.isFinite(a))return{total:a};if(a&&"object"==typeof a){let b=Number(a.total);if(Number.isFinite(b))return{...a,total:b}}return null}function l(a,b,c){if(!a||"object"!=typeof a)return a;let d={...a},f=k(d.cost)?.total;if(!("number"==typeof f&&Number.isFinite(f)&&f>0)){let a=(0,e.getPricingForModel)(b,c);if(a){let b=m(d)||d;f=(0,e.calculateCostFromTokens)(b,a)}}if("number"==typeof f&&Number.isFinite(f)){let a=d.cost&&"object"==typeof d.cost?d.cost:{};d.cost={...a,total:f}}return d}function m(a){let b;if(!a||"object"!=typeof a||Array.isArray(a))return null;let c=a=>Number.isFinite(Number(a))?Number(a):0,d=c(a.completion_tokens??a.output_tokens),e=c(a.reasoning_tokens),f=c(a.cache_creation_input_tokens??a.prompt_tokens_details?.cache_creation_tokens),g=c(a.prompt_tokens??a.input_tokens);void 0===a.cached_tokens&&(void 0!==a.cache_read_input_tokens||void 0!==a.cache_creation_input_tokens)?g=g+(b=c(a.cache_read_input_tokens))+f:b=c(a.cached_tokens??a.prompt_tokens_details?.cached_tokens);let h={prompt_tokens:g,completion_tokens:d,total_tokens:g+d,cached_tokens:b,cache_creation_input_tokens:f},i=b=>{if(null===a[b]||void 0===a[b]||""===a[b])return;let c=Number(a[b]);Number.isFinite(c)&&c>=0&&(h[b]=c)};return i("cost_usd"),i("cost_in_usd"),i("cost_in_usd_ticks"),e>0&&(h.reasoning_tokens=e),h}function n(a){if(!a||"object"!=typeof a)return!1;for(let b of["prompt_tokens","completion_tokens","total_tokens","input_tokens","output_tokens","promptTokenCount","candidatesTokenCount"])if("number"==typeof a[b]&&a[b]>0)return!0;return!1}function o(a){if(!a||"object"!=typeof a)return null;if("message_start"===a.type&&a.message?.usage&&"object"==typeof a.message.usage){let b=a.message.usage;return j({prompt_tokens:b.input_tokens||0,completion_tokens:b.output_tokens||0,cache_read_input_tokens:b.cache_read_input_tokens,cache_creation_input_tokens:b.cache_creation_input_tokens,cost_usd:b.cost_usd,cost_in_usd:b.cost_in_usd,cost_in_usd_ticks:b.cost_in_usd_ticks})}if("message_delta"===a.type&&a.usage&&"object"==typeof a.usage)return j({prompt_tokens:a.usage.input_tokens||0,completion_tokens:a.usage.output_tokens||0,cache_read_input_tokens:a.usage.cache_read_input_tokens,cache_creation_input_tokens:a.usage.cache_creation_input_tokens,cost_usd:a.usage.cost_usd,cost_in_usd:a.usage.cost_in_usd,cost_in_usd_ticks:a.usage.cost_in_usd_ticks});if(("response.completed"===a.type||"response.done"===a.type)&&a.response?.usage&&"object"==typeof a.response.usage){let b=a.response.usage,c=b.input_tokens_details?.cached_tokens;return j({prompt_tokens:b.input_tokens||b.prompt_tokens||0,completion_tokens:b.output_tokens||b.completion_tokens||0,cached_tokens:c,reasoning_tokens:b.output_tokens_details?.reasoning_tokens,cost_usd:b.cost_usd,cost_in_usd:b.cost_in_usd,cost_in_usd_ticks:b.cost_in_usd_ticks,prompt_tokens_details:c?{cached_tokens:c}:void 0})}if(a.usage&&"object"==typeof a.usage&&void 0!==a.usage.prompt_tokens)return j({prompt_tokens:a.usage.prompt_tokens,completion_tokens:a.usage.completion_tokens||0,cached_tokens:a.usage.prompt_tokens_details?.cached_tokens||a.usage.prompt_cache_hit_tokens,reasoning_tokens:a.usage.completion_tokens_details?.reasoning_tokens,cost_usd:a.usage.cost_usd,cost_in_usd:a.usage.cost_in_usd,cost_in_usd_ticks:a.usage.cost_in_usd_ticks,prompt_tokens_details:a.usage.prompt_tokens_details,completion_tokens_details:a.usage.completion_tokens_details,cost:a.usage.cost});let b=a.usageMetadata||a.response?.usageMetadata;return b&&"object"==typeof b?j({prompt_tokens:b.promptTokenCount||0,completion_tokens:b.candidatesTokenCount||0,total_tokens:b.totalTokenCount,cached_tokens:b.cachedContentTokenCount,reasoning_tokens:b.thoughtsTokenCount}):!0===a.done&&"number"==typeof a.prompt_eval_count?j({prompt_tokens:a.prompt_eval_count||0,completion_tokens:a.eval_count||0,total_tokens:(a.prompt_eval_count||0)+(a.eval_count||0)}):null}function p(a,b){if(!a)return b||null;if(!b)return a;let c={...a};for(let[a,d]of Object.entries(b))"number"==typeof d&&Number.isFinite(d)?c[a]=Math.max("number"==typeof c[a]?c[a]:0,d):d&&"object"==typeof d&&(c[a]=d);return c}function q(a){if(!a||"object"!=typeof a)return 0;try{let b=JSON.stringify(a);return Math.ceil(b.length/4)}catch{return 0}}function r(a,b,c=d.h.OPENAI,e={}){return function(a,b,c,e={}){let f=!1!==e.buffer?h:a=>a;return f(c===d.h.CLAUDE?{input_tokens:a,output_tokens:b,estimated:!0}:{prompt_tokens:a,completion_tokens:b,total_tokens:a+b,estimated:!0})}(q(a),b&&!(b<=0)?Math.max(1,Math.floor(b/4)):0,c,e)}function s(a,b,c=null,d=null,e=null){if(!b||"object"!=typeof b||!f)return;let h=a?.toUpperCase()||"UNKNOWN",i=b?.prompt_tokens||b?.input_tokens||0,j=b?.completion_tokens||b?.output_tokens||0,k=d?d.slice(0,8)+"...":"unknown",l=`[${new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}] 📊 ${g.green}[USAGE] ${h} | in=${i} | out=${j} | account=${k}${g.reset}`;b.estimated&&(l+=` ${g.yellow}(estimated)${g.reset}`);let m=b.cache_read_input_tokens||b.cached_tokens||b.prompt_tokens_details?.cached_tokens;m&&(l+=` | cache_read=${m}`);let n=b.cache_creation_input_tokens;n&&(l+=` | cache_create=${n}`);let o=b.reasoning_tokens;o&&(l+=` | reasoning=${o}`),console.log(l)}}};
|
|
1
|
+
"use strict";exports.id=7677,exports.ids=[7677],exports.modules={67677:(a,b,c)=>{c.d(b,{Gh:()=>n,IF:()=>s,O9:()=>h,OF:()=>r,WL:()=>i,_6:()=>m,_L:()=>p,bC:()=>q,f5:()=>o,lm:()=>g,q7:()=>l});var d=c(19956),e=c(84646);let f="1"===process.env.LOG_USAGE_VERBOSE,g={reset:"\x1b[0m",red:"\x1b[31m",green:"\x1b[32m",yellow:"\x1b[33m",blue:"\x1b[34m",cyan:"\x1b[36m"};function h(a){if(!a||"object"!=typeof a)return a;let b={...a};return void 0!==b.input_tokens&&(b.input_tokens+=2e3),void 0!==b.prompt_tokens&&(b.prompt_tokens+=2e3),void 0!==b.total_tokens?b.total_tokens+=2e3:void 0!==b.prompt_tokens&&void 0!==b.completion_tokens&&(b.total_tokens=b.prompt_tokens+b.completion_tokens),b}function i(a,b){if(!a||"object"!=typeof a)return a;let c={[d.h.CLAUDE]:["input_tokens","output_tokens","cache_read_input_tokens","cache_creation_input_tokens","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks"],[d.h.GEMINI]:["promptTokenCount","candidatesTokenCount","totalTokenCount","cachedContentTokenCount","thoughtsTokenCount","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks"],[d.h.OPENAI_RESPONSES]:["input_tokens","output_tokens","input_tokens_details","output_tokens_details","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks","cost"],default:["prompt_tokens","completion_tokens","total_tokens","cached_tokens","reasoning_tokens","prompt_tokens_details","completion_tokens_details","estimated","cost_usd","cost_in_usd","cost_in_usd_ticks","cost"]},e=c[b];b===d.h.GEMINI_CLI||b===d.h.ANTIGRAVITY?e=c[d.h.GEMINI]:b===d.h.OPENAI_RESPONSE?e=c[d.h.OPENAI_RESPONSES]:e||(e=c.default);let f={};for(let b of e)void 0!==a[b]&&(f[b]=a[b]);return f}function j(a){if(!a||"object"!=typeof a||Array.isArray(a))return null;let b={},c=(a,c)=>{if(null==c)return;let d=Number(c);Number.isFinite(d)&&(b[a]=d)},d=(a,c)=>{if(null==c||""===c)return;let d=Number(c);Number.isFinite(d)&&d>=0&&(b[a]=d)};c("prompt_tokens",a?.prompt_tokens),c("completion_tokens",a?.completion_tokens),c("total_tokens",a?.total_tokens),c("cache_read_input_tokens",a?.cache_read_input_tokens),c("cache_creation_input_tokens",a?.cache_creation_input_tokens),c("cached_tokens",a?.cached_tokens),c("reasoning_tokens",a?.reasoning_tokens),d("cost_usd",a?.cost_usd),d("cost_in_usd",a?.cost_in_usd),d("cost_in_usd_ticks",a?.cost_in_usd_ticks),a?.prompt_tokens_details&&"object"==typeof a.prompt_tokens_details&&(b.prompt_tokens_details=a.prompt_tokens_details),a?.completion_tokens_details&&"object"==typeof a.completion_tokens_details&&(b.completion_tokens_details=a.completion_tokens_details);let e=k(a?.cost);return(e&&(b.cost=e),0===Object.keys(b).length)?null:b}function k(a){if("number"==typeof a&&Number.isFinite(a))return{total:a};if(a&&"object"==typeof a){let b=Number(a.total);if(Number.isFinite(b))return{...a,total:b}}return null}function l(a,b,c){if(!a||"object"!=typeof a)return a;let d={...a},f=k(d.cost)?.total;if(!("number"==typeof f&&Number.isFinite(f)&&f>0)){let a=(0,e.getPricingForModel)(b,c);if(a){let b=m(d)||d;f=(0,e.calculateCostFromTokens)(b,a)}}if("number"==typeof f&&Number.isFinite(f)){let a=d.cost&&"object"==typeof d.cost?d.cost:{};d.cost={...a,total:f}}return d}function m(a){let b;if(!a||"object"!=typeof a||Array.isArray(a))return null;let c=a=>Number.isFinite(Number(a))?Number(a):0,d=c(a.completion_tokens??a.output_tokens),e=c(a.reasoning_tokens??a.completion_tokens_details?.reasoning_tokens??a.output_tokens_details?.reasoning_tokens),f=c(a.cache_creation_input_tokens??a.prompt_tokens_details?.cache_creation_tokens),g=c(a.prompt_tokens??a.input_tokens);void 0===a.cached_tokens&&(void 0!==a.cache_read_input_tokens||void 0!==a.cache_creation_input_tokens)?g=g+(b=c(a.cache_read_input_tokens))+f:b=c(a.cached_tokens??a.prompt_tokens_details?.cached_tokens??a.input_tokens_details?.cached_tokens);let h={prompt_tokens:g,completion_tokens:d,total_tokens:g+d,cached_tokens:b,cache_creation_input_tokens:f},i=b=>{if(null===a[b]||void 0===a[b]||""===a[b])return;let c=Number(a[b]);Number.isFinite(c)&&c>=0&&(h[b]=c)};return i("cost_usd"),i("cost_in_usd"),i("cost_in_usd_ticks"),e>0&&(h.reasoning_tokens=e),h}function n(a){if(!a||"object"!=typeof a)return!1;for(let b of["prompt_tokens","completion_tokens","total_tokens","input_tokens","output_tokens","promptTokenCount","candidatesTokenCount"])if("number"==typeof a[b]&&a[b]>0)return!0;return!1}function o(a){if(!a||"object"!=typeof a)return null;if("message_start"===a.type&&a.message?.usage&&"object"==typeof a.message.usage){let b=a.message.usage;return j({prompt_tokens:b.input_tokens||0,completion_tokens:b.output_tokens||0,cache_read_input_tokens:b.cache_read_input_tokens,cache_creation_input_tokens:b.cache_creation_input_tokens,cost_usd:b.cost_usd,cost_in_usd:b.cost_in_usd,cost_in_usd_ticks:b.cost_in_usd_ticks})}if("message_delta"===a.type&&a.usage&&"object"==typeof a.usage)return j({prompt_tokens:a.usage.input_tokens||0,completion_tokens:a.usage.output_tokens||0,cache_read_input_tokens:a.usage.cache_read_input_tokens,cache_creation_input_tokens:a.usage.cache_creation_input_tokens,cost_usd:a.usage.cost_usd,cost_in_usd:a.usage.cost_in_usd,cost_in_usd_ticks:a.usage.cost_in_usd_ticks});if(("response.completed"===a.type||"response.done"===a.type)&&a.response?.usage&&"object"==typeof a.response.usage){let b=a.response.usage,c=b.input_tokens_details?.cached_tokens;return j({prompt_tokens:b.input_tokens||b.prompt_tokens||0,completion_tokens:b.output_tokens||b.completion_tokens||0,cached_tokens:c,reasoning_tokens:b.output_tokens_details?.reasoning_tokens,cost_usd:b.cost_usd,cost_in_usd:b.cost_in_usd,cost_in_usd_ticks:b.cost_in_usd_ticks,prompt_tokens_details:c?{cached_tokens:c}:void 0})}if(a.usage&&"object"==typeof a.usage&&void 0!==a.usage.prompt_tokens)return j({prompt_tokens:a.usage.prompt_tokens,completion_tokens:a.usage.completion_tokens||0,cached_tokens:a.usage.prompt_tokens_details?.cached_tokens||a.usage.prompt_cache_hit_tokens,reasoning_tokens:a.usage.completion_tokens_details?.reasoning_tokens,cost_usd:a.usage.cost_usd,cost_in_usd:a.usage.cost_in_usd,cost_in_usd_ticks:a.usage.cost_in_usd_ticks,prompt_tokens_details:a.usage.prompt_tokens_details,completion_tokens_details:a.usage.completion_tokens_details,cost:a.usage.cost});let b=a.usageMetadata||a.response?.usageMetadata;return b&&"object"==typeof b?j({prompt_tokens:b.promptTokenCount||0,completion_tokens:b.candidatesTokenCount||0,total_tokens:b.totalTokenCount,cached_tokens:b.cachedContentTokenCount,reasoning_tokens:b.thoughtsTokenCount}):!0===a.done&&"number"==typeof a.prompt_eval_count?j({prompt_tokens:a.prompt_eval_count||0,completion_tokens:a.eval_count||0,total_tokens:(a.prompt_eval_count||0)+(a.eval_count||0)}):null}function p(a,b){if(!a)return b||null;if(!b)return a;let c={...a};for(let[a,d]of Object.entries(b))"number"==typeof d&&Number.isFinite(d)?c[a]=Math.max("number"==typeof c[a]?c[a]:0,d):d&&"object"==typeof d&&(c[a]=d);return c}function q(a){if(!a||"object"!=typeof a)return 0;try{let b=JSON.stringify(a);return Math.ceil(b.length/4)}catch{return 0}}function r(a,b,c=d.h.OPENAI,e={}){return function(a,b,c,e={}){let f=!1!==e.buffer?h:a=>a;return f(c===d.h.CLAUDE?{input_tokens:a,output_tokens:b,estimated:!0}:{prompt_tokens:a,completion_tokens:b,total_tokens:a+b,estimated:!0})}(q(a),b&&!(b<=0)?Math.max(1,Math.floor(b/4)):0,c,e)}function s(a,b,c=null,d=null,e=null){if(!b||"object"!=typeof b||!f)return;let h=a?.toUpperCase()||"UNKNOWN",i=b?.prompt_tokens||b?.input_tokens||0,j=b?.completion_tokens||b?.output_tokens||0,k=d?d.slice(0,8)+"...":"unknown",l=`[${new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}] 📊 ${g.green}[USAGE] ${h} | in=${i} | out=${j} | account=${k}${g.reset}`;b.estimated&&(l+=` ${g.yellow}(estimated)${g.reset}`);let m=b.cache_read_input_tokens||b.cached_tokens||b.prompt_tokens_details?.cached_tokens;m&&(l+=` | cache_read=${m}`);let n=b.cache_creation_input_tokens;n&&(l+=` | cache_create=${n}`);let o=b.reasoning_tokens;o&&(l+=` | reasoning=${o}`),console.log(l)}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=7775,exports.ids=[7775],exports.modules={48595:(a,b,c)=>{c.d(b,{UY:()=>g,oc:()=>h});var d=c(90053),e=c(63995),f=c(78492);Object.entries(e.Q2).filter(([,a])=>a.passthroughModels).map(([a])=>a),Object.entries(f.vq).flatMap(([a,b])=>b.map(b=>({provider:a,model:b.id,name:b.name}))),Object.freeze(["gemini-live"]),d.rE;let g={maxLines:200,pollIntervalMs:1e3,streamTimeoutMs:5e3},h={tickIntervalMs:6e4,pingLeadMs:5e3,refreshAheadMs:3e5,failureCooldownMs:9e5,providers:{claude:{settingsKey:"claudeAutoPing",quotaKey:"session (5h)",pingInactiveSession:!0,inactiveMinPingIntervalMs:18e6,pingModel:"claude-haiku-4-5-20251001",pingText:"hi",pingMaxTokens:1},codex:{settingsKey:"codexAutoPing",quotaKey:"session",pingWhenResetAtSlides:!0,resetAtDriftMs:3e4,minPingIntervalMs:6e5,skipWhenBlockingQuotaExhausted:!0,pingText:"hi",pingInstructions:"Reply with OK.",pingReasoningEffort:"none"}}}},63995:(a,b,c)=>{c.d(b,{Q2:()=>m});var d=c(38772);let e="⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.";Object.fromEntries(d.default.filter(a=>a.display).map(a=>{let b;return[a.id,"RISK_NOTICE"===(b=a.display).deprecationNotice?{...b,deprecationNotice:e}:b]}));let f=["serviceKinds","ttsConfig","sttConfig","embeddingConfig","imageConfig","imageToTextConfig","videoConfig","musicConfig","searchViaChat","searchConfig","fetchConfig","systemoneConfig","credentialFallback","modelsFetcher","mediaPriority","hiddenKinds"],g=a=>Object.fromEntries(d.default.filter(b=>b.category===a).map(a=>[a.id,function(a){let b={};for(let c of(a.media&&Object.assign(b,a.media),f))void 0!==a[c]&&(b[c]=a[c]);let c={...a.display||{}};return"RISK_NOTICE"===c.deprecationNotice&&(c.deprecationNotice=e),{...c,id:a.id,alias:a.uiAlias||a.alias,...a.hidden?{hidden:!0}:{},...b,...void 0!==a.priority?{priority:a.priority}:{},...a.hasFree?{hasFree:!0}:{},...a.thinkingConfig?{thinkingConfig:a.thinkingConfig}:{},...a.fastMode?{fastMode:a.fastMode}:{},...a.regions?{regions:a.regions,defaultRegion:a.defaultRegion}:{},...a.hasProviderSpecificData?{hasProviderSpecificData:!0}:{},...a.baseUrlField?{baseUrlField:a.baseUrlField}:{},...a.noAuth?{noAuth:!0}:{},...a.passthroughModels?{passthroughModels:!0}:{},...a.hasOAuth?{hasOAuth:!0}:{},...a.models?{models:a.models}:{},...a.authModes?{authModes:a.authModes}:{},...a.features?{features:{...a.features}}:{},...a.authType?{authType:a.authType}:{},...a.authHint?{authHint:a.authHint}:{},...a.apiKeyOptionalWith?{apiKeyOptionalWith:a.apiKeyOptionalWith}:{}}}(a)])),h=g("free"),i=g("freeTier"),j=g("oauth"),k=g("apikey"),l=g("webCookie"),m={...h,...i,...j,...k,...l};Object.values(m).reduce((a,b)=>(a[b.alias]=b.id,a),{}),Object.values(m).reduce((a,b)=>(a[b.id]=b.alias,a),{}),d.default.filter(a=>a.features?.usage).map(a=>a.id),d.default.filter(a=>a.features?.usageApikey).map(a=>a.id)},67775:(a,b,c)=>{c.d(b,{initConsoleLogCapture:()=>l});var d=c(94735),e=c(48595);let f=["log","info","warn","error","debug"];global._consoleLogBufferState||(global._consoleLogBufferState={logs:[],revision:0,patched:!1,originals:{},emitter:new d.EventEmitter},global._consoleLogBufferState.emitter.setMaxListeners(50));let g=global._consoleLogBufferState;function h(){if(g.flushTimer=null,!g.pendingLines.length)return;let a=g.pendingLines.splice(0,g.pendingLines.length);g.emitter.emit("lines",a)}g.emitter||(g.emitter=new d.EventEmitter,g.emitter.setMaxListeners(50)),g.pendingLines||(g.pendingLines=[]),g.flushTimer||(g.flushTimer=null),Number.isSafeInteger(g.revision)||(g.revision=0);let i=/\x1b\[[0-9;]*m/g;function j(a){return a.replace(i,"")}function k(a){if("string"==typeof a)return j(a);if(a instanceof Error)return j(a.stack||a.message||String(a));try{return j(JSON.stringify(a))}catch{return j(String(a))}}function l(){if(!g.patched){for(let a of f)g.originals[a]=console[a],console[a]=(...b)=>{!function(a){g.logs.push(a),g.revision+=1;let b=e.UY.maxLines;g.logs.length>b&&(g.logs=g.logs.slice(-b)),g.pendingLines.push(a),g.pendingLines.length>=50?(g.flushTimer&&(clearTimeout(g.flushTimer),g.flushTimer=null),h()):g.flushTimer||(g.flushTimer=setTimeout(h,100),g.flushTimer?.unref?.())}(b.map(k).join(" ")),g.originals[a](...b)};g.patched=!0}}},78492:(a,b,c)=>{c.d(b,{SM:()=>
|
|
1
|
+
"use strict";exports.id=7775,exports.ids=[7775],exports.modules={48595:(a,b,c)=>{c.d(b,{UY:()=>g,oc:()=>h});var d=c(90053),e=c(63995),f=c(78492);Object.entries(e.Q2).filter(([,a])=>a.passthroughModels).map(([a])=>a),Object.entries(f.vq).flatMap(([a,b])=>b.map(b=>({provider:a,model:b.id,name:b.name}))),Object.freeze(["gemini-live"]),d.rE;let g={maxLines:200,pollIntervalMs:1e3,streamTimeoutMs:5e3},h={tickIntervalMs:6e4,pingLeadMs:5e3,refreshAheadMs:3e5,failureCooldownMs:9e5,providers:{claude:{settingsKey:"claudeAutoPing",quotaKey:"session (5h)",pingInactiveSession:!0,inactiveMinPingIntervalMs:18e6,pingModel:"claude-haiku-4-5-20251001",pingText:"hi",pingMaxTokens:1},codex:{settingsKey:"codexAutoPing",quotaKey:"session",pingWhenResetAtSlides:!0,resetAtDriftMs:3e4,minPingIntervalMs:6e5,skipWhenBlockingQuotaExhausted:!0,pingText:"hi",pingInstructions:"Reply with OK.",pingReasoningEffort:"none"}}}},63995:(a,b,c)=>{c.d(b,{Q2:()=>m});var d=c(38772);let e="⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.";Object.fromEntries(d.default.filter(a=>a.display).map(a=>{let b;return[a.id,"RISK_NOTICE"===(b=a.display).deprecationNotice?{...b,deprecationNotice:e}:b]}));let f=["serviceKinds","ttsConfig","sttConfig","embeddingConfig","imageConfig","imageToTextConfig","videoConfig","musicConfig","searchViaChat","searchConfig","fetchConfig","systemoneConfig","credentialFallback","modelsFetcher","mediaPriority","hiddenKinds"],g=a=>Object.fromEntries(d.default.filter(b=>b.category===a).map(a=>[a.id,function(a){let b={};for(let c of(a.media&&Object.assign(b,a.media),f))void 0!==a[c]&&(b[c]=a[c]);let c={...a.display||{}};return"RISK_NOTICE"===c.deprecationNotice&&(c.deprecationNotice=e),{...c,id:a.id,alias:a.uiAlias||a.alias,...a.hidden?{hidden:!0}:{},...b,...void 0!==a.priority?{priority:a.priority}:{},...a.hasFree?{hasFree:!0}:{},...a.thinkingConfig?{thinkingConfig:a.thinkingConfig}:{},...a.fastMode?{fastMode:a.fastMode}:{},...a.regions?{regions:a.regions,defaultRegion:a.defaultRegion}:{},...a.hasProviderSpecificData?{hasProviderSpecificData:!0}:{},...a.baseUrlField?{baseUrlField:a.baseUrlField}:{},...a.noAuth?{noAuth:!0}:{},...a.passthroughModels?{passthroughModels:!0}:{},...a.hasOAuth?{hasOAuth:!0}:{},...a.models?{models:a.models}:{},...a.authModes?{authModes:a.authModes}:{},...a.features?{features:{...a.features}}:{},...a.authType?{authType:a.authType}:{},...a.authHint?{authHint:a.authHint}:{},...a.apiKeyOptionalWith?{apiKeyOptionalWith:a.apiKeyOptionalWith}:{}}}(a)])),h=g("free"),i=g("freeTier"),j=g("oauth"),k=g("apikey"),l=g("webCookie"),m={...h,...i,...j,...k,...l};Object.values(m).reduce((a,b)=>(a[b.alias]=b.id,a),{}),Object.values(m).reduce((a,b)=>(a[b.id]=b.alias,a),{}),d.default.filter(a=>a.features?.usage).map(a=>a.id),d.default.filter(a=>a.features?.usageApikey).map(a=>a.id)},67775:(a,b,c)=>{c.d(b,{initConsoleLogCapture:()=>l});var d=c(94735),e=c(48595);let f=["log","info","warn","error","debug"];global._consoleLogBufferState||(global._consoleLogBufferState={logs:[],revision:0,patched:!1,originals:{},emitter:new d.EventEmitter},global._consoleLogBufferState.emitter.setMaxListeners(50));let g=global._consoleLogBufferState;function h(){if(g.flushTimer=null,!g.pendingLines.length)return;let a=g.pendingLines.splice(0,g.pendingLines.length);g.emitter.emit("lines",a)}g.emitter||(g.emitter=new d.EventEmitter,g.emitter.setMaxListeners(50)),g.pendingLines||(g.pendingLines=[]),g.flushTimer||(g.flushTimer=null),Number.isSafeInteger(g.revision)||(g.revision=0);let i=/\x1b\[[0-9;]*m/g;function j(a){return a.replace(i,"")}function k(a){if("string"==typeof a)return j(a);if(a instanceof Error)return j(a.stack||a.message||String(a));try{return j(JSON.stringify(a))}catch{return j(String(a))}}function l(){if(!g.patched){for(let a of f)g.originals[a]=console[a],console[a]=(...b)=>{!function(a){g.logs.push(a),g.revision+=1;let b=e.UY.maxLines;g.logs.length>b&&(g.logs=g.logs.slice(-b)),g.pendingLines.push(a),g.pendingLines.length>=50?(g.flushTimer&&(clearTimeout(g.flushTimer),g.flushTimer=null),h()):g.flushTimer||(g.flushTimer=setTimeout(h,100),g.flushTimer?.unref?.())}(b.map(k).join(" ")),g.originals[a](...b)};g.patched=!0}}},78492:(a,b,c)=>{c.d(b,{SM:()=>j,kt:()=>n,ux:()=>m,vq:()=>e.vq});var d=c(38772),e=c(15251),f=c(97915),g=c(62397),h=c(68531);let i=a=>!a||["oc","opencode","ocg","opencode-go","ocz","opencode-zen"].includes(a);function j(a){return e.vq[a]||[]}let k=new Set(["kr","kiro"]);function l(a,b,c){if(!a)return;let d="string"==typeof b?b.replace(/\([^()]+\)\s*$/,"").trim():b,e=a.find(a=>a.id===b||a.id===d);if(e)return e;if(!k.has(c))return;let g=(0,f.Kq)(d);if(g!==d)return a.find(a=>a.id===g)}function m(a,b){if(i(a)&&(0,g.nh)(b))return h.h.OPENAI_RESPONSES;let c=e.vq[a];if(!c)return null;let d=l(c,b,a);return d?(0,f.gr)(d):i(a)&&(0,g.i8)(b)?.targetFormat||null}function n(a,b){let c="string"==typeof b?b.match(/\([^()]+\)\s*$/):null,d=c?c[0]:"",f=d?b.slice(0,c.index).trim():b,h=l(e.vq[a],f,a),i=h?.upstreamModelId||h?.id;if(i){let a=i.match(/\([^()]+\)\s*$/),b=a?.[0]||"";return(b?i.slice(0,a.index).trim():i)+(d||b)}return"cx"===a&&"string"==typeof f&&f.endsWith(g.d5)?f.slice(0,-g.d5.length)+d:f+d}Object.fromEntries(d.default.filter(a=>a.alias&&a.alias!==a.id).map(a=>[a.id,a.alias])),Object.fromEntries(d.default.map(a=>[a.id,a.alias||a.id]))},90053:a=>{a.exports={rE:"0.6.16"}}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=7811,exports.ids=[7811],exports.modules={27811:(a,b,c)=>{c.d(b,{Ge:()=>u,QU:()=>s,TM:()=>n,cI:()=>r,dR:()=>t,j:()=>v});var d=c(74452),e=c(1541),f=c(38775),g=c(40615),h=c(38606),i=c(89865),j=c(60290),k=c(7803);let l=a=>String(a).toLowerCase(),m=(a,b)=>l(`${a}/${b}`);async function n(a){let b=function(a){let b=a?.headers;if(!b?.get)return null;let c=b.get("Authorization");if(c?.startsWith("Bearer "))return c.slice(7);let d=b.get("x-api-key");if(d)return d;let e=b.get("x-goog-api-key");if(e)return e;try{return new URL(a.url).searchParams.get("key")||null}catch{return null}}(a);if(!b)return null;let c=await (0,d.getApiKeyByKey)(b);return c?.access?.restricted?{keyId:c.id,keyName:c.name||c.id,allow:c.access.allow||[],_sets:null}:null}async function o(a){if(a._sets)return a._sets;let b=new Set((await (0,e.Uv)()).map(a=>l(a.name))),c=new Set,d=new Set,h=new Set;for(let e of a.allow){let a=l(e);if(b.has(a)){c.add(a);continue}let i=await (0,f.mA)(e);i?.provider&&i.model&&d.add(m(i.provider,i.model)),e.includes("/")||h.add(l((0,g.rs)(e)))}return a._sets={combos:c,models:d,providers:h},a._sets}async function p(a,b){let c=await o(a),d=await (0,f.mA)(b);return d?.provider?c.models.has(m(d.provider,d.model)):c.combos.has(l(b))}function q(a,b){return k.warn("AUTH",`key-access: key "${a.keyName}" denied "${b}"`),(0,i.yj)(j.gx.FORBIDDEN,(0,h.Cq)(b))}async function r(a,b){if(!a)return null;if("string"!=typeof b||!b)return q(a,String(b??""));let c=await o(a);return(await (0,f.d_)(b)?c.combos.has(l(b)):await p(a,b))?null:q(a,b)}async function s(a,b,c,d){if(!a)return null;let e=b||(c?`${c}/${d??""}`:"");return c&&d&&(await o(a)).models.has(m(c,d))?null:q(a,e)}async function t(a,b,c){if(!a)return null;if("string"!=typeof b||!b)return q(a,String(b??""));let d=await o(a);return(c?d.combos.has(l(b)):d.providers.has(l((0,g.rs)(b))))?null:q(a,b)}async function u(a,b,c){if(!a||!Array.isArray(b))return b;let d=new Set(c||[]),e=[];for(let c of b)d.has(c)||await p(a,c)?e.push(c):k.info("AUTH",`key-access: key "${a.keyName}" skips adapter model "${c}" (not allowed)`);return e}async function v(a,b){if(!a||!Array.isArray(b))return b;let c=await o(a),d=[];for(let a of b){if(!a?.id)continue;if(a.owned_by===h.WR){c.combos.has(l(a.id))&&d.push(a);continue}let b=await (0,f.mA)(a.id);if(b?.provider){if(h.YR.includes(a.kind)){c.providers.has(l(b.provider))&&d.push(a);continue}c.models.has(m(b.provider,b.model))&&d.push(a)}}return d}},38775:(a,b,c)=>{c.d(b,{d_:()=>j,mA:()=>h,pe:()=>k});var d=c(89718),e=c(66451),f=c(99471);c(17218);let g={xmtp:"xiaomi-tokenplan","xiaomi-tokenplan":"xiaomi-tokenplan"};async function h(a){let b,c=(b=(0,e.Xh)(a),b?.providerAlias&&g[b.providerAlias]?{...b,provider:g[b.providerAlias]}:b);if(!c.isAlias){let a=(await (0,d.Fh)({type:"openai-compatible"})).find(a=>a.prefix===c.providerAlias);if(a)return{provider:a.id,model:c.model};let b=(await (0,d.Fh)({type:"anthropic-compatible"})).find(a=>a.prefix===c.providerAlias);if(b)return{provider:b.id,model:c.model};let e=(await (0,d.Fh)({type:"custom-embedding"})).find(a=>a.prefix===c.providerAlias);if(e)return{provider:e.id,model:c.model};let f=(await (0,d.Fh)({type:"custom-video"})).find(a=>a.prefix===c.providerAlias);return f?{provider:f.id,model:c.model}:{provider:c.provider,model:c.model}}if(await (0,d.Dj)(c.model))return{provider:null,model:c.model};let f=await i(c.model);return f||(0,e.js)(a,d.OM)}async function i(a){try{let b=(await (0,d.uv)()).find(b=>b&&b.id===a&&("llm"===b.type||!b.type));if(b&&b.providerAlias)return{provider:(0,e.g2)(b.providerAlias),model:b.id}}catch{}try{let b=await (0,d.OM)(),c=(0,e.sc)(a,b);if(c)return c}catch{}let b=(0,e.PN)(a);if(b)return{provider:b,model:a};try{let b=await (0,f.w)(a);if(b)return b}catch{}return null}async function j(a){if(a.includes("/"))return null;let b=await (0,d.Dj)(a);return b&&b.models&&b.models.length>0?b.models:null}async function k(a){if(a.includes("/"))return null;let b=await (0,d.Dj)(a);return b?{models:b.models||[],members:b.members||(b.models||[]).map(a=>({id:a,weight:1})),policy:b.policy||null,accountPolicy:b.accountPolicy||null,fusion:b.fusion||null,config:b.config||null,name:b.name,kind:b.kind}:null}},68001:(a,b,c)=>{c.d(b,{S:()=>g});var d=c(38071);let e=["big-pickle"],f=new Set(["deepseek-v4-flash-free"]),g={"openrouter-free":a=>a.filter(a=>a.pricing?.prompt==="0"&&a.pricing?.completion==="0"&&a.context_length>=2e5).map(a=>({id:a.id,name:a.name,contextLength:a.context_length})).sort((a,b)=>b.contextLength-a.contextLength),"opencode-free":a=>a.filter(a=>(a.id?.endsWith("-free")||e.includes(a.id))&&!f.has(a.id)).map(a=>({id:a.id,name:a.id})),"mimo-free":a=>(Array.isArray(a)?a:[]).filter(a=>a.id?.startsWith("mimo")||a.name?.toLowerCase().includes("mimo")).map(a=>({id:a.id,name:a.name||a.id})),"nous-free":d.pD,"airforce-free":a=>(Array.isArray(a)?a:[]).filter(a=>("free"===a.tier||a.id?.endsWith(":free"))&&!0===a.supports_chat&&(!a.media_type||"chat"===a.media_type||"text"===a.media_type)).map(a=>({id:a.id,name:a.name||a.id,contextLength:a.context_length})).sort((a,b)=>String(a.id).localeCompare(String(b.id)))}},99471:(a,b,c)=>{c.d(b,{Y:()=>k,w:()=>j});var d=c(68001);let e=null,f=0,g=null;async function h(){let a=new AbortController,b=setTimeout(()=>a.abort(),5e3);try{let b=await fetch("https://opencode.ai/zen/v1/models",{signal:a.signal});if(!b.ok)return e||[];let c=await b.json(),g=c.data??c.models??c,h=d.S["opencode-free"](Array.isArray(g)?g:[]);return e=h,f=Date.now(),h}catch{return e||[]}finally{clearTimeout(b)}}async function i(){if(e&&Date.now()-f<6e5)return e;if(!g){g=h();try{return await g}finally{g=null}}return g}async function j(a){let b=(await i()).find(b=>b&&b.id===a);return b?{provider:"opencode",model:b.id}:"big-pickle"===a||String(a).endsWith("-free")?{provider:"opencode",model:a}:null}async function k(){return await i()}}};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";exports.id=7965,exports.ids=[7965],exports.modules={57965:(a,b,c)=>{c.d(b,{createNodeSqliteAdapter:()=>f});var d=c(76040),e=c(85612);async function f(a){let b=process.emit;process.emit=function(a,c,...d){return!("warning"===a&&c?.name==="ExperimentalWarning"&&/SQLite/i.test(c.message||""))&&b.call(process,a,c,...d)};let f=new(await Promise.resolve().then(c.t.bind(c,79868,23))).DatabaseSync(a);f.exec(d.oG);let g=new Map;function h(a){let b=g.get(a);return b||(b=f.prepare(a),g.set(a,b)),b}let i=setInterval(()=>{try{f.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},6e4);function j(){try{f.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}try{g.clear()}catch{}try{f.close()}catch{}}return"function"==typeof i.unref&&i.unref(),(0,e.Bb)(j,100),{driver:"node:sqlite",run(a,b=[]){let c=h(a).run(...b);return{changes:Number(c.changes??0),lastInsertRowid:Number(c.lastInsertRowid??0)}},get:(a,b=[])=>h(a).get(...b),all:(a,b=[])=>h(a).all(...b),exec:a=>f.exec(a),transaction(a){let b=`sp_${Math.random().toString(36).slice(2)}`;f.exec(`SAVEPOINT ${b}`);try{let c=a();return f.exec(`RELEASE ${b}`),c}catch(a){try{f.exec(`ROLLBACK TO ${b}`),f.exec(`RELEASE ${b}`)}catch{}throw a}},checkpoint(){try{f.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},close(){clearInterval(i),j()},raw:f}}},76040:(a,b,c)=>{c.d(b,{CG:()=>f,f$:()=>d,oG:()=>e,zE:()=>g});let d=
|
|
1
|
+
"use strict";exports.id=7965,exports.ids=[7965],exports.modules={57965:(a,b,c)=>{c.d(b,{createNodeSqliteAdapter:()=>f});var d=c(76040),e=c(85612);async function f(a){let b=process.emit;process.emit=function(a,c,...d){return!("warning"===a&&c?.name==="ExperimentalWarning"&&/SQLite/i.test(c.message||""))&&b.call(process,a,c,...d)};let f=new(await Promise.resolve().then(c.t.bind(c,79868,23))).DatabaseSync(a);f.exec(d.oG);let g=new Map;function h(a){let b=g.get(a);return b||(b=f.prepare(a),g.set(a,b)),b}let i=setInterval(()=>{try{f.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},6e4);function j(){try{f.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}try{g.clear()}catch{}try{f.close()}catch{}}return"function"==typeof i.unref&&i.unref(),(0,e.Bb)(j,100),{driver:"node:sqlite",run(a,b=[]){let c=h(a).run(...b);return{changes:Number(c.changes??0),lastInsertRowid:Number(c.lastInsertRowid??0)}},get:(a,b=[])=>h(a).get(...b),all:(a,b=[])=>h(a).all(...b),exec:a=>f.exec(a),transaction(a){let b=`sp_${Math.random().toString(36).slice(2)}`;f.exec(`SAVEPOINT ${b}`);try{let c=a();return f.exec(`RELEASE ${b}`),c}catch(a){try{f.exec(`ROLLBACK TO ${b}`),f.exec(`RELEASE ${b}`)}catch{}throw a}},checkpoint(){try{f.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},close(){clearInterval(i),j()},raw:f}}},76040:(a,b,c)=>{c.d(b,{CG:()=>f,f$:()=>d,oG:()=>e,zE:()=>g});let d=7,e=`
|
|
2
2
|
PRAGMA journal_mode = WAL;
|
|
3
3
|
PRAGMA synchronous = NORMAL;
|
|
4
4
|
PRAGMA temp_store = MEMORY;
|
|
@@ -6,4 +6,4 @@ PRAGMA mmap_size = 30000000;
|
|
|
6
6
|
PRAGMA cache_size = -64000;
|
|
7
7
|
PRAGMA foreign_keys = ON;
|
|
8
8
|
PRAGMA busy_timeout = 5000;
|
|
9
|
-
`,f={_meta:{columns:{key:"TEXT PRIMARY KEY",value:"TEXT NOT NULL"}},settings:{columns:{id:"INTEGER PRIMARY KEY CHECK (id = 1)",data:"TEXT NOT NULL"}},providerConnections:{columns:{id:"TEXT PRIMARY KEY",provider:"TEXT NOT NULL",authType:"TEXT NOT NULL",name:"TEXT",email:"TEXT",priority:"INTEGER",isActive:"INTEGER DEFAULT 1",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pc_provider ON providerConnections(provider)","CREATE INDEX IF NOT EXISTS idx_pc_provider_active ON providerConnections(provider, isActive)","CREATE INDEX IF NOT EXISTS idx_pc_priority ON providerConnections(provider, priority)"]},providerNodes:{columns:{id:"TEXT PRIMARY KEY",type:"TEXT",name:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pn_type ON providerNodes(type)"]},proxyPools:{columns:{id:"TEXT PRIMARY KEY",isActive:"INTEGER DEFAULT 1",testStatus:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pp_active ON proxyPools(isActive)","CREATE INDEX IF NOT EXISTS idx_pp_status ON proxyPools(testStatus)"]},apiKeys:{columns:{id:"TEXT PRIMARY KEY",key:"TEXT UNIQUE NOT NULL",name:"TEXT",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL",scope:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_ak_key ON apiKeys(key)"]},combos:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT UNIQUE NOT NULL",kind:"TEXT",models:"TEXT NOT NULL",config:"TEXT",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_combo_name ON combos(name)"]},mcpInstances:{columns:{id:"TEXT PRIMARY KEY",slug:"TEXT UNIQUE NOT NULL",title:"TEXT",kind:"TEXT NOT NULL",transport:"TEXT NOT NULL",url:"TEXT",command:"TEXT",args:"TEXT",env:"TEXT",headers:"TEXT",oauth:"INTEGER DEFAULT 0",oauthTokens:"TEXT",enabled:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_mcp_inst_slug ON mcpInstances(slug)","CREATE INDEX IF NOT EXISTS idx_mcp_inst_enabled ON mcpInstances(enabled)"]},mcpGatewayKeys:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT",key:"TEXT UNIQUE NOT NULL",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_mcp_gwkey ON mcpGatewayKeys(key)"]},mcpKeyGrants:{columns:{keyId:"TEXT NOT NULL",instanceId:"TEXT NOT NULL",toolAllowlist:"TEXT"},primaryKey:"PRIMARY KEY (keyId, instanceId)",indexes:["CREATE INDEX IF NOT EXISTS idx_mcp_grant_key ON mcpKeyGrants(keyId)"]},kv:{columns:{scope:"TEXT NOT NULL",key:"TEXT NOT NULL",value:"TEXT NOT NULL"},primaryKey:"PRIMARY KEY (scope, key)",indexes:["CREATE INDEX IF NOT EXISTS idx_kv_scope ON kv(scope)"]},usageHistory:{columns:{id:"INTEGER PRIMARY KEY AUTOINCREMENT",timestamp:"TEXT NOT NULL",provider:"TEXT",model:"TEXT",connectionId:"TEXT",apiKey:"TEXT",endpoint:"TEXT",promptTokens:"INTEGER DEFAULT 0",completionTokens:"INTEGER DEFAULT 0",cost:"REAL DEFAULT 0",status:"TEXT",tokens:"TEXT",meta:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_uh_ts ON usageHistory(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_uh_provider ON usageHistory(provider)","CREATE INDEX IF NOT EXISTS idx_uh_model ON usageHistory(model)","CREATE INDEX IF NOT EXISTS idx_uh_conn ON usageHistory(connectionId)"]},usageDaily:{columns:{dateKey:"TEXT PRIMARY KEY",data:"TEXT NOT NULL"}},requestDetails:{columns:{id:"TEXT PRIMARY KEY",timestamp:"TEXT NOT NULL",provider:"TEXT",model:"TEXT",connectionId:"TEXT",status:"TEXT",data:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_rd_ts ON requestDetails(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_rd_provider ON requestDetails(provider)","CREATE INDEX IF NOT EXISTS idx_rd_model ON requestDetails(model)","CREATE INDEX IF NOT EXISTS idx_rd_conn ON requestDetails(connectionId)"]},errorLogs:{columns:{id:"TEXT PRIMARY KEY",timestamp:"TEXT NOT NULL",endpoint:"TEXT",provider:"TEXT",model:"TEXT",connectionId:"TEXT",comboName:"TEXT",statusCode:"TEXT",errorMessage:"TEXT",request:"TEXT",providerRequest:"TEXT",providerResponse:"TEXT",meta:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_el_ts ON errorLogs(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_el_provider ON errorLogs(provider)","CREATE INDEX IF NOT EXISTS idx_el_model ON errorLogs(model)","CREATE INDEX IF NOT EXISTS idx_el_conn ON errorLogs(connectionId)","CREATE INDEX IF NOT EXISTS idx_el_combo ON errorLogs(comboName)"]},tokenSaverDaily:{columns:{dateKey:"TEXT PRIMARY KEY",data:"TEXT NOT NULL"}},convoyRules:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT NOT NULL",enabled:"INTEGER DEFAULT 1",priority:"INTEGER DEFAULT 0",matchType:"TEXT NOT NULL DEFAULT 'literal'",action:"TEXT NOT NULL DEFAULT 'replace'",pattern:"TEXT NOT NULL",replacement:"TEXT DEFAULT ''",caseSensitive:"INTEGER DEFAULT 1",providerIds:"TEXT DEFAULT '[]'",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_cr_enabled ON convoyRules(enabled)","CREATE INDEX IF NOT EXISTS idx_cr_priority ON convoyRules(enabled, priority)"]}};function g(a,b){let c=Object.entries(b.columns).map(([a,b])=>`${a} ${b}`);return b.primaryKey&&c.push(b.primaryKey),`CREATE TABLE IF NOT EXISTS ${a} (${c.join(", ")})`}}};
|
|
9
|
+
`,f={_meta:{columns:{key:"TEXT PRIMARY KEY",value:"TEXT NOT NULL"}},settings:{columns:{id:"INTEGER PRIMARY KEY CHECK (id = 1)",data:"TEXT NOT NULL"}},providerConnections:{columns:{id:"TEXT PRIMARY KEY",provider:"TEXT NOT NULL",authType:"TEXT NOT NULL",name:"TEXT",email:"TEXT",priority:"INTEGER",isActive:"INTEGER DEFAULT 1",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pc_provider ON providerConnections(provider)","CREATE INDEX IF NOT EXISTS idx_pc_provider_active ON providerConnections(provider, isActive)","CREATE INDEX IF NOT EXISTS idx_pc_priority ON providerConnections(provider, priority)"]},providerNodes:{columns:{id:"TEXT PRIMARY KEY",type:"TEXT",name:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pn_type ON providerNodes(type)"]},proxyPools:{columns:{id:"TEXT PRIMARY KEY",isActive:"INTEGER DEFAULT 1",testStatus:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pp_active ON proxyPools(isActive)","CREATE INDEX IF NOT EXISTS idx_pp_status ON proxyPools(testStatus)"]},apiKeys:{columns:{id:"TEXT PRIMARY KEY",key:"TEXT UNIQUE NOT NULL",name:"TEXT",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL",scope:"TEXT",accessRestricted:"INTEGER DEFAULT 0",accessAllow:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_ak_key ON apiKeys(key)"]},combos:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT UNIQUE NOT NULL",kind:"TEXT",models:"TEXT NOT NULL",config:"TEXT",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_combo_name ON combos(name)"]},mcpInstances:{columns:{id:"TEXT PRIMARY KEY",slug:"TEXT UNIQUE NOT NULL",title:"TEXT",kind:"TEXT NOT NULL",transport:"TEXT NOT NULL",url:"TEXT",command:"TEXT",args:"TEXT",env:"TEXT",headers:"TEXT",oauth:"INTEGER DEFAULT 0",oauthTokens:"TEXT",enabled:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_mcp_inst_slug ON mcpInstances(slug)","CREATE INDEX IF NOT EXISTS idx_mcp_inst_enabled ON mcpInstances(enabled)"]},mcpGatewayKeys:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT",key:"TEXT UNIQUE NOT NULL",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_mcp_gwkey ON mcpGatewayKeys(key)"]},mcpKeyGrants:{columns:{keyId:"TEXT NOT NULL",instanceId:"TEXT NOT NULL",toolAllowlist:"TEXT"},primaryKey:"PRIMARY KEY (keyId, instanceId)",indexes:["CREATE INDEX IF NOT EXISTS idx_mcp_grant_key ON mcpKeyGrants(keyId)"]},kv:{columns:{scope:"TEXT NOT NULL",key:"TEXT NOT NULL",value:"TEXT NOT NULL"},primaryKey:"PRIMARY KEY (scope, key)",indexes:["CREATE INDEX IF NOT EXISTS idx_kv_scope ON kv(scope)"]},usageHistory:{columns:{id:"INTEGER PRIMARY KEY AUTOINCREMENT",timestamp:"TEXT NOT NULL",provider:"TEXT",model:"TEXT",connectionId:"TEXT",apiKey:"TEXT",endpoint:"TEXT",promptTokens:"INTEGER DEFAULT 0",completionTokens:"INTEGER DEFAULT 0",cost:"REAL DEFAULT 0",status:"TEXT",tokens:"TEXT",meta:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_uh_ts ON usageHistory(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_uh_provider ON usageHistory(provider)","CREATE INDEX IF NOT EXISTS idx_uh_model ON usageHistory(model)","CREATE INDEX IF NOT EXISTS idx_uh_conn ON usageHistory(connectionId)"]},usageDaily:{columns:{dateKey:"TEXT PRIMARY KEY",data:"TEXT NOT NULL"}},requestDetails:{columns:{id:"TEXT PRIMARY KEY",timestamp:"TEXT NOT NULL",provider:"TEXT",model:"TEXT",connectionId:"TEXT",status:"TEXT",data:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_rd_ts ON requestDetails(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_rd_provider ON requestDetails(provider)","CREATE INDEX IF NOT EXISTS idx_rd_model ON requestDetails(model)","CREATE INDEX IF NOT EXISTS idx_rd_conn ON requestDetails(connectionId)"]},errorLogs:{columns:{id:"TEXT PRIMARY KEY",timestamp:"TEXT NOT NULL",endpoint:"TEXT",provider:"TEXT",model:"TEXT",connectionId:"TEXT",comboName:"TEXT",statusCode:"TEXT",errorMessage:"TEXT",request:"TEXT",providerRequest:"TEXT",providerResponse:"TEXT",meta:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_el_ts ON errorLogs(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_el_provider ON errorLogs(provider)","CREATE INDEX IF NOT EXISTS idx_el_model ON errorLogs(model)","CREATE INDEX IF NOT EXISTS idx_el_conn ON errorLogs(connectionId)","CREATE INDEX IF NOT EXISTS idx_el_combo ON errorLogs(comboName)"]},tokenSaverDaily:{columns:{dateKey:"TEXT PRIMARY KEY",data:"TEXT NOT NULL"}},convoyRules:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT NOT NULL",enabled:"INTEGER DEFAULT 1",priority:"INTEGER DEFAULT 0",matchType:"TEXT NOT NULL DEFAULT 'literal'",action:"TEXT NOT NULL DEFAULT 'replace'",pattern:"TEXT NOT NULL",replacement:"TEXT DEFAULT ''",caseSensitive:"INTEGER DEFAULT 1",providerIds:"TEXT DEFAULT '[]'",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_cr_enabled ON convoyRules(enabled)","CREATE INDEX IF NOT EXISTS idx_cr_priority ON convoyRules(enabled, priority)"]}};function g(a,b){let c=Object.entries(b.columns).map(([a,b])=>`${a} ${b}`);return b.primaryKey&&c.push(b.primaryKey),`CREATE TABLE IF NOT EXISTS ${a} (${c.join(", ")})`}}};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";exports.id=8062,exports.ids=[8062],exports.modules={34050:(a,b,c)=>{c.d(b,{CG:()=>f,f$:()=>d,oG:()=>e,zE:()=>g});let d=
|
|
1
|
+
"use strict";exports.id=8062,exports.ids=[8062],exports.modules={34050:(a,b,c)=>{c.d(b,{CG:()=>f,f$:()=>d,oG:()=>e,zE:()=>g});let d=7,e=`
|
|
2
2
|
PRAGMA journal_mode = WAL;
|
|
3
3
|
PRAGMA synchronous = NORMAL;
|
|
4
4
|
PRAGMA temp_store = MEMORY;
|
|
@@ -6,4 +6,4 @@ PRAGMA mmap_size = 30000000;
|
|
|
6
6
|
PRAGMA cache_size = -64000;
|
|
7
7
|
PRAGMA foreign_keys = ON;
|
|
8
8
|
PRAGMA busy_timeout = 5000;
|
|
9
|
-
`,f={_meta:{columns:{key:"TEXT PRIMARY KEY",value:"TEXT NOT NULL"}},settings:{columns:{id:"INTEGER PRIMARY KEY CHECK (id = 1)",data:"TEXT NOT NULL"}},providerConnections:{columns:{id:"TEXT PRIMARY KEY",provider:"TEXT NOT NULL",authType:"TEXT NOT NULL",name:"TEXT",email:"TEXT",priority:"INTEGER",isActive:"INTEGER DEFAULT 1",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pc_provider ON providerConnections(provider)","CREATE INDEX IF NOT EXISTS idx_pc_provider_active ON providerConnections(provider, isActive)","CREATE INDEX IF NOT EXISTS idx_pc_priority ON providerConnections(provider, priority)"]},providerNodes:{columns:{id:"TEXT PRIMARY KEY",type:"TEXT",name:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pn_type ON providerNodes(type)"]},proxyPools:{columns:{id:"TEXT PRIMARY KEY",isActive:"INTEGER DEFAULT 1",testStatus:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pp_active ON proxyPools(isActive)","CREATE INDEX IF NOT EXISTS idx_pp_status ON proxyPools(testStatus)"]},apiKeys:{columns:{id:"TEXT PRIMARY KEY",key:"TEXT UNIQUE NOT NULL",name:"TEXT",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL",scope:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_ak_key ON apiKeys(key)"]},combos:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT UNIQUE NOT NULL",kind:"TEXT",models:"TEXT NOT NULL",config:"TEXT",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_combo_name ON combos(name)"]},mcpInstances:{columns:{id:"TEXT PRIMARY KEY",slug:"TEXT UNIQUE NOT NULL",title:"TEXT",kind:"TEXT NOT NULL",transport:"TEXT NOT NULL",url:"TEXT",command:"TEXT",args:"TEXT",env:"TEXT",headers:"TEXT",oauth:"INTEGER DEFAULT 0",oauthTokens:"TEXT",enabled:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_mcp_inst_slug ON mcpInstances(slug)","CREATE INDEX IF NOT EXISTS idx_mcp_inst_enabled ON mcpInstances(enabled)"]},mcpGatewayKeys:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT",key:"TEXT UNIQUE NOT NULL",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_mcp_gwkey ON mcpGatewayKeys(key)"]},mcpKeyGrants:{columns:{keyId:"TEXT NOT NULL",instanceId:"TEXT NOT NULL",toolAllowlist:"TEXT"},primaryKey:"PRIMARY KEY (keyId, instanceId)",indexes:["CREATE INDEX IF NOT EXISTS idx_mcp_grant_key ON mcpKeyGrants(keyId)"]},kv:{columns:{scope:"TEXT NOT NULL",key:"TEXT NOT NULL",value:"TEXT NOT NULL"},primaryKey:"PRIMARY KEY (scope, key)",indexes:["CREATE INDEX IF NOT EXISTS idx_kv_scope ON kv(scope)"]},usageHistory:{columns:{id:"INTEGER PRIMARY KEY AUTOINCREMENT",timestamp:"TEXT NOT NULL",provider:"TEXT",model:"TEXT",connectionId:"TEXT",apiKey:"TEXT",endpoint:"TEXT",promptTokens:"INTEGER DEFAULT 0",completionTokens:"INTEGER DEFAULT 0",cost:"REAL DEFAULT 0",status:"TEXT",tokens:"TEXT",meta:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_uh_ts ON usageHistory(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_uh_provider ON usageHistory(provider)","CREATE INDEX IF NOT EXISTS idx_uh_model ON usageHistory(model)","CREATE INDEX IF NOT EXISTS idx_uh_conn ON usageHistory(connectionId)"]},usageDaily:{columns:{dateKey:"TEXT PRIMARY KEY",data:"TEXT NOT NULL"}},requestDetails:{columns:{id:"TEXT PRIMARY KEY",timestamp:"TEXT NOT NULL",provider:"TEXT",model:"TEXT",connectionId:"TEXT",status:"TEXT",data:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_rd_ts ON requestDetails(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_rd_provider ON requestDetails(provider)","CREATE INDEX IF NOT EXISTS idx_rd_model ON requestDetails(model)","CREATE INDEX IF NOT EXISTS idx_rd_conn ON requestDetails(connectionId)"]},errorLogs:{columns:{id:"TEXT PRIMARY KEY",timestamp:"TEXT NOT NULL",endpoint:"TEXT",provider:"TEXT",model:"TEXT",connectionId:"TEXT",comboName:"TEXT",statusCode:"TEXT",errorMessage:"TEXT",request:"TEXT",providerRequest:"TEXT",providerResponse:"TEXT",meta:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_el_ts ON errorLogs(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_el_provider ON errorLogs(provider)","CREATE INDEX IF NOT EXISTS idx_el_model ON errorLogs(model)","CREATE INDEX IF NOT EXISTS idx_el_conn ON errorLogs(connectionId)","CREATE INDEX IF NOT EXISTS idx_el_combo ON errorLogs(comboName)"]},tokenSaverDaily:{columns:{dateKey:"TEXT PRIMARY KEY",data:"TEXT NOT NULL"}},convoyRules:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT NOT NULL",enabled:"INTEGER DEFAULT 1",priority:"INTEGER DEFAULT 0",matchType:"TEXT NOT NULL DEFAULT 'literal'",action:"TEXT NOT NULL DEFAULT 'replace'",pattern:"TEXT NOT NULL",replacement:"TEXT DEFAULT ''",caseSensitive:"INTEGER DEFAULT 1",providerIds:"TEXT DEFAULT '[]'",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_cr_enabled ON convoyRules(enabled)","CREATE INDEX IF NOT EXISTS idx_cr_priority ON convoyRules(enabled, priority)"]}};function g(a,b){let c=Object.entries(b.columns).map(([a,b])=>`${a} ${b}`);return b.primaryKey&&c.push(b.primaryKey),`CREATE TABLE IF NOT EXISTS ${a} (${c.join(", ")})`}},38062:(a,b,c)=>{c.d(b,{createBunSqliteAdapter:()=>f});var d=c(34050),e=c(11356);async function f(a){let{Database:b}=await Promise.resolve().then(c.t.bind(c,81787,23)),f=new b(a,{create:!0});f.exec(d.oG);let g=new Map;function h(a){let b=g.get(a);return b||(b=f.prepare(a),g.set(a,b)),b}let i=setInterval(()=>{try{f.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},6e4);function j(){try{f.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}try{g.clear()}catch{}try{f.close()}catch{}}return"function"==typeof i.unref&&i.unref(),(0,e.Bb)(j,100),{driver:"bun:sqlite",run(a,b=[]){let c=h(a).run(...b);return{changes:Number(c.changes??0),lastInsertRowid:Number(c.lastInsertRowid??0)}},get:(a,b=[])=>h(a).get(...b),all:(a,b=[])=>h(a).all(...b),exec:a=>f.exec(a),transaction:a=>f.transaction(a)(),checkpoint(){try{f.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},close(){clearInterval(i),j()},raw:f}}}};
|
|
9
|
+
`,f={_meta:{columns:{key:"TEXT PRIMARY KEY",value:"TEXT NOT NULL"}},settings:{columns:{id:"INTEGER PRIMARY KEY CHECK (id = 1)",data:"TEXT NOT NULL"}},providerConnections:{columns:{id:"TEXT PRIMARY KEY",provider:"TEXT NOT NULL",authType:"TEXT NOT NULL",name:"TEXT",email:"TEXT",priority:"INTEGER",isActive:"INTEGER DEFAULT 1",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pc_provider ON providerConnections(provider)","CREATE INDEX IF NOT EXISTS idx_pc_provider_active ON providerConnections(provider, isActive)","CREATE INDEX IF NOT EXISTS idx_pc_priority ON providerConnections(provider, priority)"]},providerNodes:{columns:{id:"TEXT PRIMARY KEY",type:"TEXT",name:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pn_type ON providerNodes(type)"]},proxyPools:{columns:{id:"TEXT PRIMARY KEY",isActive:"INTEGER DEFAULT 1",testStatus:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pp_active ON proxyPools(isActive)","CREATE INDEX IF NOT EXISTS idx_pp_status ON proxyPools(testStatus)"]},apiKeys:{columns:{id:"TEXT PRIMARY KEY",key:"TEXT UNIQUE NOT NULL",name:"TEXT",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL",scope:"TEXT",accessRestricted:"INTEGER DEFAULT 0",accessAllow:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_ak_key ON apiKeys(key)"]},combos:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT UNIQUE NOT NULL",kind:"TEXT",models:"TEXT NOT NULL",config:"TEXT",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_combo_name ON combos(name)"]},mcpInstances:{columns:{id:"TEXT PRIMARY KEY",slug:"TEXT UNIQUE NOT NULL",title:"TEXT",kind:"TEXT NOT NULL",transport:"TEXT NOT NULL",url:"TEXT",command:"TEXT",args:"TEXT",env:"TEXT",headers:"TEXT",oauth:"INTEGER DEFAULT 0",oauthTokens:"TEXT",enabled:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_mcp_inst_slug ON mcpInstances(slug)","CREATE INDEX IF NOT EXISTS idx_mcp_inst_enabled ON mcpInstances(enabled)"]},mcpGatewayKeys:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT",key:"TEXT UNIQUE NOT NULL",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_mcp_gwkey ON mcpGatewayKeys(key)"]},mcpKeyGrants:{columns:{keyId:"TEXT NOT NULL",instanceId:"TEXT NOT NULL",toolAllowlist:"TEXT"},primaryKey:"PRIMARY KEY (keyId, instanceId)",indexes:["CREATE INDEX IF NOT EXISTS idx_mcp_grant_key ON mcpKeyGrants(keyId)"]},kv:{columns:{scope:"TEXT NOT NULL",key:"TEXT NOT NULL",value:"TEXT NOT NULL"},primaryKey:"PRIMARY KEY (scope, key)",indexes:["CREATE INDEX IF NOT EXISTS idx_kv_scope ON kv(scope)"]},usageHistory:{columns:{id:"INTEGER PRIMARY KEY AUTOINCREMENT",timestamp:"TEXT NOT NULL",provider:"TEXT",model:"TEXT",connectionId:"TEXT",apiKey:"TEXT",endpoint:"TEXT",promptTokens:"INTEGER DEFAULT 0",completionTokens:"INTEGER DEFAULT 0",cost:"REAL DEFAULT 0",status:"TEXT",tokens:"TEXT",meta:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_uh_ts ON usageHistory(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_uh_provider ON usageHistory(provider)","CREATE INDEX IF NOT EXISTS idx_uh_model ON usageHistory(model)","CREATE INDEX IF NOT EXISTS idx_uh_conn ON usageHistory(connectionId)"]},usageDaily:{columns:{dateKey:"TEXT PRIMARY KEY",data:"TEXT NOT NULL"}},requestDetails:{columns:{id:"TEXT PRIMARY KEY",timestamp:"TEXT NOT NULL",provider:"TEXT",model:"TEXT",connectionId:"TEXT",status:"TEXT",data:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_rd_ts ON requestDetails(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_rd_provider ON requestDetails(provider)","CREATE INDEX IF NOT EXISTS idx_rd_model ON requestDetails(model)","CREATE INDEX IF NOT EXISTS idx_rd_conn ON requestDetails(connectionId)"]},errorLogs:{columns:{id:"TEXT PRIMARY KEY",timestamp:"TEXT NOT NULL",endpoint:"TEXT",provider:"TEXT",model:"TEXT",connectionId:"TEXT",comboName:"TEXT",statusCode:"TEXT",errorMessage:"TEXT",request:"TEXT",providerRequest:"TEXT",providerResponse:"TEXT",meta:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_el_ts ON errorLogs(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_el_provider ON errorLogs(provider)","CREATE INDEX IF NOT EXISTS idx_el_model ON errorLogs(model)","CREATE INDEX IF NOT EXISTS idx_el_conn ON errorLogs(connectionId)","CREATE INDEX IF NOT EXISTS idx_el_combo ON errorLogs(comboName)"]},tokenSaverDaily:{columns:{dateKey:"TEXT PRIMARY KEY",data:"TEXT NOT NULL"}},convoyRules:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT NOT NULL",enabled:"INTEGER DEFAULT 1",priority:"INTEGER DEFAULT 0",matchType:"TEXT NOT NULL DEFAULT 'literal'",action:"TEXT NOT NULL DEFAULT 'replace'",pattern:"TEXT NOT NULL",replacement:"TEXT DEFAULT ''",caseSensitive:"INTEGER DEFAULT 1",providerIds:"TEXT DEFAULT '[]'",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_cr_enabled ON convoyRules(enabled)","CREATE INDEX IF NOT EXISTS idx_cr_priority ON convoyRules(enabled, priority)"]}};function g(a,b){let c=Object.entries(b.columns).map(([a,b])=>`${a} ${b}`);return b.primaryKey&&c.push(b.primaryKey),`CREATE TABLE IF NOT EXISTS ${a} (${c.join(", ")})`}},38062:(a,b,c)=>{c.d(b,{createBunSqliteAdapter:()=>f});var d=c(34050),e=c(11356);async function f(a){let{Database:b}=await Promise.resolve().then(c.t.bind(c,81787,23)),f=new b(a,{create:!0});f.exec(d.oG);let g=new Map;function h(a){let b=g.get(a);return b||(b=f.prepare(a),g.set(a,b)),b}let i=setInterval(()=>{try{f.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},6e4);function j(){try{f.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}try{g.clear()}catch{}try{f.close()}catch{}}return"function"==typeof i.unref&&i.unref(),(0,e.Bb)(j,100),{driver:"bun:sqlite",run(a,b=[]){let c=h(a).run(...b);return{changes:Number(c.changes??0),lastInsertRowid:Number(c.lastInsertRowid??0)}},get:(a,b=[])=>h(a).get(...b),all:(a,b=[])=>h(a).all(...b),exec:a=>f.exec(a),transaction:a=>f.transaction(a)(),checkpoint(){try{f.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},close(){clearInterval(i),j()},raw:f}}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=8129,exports.ids=[8129],exports.modules={4630:(a,b,c)=>{c.d(b,{Ak:()=>e,Yg:()=>h,sr:()=>d.sr,xq:()=>d.xq});var d=c(39141);function e(a){return(a?.providerSpecificData?.baseUrl?.trim()||"http://localhost:11434").replace(/\/$/,"")}let f=d.xq["xiaomi-tokenplan"]?.regions||{},g=d.xq["xiaomi-tokenplan"]?.defaultRegion;function h(a){return f[a?.providerSpecificData?.region]||f[g]}},18080:(a,b,c)=>{c.d(b,{Xj:()=>j,uo:()=>k});var d=c(92990);let e=new Set(["login.microsoftonline.com","login.microsoft.com","login.windows.net"]);function f(a){return"string"==typeof a?a.trim():""}function g(a){let b,c=f(a);if(!c)throw Error("token_endpoint is required");try{b=new URL(c)}catch{throw Error("token_endpoint must be a valid URL")}if("https:"!==b.protocol)throw Error("token_endpoint must use https");let d=b.hostname.toLowerCase();if(!e.has(d))throw Error("token_endpoint must be a Microsoft login endpoint");return b.toString()}function h(a){return Array.isArray(a)?a.map(f).filter(Boolean).join(" "):f(a)}function i(a){try{if(!a||"string"!=typeof a)return null;let b=a.split(".");if(3!==b.length)return null;let c=b[1].replace(/-/g,"+").replace(/_/g,"/"),d=(4-c.length%4)%4;return JSON.parse(Buffer.from(`${c}${"=".repeat(d)}`,"base64").toString("utf8"))}catch{return null}}function j(a){let b=a;if("string"==typeof b)try{b=JSON.parse(b)}catch{throw Error("CLIProxyAPI auth JSON is invalid")}if(!b||"object"!=typeof b)throw Error("CLIProxyAPI auth JSON is required");let c=f(b.auth_method||b.authMethod);if(c&&"external_idp"!==c)throw Error("Only external_idp Kiro auth is supported by this importer");let e=f(b.access_token||b.accessToken),j=f(b.refresh_token||b.refreshToken),k=f(b.client_id||b.clientId),l=g(b.token_endpoint||b.tokenEndpoint),m=f(b.profile_arn||b.profileArn),n=f(b.region)||"us-east-1",o=h(b.scopes||b.scope),p=(0,d.S6)(n);if(!e)throw Error("access_token is required");if(!j)throw Error("refresh_token is required");if(!k)throw Error("client_id is required");if(!o)throw Error("scopes is required");if(!m)throw Error("profile_arn is required");let q=i(e),r=b.email||q?.email||q?.preferred_username||q?.upn||q?.sub||null;return{accessToken:e,refreshToken:j,expiresAt:function(a){let b=a.expired||a.expires_at||a.expiresAt;if(b){let a=new Date(b).getTime();if(Number.isFinite(a))return new Date(a).toISOString()}let c=Number(a.expires_in||a.expiresIn||0);if(Number.isFinite(c)&&c>0)return new Date(Date.now()+1e3*c).toISOString();let d=i(a.access_token||a.accessToken);return d?.exp?new Date(1e3*d.exp).toISOString():new Date(Date.now()+36e5).toISOString()}(b),email:r,providerSpecificData:{profileArn:m,region:p,authMethod:"external_idp",provider:"CLIProxyAPI",clientId:k,tokenEndpoint:l,scope:o}}}function k(a,b={}){let c=f(b.clientId||b.client_id),d=g(b.tokenEndpoint||b.token_endpoint),e=h(b.scope||b.scopes);if(!a)throw Error("refresh token is required");if(!c)throw Error("clientId is required for external_idp refresh");if(!e)throw Error("scope is required for external_idp refresh");return{tokenEndpoint:d,body:new URLSearchParams({grant_type:"refresh_token",client_id:c,refresh_token:a,scope:e}),providerSpecificData:{...b,authMethod:"external_idp",clientId:c,tokenEndpoint:d,scope:e}}}},18129:(a,b,c)=>{c.d(b,{Dz:()=>j,Vq:()=>m,fp:()=>k,jR:()=>i});var d=c(85640),e=c(39141);let f=e.sr.codex?.maxRefreshAgeMs,g=new Map,h=/^\d+(\.\d+)?$/;function i(a){if(null==a||""===a)return null;if("number"==typeof a||"string"==typeof a&&h.test(a.trim())){let b=Number(a);return Number.isFinite(b)?b<1e12?1e3*b:b:null}let b=new Date(a).getTime();return Number.isFinite(b)?b:null}function j(a,b=Date.now()){let c=i(a?.expiresAt??a?.tokenExpiresAt);if(null!==c)return c;let d=a?.expiresIn;return"number"==typeof d&&d>0?b+1e3*d:null}function k(a,b,c=Date.now()){if(!b)return!1;let g=j(b);if(null!==g&&g-c<(0,d.Og)(a))return!0;let h=e.sr[a]?.maxRefreshAgeMs;return!!(h&&b.refreshToken&&function(a,b=Date.now(),c=f){let d=i(a?.lastRefreshAt??a?.lastRefresh??a?.providerSpecificData?.lastRefreshAt);return!d||b-d>=c}(b,c,h))}async function l(a,b,c){let d,e=(d=b?.connectionId||b?.id||b?.email||b?.name||b?.refreshToken?.slice?.(-16)||"default",`${a}:${d}`),f=g.get(e);if(f)return f;let h=Promise.resolve().then(c).finally(()=>{g.delete(e)});return g.set(e,h),h}async function m(a,b,c){return b?l(a,b,async()=>{let f=await (0,d.$B)(a,b,c);return function(a,b,c,f=Date.now()){var g,h;if(!c)return null;if((0,d.jT)(c))return c;let i={},j=new Date(f).toISOString();c.accessToken&&(i.accessToken=c.accessToken),c.apiKey&&(i.apiKey=c.apiKey),c.token&&(i.token=c.token);let k=c.refreshToken??b?.refreshToken;k&&(i.refreshToken=k);let l=c.idToken??b?.idToken;return l&&(i.idToken=l),c.expiresIn?(i.expiresIn=c.expiresIn,i.expiresAt=function(a,b=Date.now()){return a?new Date(b+1e3*a).toISOString():null}(c.expiresIn,f)):c.expiresAt&&(i.expiresAt=c.expiresAt),c.projectId&&(i.projectId=c.projectId),c.providerSpecificData&&(g=b?.providerSpecificData,i.providerSpecificData=(h=c.providerSpecificData)&&"object"==typeof h?{...g||{},...h}:g),c.copilotToken&&(i.copilotToken=c.copilotToken),c.copilotTokenExpiresAt&&(i.copilotTokenExpiresAt=c.copilotTokenExpiresAt),(e.sr[a]?.trackRefreshAt||i.accessToken||i.apiKey||i.token||i.refreshToken||i.copilotToken)&&(i.lastRefreshAt=c.lastRefreshAt||j),i}(a,b,f)}):null}},21362:(a,b,c)=>{c.d(b,{J1:()=>n,ge:()=>q,Il:()=>p,XB:()=>A,SO:()=>z,Wm:()=>t,jR:()=>y,ZP:()=>G,go:()=>F,EF:()=>x,I9:()=>r,AH:()=>w,ng:()=>o,Ql:()=>v,Ms:()=>E,RM:()=>B,p9:()=>D,r_:()=>l,wt:()=>C});var d=c(31024),e=c(4630),f=c(28730),g=c(89843);let h=new Map;async function i(a,b,c,d){if(!b)return c();let e=`${a}:${b}`,f=h.get(e);if(f){if(f.promise)return d?.info?.("TOKEN_REFRESH",`Reusing in-flight refresh for ${a}`),f.promise;if(f.expiresAt>Date.now())return d?.info?.("TOKEN_REFRESH",`Reusing recent refresh result for ${a}`),f.result;h.delete(e)}let g=(async()=>{try{let a=await c();return h.set(e,{result:a,expiresAt:Date.now()+1e4}),a}catch(a){throw h.delete(e),a}})();return h.set(e,{promise:g}),g}var j=c(18080);let k=null;async function l(a,b){return a?i("xai",a,async()=>{try{k||(k=new(await Promise.all([c.e(2898),c.e(4730)]).then(c.bind(c,84730))).XaiService);let b=await k.refreshAccessToken(a);return{accessToken:b.access_token,refreshToken:b.refresh_token||a,expiresIn:b.expires_in,idToken:b.id_token}}catch(c){b?.warn?.("TOKEN_REFRESH",`xai refresh failed: ${c?.message||c}`);let a=String(c?.message||"");if(a.includes("invalid_grant")||a.includes("invalid_request"))return{error:"invalid_grant"};return null}},b):null}let m={claude:{bodyFormat:"json",includeClientSecret:!1,url:()=>f.NA.anthropic.token,dedupKey:"claude"},qwen:{url:()=>f.NA.qwen.token,dedupKey:"qwen",parse:a=>a.resource_url?{providerSpecificData:{resourceUrl:a.resource_url}}:{}},iflow:{url:()=>f.NA.iflow.token,dedupKey:"iflow",extraHeaders:(a,b)=>({Authorization:`Basic ${btoa(`${b.clientId}:${b.clientSecret}`)}`})},github:{url:()=>f.NA.github.token,dedupKey:"github",includeClientSecret:a=>!!a?.clientSecret},kimi:{dedupKey:"kimi",extraHeaders:a=>(0,f.buildKimiHeaders)(a?.providerSpecificData?.deviceId)}};async function n(a,b,c,d){let f=e.xq[a],g=m[a]||{},h=function(a,b,c){if(c?.url)try{return c.url()}catch{}return b?.refreshUrl||e.sr[a]?.tokenUrl||null}(a,f,g);return f&&h?b?i(g.dedupKey||a,b,async()=>{try{let e,i,j,{format:k,body:l}=(e=g?.bodyFormat==="json"?"json":"form",i=g?.includeClientSecret===void 0||("function"==typeof g.includeClientSecret?g.includeClientSecret(f):g.includeClientSecret),j={grant_type:"refresh_token",refresh_token:b,client_id:f.clientId},(i&&f.clientSecret&&(j.client_secret=f.clientSecret),"json"===e)?{format:"json",body:JSON.stringify(j)}:{format:"form",body:new URLSearchParams(j)}),m={"Content-Type":"json"===k?"application/json":"application/x-www-form-urlencoded",Accept:"application/json",...g.extraHeaders&&g.extraHeaders(c,f)||{}},n=await fetch(h,{method:"POST",headers:m,body:l});if(!n.ok){let b=await n.text();return d?.error?.("TOKEN_REFRESH",`Failed to refresh token for ${a}`,{status:n.status,error:b}),null}let o=await n.json();return d?.info?.("TOKEN_REFRESH",`Successfully refreshed token for ${a}`,{hasNewAccessToken:!!o.access_token,hasNewRefreshToken:!!o.refresh_token,expiresIn:o.expires_in}),{accessToken:o.access_token,refreshToken:o.refresh_token||b,expiresIn:o.expires_in,...g.parse&&g.parse(o)||{}}}catch(b){return d?.error?.("TOKEN_REFRESH",`Error refreshing token for ${a}`,{error:b.message}),null}},d):(d?.warn?.("TOKEN_REFRESH",`No refresh token available for provider: ${a}`),null):(d?.warn?.("TOKEN_REFRESH",`No refresh URL configured for provider: ${a}`),null)}async function o(a,b,c){return n("kimi",a,b,c)}async function p(a,b){return a?i("cline",a,async()=>{try{let c=await fetch(e.xq.cline?.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:a,grantType:"refresh_token",clientType:"extension"})});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Cline token",{status:c.status,error:a}),null}let d=await c.json(),f=d?.data||d;if(!f?.accessToken)return null;let g=f.expiresAt?Math.max(1,Math.floor((new Date(f.expiresAt).getTime()-Date.now())/1e3)):f.expiresIn||f.expires_in||3600;return{accessToken:f.accessToken,refreshToken:f.refreshToken||a,expiresIn:g}}catch(a){return b?.error?.("TOKEN_REFRESH",`Error refreshing Cline token: ${a.message}`),null}},b):null}async function q(a,b){return n("claude",a,{},b)}async function r(a,b,c,d){return a?i(`google:${b}`,a,async()=>{try{let e=await fetch(f.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:b,client_secret:c})});if(!e.ok){let a=await e.text();return d?.error?.("TOKEN_REFRESH","Failed to refresh Google token",{status:e.status,error:a}),null}let g=await e.json();return d?.info?.("TOKEN_REFRESH","Successfully refreshed Google token",{hasNewAccessToken:!!g.access_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}catch(a){return d?.error?.("TOKEN_REFRESH",`Network error refreshing Google token: ${a.message}`),null}},d):null}function s(a="",b=0){let c=null;try{c=a?JSON.parse(a):null}catch{c=null}let d=c?.error?.code||c?.error||c?.error_code||"",e=c?.error_description||c?.message||a||"",f=`${d} ${e}`.toLowerCase();return{status:b,code:d,description:e,permanent:["refresh_token_expired","refresh_token_reused","refresh_token_invalidated","invalid_grant"].some(a=>f.includes(a))}}async function t(a,b){return a?i("codex",a,async()=>{try{let c=await fetch(f.NA.openai.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({client_id:e.xq.codex.clientId,grant_type:"refresh_token",refresh_token:a})});if(!c.ok){let a=await c.text(),d=s(a,c.status);if(d.permanent)return b?.error?.("TOKEN_REFRESH","Codex refresh token already used or invalid. Re-auth required.",{status:c.status,code:d.code}),{error:"unrecoverable_refresh_error",code:d.code};return b?.error?.("TOKEN_REFRESH","Failed to refresh Codex token",{status:c.status,error:a,code:d.code,permanent:d.permanent}),null}let d=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Codex token",{hasNewAccessToken:!!d.access_token,hasNewRefreshToken:!!d.refresh_token,hasIdToken:!!d.id_token,expiresIn:d.expires_in}),{accessToken:d.access_token,refreshToken:d.refresh_token||a,idToken:d.id_token,expiresIn:d.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Codex token: ${a.message}`),null}},b):null}async function u(a,b,d){if(a?.profileArn)return{};let e=d?.trim?.()||null;if(!e){let{fetchKiroProfileArn:a}=await Promise.all([c.e(7774),c.e(4646),c.e(1847),c.e(4378),c.e(576),c.e(9865),c.e(1187),c.e(8644),c.e(7677),c.e(73),c.e(7594),c.e(1733),c.e(9026),c.e(369),c.e(6420)]).then(c.bind(c,36187));e=await a(b)}return e?{providerSpecificData:{profileArn:e}}:{}}async function v(a,b,c,d=null){return a?i("kiro",a,async()=>{let f=b?.authMethod,h=b?.clientId,i=b?.clientSecret,k=b?.region;if("external_idp"===f){let e;try{e=(0,j.uo)(a,b)}catch(a){return c?.warn?.("TOKEN_REFRESH",`Invalid Kiro external_idp refresh config: ${a.message}`),null}let f=await (0,g.proxyAwareFetch)(e.tokenEndpoint,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:e.body},d);if(!f.ok){let a=await f.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro external_idp token",{status:f.status,error:a}),null}let h=await f.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro external_idp token",{hasNewAccessToken:!!h.access_token,hasNewRefreshToken:!!h.refresh_token,expiresIn:h.expires_in}),{accessToken:h.access_token,refreshToken:h.refresh_token||a,expiresIn:h.expires_in,providerSpecificData:e.providerSpecificData}}if(h&&i){let e="idc"===f&&k?`https://oidc.${k}.amazonaws.com/token`:"https://oidc.us-east-1.amazonaws.com/token",j=await (0,g.proxyAwareFetch)(e,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:h,clientSecret:i,refreshToken:a,grantType:"refresh_token"})},d);if(!j.ok){let a=await j.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro AWS token",{status:j.status,error:a}),null}let l=await j.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro AWS token",{hasNewAccessToken:!!l.accessToken,expiresIn:l.expiresIn}),{accessToken:l.accessToken,refreshToken:l.refreshToken||a,expiresIn:l.expiresIn,...await u(b,l.accessToken,l.profileArn)}}let l=await (0,g.proxyAwareFetch)(e.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a})},d);if(!l.ok){let a=await l.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro social token",{status:l.status,error:a}),null}let m=await l.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro social token",{hasNewAccessToken:!!m.accessToken,expiresIn:m.expiresIn}),{accessToken:m.accessToken,refreshToken:m.refreshToken||a,expiresIn:m.expiresIn,...await u(b,m.accessToken,m.profileArn)}},c):null}async function w(a,b){return n("iflow",a,{},b)}async function x(a,b){return n("github",a,{},b)}async function y(a,b){return a?i("copilot",a,async()=>{try{let c=await fetch(e.sr.github?.copilotTokenUrl,{headers:{Authorization:`token ${a}`,"User-Agent":f.x0.USER_AGENT,"Editor-Version":`vscode/${f.x0.VSCODE_VERSION}`,"Editor-Plugin-Version":`copilot-chat/${f.x0.COPILOT_CHAT_VERSION}`,Accept:"application/json","x-github-api-version":f.x0.API_VERSION}});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Copilot token",{status:c.status,error:a}),null}let d=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Copilot token",{hasToken:!!d.token,expiresAt:d.expires_at}),{token:d.token,expiresAt:d.expires_at}}catch(a){return b?.error?.("TOKEN_REFRESH","Error refreshing Copilot token",{error:a.message}),null}},b):null}async function z(a,b){return a?i("codebuddy-cn",a,async()=>{let c=e.sr["codebuddy-cn"]||{},d=await fetch(c.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":c.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-Refresh-Token":a,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"});if(!d.ok){let a=await d.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh CodeBuddy token",{status:d.status,error:a}),null}let f=await d.json();return 0===f.code&&f.data?.accessToken?(b?.info?.("TOKEN_REFRESH","Successfully refreshed CodeBuddy token",{hasNewAccessToken:!!f.data.accessToken,hasNewRefreshToken:!!f.data.refreshToken,expiresIn:f.data.expiresIn}),{accessToken:f.data.accessToken,refreshToken:f.data.refreshToken||a,expiresIn:f.data.expiresIn}):(b?.error?.("TOKEN_REFRESH","CodeBuddy token refresh returned no token",{code:f.code,msg:f.msg}),null)},b):null}async function A(a,b){return a?i("codebuddy-intl",a,async()=>{let c=e.sr["codebuddy-intl"]||{},d=await fetch(c.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":c.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"www.codebuddy.ai","X-Refresh-Token":a,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"});if(!d.ok){let a=await d.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh CodeBuddy intl token",{status:d.status,error:a}),null}let f=await d.json();return 0===f.code&&f.data?.accessToken?(b?.info?.("TOKEN_REFRESH","Successfully refreshed CodeBuddy intl token",{hasNewAccessToken:!!f.data.accessToken,hasNewRefreshToken:!!f.data.refreshToken,expiresIn:f.data.expiresIn}),{accessToken:f.data.accessToken,refreshToken:f.data.refreshToken||a,expiresIn:f.data.expiresIn}):(b?.error?.("TOKEN_REFRESH","CodeBuddy intl token refresh returned no token",{code:f.code,msg:f.msg}),null)},b):null}async function B(a,b,c){if(!a)return null;let d=e.sr.trae||{},f=d.exchangeTokenUrl||d.tokenUrl;return f?i("trae",a,async()=>{try{let b,e=await fetch(f,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"Trae/1.0.0 antigravity-cockpit-tools"},body:JSON.stringify({ClientID:d.clientId||"ono9krqynydwx5",RefreshToken:a,ClientSecret:d.clientSecret||"-",UserID:""})});if(!e.ok){let a=await e.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Trae token",{status:e.status,error:a}),null}let g=await e.json(),h=g?.Result||g?.result||g,i=h?.AccessToken||h?.accessToken;if(!i)return c?.error?.("TOKEN_REFRESH","Trae refresh returned no AccessToken",{payload:g}),null;let j=h?.RefreshToken||h?.refreshToken||a,k=h?.ExpiresAt||h?.expiresAt;if("number"==typeof k)b=Math.max(1,k-Math.floor(Date.now()/1e3));else if("string"==typeof k){let a=new Date(k).getTime()-Date.now();b=a>0?Math.floor(a/1e3):void 0}return c?.info?.("TOKEN_REFRESH","Successfully refreshed Trae token",{hasNewAccessToken:!!i,hasNewRefreshToken:j!==a,expiresIn:b}),{accessToken:i,refreshToken:j,expiresIn:b}}catch(a){return c?.error?.("TOKEN_REFRESH",`Error refreshing Trae token: ${a.message}`),null}},c):(c?.warn?.("TOKEN_REFRESH","No Trae exchangeTokenUrl configured"),null)}function C(){return null}async function D(a,b){return b?.info?.("TOKEN_REFRESH","windsurf: apiKey is long-lived (no refresh_token flow) — skipping"),null}async function E(a,b="intl",d){return a?i(`qoder:${b||"intl"}`,a,async()=>{try{let e=new(await Promise.all([c.e(4646),c.e(1847),c.e(4378),c.e(1531)]).then(c.bind(c,91531))).QoderService({profile:b}),f=await e.refreshDeviceToken(a);return d?.info?.("TOKEN_REFRESH","Successfully refreshed Qoder device token",{profile:b,hasNewAccessToken:!!f.accessToken,hasNewRefreshToken:!!f.refreshToken,expiresIn:f.expiresIn}),{accessToken:f.accessToken,refreshToken:f.refreshToken||a,expiresIn:f.expiresIn}}catch(c){let a=c?.status;if(d?.error?.("TOKEN_REFRESH",`Qoder device refresh failed (${b})`,{error:c?.message||String(c),status:a}),401===a||403===a)return{error:"invalid_grant",message:c?.message||"Qoder refresh rejected"};return null}},d):null}async function F(a,b){return a?i("frontier-for-all",a,async()=>{try{let c=await fetch(f.NA["frontier-for-all"].token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:e.xq["frontier-for-all"].clientId})});if(!c.ok){let a=await c.text().catch(()=>""),d=s(a,c.status);if(d.permanent)return b?.error?.("TOKEN_REFRESH","Frontier refresh token rotated or revoked. Re-login required.",{status:c.status,code:d.code}),{error:"unrecoverable_refresh_error",code:d.code};return b?.error?.("TOKEN_REFRESH","Failed to refresh Frontier token",{status:c.status,error:a}),null}let d=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Frontier token",{hasNewAccessToken:!!d.access_token,hasNewRefreshToken:!!d.refresh_token,expiresIn:d.expires_in}),{accessToken:d.access_token,refreshToken:d.refresh_token||a,expiresIn:d.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Frontier token: ${a.message}`),null}},b):null}async function G(a,b){return a?i("cursor",a,async()=>{try{let c=await new d.q().refreshToken(a);return b?.info?.("TOKEN_REFRESH","Successfully refreshed Cursor token",{hasNewAccessToken:!!c.accessToken,hasNewRefreshToken:!!c.refreshToken,expiresIn:c.expiresIn}),c}catch(a){return b?.warn?.("TOKEN_REFRESH",`Cursor refresh failed: ${a?.message||a}`),null}},b):null}},28730:(a,b,c)=>{let d;c.d(b,{Ch:()=>k,Cn:()=>p,Co:()=>z,Ic:()=>w,J5:()=>t,K:()=>u,NA:()=>C,QH:()=>q,Wu:()=>B,buildKimiHeaders:()=>D,dw:()=>s,go:()=>j,iO:()=>A,j5:()=>x,nZ:()=>v,sX:()=>l,uR:()=>r,x0:()=>n,zv:()=>y});var e=c(21820),f=c(4630),g=c(92675),h=c(8086);let i=f.xq["gemini-cli"]?.cliVersion,j=f.xq["gemini-cli"]?.apiClient,k=f.xq.codex?.cliVersion;function l(a="unknown"){let b;return`GeminiCLI/${i}/${a||"unknown"} (${(0,e.platform)()}; ${"ia32"===(b=(0,e.arch)())?"x86":b}; terminal)`}let m=f.xq.github?.copilot||{},n={VSCODE_VERSION:m.vscodeVersion,COPILOT_CHAT_VERSION:m.chatVersion,USER_AGENT:m.userAgent,API_VERSION:m.apiVersion,AUTO_API_VERSION:m.autoApiVersion,AUTO_TIMEOUT_MS:m.autoTimeoutMs,AUTO_SESSION_REFRESH_WINDOW_MS:m.autoSessionRefreshWindowMs};function o(){let a=(0,e.platform)(),b=(0,e.arch)();return"darwin"===a?"arm64"===b?2:1:"linux"===a?"arm64"===b?4:3:5*("win32"===a)}let p={ideType:9,platform:o(),pluginType:2},q="_ide",r="_ide",s=new Set(["Task","TaskOutput","TaskStop","TaskCreate","TaskGet","TaskUpdate","TaskList","Bash","Glob","Grep","Read","Edit","Write","NotebookEdit","WebFetch","WebSearch","AskUserQuestion","Skill","EnterPlanMode","ExitPlanMode"]),t=new Set(["browser_subagent","command_status","find_by_name","generate_image","grep_search","list_dir","list_resources","multi_replace_file_content","notify_user","read_resource","read_terminal","read_url_content","replace_file_content","run_command","search_web","send_command_input","task_boundary","view_content_chunk","view_file","write_to_file"]),u={"User-Agent":g.Of},v={"gemini-cli":{loadCodeAssist:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",onboardUser:"https://cloudcode-pa.googleapis.com/v1internal:onboardUser"},antigravity:{loadCodeAssist:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",onboardUser:"https://cloudcode-pa.googleapis.com/v1internal:onboardUser"}},w={"Content-Type":"application/json","User-Agent":"google-api-nodejs-client/9.15.1","X-Goog-Api-Client":"google-cloud-sdk vscode_cloudshelleditor/0.1","Client-Metadata":JSON.stringify({ideType:9,platform:o(),pluginType:2})},x={"Content-Type":"application/json","User-Agent":g.Of},y={ideType:9,platform:o(),pluginType:2},z="You are Claude Code, Anthropic's official CLI for Claude.",A=[{from:"You are a Claude agent, built on Anthropic's Claude Agent SDK.",to:""},{from:/You are Hermes(?: Agent)?(?:,\s*(?:an intelligent AI assistant|an AI assistant|an AI agent))?(?:,?\s*(?:built|created)\s+by\s+Nous Research)?\./gi,to:"You are an AI assistant."},{from:/^x-anthropic-billing-header:[^\n]*(?:\r?\n)*/gim,to:""},{from:/opencode/gi,to:a=>"OpenCode"===a?"Antigravity":"OPENCODE"===a?"ANTIGRAVITY":"antigravity"}],B=Object.fromEntries(Object.entries(f.sr).filter(([,a])=>a.refreshLeadMs).map(([a,b])=>[a,b.refreshLeadMs])),C={google:{token:"https://oauth2.googleapis.com/token",auth:"https://accounts.google.com/o/oauth2/auth"},openai:{token:f.sr.codex?.tokenUrl,auth:f.sr.codex?.authorizeUrl},anthropic:{token:f.sr.claude?.tokenUrl,auth:"https://api.anthropic.com/v1/oauth/authorize"},iflow:{token:f.sr.iflow?.tokenUrl,auth:f.sr.iflow?.authorizeUrl},github:{token:f.sr.github?.tokenUrl,auth:f.sr.github?.authorizeUrl,deviceCode:f.sr.github?.deviceCodeUrl},"frontier-for-all":{token:f.sr["frontier-for-all"]?.tokenUrl,auth:f.sr["frontier-for-all"]?.deviceCodeUrl,deviceCode:f.sr["frontier-for-all"]?.deviceCodeUrl,deviceToken:f.sr["frontier-for-all"]?.deviceTokenUrl,revoke:f.sr["frontier-for-all"]?.revokeUrl}};function D(a){let b=(0,e.platform)(),c=(0,e.arch)(),f=`${b} ${c}`;"darwin"===b?f=`macOS ${c}`:"win32"===b?f=`Windows ${c}`:"linux"===b&&(f=`Linux ${c}`);let g="unknown";try{g=(0,e.hostname)()||"unknown"}catch{g="unknown"}let i="string"==typeof a&&a.trim()?a.trim():`kimi-${Date.now()}`;return{"X-Msh-Platform":"9router","X-Msh-Version":function(){if(d)return d;try{d=(0,h.createRequire)("file:///Volumes/Files/Projects/EzRouter/EzRouter/open-sse/config/appConstants.js")("../../package.json").version||"0.0.0"}catch{d=process.env.npm_package_version||"0.0.0"}return d}(),"X-Msh-Device-Name":g,"X-Msh-Device-Model":f,"X-Msh-Device-Id":i}}},31024:(a,b,c)=>{c.d(b,{q:()=>h});var d=c(55511),e=c.n(d),f=c(92990);function g(a){let b="string"==typeof a?a.split("."):[];if(3!==b.length||!b[1])return null;try{return JSON.parse(Buffer.from(b[1],"base64url").toString("utf8"))}catch{return null}}class h{constructor(){this.config=f.WN}getAuthorizationData(a="login"){let b=e().randomBytes(32).toString("base64url"),c=e().createHash("sha256").update(b).digest("base64url"),d=e().randomUUID(),f=new URLSearchParams({challenge:c,uuid:d,mode:a,supportsSelectedTeamLogin:"true"});return{authUrl:`${this.config.loginUrl}?${f.toString()}`,uuid:d,verifier:b,expiresIn:300}}async pollToken(a,b,c){if(!a||!b)throw Error("Cursor OAuth session is incomplete");let d=new URLSearchParams({uuid:a,verifier:b}),f=await fetch(`${this.config.pollUrl}?${d.toString()}`,{headers:{Accept:"application/json","User-Agent":"Cursor/3.12.29","x-cursor-client-type":this.config.clientType,"x-ghost-mode":"implicit-false","x-new-onboarding-completed":"false",traceparent:`00-${e().randomBytes(16).toString("hex")}-${e().randomBytes(8).toString("hex")}-01`},signal:c});if(404===f.status)return{success:!1,pending:!0,error:"authorization_pending"};if(!f.ok)throw Error(`Cursor OAuth polling failed with HTTP ${f.status}`);let g=await f.json();if(!g.accessToken||!g.refreshToken)throw Error("Cursor OAuth response was missing tokens");return{success:!0,tokens:g}}async refreshToken(a){let b;if(!a||"string"!=typeof a)throw Error("Cursor refresh token is required");for(let d=0;d<3;d+=1){var c;try{let c=await fetch(this.config.refreshUrl,{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/json"},body:"{}",signal:AbortSignal.timeout(15e3)});if(c.ok){let b=await c.json();if(!b.accessToken)throw Error("Cursor refresh response was missing an access token");return this.mapTokens(b.accessToken,b.refreshToken||a)}if(429!==c.status&&c.status<500){let a=Error(`Cursor token refresh failed with HTTP ${c.status}`);throw a.retryable=!1,a}b=Error(`Cursor token refresh failed with HTTP ${c.status}`)}catch(a){if(!1===a.retryable)throw a;b=a}d<2&&await function(a){return new Promise(b=>setTimeout(b,a))}((c=d,Math.floor(300*2**c*(.8+.4*Math.random()))))}throw b||Error("Cursor token refresh failed")}mapTokens(a,b,c=null,d="oauth"){let e,f=(e=g(a),"number"==typeof e?.exp?1e3*e.exp-3e5:Date.now()+36e5),h=this.extractUserInfo(a);return{accessToken:a,refreshToken:b,...c?{machineId:c}:{},expiresAt:new Date(f).toISOString(),expiresIn:Math.max(1,Math.floor((f-Date.now())/1e3)),email:h?.email||null,providerSpecificData:{authMethod:d,...c?{machineId:c}:{},...h?.userId?{userId:h.userId}:{}}}}async validateImportToken(a,b){if(!a||"string"!=typeof a)throw Error("Access token is required");if(!b||"string"!=typeof b)throw Error("Machine ID is required");if(a.length<50)throw Error("Invalid token format. Token appears too short.");if(!/^[a-f0-9-]{32,}$/i.test(b.replace(/-/g,"")))throw Error("Invalid machine ID format. Expected UUID format.");return this.mapTokens(a,null,b,"imported")}extractUserInfo(a){let b=g(a);return b?{email:"string"==typeof b.email&&/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(b.email)?b.email:null,userId:b.sub||b.user_id||null}:null}getTokenStorageInstructions(){return{title:"How to import your existing Cursor session",steps:["Open Cursor IDE and make sure you're logged in",`Linux: ${this.config.tokenStoragePaths.linux}`,`macOS: ${this.config.tokenStoragePaths.macos}`,`Windows: ${this.config.tokenStoragePaths.windows}`,"Read cursorAuth/accessToken and storage.serviceMachineId from itemTable"]}}}},85640:(a,b,c)=>{c.d(b,{$B:()=>o,I9:()=>f.I9,Og:()=>i,Ql:()=>f.Ql,Sc:()=>j,Wm:()=>f.Wm,go:()=>f.go,jR:()=>f.jR,jT:()=>h,oD:()=>g,pb:()=>l,qZ:()=>p});var d=c(4630),e=c(28730),f=c(21362);let g=3e5;function h(a){return a&&"object"==typeof a&&("unrecoverable_refresh_error"===a.error||"refresh_token_reused"===a.error||"invalid_request"===a.error||"invalid_grant"===a.error)}function i(a){return e.Wu[a]?e.Wu[a]:"kimi-coding"===a&&e.Wu.kimi?e.Wu.kimi:g}function j(a){if("string"!=typeof a)return null;try{let b=JSON.parse(a);if("service_account"===b.type&&b.client_email&&b.private_key&&b.project_id)return b;return null}catch{return null}}let k=new Map;async function l(a,b){let d=a.client_email,f=k.get(d);if(f&&f.expiresAt-Date.now()>3e5)return{accessToken:f.token,expiresAt:f.expiresAt};try{let{SignJWT:f,importPKCS8:g}=await Promise.all([c.e(4433),c.e(1455)]).then(c.bind(c,71455));b?.debug?.("TOKEN_REFRESH",`Vertex minting token for ${a.client_email}`);let h=await g(a.private_key.replace(/\\n/g,"\n"),"RS256"),i=Math.floor(Date.now()/1e3),j=await new f({scope:"https://www.googleapis.com/auth/cloud-platform"}).setProtectedHeader({alg:"RS256"}).setIssuer(a.client_email).setAudience(e.NA.google.token).setIssuedAt(i).setExpirationTime(i+3600).sign(h),l=await fetch(e.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:j})});if(!l.ok){let a=await l.text();return b?.error?.("TOKEN_REFRESH",`Vertex token mint failed: ${a}`),null}let{access_token:m,expires_in:n}=await l.json(),o=Date.now()+(n??3600)*1e3;return k.set(d,{token:m,expiresAt:o}),b?.info?.("TOKEN_REFRESH",`Vertex token minted for ${a.client_email}`),{accessToken:m,expiresAt:o}}catch(a){return b?.error?.("TOKEN_REFRESH",`Vertex token error: ${a.message}`),null}}function m(a,b){let c=j(a.apiKey);return c?l(c,b):null}let n={"frontier-for-all":(a,b)=>(0,f.go)(a.refreshToken,b),"gemini-cli":(a,b)=>(0,f.I9)(a.refreshToken,d.xq["gemini-cli"].clientId,d.xq["gemini-cli"].clientSecret,b),antigravity:(a,b)=>(0,f.I9)(a.refreshToken,d.xq.antigravity.clientId,d.xq.antigravity.clientSecret,b),claude:(a,b)=>(0,f.ge)(a.refreshToken,b),codex:(a,b)=>(0,f.Wm)(a.refreshToken,b),iflow:(a,b)=>(0,f.AH)(a.refreshToken,b),github:(a,b)=>(0,f.EF)(a.refreshToken,b),kiro:(a,b)=>(0,f.Ql)(a.refreshToken,a.providerSpecificData,b),cursor:(a,b)=>(0,f.ZP)(a.refreshToken,b),xai:(a,b)=>(0,f.r_)(a.refreshToken,b),"grok-cli":(a,b)=>(0,f.r_)(a.refreshToken,b),gcli:(a,b)=>(0,f.r_)(a.refreshToken,b),"codebuddy-cn":(a,b)=>(0,f.SO)(a.refreshToken,b),"codebuddy-intl":(a,b)=>(0,f.XB)(a.refreshToken,b),trae:(a,b)=>(0,f.RM)(a.refreshToken,a,b),cline:(a,b)=>(0,f.Il)(a.refreshToken,b),clinepass:(a,b)=>(0,f.Il)(a.refreshToken,b),zed:()=>(0,f.wt)(),windsurf:(a,b)=>(0,f.p9)(a,b),kimi:(a,b)=>(0,f.ng)(a.refreshToken,a,b),"kimi-coding":(a,b)=>(0,f.ng)(a.refreshToken,a,b),vertex:m,"vertex-partner":m};async function o(a,b,c){let d=b.refreshToken||b.providerSpecificData?.refreshToken;if(!d)return null;let e=d!==b.refreshToken?{...b,refreshToken:d}:b,g=n[a];return g?g(e,c):(0,f.J1)(a,d,e,c)}async function p(a,b=3,c=null){for(let d=0;d<b;d++){if(d>0){let a=1e3*d;c?.debug?.("TOKEN_REFRESH",`Retry ${d}/${b} after ${a}ms`),await new Promise(b=>setTimeout(b,a))}try{let b=await a();if(b)return b}catch(a){c?.warn?.("TOKEN_REFRESH",`Attempt ${d+1}/${b} failed: ${a.message}`)}}return c?.error?.("TOKEN_REFRESH",`All ${b} retry attempts failed`),null}}};
|
|
1
|
+
"use strict";exports.id=8129,exports.ids=[8129],exports.modules={4630:(a,b,c)=>{c.d(b,{Ak:()=>e,Yg:()=>h,sr:()=>d.sr,xq:()=>d.xq});var d=c(39141);function e(a){return(a?.providerSpecificData?.baseUrl?.trim()||"http://localhost:11434").replace(/\/$/,"")}let f=d.xq["xiaomi-tokenplan"]?.regions||{},g=d.xq["xiaomi-tokenplan"]?.defaultRegion;function h(a){return f[a?.providerSpecificData?.region]||f[g]}},18080:(a,b,c)=>{c.d(b,{Xj:()=>j,uo:()=>k});var d=c(92990);let e=new Set(["login.microsoftonline.com","login.microsoft.com","login.windows.net"]);function f(a){return"string"==typeof a?a.trim():""}function g(a){let b,c=f(a);if(!c)throw Error("token_endpoint is required");try{b=new URL(c)}catch{throw Error("token_endpoint must be a valid URL")}if("https:"!==b.protocol)throw Error("token_endpoint must use https");let d=b.hostname.toLowerCase();if(!e.has(d))throw Error("token_endpoint must be a Microsoft login endpoint");return b.toString()}function h(a){return Array.isArray(a)?a.map(f).filter(Boolean).join(" "):f(a)}function i(a){try{if(!a||"string"!=typeof a)return null;let b=a.split(".");if(3!==b.length)return null;let c=b[1].replace(/-/g,"+").replace(/_/g,"/"),d=(4-c.length%4)%4;return JSON.parse(Buffer.from(`${c}${"=".repeat(d)}`,"base64").toString("utf8"))}catch{return null}}function j(a){let b=a;if("string"==typeof b)try{b=JSON.parse(b)}catch{throw Error("CLIProxyAPI auth JSON is invalid")}if(!b||"object"!=typeof b)throw Error("CLIProxyAPI auth JSON is required");let c=f(b.auth_method||b.authMethod);if(c&&"external_idp"!==c)throw Error("Only external_idp Kiro auth is supported by this importer");let e=f(b.access_token||b.accessToken),j=f(b.refresh_token||b.refreshToken),k=f(b.client_id||b.clientId),l=g(b.token_endpoint||b.tokenEndpoint),m=f(b.profile_arn||b.profileArn),n=f(b.region)||"us-east-1",o=h(b.scopes||b.scope),p=(0,d.S6)(n);if(!e)throw Error("access_token is required");if(!j)throw Error("refresh_token is required");if(!k)throw Error("client_id is required");if(!o)throw Error("scopes is required");if(!m)throw Error("profile_arn is required");let q=i(e),r=b.email||q?.email||q?.preferred_username||q?.upn||q?.sub||null;return{accessToken:e,refreshToken:j,expiresAt:function(a){let b=a.expired||a.expires_at||a.expiresAt;if(b){let a=new Date(b).getTime();if(Number.isFinite(a))return new Date(a).toISOString()}let c=Number(a.expires_in||a.expiresIn||0);if(Number.isFinite(c)&&c>0)return new Date(Date.now()+1e3*c).toISOString();let d=i(a.access_token||a.accessToken);return d?.exp?new Date(1e3*d.exp).toISOString():new Date(Date.now()+36e5).toISOString()}(b),email:r,providerSpecificData:{profileArn:m,region:p,authMethod:"external_idp",provider:"CLIProxyAPI",clientId:k,tokenEndpoint:l,scope:o}}}function k(a,b={}){let c=f(b.clientId||b.client_id),d=g(b.tokenEndpoint||b.token_endpoint),e=h(b.scope||b.scopes);if(!a)throw Error("refresh token is required");if(!c)throw Error("clientId is required for external_idp refresh");if(!e)throw Error("scope is required for external_idp refresh");return{tokenEndpoint:d,body:new URLSearchParams({grant_type:"refresh_token",client_id:c,refresh_token:a,scope:e}),providerSpecificData:{...b,authMethod:"external_idp",clientId:c,tokenEndpoint:d,scope:e}}}},18129:(a,b,c)=>{c.d(b,{Dz:()=>j,Vq:()=>m,fp:()=>k,jR:()=>i});var d=c(85640),e=c(39141);let f=e.sr.codex?.maxRefreshAgeMs,g=new Map,h=/^\d+(\.\d+)?$/;function i(a){if(null==a||""===a)return null;if("number"==typeof a||"string"==typeof a&&h.test(a.trim())){let b=Number(a);return Number.isFinite(b)?b<1e12?1e3*b:b:null}let b=new Date(a).getTime();return Number.isFinite(b)?b:null}function j(a,b=Date.now()){let c=i(a?.expiresAt??a?.tokenExpiresAt);if(null!==c)return c;let d=a?.expiresIn;return"number"==typeof d&&d>0?b+1e3*d:null}function k(a,b,c=Date.now()){if(!b)return!1;let g=j(b);if(null!==g&&g-c<(0,d.Og)(a))return!0;let h=e.sr[a]?.maxRefreshAgeMs;return!!(h&&b.refreshToken&&function(a,b=Date.now(),c=f){let d=i(a?.lastRefreshAt??a?.lastRefresh??a?.providerSpecificData?.lastRefreshAt);return!d||b-d>=c}(b,c,h))}async function l(a,b,c){let d,e=(d=b?.connectionId||b?.id||b?.email||b?.name||b?.refreshToken?.slice?.(-16)||"default",`${a}:${d}`),f=g.get(e);if(f)return f;let h=Promise.resolve().then(c).finally(()=>{g.delete(e)});return g.set(e,h),h}async function m(a,b,c){return b?l(a,b,async()=>{let f=await (0,d.$B)(a,b,c);return function(a,b,c,f=Date.now()){var g,h;if(!c)return null;if((0,d.jT)(c))return c;let i={},j=new Date(f).toISOString();c.accessToken&&(i.accessToken=c.accessToken),c.apiKey&&(i.apiKey=c.apiKey),c.token&&(i.token=c.token);let k=c.refreshToken??b?.refreshToken;k&&(i.refreshToken=k);let l=c.idToken??b?.idToken;return l&&(i.idToken=l),c.expiresIn?(i.expiresIn=c.expiresIn,i.expiresAt=function(a,b=Date.now()){return a?new Date(b+1e3*a).toISOString():null}(c.expiresIn,f)):c.expiresAt&&(i.expiresAt=c.expiresAt),c.projectId&&(i.projectId=c.projectId),c.providerSpecificData&&(g=b?.providerSpecificData,i.providerSpecificData=(h=c.providerSpecificData)&&"object"==typeof h?{...g||{},...h}:g),c.copilotToken&&(i.copilotToken=c.copilotToken),c.copilotTokenExpiresAt&&(i.copilotTokenExpiresAt=c.copilotTokenExpiresAt),(e.sr[a]?.trackRefreshAt||i.accessToken||i.apiKey||i.token||i.refreshToken||i.copilotToken)&&(i.lastRefreshAt=c.lastRefreshAt||j),i}(a,b,f)}):null}},21362:(a,b,c)=>{c.d(b,{J1:()=>n,ge:()=>q,Il:()=>p,XB:()=>A,SO:()=>z,Wm:()=>t,jR:()=>y,ZP:()=>G,go:()=>F,EF:()=>x,I9:()=>r,AH:()=>w,ng:()=>o,Ql:()=>v,Ms:()=>E,RM:()=>B,p9:()=>D,r_:()=>l,wt:()=>C});var d=c(31024),e=c(4630),f=c(28730),g=c(89843);let h=new Map;async function i(a,b,c,d){if(!b)return c();let e=`${a}:${b}`,f=h.get(e);if(f){if(f.promise)return d?.info?.("TOKEN_REFRESH",`Reusing in-flight refresh for ${a}`),f.promise;if(f.expiresAt>Date.now())return d?.info?.("TOKEN_REFRESH",`Reusing recent refresh result for ${a}`),f.result;h.delete(e)}let g=(async()=>{try{let a=await c();return h.set(e,{result:a,expiresAt:Date.now()+1e4}),a}catch(a){throw h.delete(e),a}})();return h.set(e,{promise:g}),g}var j=c(18080);let k=null;async function l(a,b){return a?i("xai",a,async()=>{try{k||(k=new(await Promise.all([c.e(2898),c.e(4730)]).then(c.bind(c,84730))).XaiService);let b=await k.refreshAccessToken(a);return{accessToken:b.access_token,refreshToken:b.refresh_token||a,expiresIn:b.expires_in,idToken:b.id_token}}catch(c){b?.warn?.("TOKEN_REFRESH",`xai refresh failed: ${c?.message||c}`);let a=String(c?.message||"");if(a.includes("invalid_grant")||a.includes("invalid_request"))return{error:"invalid_grant"};return null}},b):null}let m={claude:{bodyFormat:"json",includeClientSecret:!1,url:()=>f.NA.anthropic.token,dedupKey:"claude"},qwen:{url:()=>f.NA.qwen.token,dedupKey:"qwen",parse:a=>a.resource_url?{providerSpecificData:{resourceUrl:a.resource_url}}:{}},iflow:{url:()=>f.NA.iflow.token,dedupKey:"iflow",extraHeaders:(a,b)=>({Authorization:`Basic ${btoa(`${b.clientId}:${b.clientSecret}`)}`})},github:{url:()=>f.NA.github.token,dedupKey:"github",includeClientSecret:a=>!!a?.clientSecret},kimi:{dedupKey:"kimi",extraHeaders:a=>(0,f.buildKimiHeaders)(a?.providerSpecificData?.deviceId)}};async function n(a,b,c,d){let f=e.xq[a],g=m[a]||{},h=function(a,b,c){if(c?.url)try{return c.url()}catch{}return b?.refreshUrl||e.sr[a]?.tokenUrl||null}(a,f,g);return f&&h?b?i(g.dedupKey||a,b,async()=>{try{let e,i,j,{format:k,body:l}=(e=g?.bodyFormat==="json"?"json":"form",i=g?.includeClientSecret===void 0||("function"==typeof g.includeClientSecret?g.includeClientSecret(f):g.includeClientSecret),j={grant_type:"refresh_token",refresh_token:b,client_id:f.clientId},(i&&f.clientSecret&&(j.client_secret=f.clientSecret),"json"===e)?{format:"json",body:JSON.stringify(j)}:{format:"form",body:new URLSearchParams(j)}),m={"Content-Type":"json"===k?"application/json":"application/x-www-form-urlencoded",Accept:"application/json",...g.extraHeaders&&g.extraHeaders(c,f)||{}},n=await fetch(h,{method:"POST",headers:m,body:l});if(!n.ok){let b=await n.text();return d?.error?.("TOKEN_REFRESH",`Failed to refresh token for ${a}`,{status:n.status,error:b}),null}let o=await n.json();return d?.info?.("TOKEN_REFRESH",`Successfully refreshed token for ${a}`,{hasNewAccessToken:!!o.access_token,hasNewRefreshToken:!!o.refresh_token,expiresIn:o.expires_in}),{accessToken:o.access_token,refreshToken:o.refresh_token||b,expiresIn:o.expires_in,...g.parse&&g.parse(o)||{}}}catch(b){return d?.error?.("TOKEN_REFRESH",`Error refreshing token for ${a}`,{error:b.message}),null}},d):(d?.warn?.("TOKEN_REFRESH",`No refresh token available for provider: ${a}`),null):(d?.warn?.("TOKEN_REFRESH",`No refresh URL configured for provider: ${a}`),null)}async function o(a,b,c){return n("kimi",a,b,c)}async function p(a,b){return a?i("cline",a,async()=>{try{let c=await fetch(e.xq.cline?.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:a,grantType:"refresh_token",clientType:"extension"})});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Cline token",{status:c.status,error:a}),null}let d=await c.json(),f=d?.data||d;if(!f?.accessToken)return null;let g=f.expiresAt?Math.max(1,Math.floor((new Date(f.expiresAt).getTime()-Date.now())/1e3)):f.expiresIn||f.expires_in||3600;return{accessToken:f.accessToken,refreshToken:f.refreshToken||a,expiresIn:g}}catch(a){return b?.error?.("TOKEN_REFRESH",`Error refreshing Cline token: ${a.message}`),null}},b):null}async function q(a,b){return n("claude",a,{},b)}async function r(a,b,c,d){return a?i(`google:${b}`,a,async()=>{try{let e=await fetch(f.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:b,client_secret:c})});if(!e.ok){let a=await e.text();return d?.error?.("TOKEN_REFRESH","Failed to refresh Google token",{status:e.status,error:a}),null}let g=await e.json();return d?.info?.("TOKEN_REFRESH","Successfully refreshed Google token",{hasNewAccessToken:!!g.access_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}catch(a){return d?.error?.("TOKEN_REFRESH",`Network error refreshing Google token: ${a.message}`),null}},d):null}function s(a="",b=0){let c=null;try{c=a?JSON.parse(a):null}catch{c=null}let d=c?.error?.code||c?.error||c?.error_code||"",e=c?.error_description||c?.message||a||"",f=`${d} ${e}`.toLowerCase();return{status:b,code:d,description:e,permanent:["refresh_token_expired","refresh_token_reused","refresh_token_invalidated","invalid_grant"].some(a=>f.includes(a))}}async function t(a,b){return a?i("codex",a,async()=>{try{let c=await fetch(f.NA.openai.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({client_id:e.xq.codex.clientId,grant_type:"refresh_token",refresh_token:a})});if(!c.ok){let a=await c.text(),d=s(a,c.status);if(d.permanent)return b?.error?.("TOKEN_REFRESH","Codex refresh token already used or invalid. Re-auth required.",{status:c.status,code:d.code}),{error:"unrecoverable_refresh_error",code:d.code};return b?.error?.("TOKEN_REFRESH","Failed to refresh Codex token",{status:c.status,error:a,code:d.code,permanent:d.permanent}),null}let d=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Codex token",{hasNewAccessToken:!!d.access_token,hasNewRefreshToken:!!d.refresh_token,hasIdToken:!!d.id_token,expiresIn:d.expires_in}),{accessToken:d.access_token,refreshToken:d.refresh_token||a,idToken:d.id_token,expiresIn:d.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Codex token: ${a.message}`),null}},b):null}async function u(a,b,d){if(a?.profileArn)return{};let e=d?.trim?.()||null;if(!e){let{fetchKiroProfileArn:a}=await Promise.all([c.e(7774),c.e(4646),c.e(1847),c.e(4378),c.e(576),c.e(9865),c.e(1187),c.e(8644),c.e(7677),c.e(73),c.e(7594),c.e(1733),c.e(9026),c.e(369),c.e(6420)]).then(c.bind(c,36187));e=await a(b)}return e?{providerSpecificData:{profileArn:e}}:{}}async function v(a,b,c,d=null){return a?i("kiro",a,async()=>{let f=b?.authMethod,h=b?.clientId,i=b?.clientSecret,k=b?.region;if("external_idp"===f){let e;try{e=(0,j.uo)(a,b)}catch(a){return c?.warn?.("TOKEN_REFRESH",`Invalid Kiro external_idp refresh config: ${a.message}`),null}let f=await (0,g.proxyAwareFetch)(e.tokenEndpoint,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:e.body},d);if(!f.ok){let a=await f.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro external_idp token",{status:f.status,error:a}),null}let h=await f.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro external_idp token",{hasNewAccessToken:!!h.access_token,hasNewRefreshToken:!!h.refresh_token,expiresIn:h.expires_in}),{accessToken:h.access_token,refreshToken:h.refresh_token||a,expiresIn:h.expires_in,providerSpecificData:e.providerSpecificData}}if(h&&i){let e="idc"===f&&k?`https://oidc.${k}.amazonaws.com/token`:"https://oidc.us-east-1.amazonaws.com/token",j=await (0,g.proxyAwareFetch)(e,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:h,clientSecret:i,refreshToken:a,grantType:"refresh_token"})},d);if(!j.ok){let a=await j.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro AWS token",{status:j.status,error:a}),null}let l=await j.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro AWS token",{hasNewAccessToken:!!l.accessToken,expiresIn:l.expiresIn}),{accessToken:l.accessToken,refreshToken:l.refreshToken||a,expiresIn:l.expiresIn,...await u(b,l.accessToken,l.profileArn)}}let l=await (0,g.proxyAwareFetch)(e.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a})},d);if(!l.ok){let a=await l.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro social token",{status:l.status,error:a}),null}let m=await l.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro social token",{hasNewAccessToken:!!m.accessToken,expiresIn:m.expiresIn}),{accessToken:m.accessToken,refreshToken:m.refreshToken||a,expiresIn:m.expiresIn,...await u(b,m.accessToken,m.profileArn)}},c):null}async function w(a,b){return n("iflow",a,{},b)}async function x(a,b){return n("github",a,{},b)}async function y(a,b){return a?i("copilot",a,async()=>{try{let c=await fetch(e.sr.github?.copilotTokenUrl,{headers:{Authorization:`token ${a}`,"User-Agent":f.x0.USER_AGENT,"Editor-Version":`vscode/${f.x0.VSCODE_VERSION}`,"Editor-Plugin-Version":`copilot-chat/${f.x0.COPILOT_CHAT_VERSION}`,Accept:"application/json","x-github-api-version":f.x0.API_VERSION}});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Copilot token",{status:c.status,error:a}),null}let d=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Copilot token",{hasToken:!!d.token,expiresAt:d.expires_at}),{token:d.token,expiresAt:d.expires_at}}catch(a){return b?.error?.("TOKEN_REFRESH","Error refreshing Copilot token",{error:a.message}),null}},b):null}async function z(a,b){return a?i("codebuddy-cn",a,async()=>{let c=e.sr["codebuddy-cn"]||{},d=await fetch(c.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":c.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-Refresh-Token":a,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"});if(!d.ok){let a=await d.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh CodeBuddy token",{status:d.status,error:a}),null}let f=await d.json();return 0===f.code&&f.data?.accessToken?(b?.info?.("TOKEN_REFRESH","Successfully refreshed CodeBuddy token",{hasNewAccessToken:!!f.data.accessToken,hasNewRefreshToken:!!f.data.refreshToken,expiresIn:f.data.expiresIn}),{accessToken:f.data.accessToken,refreshToken:f.data.refreshToken||a,expiresIn:f.data.expiresIn}):(b?.error?.("TOKEN_REFRESH","CodeBuddy token refresh returned no token",{code:f.code,msg:f.msg}),null)},b):null}async function A(a,b){return a?i("codebuddy-intl",a,async()=>{let c=e.sr["codebuddy-intl"]||{},d=await fetch(c.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":c.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"www.codebuddy.ai","X-Refresh-Token":a,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"});if(!d.ok){let a=await d.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh CodeBuddy intl token",{status:d.status,error:a}),null}let f=await d.json();return 0===f.code&&f.data?.accessToken?(b?.info?.("TOKEN_REFRESH","Successfully refreshed CodeBuddy intl token",{hasNewAccessToken:!!f.data.accessToken,hasNewRefreshToken:!!f.data.refreshToken,expiresIn:f.data.expiresIn}),{accessToken:f.data.accessToken,refreshToken:f.data.refreshToken||a,expiresIn:f.data.expiresIn}):(b?.error?.("TOKEN_REFRESH","CodeBuddy intl token refresh returned no token",{code:f.code,msg:f.msg}),null)},b):null}async function B(a,b,c){if(!a)return null;let d=e.sr.trae||{},f=d.exchangeTokenUrl||d.tokenUrl;return f?i("trae",a,async()=>{try{let b,e=await fetch(f,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"Trae/1.0.0 antigravity-cockpit-tools"},body:JSON.stringify({ClientID:d.clientId||"ono9krqynydwx5",RefreshToken:a,ClientSecret:d.clientSecret||"-",UserID:""})});if(!e.ok){let a=await e.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Trae token",{status:e.status,error:a}),null}let g=await e.json(),h=g?.Result||g?.result||g,i=h?.AccessToken||h?.accessToken;if(!i)return c?.error?.("TOKEN_REFRESH","Trae refresh returned no AccessToken",{payload:g}),null;let j=h?.RefreshToken||h?.refreshToken||a,k=h?.ExpiresAt||h?.expiresAt;if("number"==typeof k)b=Math.max(1,k-Math.floor(Date.now()/1e3));else if("string"==typeof k){let a=new Date(k).getTime()-Date.now();b=a>0?Math.floor(a/1e3):void 0}return c?.info?.("TOKEN_REFRESH","Successfully refreshed Trae token",{hasNewAccessToken:!!i,hasNewRefreshToken:j!==a,expiresIn:b}),{accessToken:i,refreshToken:j,expiresIn:b}}catch(a){return c?.error?.("TOKEN_REFRESH",`Error refreshing Trae token: ${a.message}`),null}},c):(c?.warn?.("TOKEN_REFRESH","No Trae exchangeTokenUrl configured"),null)}function C(){return null}async function D(a,b){return b?.info?.("TOKEN_REFRESH","windsurf: apiKey is long-lived (no refresh_token flow) — skipping"),null}async function E(a,b="intl",d){return a?i(`qoder:${b||"intl"}`,a,async()=>{try{let e=new(await Promise.all([c.e(4646),c.e(1847),c.e(4378),c.e(1531)]).then(c.bind(c,91531))).QoderService({profile:b}),f=await e.refreshDeviceToken(a);return d?.info?.("TOKEN_REFRESH","Successfully refreshed Qoder device token",{profile:b,hasNewAccessToken:!!f.accessToken,hasNewRefreshToken:!!f.refreshToken,expiresIn:f.expiresIn}),{accessToken:f.accessToken,refreshToken:f.refreshToken||a,expiresIn:f.expiresIn}}catch(c){let a=c?.status;if(d?.error?.("TOKEN_REFRESH",`Qoder device refresh failed (${b})`,{error:c?.message||String(c),status:a}),401===a||403===a)return{error:"invalid_grant",message:c?.message||"Qoder refresh rejected"};return null}},d):null}async function F(a,b){return a?i("frontier-for-all",a,async()=>{try{let c=await fetch(f.NA["frontier-for-all"].token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:e.xq["frontier-for-all"].clientId})});if(!c.ok){let a=await c.text().catch(()=>""),d=s(a,c.status);if(d.permanent)return b?.error?.("TOKEN_REFRESH","Frontier refresh token rotated or revoked. Re-login required.",{status:c.status,code:d.code}),{error:"unrecoverable_refresh_error",code:d.code};return b?.error?.("TOKEN_REFRESH","Failed to refresh Frontier token",{status:c.status,error:a}),null}let d=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Frontier token",{hasNewAccessToken:!!d.access_token,hasNewRefreshToken:!!d.refresh_token,expiresIn:d.expires_in}),{accessToken:d.access_token,refreshToken:d.refresh_token||a,expiresIn:d.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Frontier token: ${a.message}`),null}},b):null}async function G(a,b){return a?i("cursor",a,async()=>{try{let c=await new d.q().refreshToken(a);return b?.info?.("TOKEN_REFRESH","Successfully refreshed Cursor token",{hasNewAccessToken:!!c.accessToken,hasNewRefreshToken:!!c.refreshToken,expiresIn:c.expiresIn}),c}catch(a){return b?.warn?.("TOKEN_REFRESH",`Cursor refresh failed: ${a?.message||a}`),null}},b):null}},28730:(a,b,c)=>{let d;c.d(b,{Ch:()=>k,Cn:()=>p,Co:()=>z,Ic:()=>w,J5:()=>t,K:()=>u,NA:()=>C,QH:()=>q,Wu:()=>B,buildKimiHeaders:()=>D,dw:()=>s,go:()=>j,iO:()=>A,ix:()=>E,j5:()=>x,nZ:()=>v,sX:()=>l,uR:()=>r,x0:()=>n,zv:()=>y});var e=c(21820),f=c(4630),g=c(92675),h=c(8086);let i=f.xq["gemini-cli"]?.cliVersion,j=f.xq["gemini-cli"]?.apiClient,k=f.xq.codex?.cliVersion;function l(a="unknown"){let b;return`GeminiCLI/${i}/${a||"unknown"} (${(0,e.platform)()}; ${"ia32"===(b=(0,e.arch)())?"x86":b}; terminal)`}let m=f.xq.github?.copilot||{},n={VSCODE_VERSION:m.vscodeVersion,COPILOT_CHAT_VERSION:m.chatVersion,USER_AGENT:m.userAgent,API_VERSION:m.apiVersion,AUTO_API_VERSION:m.autoApiVersion,AUTO_TIMEOUT_MS:m.autoTimeoutMs,AUTO_SESSION_REFRESH_WINDOW_MS:m.autoSessionRefreshWindowMs};function o(){let a=(0,e.platform)(),b=(0,e.arch)();return"darwin"===a?"arm64"===b?2:1:"linux"===a?"arm64"===b?4:3:5*("win32"===a)}let p={ideType:9,platform:o(),pluginType:2},q="_ide",r="_ide",s=new Set(["Task","TaskOutput","TaskStop","TaskCreate","TaskGet","TaskUpdate","TaskList","Bash","Glob","Grep","Read","Edit","Write","NotebookEdit","WebFetch","WebSearch","AskUserQuestion","Skill","EnterPlanMode","ExitPlanMode"]),t=new Set(["browser_subagent","command_status","find_by_name","generate_image","grep_search","list_dir","list_resources","multi_replace_file_content","notify_user","read_resource","read_terminal","read_url_content","replace_file_content","run_command","search_web","send_command_input","task_boundary","view_content_chunk","view_file","write_to_file"]),u={"User-Agent":g.Of},v={"gemini-cli":{loadCodeAssist:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",onboardUser:"https://cloudcode-pa.googleapis.com/v1internal:onboardUser"},antigravity:{loadCodeAssist:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",onboardUser:"https://cloudcode-pa.googleapis.com/v1internal:onboardUser"}},w={"Content-Type":"application/json","User-Agent":"google-api-nodejs-client/9.15.1","X-Goog-Api-Client":"google-cloud-sdk vscode_cloudshelleditor/0.1","Client-Metadata":JSON.stringify({ideType:9,platform:o(),pluginType:2})},x={"Content-Type":"application/json","User-Agent":g.Of},y={ideType:9,platform:o(),pluginType:2},z="You are Claude Code, Anthropic's official CLI for Claude.",A=[{from:"You are a Claude agent, built on Anthropic's Claude Agent SDK.",to:""},{from:/You are Hermes(?: Agent)?(?:,\s*(?:an intelligent AI assistant|an AI assistant|an AI agent))?(?:,?\s*(?:built|created)\s+by\s+Nous Research)?\./gi,to:"You are an AI assistant."},{from:/^x-anthropic-billing-header:[^\n]*(?:\r?\n)*/gim,to:""},{from:/opencode/gi,to:a=>"OpenCode"===a?"Antigravity":"OPENCODE"===a?"ANTIGRAVITY":"antigravity"}],B=Object.fromEntries(Object.entries(f.sr).filter(([,a])=>a.refreshLeadMs).map(([a,b])=>[a,b.refreshLeadMs])),C={google:{token:"https://oauth2.googleapis.com/token",auth:"https://accounts.google.com/o/oauth2/auth"},openai:{token:f.sr.codex?.tokenUrl,auth:f.sr.codex?.authorizeUrl},anthropic:{token:f.sr.claude?.tokenUrl,auth:"https://api.anthropic.com/v1/oauth/authorize"},iflow:{token:f.sr.iflow?.tokenUrl,auth:f.sr.iflow?.authorizeUrl},github:{token:f.sr.github?.tokenUrl,auth:f.sr.github?.authorizeUrl,deviceCode:f.sr.github?.deviceCodeUrl},"frontier-for-all":{token:f.sr["frontier-for-all"]?.tokenUrl,auth:f.sr["frontier-for-all"]?.deviceCodeUrl,deviceCode:f.sr["frontier-for-all"]?.deviceCodeUrl,deviceToken:f.sr["frontier-for-all"]?.deviceTokenUrl,revoke:f.sr["frontier-for-all"]?.revokeUrl}};function D(a){let b=(0,e.platform)(),c=(0,e.arch)(),f=`${b} ${c}`;"darwin"===b?f=`macOS ${c}`:"win32"===b?f=`Windows ${c}`:"linux"===b&&(f=`Linux ${c}`);let g="unknown";try{g=(0,e.hostname)()||"unknown"}catch{g="unknown"}let i="string"==typeof a&&a.trim()?a.trim():`kimi-${Date.now()}`;return{"X-Msh-Platform":"9router","X-Msh-Version":function(){if(d)return d;try{d=(0,h.createRequire)("file:///Volumes/Files/Projects/EzRouter/EzRouter/open-sse/config/appConstants.js")("../../package.json").version||"0.0.0"}catch{d=process.env.npm_package_version||"0.0.0"}return d}(),"X-Msh-Device-Name":g,"X-Msh-Device-Model":f,"X-Msh-Device-Id":i}}let E=64},31024:(a,b,c)=>{c.d(b,{q:()=>h});var d=c(55511),e=c.n(d),f=c(92990);function g(a){let b="string"==typeof a?a.split("."):[];if(3!==b.length||!b[1])return null;try{return JSON.parse(Buffer.from(b[1],"base64url").toString("utf8"))}catch{return null}}class h{constructor(){this.config=f.WN}getAuthorizationData(a="login"){let b=e().randomBytes(32).toString("base64url"),c=e().createHash("sha256").update(b).digest("base64url"),d=e().randomUUID(),f=new URLSearchParams({challenge:c,uuid:d,mode:a,supportsSelectedTeamLogin:"true"});return{authUrl:`${this.config.loginUrl}?${f.toString()}`,uuid:d,verifier:b,expiresIn:300}}async pollToken(a,b,c){if(!a||!b)throw Error("Cursor OAuth session is incomplete");let d=new URLSearchParams({uuid:a,verifier:b}),f=await fetch(`${this.config.pollUrl}?${d.toString()}`,{headers:{Accept:"application/json","User-Agent":"Cursor/3.12.29","x-cursor-client-type":this.config.clientType,"x-ghost-mode":"implicit-false","x-new-onboarding-completed":"false",traceparent:`00-${e().randomBytes(16).toString("hex")}-${e().randomBytes(8).toString("hex")}-01`},signal:c});if(404===f.status)return{success:!1,pending:!0,error:"authorization_pending"};if(!f.ok)throw Error(`Cursor OAuth polling failed with HTTP ${f.status}`);let g=await f.json();if(!g.accessToken||!g.refreshToken)throw Error("Cursor OAuth response was missing tokens");return{success:!0,tokens:g}}async refreshToken(a){let b;if(!a||"string"!=typeof a)throw Error("Cursor refresh token is required");for(let d=0;d<3;d+=1){var c;try{let c=await fetch(this.config.refreshUrl,{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/json"},body:"{}",signal:AbortSignal.timeout(15e3)});if(c.ok){let b=await c.json();if(!b.accessToken)throw Error("Cursor refresh response was missing an access token");return this.mapTokens(b.accessToken,b.refreshToken||a)}if(429!==c.status&&c.status<500){let a=Error(`Cursor token refresh failed with HTTP ${c.status}`);throw a.retryable=!1,a}b=Error(`Cursor token refresh failed with HTTP ${c.status}`)}catch(a){if(!1===a.retryable)throw a;b=a}d<2&&await function(a){return new Promise(b=>setTimeout(b,a))}((c=d,Math.floor(300*2**c*(.8+.4*Math.random()))))}throw b||Error("Cursor token refresh failed")}mapTokens(a,b,c=null,d="oauth"){let e,f=(e=g(a),"number"==typeof e?.exp?1e3*e.exp-3e5:Date.now()+36e5),h=this.extractUserInfo(a);return{accessToken:a,refreshToken:b,...c?{machineId:c}:{},expiresAt:new Date(f).toISOString(),expiresIn:Math.max(1,Math.floor((f-Date.now())/1e3)),email:h?.email||null,providerSpecificData:{authMethod:d,...c?{machineId:c}:{},...h?.userId?{userId:h.userId}:{}}}}async validateImportToken(a,b){if(!a||"string"!=typeof a)throw Error("Access token is required");if(!b||"string"!=typeof b)throw Error("Machine ID is required");if(a.length<50)throw Error("Invalid token format. Token appears too short.");if(!/^[a-f0-9-]{32,}$/i.test(b.replace(/-/g,"")))throw Error("Invalid machine ID format. Expected UUID format.");return this.mapTokens(a,null,b,"imported")}extractUserInfo(a){let b=g(a);return b?{email:"string"==typeof b.email&&/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(b.email)?b.email:null,userId:b.sub||b.user_id||null}:null}getTokenStorageInstructions(){return{title:"How to import your existing Cursor session",steps:["Open Cursor IDE and make sure you're logged in",`Linux: ${this.config.tokenStoragePaths.linux}`,`macOS: ${this.config.tokenStoragePaths.macos}`,`Windows: ${this.config.tokenStoragePaths.windows}`,"Read cursorAuth/accessToken and storage.serviceMachineId from itemTable"]}}}},85640:(a,b,c)=>{c.d(b,{$B:()=>o,I9:()=>f.I9,Og:()=>i,Ql:()=>f.Ql,Sc:()=>j,Wm:()=>f.Wm,go:()=>f.go,jR:()=>f.jR,jT:()=>h,oD:()=>g,pb:()=>l,qZ:()=>p});var d=c(4630),e=c(28730),f=c(21362);let g=3e5;function h(a){return a&&"object"==typeof a&&("unrecoverable_refresh_error"===a.error||"refresh_token_reused"===a.error||"invalid_request"===a.error||"invalid_grant"===a.error)}function i(a){return e.Wu[a]?e.Wu[a]:"kimi-coding"===a&&e.Wu.kimi?e.Wu.kimi:g}function j(a){if("string"!=typeof a)return null;try{let b=JSON.parse(a);if("service_account"===b.type&&b.client_email&&b.private_key&&b.project_id)return b;return null}catch{return null}}let k=new Map;async function l(a,b){let d=a.client_email,f=k.get(d);if(f&&f.expiresAt-Date.now()>3e5)return{accessToken:f.token,expiresAt:f.expiresAt};try{let{SignJWT:f,importPKCS8:g}=await Promise.all([c.e(4433),c.e(1455)]).then(c.bind(c,71455));b?.debug?.("TOKEN_REFRESH",`Vertex minting token for ${a.client_email}`);let h=await g(a.private_key.replace(/\\n/g,"\n"),"RS256"),i=Math.floor(Date.now()/1e3),j=await new f({scope:"https://www.googleapis.com/auth/cloud-platform"}).setProtectedHeader({alg:"RS256"}).setIssuer(a.client_email).setAudience(e.NA.google.token).setIssuedAt(i).setExpirationTime(i+3600).sign(h),l=await fetch(e.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:j})});if(!l.ok){let a=await l.text();return b?.error?.("TOKEN_REFRESH",`Vertex token mint failed: ${a}`),null}let{access_token:m,expires_in:n}=await l.json(),o=Date.now()+(n??3600)*1e3;return k.set(d,{token:m,expiresAt:o}),b?.info?.("TOKEN_REFRESH",`Vertex token minted for ${a.client_email}`),{accessToken:m,expiresAt:o}}catch(a){return b?.error?.("TOKEN_REFRESH",`Vertex token error: ${a.message}`),null}}function m(a,b){let c=j(a.apiKey);return c?l(c,b):null}let n={"frontier-for-all":(a,b)=>(0,f.go)(a.refreshToken,b),"gemini-cli":(a,b)=>(0,f.I9)(a.refreshToken,d.xq["gemini-cli"].clientId,d.xq["gemini-cli"].clientSecret,b),antigravity:(a,b)=>(0,f.I9)(a.refreshToken,d.xq.antigravity.clientId,d.xq.antigravity.clientSecret,b),claude:(a,b)=>(0,f.ge)(a.refreshToken,b),codex:(a,b)=>(0,f.Wm)(a.refreshToken,b),iflow:(a,b)=>(0,f.AH)(a.refreshToken,b),github:(a,b)=>(0,f.EF)(a.refreshToken,b),kiro:(a,b)=>(0,f.Ql)(a.refreshToken,a.providerSpecificData,b),cursor:(a,b)=>(0,f.ZP)(a.refreshToken,b),xai:(a,b)=>(0,f.r_)(a.refreshToken,b),"grok-cli":(a,b)=>(0,f.r_)(a.refreshToken,b),gcli:(a,b)=>(0,f.r_)(a.refreshToken,b),"codebuddy-cn":(a,b)=>(0,f.SO)(a.refreshToken,b),"codebuddy-intl":(a,b)=>(0,f.XB)(a.refreshToken,b),trae:(a,b)=>(0,f.RM)(a.refreshToken,a,b),cline:(a,b)=>(0,f.Il)(a.refreshToken,b),clinepass:(a,b)=>(0,f.Il)(a.refreshToken,b),zed:()=>(0,f.wt)(),windsurf:(a,b)=>(0,f.p9)(a,b),kimi:(a,b)=>(0,f.ng)(a.refreshToken,a,b),"kimi-coding":(a,b)=>(0,f.ng)(a.refreshToken,a,b),vertex:m,"vertex-partner":m};async function o(a,b,c){let d=b.refreshToken||b.providerSpecificData?.refreshToken;if(!d)return null;let e=d!==b.refreshToken?{...b,refreshToken:d}:b,g=n[a];return g?g(e,c):(0,f.J1)(a,d,e,c)}async function p(a,b=3,c=null){for(let d=0;d<b;d++){if(d>0){let a=1e3*d;c?.debug?.("TOKEN_REFRESH",`Retry ${d}/${b} after ${a}ms`),await new Promise(b=>setTimeout(b,a))}try{let b=await a();if(b)return b}catch(a){c?.warn?.("TOKEN_REFRESH",`Attempt ${d+1}/${b} failed: ${a.message}`)}}return c?.error?.("TOKEN_REFRESH",`All ${b} retry attempts failed`),null}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=8231,exports.ids=[7753,8231],exports.modules={48595:(a,b,c)=>{c.d(b,{UY:()=>g,oc:()=>h});var d=c(90053),e=c(63995),f=c(78492);Object.entries(e.Q2).filter(([,a])=>a.passthroughModels).map(([a])=>a),Object.entries(f.vq).flatMap(([a,b])=>b.map(b=>({provider:a,model:b.id,name:b.name}))),Object.freeze(["gemini-live"]),d.rE;let g={maxLines:200,pollIntervalMs:1e3,streamTimeoutMs:5e3},h={tickIntervalMs:6e4,pingLeadMs:5e3,refreshAheadMs:3e5,failureCooldownMs:9e5,providers:{claude:{settingsKey:"claudeAutoPing",quotaKey:"session (5h)",pingInactiveSession:!0,inactiveMinPingIntervalMs:18e6,pingModel:"claude-haiku-4-5-20251001",pingText:"hi",pingMaxTokens:1},codex:{settingsKey:"codexAutoPing",quotaKey:"session",pingWhenResetAtSlides:!0,resetAtDriftMs:3e4,minPingIntervalMs:6e5,skipWhenBlockingQuotaExhausted:!0,pingText:"hi",pingInstructions:"Reply with OK.",pingReasoningEffort:"none"}}}},78231:(a,b,c)=>{c.r(b),c.d(b,{configureQuotaAutoPing:()=>X,runQuotaAutoPingTick:()=>U,startQuotaAutoPing:()=>V,stopQuotaAutoPing:()=>W}),c(48450);var d=c(70321),e=c(55511),f=c(26762),g=c(74570),h=c(15251);let i=a=>h.xq[a]?.usage||{};function j(a){if(!a)return null;try{if(a instanceof Date)return a.toISOString();if("number"==typeof a)return new Date(a<1e12?1e3*a:a).toISOString();if("string"==typeof a){if(/^\d+$/.test(a)){let b=Number(a);return new Date(b<1e12?1e3*b:b).toISOString()}return new Date(a).toISOString()}return null}catch(b){return console.warn(`Failed to parse reset time: ${a}`,b),null}}function k(a,b=0){if("number"==typeof a&&Number.isFinite(a))return a;if("string"==typeof a&&a.trim()){let b=Number(a);if(Number.isFinite(b))return b}return b}let l={oauthUsageUrl:i("claude").oauthUrl,usageUrl:i("claude").orgUrl,settingsUrl:i("claude").settingsUrl,profileUrl:i("claude").profileUrl,resetUrl:i("claude").resetUrl,apiVersion:g.b8,userAgent:`claude-cli/${g.t4} (external, cli)`},m=new Map,n=new Map;function o(a,b){for(m.delete(a),m.set(a,b);m.size>128;)m.delete(m.keys().next().value)}function p(a,b,c,d){if("number"==typeof c&&Number.isFinite(c)&&!Object.keys(a).some(a=>a.toLowerCase()===b.toLowerCase())){let e,f;a[b]=(f=100-(e=Math.min(100,Math.max(0,c))),{used:e,total:100,remaining:f,remainingPercentage:f,resetAt:j(d),unlimited:!1})}}async function q(a,b,c){try{let d=await (0,f.Fm)(`${l.oauthUsageUrl}?cedar_ember=1`,{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-beta":"oauth-2025-04-20","anthropic-version":l.apiVersion,"User-Agent":l.userAgent},signal:AbortSignal.timeout(5e3)},b);if(d.ok){let a=function(a){let b={};for(let[c,d]of(p(b,"session (5h)",a?.five_hour?.utilization,a?.five_hour?.resets_at),p(b,"weekly (7d)",a?.seven_day?.utilization,a?.seven_day?.resets_at),Object.entries(a||{})))c.startsWith("seven_day_")&&d&&"object"==typeof d&&p(b,`weekly ${c.slice(10)} (7d)`,d.utilization,d.resets_at);for(let c of[...Array.isArray(a?.limits)?a.limits:[],...Array.isArray(a?.rate_limits)?a.rate_limits:[]]){let a=String(c?.group||"").toLowerCase(),d=String(c?.kind||"").toLowerCase();if("session"===d||"session"===a){p(b,"session (5h)",c.percent,c.resets_at);continue}if("weekly_scoped"===d||"weekly"===a){let a=c?.scope?.model?.display_name||c?.scope?.surface?.display_name;p(b,a?`weekly ${a} (7d)`:"weekly (7d)",c.percent,c.resets_at)}}return{plan:"Claude Code",extraUsage:a?.extra_usage??null,resetCredits:function(a){if(!a?.eligible||!Array.isArray(a.grants))return null;let b=a.grants.filter(a=>a?.id&&!a.paused&&Number(a.resets_left)>0),c=b.find(b=>b.id===a.next_grant_id)||b[0]||null;return{availableCount:b.reduce((a,b)=>a+Number(b.resets_left),0),nextGrantId:c?.id||null,expiresAt:c?.ends_at||null,clears:c?.clears||[],cooldownUntil:a.cooldown_until||null,weeklyResetsAt:a.weekly_resets_at||null,grants:a.grants.filter(a=>a?.id).map(a=>({id:a.id,label:a.label||"",resetsLeft:Number(a.resets_left)||0,resetsTotal:Number(a.resets_total)||0,startsAt:a.starts_at||null,endsAt:a.ends_at||null,clears:Array.isArray(a.clears)?a.clears:[],paused:!0===a.paused,usableNow:!0===a.usable_now,useRequiresLimit:!1!==a.use_requires_limit}))}}(a?.cedar_ember),quotas:b}}(await d.json());return o(c,{value:a,expiresAt:Date.now()+65e3,retryAt:0}),a}if(429===d.status){let a,b=Date.now(),e=m.get(c),f=e?.value||{message:"Claude usage is rate limited. Retry later."};return o(c,{value:f,expiresAt:e?.expiresAt||0,retryAt:b+(a=function(a,b){let c=String(a||"").trim();if(!c)return null;let d=Number(c);if(Number.isFinite(d))return d>=0?1e3*d:null;let e=Date.parse(c);return Number.isFinite(e)?Math.max(0,e-b):null}(d.headers.get("retry-after"),b),null===a&&d.headers.forEach((c,d)=>{if(!/^anthropic-ratelimit-.+-reset$/i.test(d))return;let e=function(a,b){let c=String(a||"").trim();if(!c)return null;let d=Number(c),e=Number.isFinite(d)?d<1e12?1e3*d:d:Date.parse(c);return Number.isFinite(e)&&e>b&&e<=864e13?e-b:null}(c,b);null!==e&&(null===a||e>a)&&(a=e)}),Math.min(18e5,Math.max(18e4,a??18e4)))}),f}if(401===d.status)return{message:"Claude authentication expired (401). Re-authorize or refresh the connection."};if(404===d.status||405===d.status){let d=await r(a,b);return d.cacheable&&o(c,{value:d.value,expiresAt:Date.now()+65e3,retryAt:0}),d.value}return{message:`Claude connected. Usage endpoint returned HTTP ${d.status}.`}}catch{return{message:"Claude connected. Unable to fetch usage."}}}async function r(a,b=null){try{let c=await (0,f.Fm)(l.settingsUrl,{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":l.apiVersion}},b);if(c.ok){let d=await c.json();if(d.organization_id){let c=await (0,f.Fm)(l.usageUrl.replace("{org_id}",d.organization_id),{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":l.apiVersion}},b);if(c.ok){let a=await c.json();return{cacheable:!0,value:{plan:d.plan||"Unknown",organization:d.organization_name,quotas:a}}}return{cacheable:!1,value:{plan:d.plan||"Unknown",organization:d.organization_name,message:"Claude connected. Usage details require admin access."}}}return{cacheable:!0,value:{plan:d.plan||"Unknown",organization:d.organization_name,message:"Claude connected. Usage details require admin access."}}}return{cacheable:!1,value:{message:"Claude connected. Usage endpoint requires OAuth."}}}catch(a){return{cacheable:!1,value:{message:`Claude connected. Error checking usage: ${a.message}`}}}}var s=c(53261);let t={usageUrl:i("codex").url,resetCreditsUrl:i("codex").resetCreditsUrl,resetCreditsConsumeUrl:i("codex").resetCreditsConsumeUrl};function u(a,b={},c={},d=null){let e={Authorization:`Bearer ${a}`,Accept:"application/json",originator:"codex_cli_rs",...c},f=(0,s.a)(b,d);return f&&(e["ChatGPT-Account-ID"]=f),e}function v(a){return!a||"object"!=typeof a||Array.isArray(a)?null:a.rate_limit&&"object"==typeof a.rate_limit?a.rate_limit:a}function w(a){let b=Math.max(0,Math.min(100,k(a?.used_percent??a?.percent_used,0)));return{used:b,total:100,remaining:Math.max(0,100-b),resetAt:j(a?.reset_at??a?.resets_at??a?.resetAt??null),unlimited:!1}}function x(a,b,c){let d=v(c);if(!d)return!1;let e=d.primary_window||d.primary||c.primary_window||c.primary,f=d.secondary_window||d.secondary||c.secondary_window||c.secondary,g=!1;return e&&(a[b?`${b}_session`:"session"]=w(e),g=!0),f&&(a[b?`${b}_weekly`:"weekly"]=w(f),g=!0),g}async function y(a,b={},c=null,d=null){var e,g,h;[b,c]=(e=b,!(g=c)&&(h=e)&&"object"==typeof h&&("connectionProxyEnabled"in h||"connectionProxyUrl"in h||"connectionNoProxy"in h||"vercelRelayUrl"in h||"strictProxy"in h)?(0,s.a)(e,d)?[e,e]:[{},e]:[e||{},g]);try{let e=await (0,f.Fm)(t.usageUrl,{method:"GET",headers:u(a,b,{},d)},c);if(!e.ok)return{message:`Codex connected. Usage API temporarily unavailable (${e.status}).`};let g=await e.json(),h=g.rate_limit||g.rate_limits||g.rate_limits_by_limit_id?.codex||{},i=function(a){if(a.code_review_rate_limit||a.review_rate_limit)return a.code_review_rate_limit||a.review_rate_limit;let b=a.rate_limits_by_limit_id;return b&&"object"==typeof b&&!Array.isArray(b)?b.code_review||b.codex_review||b.review||null:(Array.isArray(a.additional_rate_limits)?a.additional_rate_limits:[]).find(a=>{let b=String(a?.limit_name||a?.metered_feature||a?.id||"").toLowerCase();return"code_review"===b||"codex_review"===b||"review"===b||b.includes("review")})||null}(g),j=function(a){if(a.spark_rate_limit||a.gpt_5_3_codex_spark_rate_limit)return a.spark_rate_limit||a.gpt_5_3_codex_spark_rate_limit;let b=a.rate_limits_by_limit_id;return b&&"object"==typeof b&&!Array.isArray(b)?b["gpt-5.3-codex-spark"]||b.gpt_5_3_codex_spark||b.spark||null:(Array.isArray(a.additional_rate_limits)?a.additional_rate_limits:[]).find(a=>{let b=String(a?.limit_name||a?.metered_feature||a?.id||"").toLowerCase();return b.includes("spark")||b.includes("5.3-codex-spark")})||null}(g),l=Math.max(0,k(g.rate_limit_reset_credits?.available_count,0)),m={};return x(m,"",h),x(m,"review",i),x(m,"spark",j),{plan:g.plan_type||g.summary?.plan||"unknown",limitReached:v(h)?.limit_reached||!1,reviewLimitReached:v(i)?.limit_reached||!1,sparkLimitReached:v(j)?.limit_reached||!1,resetCredits:{availableCount:l},quotas:m}}catch(a){throw Error(`Failed to fetch Codex usage: ${a.message}`)}}async function z(a,b=null,c=null,d=null){let e=new URL(i("codex").modelsUrl||"https://chatgpt.com/backend-api/codex/models");i("codex").clientVersion&&e.searchParams.set("client_version",i("codex").clientVersion);let g=u(a,c,{},d),h=await (0,f.Fm)(e,{method:"GET",headers:g},b);if(!h.ok)return[];let j=await h.json();return(Array.isArray(j?.models)?j.models:[]).filter(a=>a?.supported_in_api!==!1&&"string"==typeof a?.slug&&a.slug).sort((a,b)=>Number(a.priority||0)-Number(b.priority||0))}var A=c(76171),B=c(97753);function C(a){return null==a?"":String(a).trim()}async function D(a={}){try{let b=C(a?.proxyPoolId),c="__none__"===b?"":b,d=function(a={}){let b=a?.connectionProxyEnabled===!0,c=C(a?.connectionProxyUrl);return{connectionProxyEnabled:b,connectionProxyUrl:c,connectionNoProxy:C(a?.connectionNoProxy)}}(a),e=!1;if(c){let a=await (0,B.hr)(c),b=C(a?.proxyUrl),d=C(a?.noProxy),f=a&&!0===a.isActive&&b;if(e=a?.strictProxy===!0,f){if("vercel"===a.type||"cloudflare"===a.type||"deno"===a.type)return{source:a.type,proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:d,strictProxy:!0===a.strictProxy,vercelRelayUrl:b};return{source:"pool",proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!0,connectionProxyUrl:b,connectionNoProxy:d,strictProxy:!0===a.strictProxy}}}if(d.connectionProxyEnabled&&d.connectionProxyUrl)return{source:"legacy",proxyPoolId:c||null,proxyPool:null,strictProxy:e,...d};return{source:"none",proxyPoolId:c||null,proxyPool:null,strictProxy:e,...d}}catch(a){return console.error("[resolveConnectionProxyConfig] Failed to resolve proxy config:",a),{source:"error",proxyPoolId:null,proxyPool:null,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:"",strictProxy:!1}}}h.sr.github?.apiVersion,h.sr.github?.userAgent,c(10793),i("antigravity"),g.Of,i("antigravity"),g.XP,g.Of,c(43835),i("minimax").urls,i("minimax-cn").urls,c(83382);let E=i("grok-cli"),F=E.url||"https://cli-chat-proxy.grok.com/v1/billing?format=credits";E.userUrl,"string"==typeof F&&F.includes("?")&&F.replace(/\?.*$/,""),i("cursor").usageUrl,i("cursor").planUrl,i("groq").url,c(33373),i("opencode-go").url,c(95901),c(970),i("glm").url,i("glm-cn").url,i("vercel-ai-gateway").url;var G=c(44855);async function H(a,b=!1,c=null){let e=a.id?await (0,d.Mc)(a.id):null;e&&(a=e);let f=(0,A.SB)(a.provider),g={accessToken:a.accessToken,refreshToken:a.refreshToken,idToken:a.idToken,expiresAt:a.expiresAt||a.tokenExpiresAt,lastRefreshAt:a.lastRefreshAt,connectionId:a.id,providerSpecificData:a.providerSpecificData,copilotToken:a.providerSpecificData?.copilotToken,copilotTokenExpiresAt:a.providerSpecificData?.copilotTokenExpiresAt};if(!(b||f.needsRefresh(g)))return{connection:a,refreshed:!1};let h=await f.refreshCredentials(g,console,c);if(h&&(0,G.jT)(h))throw Error("Refresh token invalid or reused. Please re-authorize the connection.");if(!h){if(a.accessToken)return{connection:a,refreshed:!1};throw Error("Failed to refresh credentials. Please re-authorize the connection.")}let i={updatedAt:new Date().toISOString()};h.accessToken&&(i.accessToken=h.accessToken),h.refreshToken&&(i.refreshToken=h.refreshToken),h.idToken&&(i.idToken=h.idToken),h.lastRefreshAt&&(i.lastRefreshAt=h.lastRefreshAt),h.expiresIn?(i.expiresAt=new Date(Date.now()+1e3*h.expiresIn).toISOString(),i.expiresIn=h.expiresIn):h.expiresAt&&(i.expiresAt=h.expiresAt);let j={...h.providerSpecificData||{},...h.copilotToken?{copilotToken:h.copilotToken}:{},...h.copilotTokenExpiresAt?{copilotTokenExpiresAt:h.copilotTokenExpiresAt}:{}};return Object.keys(j).length>0&&(i.providerSpecificData={...a.providerSpecificData||{},...j}),await (0,d.updateProviderConnection)(a.id,i),{connection:{...a,...i,providerSpecificData:i.providerSpecificData||a.providerSpecificData},refreshed:!0}}c(63995);let I=c(48595).oc,J={claude:{getUsage:(a,b,c)=>(function(a,b=null,c={}){let d,f=c?.force===!0,g=(0,e.createHash)("sha256").update(String(a??"")).digest("hex"),h=m.get(g),i=Date.now();return!f&&h&&(i<h.expiresAt||i<h.retryAt)?Promise.resolve(h.value):!f&&n.has(g)?n.get(g):n.size>=128?Promise.resolve({message:"Claude usage refresh is busy. Retry shortly."}):(d=q(a,b,g).finally(()=>{n.get(g)===d&&n.delete(g)}),n.set(g,d),d)})(a,c),sendPing:Q},codex:{getUsage:y,getModels:z,sendPing:S}},K=global.__quotaAutoPing??={interval:null,running:!1,resetCache:{},failureCache:{},pingCache:{}};function L(a){let b=new Date(a).getTime();return Number.isFinite(b)?new Date(6e4*Math.floor(b/6e4)).toISOString():a}function M(a,b=null){if("number"==typeof a&&Number.isFinite(a))return a;if("string"==typeof a&&a.trim()){let b=Number(a);if(Number.isFinite(b))return b}return b}function N(a){if(!a||!0===a.unlimited)return!1;let b=M(a.remaining);if(null!==b)return b<=0;let c=M(a.used),d=M(a.total);return null!==d&&d>0&&null!==c&&c>=d}function O(a,b,c=Date.now(),d=null){if(!b)return!1;let e=new Date(a.lastPingAt).getTime(),f=M(d,-1/0),g=Math.max(Number.isFinite(e)?e:-1/0,f);return Number.isFinite(g)&&c-g<b}function P(a,b){return Object.entries(a||{}).some(([a,c])=>a!==b&&!String(a).toLowerCase().includes("session")&&N(c))}async function Q(a,b,c,d){let e=await d.proxyAwareFetch("https://api.anthropic.com/v1/messages?beta=true",{method:"POST",headers:{...g.$B,Authorization:`Bearer ${a.accessToken}`,"content-type":"application/json"},body:JSON.stringify({model:b.pingModel,max_tokens:b.pingMaxTokens,messages:[{role:"user",content:b.pingText}]})},c);if(!e.ok){try{await e.body?.cancel?.()}catch{}return!1}return await R(e),!0}async function R(a){if("function"==typeof a?.text)return void await a.text();let b=a?.body?.getReader?.();if(b)try{for(;;){let{done:a}=await b.read();if(a)return}}finally{b.releaseLock?.()}}async function S(a,b,c,d,e){let f=e.getExecutor("codex"),{response:g}=await f.execute({model:c,stream:!0,credentials:{accessToken:a.accessToken,connectionId:a.id,idToken:a.idToken,providerSpecificData:a.providerSpecificData},proxyOptions:d,log:console,body:{model:c,input:[{type:"message",role:"user",content:[{type:"input_text",text:b.pingText}]}],instructions:b.pingInstructions,reasoning:b.pingReasoningEffort?{effort:b.pingReasoningEffort,summary:"auto"}:void 0,store:!1,stream:!0}});if(!g.ok){try{await g.body?.cancel?.()}catch{}return!1}return await R(g),!0}async function T(a,b,c,d,e,f=K){var g;let h=(g=a.id,`${b}:${g}`),i=f.resetCache[h];if(!c.pingWhenResetAtSlides&&i&&Date.now()<new Date(i).getTime()-I.refreshAheadMs||function(a,b,c=Date.now()){let d=a.failureCache[b];return d&&c-d<I.failureCooldownMs}(f,h))return;let j=await e.resolveConnectionProxyConfig(a.providerSpecificData),k={connectionProxyEnabled:!0===j.connectionProxyEnabled,connectionProxyUrl:j.connectionProxyUrl||"",connectionNoProxy:j.connectionNoProxy||"",vercelRelayUrl:j.vercelRelayUrl||"",strictProxy:!1},l=a;try{l=(await e.refreshAndUpdateCredentials(l,!1,k)).connection}catch(c){f.failureCache[h]=Date.now(),console.warn(`[AutoPing] ${b}:${a.id}: refresh failed: ${c.message}`);return}let m=await d.getUsage(l.accessToken,l.providerSpecificData,k,l.idToken),n=m?.quotas||{},o=n?.[c.quotaKey],p=o?.resetAt,q=Date.now(),r=function(a,b,c,d,e,f,g){let h,i;return!0===b.pingInactiveSession&&d&&!d.resetAt&&!N(d)&&(h=Object.entries(c||{}).filter(([a])=>String(a).toLowerCase().startsWith("weekly"))).length>0&&h.every(([,a])=>!N(a))&&!P(c,b.quotaKey)&&(!(i=String(a.providerSpecificData?.proxyPoolId??"").trim())||"__none__"===i||e?.proxyUnavailable!==!0&&e?.source!=="unavailable"&&String(e?.proxyPoolId??"").trim()===i&&!!e?.proxyPool)&&!O(a,b.inactiveMinPingIntervalMs,f,g)}(l,c,n,o,j,q,f.pingCache?.[h]),s=null;if(p){if(f.resetCache[h]=p,c.skipWhenBlockingQuotaExhausted&&P(n,c.quotaKey)||N(o))return;s=L(p);let a=l.lastPingedResetKey||L(l.lastPingedResetAt);if(!function(a,b,c,d){if(a.pingWhenResetAtSlides){let d,e;return!!b&&(d=new Date(b).getTime(),e=new Date(c).getTime(),(Number.isFinite(d)&&Number.isFinite(e)?e-d:0)>=(a.resetAtDriftMs||0))}let e=new Date(c).getTime();return Number.isFinite(e)&&d>=e-I.pingLeadMs}(c,i,p,q)||O(l,c.minPingIntervalMs,q)||a===s)return}else if(!r)return;let t="codex"===b?(await d.getModels(l.accessToken,k,l.providerSpecificData))[0]?.slug:c.pingModel;if(!t){f.failureCache[h]=Date.now(),console.warn(`[AutoPing] ${b}:${l.id}: no supported model available`);return}if(!("codex"===b?await d.sendPing(l,c,t,k,e):await d.sendPing(l,c,k,e))){f.failureCache[h]=Date.now(),console.warn(`[AutoPing] ${b}:${l.id}: ping failed (${p?`reset ${p}`:"inactive session"})`);return}r&&((f.pingCache??={})[h]=Date.now()),delete f.failureCache[h],await e.updateProviderConnection(l.id,{...p?{lastPingedResetAt:p,lastPingedResetKey:s}:{},lastPingAt:new Date().toISOString(),updatedAt:new Date().toISOString()}),r&&delete f.pingCache[h],console.log(`[AutoPing] ${b}:${l.id}: ping sent (${p?`reset ${p}`:"inactive session"})`)}async function U(a={getSettings:d.mt,getProviderConnections:d.getProviderConnections,updateProviderConnection:d.updateProviderConnection,resolveConnectionProxyConfig:D,refreshAndUpdateCredentials:H,proxyAwareFetch:f.Fm,getExecutor:A.SB},b=K){if(!b.running){b.running=!0;try{let d=await a.getSettings();for(let[e,f]of Object.entries(I.providers)){let g=J[e];if(!g)continue;let h=d?.[f.settingsKey]?.connections||{};if(0!==Object.keys(h).length)for(let d of(await a.getProviderConnections({provider:e,isActive:!0})).filter(a=>"oauth"===a.authType&&!0===h[a.id]))try{await T(d,e,f,g,a,b)}catch(a){var c;b.failureCache[c=d.id,`${e}:${c}`]=Date.now(),console.warn(`[AutoPing] ${e}:${d.id}: ${a.message}`)}}}catch(a){console.warn("[AutoPing] tick error:",a.message)}finally{b.running=!1}}}function V(){!K.interval&&(console.log("[AutoPing] scheduler started"),U().catch(()=>{}),K.interval=setInterval(()=>{U().catch(()=>{})},I.tickIntervalMs),K.interval.unref&&K.interval.unref())}function W(){K.interval&&(clearInterval(K.interval),K.interval=null,console.log("[AutoPing] scheduler stopped"))}function X(a){Object.values(I.providers).some(b=>Object.values(a?.[b.settingsKey]?.connections||{}).some(Boolean))?V():W()}},97753:(a,b,c)=>{c.d(b,{createProviderConnection:()=>d.iE,hr:()=>d.hr});var d=c(70321)}};
|
|
1
|
+
"use strict";exports.id=8231,exports.ids=[7753,8231],exports.modules={48595:(a,b,c)=>{c.d(b,{UY:()=>g,oc:()=>h});var d=c(90053),e=c(63995),f=c(78492);Object.entries(e.Q2).filter(([,a])=>a.passthroughModels).map(([a])=>a),Object.entries(f.vq).flatMap(([a,b])=>b.map(b=>({provider:a,model:b.id,name:b.name}))),Object.freeze(["gemini-live"]),d.rE;let g={maxLines:200,pollIntervalMs:1e3,streamTimeoutMs:5e3},h={tickIntervalMs:6e4,pingLeadMs:5e3,refreshAheadMs:3e5,failureCooldownMs:9e5,providers:{claude:{settingsKey:"claudeAutoPing",quotaKey:"session (5h)",pingInactiveSession:!0,inactiveMinPingIntervalMs:18e6,pingModel:"claude-haiku-4-5-20251001",pingText:"hi",pingMaxTokens:1},codex:{settingsKey:"codexAutoPing",quotaKey:"session",pingWhenResetAtSlides:!0,resetAtDriftMs:3e4,minPingIntervalMs:6e5,skipWhenBlockingQuotaExhausted:!0,pingText:"hi",pingInstructions:"Reply with OK.",pingReasoningEffort:"none"}}}},78231:(a,b,c)=>{c.r(b),c.d(b,{configureQuotaAutoPing:()=>X,runQuotaAutoPingTick:()=>U,startQuotaAutoPing:()=>V,stopQuotaAutoPing:()=>W}),c(65704);var d=c(70321),e=c(55511),f=c(26762),g=c(74570),h=c(15251);let i=a=>h.xq[a]?.usage||{};function j(a){if(!a)return null;try{if(a instanceof Date)return a.toISOString();if("number"==typeof a)return new Date(a<1e12?1e3*a:a).toISOString();if("string"==typeof a){if(/^\d+$/.test(a)){let b=Number(a);return new Date(b<1e12?1e3*b:b).toISOString()}return new Date(a).toISOString()}return null}catch(b){return console.warn(`Failed to parse reset time: ${a}`,b),null}}function k(a,b=0){if("number"==typeof a&&Number.isFinite(a))return a;if("string"==typeof a&&a.trim()){let b=Number(a);if(Number.isFinite(b))return b}return b}let l={oauthUsageUrl:i("claude").oauthUrl,usageUrl:i("claude").orgUrl,settingsUrl:i("claude").settingsUrl,profileUrl:i("claude").profileUrl,resetUrl:i("claude").resetUrl,apiVersion:g.b8,userAgent:`claude-cli/${g.t4} (external, cli)`},m=new Map,n=new Map;function o(a,b){for(m.delete(a),m.set(a,b);m.size>128;)m.delete(m.keys().next().value)}function p(a,b,c,d){if("number"==typeof c&&Number.isFinite(c)&&!Object.keys(a).some(a=>a.toLowerCase()===b.toLowerCase())){let e,f;a[b]=(f=100-(e=Math.min(100,Math.max(0,c))),{used:e,total:100,remaining:f,remainingPercentage:f,resetAt:j(d),unlimited:!1})}}async function q(a,b,c){try{let d=await (0,f.Fm)(`${l.oauthUsageUrl}?cedar_ember=1`,{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-beta":"oauth-2025-04-20","anthropic-version":l.apiVersion,"User-Agent":l.userAgent},signal:AbortSignal.timeout(5e3)},b);if(d.ok){let a=function(a){let b={};for(let[c,d]of(p(b,"session (5h)",a?.five_hour?.utilization,a?.five_hour?.resets_at),p(b,"weekly (7d)",a?.seven_day?.utilization,a?.seven_day?.resets_at),Object.entries(a||{})))c.startsWith("seven_day_")&&d&&"object"==typeof d&&p(b,`weekly ${c.slice(10)} (7d)`,d.utilization,d.resets_at);for(let c of[...Array.isArray(a?.limits)?a.limits:[],...Array.isArray(a?.rate_limits)?a.rate_limits:[]]){let a=String(c?.group||"").toLowerCase(),d=String(c?.kind||"").toLowerCase();if("session"===d||"session"===a){p(b,"session (5h)",c.percent,c.resets_at);continue}if("weekly_scoped"===d||"weekly"===a){let a=c?.scope?.model?.display_name||c?.scope?.surface?.display_name;p(b,a?`weekly ${a} (7d)`:"weekly (7d)",c.percent,c.resets_at)}}return{plan:"Claude Code",extraUsage:a?.extra_usage??null,resetCredits:function(a){if(!a?.eligible||!Array.isArray(a.grants))return null;let b=a.grants.filter(a=>a?.id&&!a.paused&&Number(a.resets_left)>0),c=b.find(b=>b.id===a.next_grant_id)||b[0]||null;return{availableCount:b.reduce((a,b)=>a+Number(b.resets_left),0),nextGrantId:c?.id||null,expiresAt:c?.ends_at||null,clears:c?.clears||[],cooldownUntil:a.cooldown_until||null,weeklyResetsAt:a.weekly_resets_at||null,grants:a.grants.filter(a=>a?.id).map(a=>({id:a.id,label:a.label||"",resetsLeft:Number(a.resets_left)||0,resetsTotal:Number(a.resets_total)||0,startsAt:a.starts_at||null,endsAt:a.ends_at||null,clears:Array.isArray(a.clears)?a.clears:[],paused:!0===a.paused,usableNow:!0===a.usable_now,useRequiresLimit:!1!==a.use_requires_limit}))}}(a?.cedar_ember),quotas:b}}(await d.json());return o(c,{value:a,expiresAt:Date.now()+65e3,retryAt:0}),a}if(429===d.status){let a,b=Date.now(),e=m.get(c),f=e?.value||{message:"Claude usage is rate limited. Retry later."};return o(c,{value:f,expiresAt:e?.expiresAt||0,retryAt:b+(a=function(a,b){let c=String(a||"").trim();if(!c)return null;let d=Number(c);if(Number.isFinite(d))return d>=0?1e3*d:null;let e=Date.parse(c);return Number.isFinite(e)?Math.max(0,e-b):null}(d.headers.get("retry-after"),b),null===a&&d.headers.forEach((c,d)=>{if(!/^anthropic-ratelimit-.+-reset$/i.test(d))return;let e=function(a,b){let c=String(a||"").trim();if(!c)return null;let d=Number(c),e=Number.isFinite(d)?d<1e12?1e3*d:d:Date.parse(c);return Number.isFinite(e)&&e>b&&e<=864e13?e-b:null}(c,b);null!==e&&(null===a||e>a)&&(a=e)}),Math.min(18e5,Math.max(18e4,a??18e4)))}),f}if(401===d.status)return{message:"Claude authentication expired (401). Re-authorize or refresh the connection."};if(404===d.status||405===d.status){let d=await r(a,b);return d.cacheable&&o(c,{value:d.value,expiresAt:Date.now()+65e3,retryAt:0}),d.value}return{message:`Claude connected. Usage endpoint returned HTTP ${d.status}.`}}catch{return{message:"Claude connected. Unable to fetch usage."}}}async function r(a,b=null){try{let c=await (0,f.Fm)(l.settingsUrl,{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":l.apiVersion}},b);if(c.ok){let d=await c.json();if(d.organization_id){let c=await (0,f.Fm)(l.usageUrl.replace("{org_id}",d.organization_id),{method:"GET",headers:{Authorization:`Bearer ${a}`,"anthropic-version":l.apiVersion}},b);if(c.ok){let a=await c.json();return{cacheable:!0,value:{plan:d.plan||"Unknown",organization:d.organization_name,quotas:a}}}return{cacheable:!1,value:{plan:d.plan||"Unknown",organization:d.organization_name,message:"Claude connected. Usage details require admin access."}}}return{cacheable:!0,value:{plan:d.plan||"Unknown",organization:d.organization_name,message:"Claude connected. Usage details require admin access."}}}return{cacheable:!1,value:{message:"Claude connected. Usage endpoint requires OAuth."}}}catch(a){return{cacheable:!1,value:{message:`Claude connected. Error checking usage: ${a.message}`}}}}var s=c(53261);let t={usageUrl:i("codex").url,resetCreditsUrl:i("codex").resetCreditsUrl,resetCreditsConsumeUrl:i("codex").resetCreditsConsumeUrl};function u(a,b={},c={},d=null){let e={Authorization:`Bearer ${a}`,Accept:"application/json",originator:"codex_cli_rs",...c},f=(0,s.a)(b,d);return f&&(e["ChatGPT-Account-ID"]=f),e}function v(a){return!a||"object"!=typeof a||Array.isArray(a)?null:a.rate_limit&&"object"==typeof a.rate_limit?a.rate_limit:a}function w(a){let b=Math.max(0,Math.min(100,k(a?.used_percent??a?.percent_used,0)));return{used:b,total:100,remaining:Math.max(0,100-b),resetAt:j(a?.reset_at??a?.resets_at??a?.resetAt??null),unlimited:!1}}function x(a,b,c){let d=v(c);if(!d)return!1;let e=d.primary_window||d.primary||c.primary_window||c.primary,f=d.secondary_window||d.secondary||c.secondary_window||c.secondary,g=!1;return e&&(a[b?`${b}_session`:"session"]=w(e),g=!0),f&&(a[b?`${b}_weekly`:"weekly"]=w(f),g=!0),g}async function y(a,b={},c=null,d=null){var e,g,h;[b,c]=(e=b,!(g=c)&&(h=e)&&"object"==typeof h&&("connectionProxyEnabled"in h||"connectionProxyUrl"in h||"connectionNoProxy"in h||"vercelRelayUrl"in h||"strictProxy"in h)?(0,s.a)(e,d)?[e,e]:[{},e]:[e||{},g]);try{let e=await (0,f.Fm)(t.usageUrl,{method:"GET",headers:u(a,b,{},d)},c);if(!e.ok)return{message:`Codex connected. Usage API temporarily unavailable (${e.status}).`};let g=await e.json(),h=g.rate_limit||g.rate_limits||g.rate_limits_by_limit_id?.codex||{},i=function(a){if(a.code_review_rate_limit||a.review_rate_limit)return a.code_review_rate_limit||a.review_rate_limit;let b=a.rate_limits_by_limit_id;return b&&"object"==typeof b&&!Array.isArray(b)?b.code_review||b.codex_review||b.review||null:(Array.isArray(a.additional_rate_limits)?a.additional_rate_limits:[]).find(a=>{let b=String(a?.limit_name||a?.metered_feature||a?.id||"").toLowerCase();return"code_review"===b||"codex_review"===b||"review"===b||b.includes("review")})||null}(g),j=function(a){if(a.spark_rate_limit||a.gpt_5_3_codex_spark_rate_limit)return a.spark_rate_limit||a.gpt_5_3_codex_spark_rate_limit;let b=a.rate_limits_by_limit_id;return b&&"object"==typeof b&&!Array.isArray(b)?b["gpt-5.3-codex-spark"]||b.gpt_5_3_codex_spark||b.spark||null:(Array.isArray(a.additional_rate_limits)?a.additional_rate_limits:[]).find(a=>{let b=String(a?.limit_name||a?.metered_feature||a?.id||"").toLowerCase();return b.includes("spark")||b.includes("5.3-codex-spark")})||null}(g),l=Math.max(0,k(g.rate_limit_reset_credits?.available_count,0)),m={};return x(m,"",h),x(m,"review",i),x(m,"spark",j),{plan:g.plan_type||g.summary?.plan||"unknown",limitReached:v(h)?.limit_reached||!1,reviewLimitReached:v(i)?.limit_reached||!1,sparkLimitReached:v(j)?.limit_reached||!1,resetCredits:{availableCount:l},quotas:m}}catch(a){throw Error(`Failed to fetch Codex usage: ${a.message}`)}}async function z(a,b=null,c=null,d=null){let e=new URL(i("codex").modelsUrl||"https://chatgpt.com/backend-api/codex/models");i("codex").clientVersion&&e.searchParams.set("client_version",i("codex").clientVersion);let g=u(a,c,{},d),h=await (0,f.Fm)(e,{method:"GET",headers:g},b);if(!h.ok)return[];let j=await h.json();return(Array.isArray(j?.models)?j.models:[]).filter(a=>a?.supported_in_api!==!1&&"string"==typeof a?.slug&&a.slug).sort((a,b)=>Number(a.priority||0)-Number(b.priority||0))}var A=c(76171),B=c(97753);function C(a){return null==a?"":String(a).trim()}async function D(a={}){try{let b=C(a?.proxyPoolId),c="__none__"===b?"":b,d=function(a={}){let b=a?.connectionProxyEnabled===!0,c=C(a?.connectionProxyUrl);return{connectionProxyEnabled:b,connectionProxyUrl:c,connectionNoProxy:C(a?.connectionNoProxy)}}(a),e=!1;if(c){let a=await (0,B.hr)(c),b=C(a?.proxyUrl),d=C(a?.noProxy),f=a&&!0===a.isActive&&b;if(e=a?.strictProxy===!0,f){if("vercel"===a.type||"cloudflare"===a.type||"deno"===a.type)return{source:a.type,proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:d,strictProxy:!0===a.strictProxy,vercelRelayUrl:b};return{source:"pool",proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!0,connectionProxyUrl:b,connectionNoProxy:d,strictProxy:!0===a.strictProxy}}}if(d.connectionProxyEnabled&&d.connectionProxyUrl)return{source:"legacy",proxyPoolId:c||null,proxyPool:null,strictProxy:e,...d};return{source:"none",proxyPoolId:c||null,proxyPool:null,strictProxy:e,...d}}catch(a){return console.error("[resolveConnectionProxyConfig] Failed to resolve proxy config:",a),{source:"error",proxyPoolId:null,proxyPool:null,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:"",strictProxy:!1}}}h.sr.github?.apiVersion,h.sr.github?.userAgent,c(10793),i("antigravity"),g.Of,i("antigravity"),g.XP,g.Of,c(43835),i("minimax").urls,i("minimax-cn").urls,c(83382);let E=i("grok-cli"),F=E.url||"https://cli-chat-proxy.grok.com/v1/billing?format=credits";E.userUrl,"string"==typeof F&&F.includes("?")&&F.replace(/\?.*$/,""),i("cursor").usageUrl,i("cursor").planUrl,i("groq").url,c(33373),i("opencode-go").url,c(95901),c(970),i("glm").url,i("glm-cn").url,i("vercel-ai-gateway").url;var G=c(44855);async function H(a,b=!1,c=null){let e=a.id?await (0,d.Mc)(a.id):null;e&&(a=e);let f=(0,A.SB)(a.provider),g={accessToken:a.accessToken,refreshToken:a.refreshToken,idToken:a.idToken,expiresAt:a.expiresAt||a.tokenExpiresAt,lastRefreshAt:a.lastRefreshAt,connectionId:a.id,providerSpecificData:a.providerSpecificData,copilotToken:a.providerSpecificData?.copilotToken,copilotTokenExpiresAt:a.providerSpecificData?.copilotTokenExpiresAt};if(!(b||f.needsRefresh(g)))return{connection:a,refreshed:!1};let h=await f.refreshCredentials(g,console,c);if(h&&(0,G.jT)(h))throw Error("Refresh token invalid or reused. Please re-authorize the connection.");if(!h){if(a.accessToken)return{connection:a,refreshed:!1};throw Error("Failed to refresh credentials. Please re-authorize the connection.")}let i={updatedAt:new Date().toISOString()};h.accessToken&&(i.accessToken=h.accessToken),h.refreshToken&&(i.refreshToken=h.refreshToken),h.idToken&&(i.idToken=h.idToken),h.lastRefreshAt&&(i.lastRefreshAt=h.lastRefreshAt),h.expiresIn?(i.expiresAt=new Date(Date.now()+1e3*h.expiresIn).toISOString(),i.expiresIn=h.expiresIn):h.expiresAt&&(i.expiresAt=h.expiresAt);let j={...h.providerSpecificData||{},...h.copilotToken?{copilotToken:h.copilotToken}:{},...h.copilotTokenExpiresAt?{copilotTokenExpiresAt:h.copilotTokenExpiresAt}:{}};return Object.keys(j).length>0&&(i.providerSpecificData={...a.providerSpecificData||{},...j}),await (0,d.updateProviderConnection)(a.id,i),{connection:{...a,...i,providerSpecificData:i.providerSpecificData||a.providerSpecificData},refreshed:!0}}c(63995);let I=c(48595).oc,J={claude:{getUsage:(a,b,c)=>(function(a,b=null,c={}){let d,f=c?.force===!0,g=(0,e.createHash)("sha256").update(String(a??"")).digest("hex"),h=m.get(g),i=Date.now();return!f&&h&&(i<h.expiresAt||i<h.retryAt)?Promise.resolve(h.value):!f&&n.has(g)?n.get(g):n.size>=128?Promise.resolve({message:"Claude usage refresh is busy. Retry shortly."}):(d=q(a,b,g).finally(()=>{n.get(g)===d&&n.delete(g)}),n.set(g,d),d)})(a,c),sendPing:Q},codex:{getUsage:y,getModels:z,sendPing:S}},K=global.__quotaAutoPing??={interval:null,running:!1,resetCache:{},failureCache:{},pingCache:{}};function L(a){let b=new Date(a).getTime();return Number.isFinite(b)?new Date(6e4*Math.floor(b/6e4)).toISOString():a}function M(a,b=null){if("number"==typeof a&&Number.isFinite(a))return a;if("string"==typeof a&&a.trim()){let b=Number(a);if(Number.isFinite(b))return b}return b}function N(a){if(!a||!0===a.unlimited)return!1;let b=M(a.remaining);if(null!==b)return b<=0;let c=M(a.used),d=M(a.total);return null!==d&&d>0&&null!==c&&c>=d}function O(a,b,c=Date.now(),d=null){if(!b)return!1;let e=new Date(a.lastPingAt).getTime(),f=M(d,-1/0),g=Math.max(Number.isFinite(e)?e:-1/0,f);return Number.isFinite(g)&&c-g<b}function P(a,b){return Object.entries(a||{}).some(([a,c])=>a!==b&&!String(a).toLowerCase().includes("session")&&N(c))}async function Q(a,b,c,d){let e=await d.proxyAwareFetch("https://api.anthropic.com/v1/messages?beta=true",{method:"POST",headers:{...g.$B,Authorization:`Bearer ${a.accessToken}`,"content-type":"application/json"},body:JSON.stringify({model:b.pingModel,max_tokens:b.pingMaxTokens,messages:[{role:"user",content:b.pingText}]})},c);if(!e.ok){try{await e.body?.cancel?.()}catch{}return!1}return await R(e),!0}async function R(a){if("function"==typeof a?.text)return void await a.text();let b=a?.body?.getReader?.();if(b)try{for(;;){let{done:a}=await b.read();if(a)return}}finally{b.releaseLock?.()}}async function S(a,b,c,d,e){let f=e.getExecutor("codex"),{response:g}=await f.execute({model:c,stream:!0,credentials:{accessToken:a.accessToken,connectionId:a.id,idToken:a.idToken,providerSpecificData:a.providerSpecificData},proxyOptions:d,log:console,body:{model:c,input:[{type:"message",role:"user",content:[{type:"input_text",text:b.pingText}]}],instructions:b.pingInstructions,reasoning:b.pingReasoningEffort?{effort:b.pingReasoningEffort,summary:"auto"}:void 0,store:!1,stream:!0}});if(!g.ok){try{await g.body?.cancel?.()}catch{}return!1}return await R(g),!0}async function T(a,b,c,d,e,f=K){var g;let h=(g=a.id,`${b}:${g}`),i=f.resetCache[h];if(!c.pingWhenResetAtSlides&&i&&Date.now()<new Date(i).getTime()-I.refreshAheadMs||function(a,b,c=Date.now()){let d=a.failureCache[b];return d&&c-d<I.failureCooldownMs}(f,h))return;let j=await e.resolveConnectionProxyConfig(a.providerSpecificData),k={connectionProxyEnabled:!0===j.connectionProxyEnabled,connectionProxyUrl:j.connectionProxyUrl||"",connectionNoProxy:j.connectionNoProxy||"",vercelRelayUrl:j.vercelRelayUrl||"",strictProxy:!1},l=a;try{l=(await e.refreshAndUpdateCredentials(l,!1,k)).connection}catch(c){f.failureCache[h]=Date.now(),console.warn(`[AutoPing] ${b}:${a.id}: refresh failed: ${c.message}`);return}let m=await d.getUsage(l.accessToken,l.providerSpecificData,k,l.idToken),n=m?.quotas||{},o=n?.[c.quotaKey],p=o?.resetAt,q=Date.now(),r=function(a,b,c,d,e,f,g){let h,i;return!0===b.pingInactiveSession&&d&&!d.resetAt&&!N(d)&&(h=Object.entries(c||{}).filter(([a])=>String(a).toLowerCase().startsWith("weekly"))).length>0&&h.every(([,a])=>!N(a))&&!P(c,b.quotaKey)&&(!(i=String(a.providerSpecificData?.proxyPoolId??"").trim())||"__none__"===i||e?.proxyUnavailable!==!0&&e?.source!=="unavailable"&&String(e?.proxyPoolId??"").trim()===i&&!!e?.proxyPool)&&!O(a,b.inactiveMinPingIntervalMs,f,g)}(l,c,n,o,j,q,f.pingCache?.[h]),s=null;if(p){if(f.resetCache[h]=p,c.skipWhenBlockingQuotaExhausted&&P(n,c.quotaKey)||N(o))return;s=L(p);let a=l.lastPingedResetKey||L(l.lastPingedResetAt);if(!function(a,b,c,d){if(a.pingWhenResetAtSlides){let d,e;return!!b&&(d=new Date(b).getTime(),e=new Date(c).getTime(),(Number.isFinite(d)&&Number.isFinite(e)?e-d:0)>=(a.resetAtDriftMs||0))}let e=new Date(c).getTime();return Number.isFinite(e)&&d>=e-I.pingLeadMs}(c,i,p,q)||O(l,c.minPingIntervalMs,q)||a===s)return}else if(!r)return;let t="codex"===b?(await d.getModels(l.accessToken,k,l.providerSpecificData))[0]?.slug:c.pingModel;if(!t){f.failureCache[h]=Date.now(),console.warn(`[AutoPing] ${b}:${l.id}: no supported model available`);return}if(!("codex"===b?await d.sendPing(l,c,t,k,e):await d.sendPing(l,c,k,e))){f.failureCache[h]=Date.now(),console.warn(`[AutoPing] ${b}:${l.id}: ping failed (${p?`reset ${p}`:"inactive session"})`);return}r&&((f.pingCache??={})[h]=Date.now()),delete f.failureCache[h],await e.updateProviderConnection(l.id,{...p?{lastPingedResetAt:p,lastPingedResetKey:s}:{},lastPingAt:new Date().toISOString(),updatedAt:new Date().toISOString()}),r&&delete f.pingCache[h],console.log(`[AutoPing] ${b}:${l.id}: ping sent (${p?`reset ${p}`:"inactive session"})`)}async function U(a={getSettings:d.mt,getProviderConnections:d.getProviderConnections,updateProviderConnection:d.updateProviderConnection,resolveConnectionProxyConfig:D,refreshAndUpdateCredentials:H,proxyAwareFetch:f.Fm,getExecutor:A.SB},b=K){if(!b.running){b.running=!0;try{let d=await a.getSettings();for(let[e,f]of Object.entries(I.providers)){let g=J[e];if(!g)continue;let h=d?.[f.settingsKey]?.connections||{};if(0!==Object.keys(h).length)for(let d of(await a.getProviderConnections({provider:e,isActive:!0})).filter(a=>"oauth"===a.authType&&!0===h[a.id]))try{await T(d,e,f,g,a,b)}catch(a){var c;b.failureCache[c=d.id,`${e}:${c}`]=Date.now(),console.warn(`[AutoPing] ${e}:${d.id}: ${a.message}`)}}}catch(a){console.warn("[AutoPing] tick error:",a.message)}finally{b.running=!1}}}function V(){!K.interval&&(console.log("[AutoPing] scheduler started"),U().catch(()=>{}),K.interval=setInterval(()=>{U().catch(()=>{})},I.tickIntervalMs),K.interval.unref&&K.interval.unref())}function W(){K.interval&&(clearInterval(K.interval),K.interval=null,console.log("[AutoPing] scheduler stopped"))}function X(a){Object.values(I.providers).some(b=>Object.values(a?.[b.settingsKey]?.connections||{}).some(Boolean))?V():W()}},97753:(a,b,c)=>{c.d(b,{createProviderConnection:()=>d.iE,hr:()=>d.hr});var d=c(70321)}};
|