@jheavenknows/bluerouter 5.5.4 → 5.5.6
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/app/.next-cli-build/BUILD_ID +1 -1
- package/app/.next-cli-build/app-path-routes-manifest.json +18 -18
- package/app/.next-cli-build/build-manifest.json +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/ai-power-index/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/api-keys/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/audit-proxy/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/audit-proxy/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/audit-proxy/page_client-reference-manifest.js +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.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/model-profiles/page_client-reference-manifest.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/cluster/page_client-reference-manifest.js +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_client-reference-manifest.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/logs/console/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/logs/page_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.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/personal/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovider/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovidermonitor/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalquota/page_client-reference-manifest.js +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/prompt-logs/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page_client-reference-manifest.js +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_client-reference-manifest.js +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/providers/stt/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/tts/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/resource-monitor/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +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_client-reference-manifest.js +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_client-reference-manifest.js +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_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 +6 -6
- package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/api/audit-proxy/ca/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/audit-proxy/me/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/audit-proxy/root-ca/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/audit-proxy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/audit-proxy/users/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/ldap/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/ldap/users/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/login/route.js +3 -3
- 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.nft.json +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.nft.json +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/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/view-mode/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/branding/[asset]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/branding/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/branding/upload/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-model-profiles/cloud-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-model-profiles/model-catalog/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-model-profiles/route.js.nft.json +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/copilot-settings/route.js.nft.json +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/cluster/config/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/heartbeat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/[id]/command/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/snapshot/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/sync/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/codex-catalog/download/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/codex-catalog/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/codex-catalog/upload/route.js.nft.json +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/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/ai-power-index/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/ai-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/analyze/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/combos/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/endpoint/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/options/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/token-saver/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/caveman-test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js.nft.json +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.nft.json +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.nft.json +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.nft.json +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.nft.json +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.nft.json +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.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.nft.json +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.nft.json +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.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/grok-cli/device-code/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/grok-cli/poll/route.js.nft.json +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/import/route.js.nft.json +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/personal-cloud-providers/[id]/api-key-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/import-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/models/[...routeModel]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/move/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/usage/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/client/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/monitor/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/permissions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/routing/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/shares/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/visibility/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pricing/catalog/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pricing/recalculate/route.js.nft.json +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-health/route.js.nft.json +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/openai-compatible/manage/route.js.nft.json +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/providers/[id]/models/route.js.nft.json +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.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.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/test-batch/route.js.nft.json +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.nft.json +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.nft.json +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.nft.json +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/resource-monitor/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/ai-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/analyze/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/history/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/export/route.js.nft.json +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/prompt-log-db/route.js.nft.json +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/translator/console-logs/route.js +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/send/route.js.nft.json +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/usage/[connectionId]/route.js.nft.json +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/history/route.js.nft.json +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.nft.json +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.nft.json +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.nft.json +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.nft.json +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/chat/completions/route.js.nft.json +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.nft.json +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/[kind]/route.js.nft.json +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.nft.json +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.nft.json +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/web/fetch/route.js.nft.json +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.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/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 +6 -6
- package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
- 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/ai-power-index.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/!KGRhc2hib2FyZCk/dashboard/ai-power-index/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/!KGRhc2hib2FyZCk/dashboard/ai-power-index.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/api-keys.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/api-keys.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys/__PAGE__.segment.rsc +4 -4
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_full.segment.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/model-profiles/__PAGE__.segment.rsc +3 -3
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/model-profiles.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/_full.segment.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cluster.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cluster.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/!KGRhc2hib2FyZCk/dashboard/cluster/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/!KGRhc2hib2FyZCk/dashboard/cluster.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/combos.rsc +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/logs.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/logs.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/logs.segments/!KGRhc2hib2FyZCk/dashboard/logs/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/logs.segments/!KGRhc2hib2FyZCk/dashboard/logs.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/logs.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/logs.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/logs.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/logs.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/logs.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/logs.segments/_tree.segment.rsc +2 -2
- 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 +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/personal.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/personal.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/personal.segments/!KGRhc2hib2FyZCk/dashboard/personal/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/personal.segments/!KGRhc2hib2FyZCk/dashboard/personal.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/personal.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/personal.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/personal.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/personal.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/personal.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/personal.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/profile.rsc +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/provider-health.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/provider-health.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/stt.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/stt.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers/stt.segments/!KGRhc2hib2FyZCk/dashboard/providers/stt/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/stt.segments/!KGRhc2hib2FyZCk/dashboard/providers/stt.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/stt.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/stt.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/stt.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/stt.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers/stt.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/stt.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/providers/stt.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/tts.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/tts.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers/tts.segments/!KGRhc2hib2FyZCk/dashboard/providers/tts/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/tts.segments/!KGRhc2hib2FyZCk/dashboard/providers/tts.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/tts.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/tts.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/tts.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/tts.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers/tts.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/tts.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/providers/tts.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers.rsc +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/quota.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.rsc +9 -9
- 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 +9 -9
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/!KGRhc2hib2FyZCk/dashboard/resource-monitor/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/!KGRhc2hib2FyZCk/dashboard/resource-monitor.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.rsc +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +1 -1
- 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 +7 -7
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/translator.rsc +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/usage.rsc +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard.html +1 -1
- package/app/.next-cli-build/server/app/dashboard.rsc +8 -8
- 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 +8 -8
- 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 +6 -6
- package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/index.html +1 -1
- package/app/.next-cli-build/server/app/index.rsc +6 -6
- package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
- 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 +6 -6
- package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
- 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_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 +7 -7
- package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app-paths-manifest.json +18 -18
- package/app/.next-cli-build/server/chunks/2428.js +1 -1
- package/app/.next-cli-build/server/chunks/2731.js +3 -3
- package/app/.next-cli-build/server/chunks/2947.js +2 -2
- package/app/.next-cli-build/server/chunks/3399.js +1 -1
- package/app/.next-cli-build/server/chunks/3792.js +2 -2
- package/app/.next-cli-build/server/chunks/3958.js +3 -3
- package/app/.next-cli-build/server/chunks/4746.js +1 -1
- package/app/.next-cli-build/server/chunks/5206.js +1 -1
- package/app/.next-cli-build/server/chunks/6811.js +1 -1
- package/app/.next-cli-build/server/chunks/6977.js +2 -2
- package/app/.next-cli-build/server/chunks/6992.js +1 -1
- package/app/.next-cli-build/server/chunks/9083.js +3 -3
- 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/{5263-c1e2c5837baf6510.js → 5263-9886566ba5109c67.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/audit-proxy/page-d93b822502128325.js +8 -0
- package/app/.next-cli-build/static/css/9d2cdc229e89eae6.css +1 -0
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.5.4-to-5.5.5-5.5.5-20260916-163354/data.sqlite +0 -0
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.5.5-to-5.5.6-5.5.6-20260916-171812/data.sqlite +0 -0
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-shm +0 -0
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite-wal +0 -0
- package/app/package.json +1 -1
- package/package.json +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/audit-proxy/page-eca6c6f6c628746d.js +0 -8
- package/app/.next-cli-build/static/css/2356d0ff9b199c89.css +0 -1
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.4.25-to-5.4.43-5.4.43-20260914-090854/data.sqlite +0 -0
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.4.43-to-5.4.44-5.4.44-20260914-091136/data.sqlite +0 -0
- /package/app/.next-cli-build/static/{37upEIDGYuLFmIMLB89va → OppdqjPvpwlaAITRb7xYX}/_buildManifest.js +0 -0
- /package/app/.next-cli-build/static/{37upEIDGYuLFmIMLB89va → OppdqjPvpwlaAITRb7xYX}/_ssgManifest.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=5206,exports.ids=[5206],exports.modules={92825:(a,b,c)=>{c.d(b,{CO:()=>z,Qx:()=>C,cf:()=>D,ih:()=>B,sU:()=>E,uj:()=>A});var d=c(25060);let e="(|(sAMAccountName={{username}})(userPrincipalName={{username}})(mail={{username}}))",f=["dn","cn","displayName","mail","sAMAccountName","userPrincipalName","distinguishedName","memberOf"],g="1.2.840.113556.1.4.1941";function h(a){return String(a||"").trim()}function i(a){return Array.isArray(a)?a.map(a=>h(a)).filter(Boolean):String(a||"").split(/[,\n]/).map(a=>h(a)).filter(Boolean)}function j(a){return[...new Set(a.filter(Boolean))]}function k(a){return String(a||"").trim().toLowerCase()}function l(a){return String(a||"").replace(/[\\*()\u0000]/g,a=>{switch(a){case"\\":return"\\5c";case"*":return"\\2a";case"(":return"\\28";case")":return"\\29";case"\0":return"\\00";default:return a}})}function m(a={}){let b=h(a.ldapUserBaseDn||a.ldapBaseDn);return{enabled:!0===a.ldapEnabled,url:h(a.ldapUrl),bindDn:h(a.ldapBindDn),bindPassword:a.ldapBindPassword||"",baseDn:b,userBaseDn:b,userSearchFilter:h(a.ldapUserSearchFilter)||e,userNameAttribute:h(a.ldapUserNameAttribute)||"sAMAccountName",userDisplayAttribute:h(a.ldapUserDisplayAttribute)||"displayName",userEmailAttribute:h(a.ldapUserEmailAttribute)||"mail",allowedUsers:i(a.ldapAllowedUsers),allowAnyUser:!0===a.ldapAllowAnyUser,loginAllowedGroupDn:h(a.ldapLoginAllowedGroupDn),adminGroupDn:h(a.ldapAdminGroupDn),monitorAdminGroupDn:h(a.ldapMonitorAdminGroupDn),aiGatewaysMonitorsGroupDn:h(a.ldapAiGatewaysMonitorsGroupDn),nestedGroups:!1!==a.ldapNestedGroups,tlsRejectUnauthorized:function(a,b=!1){return null==a||""===a?b:!0===a||"true"===a}(a.ldapTlsRejectUnauthorized,!0),connectTimeoutMs:Number(a.ldapConnectTimeoutMs||8e3)}}function n(a,{requirePassword:b=!0}={}){if(!a.enabled)throw Error("LDAP login is disabled.");if(!a.url)throw Error("LDAP URL is required.");if(!a.userBaseDn)throw Error("LDAP User Base DN is required.");if(!a.bindDn)throw Error("LDAP Bind DN is required.");if(b&&!a.bindPassword)throw Error("LDAP Bind password is required.")}async function o(a,b){let c=new d.Kj({url:a.url,timeout:a.connectTimeoutMs,connectTimeout:a.connectTimeoutMs,tlsOptions:{rejectUnauthorized:!1!==a.tlsRejectUnauthorized}});try{return await c.bind(a.bindDn,a.bindPassword||""),await b(c)}finally{try{await c.unbind()}catch{}}}function p(a,b){let c=a?.[b];return Array.isArray(c)?c[0]||"":c||""}function q(a,b){let c=a?.[b];return Array.isArray(c)?c.map(String).filter(Boolean):c?[String(c)]:[]}function r(a,b){let c=b.userNameAttribute||"sAMAccountName",d=b.userDisplayAttribute||"displayName",e=b.userEmailAttribute||"mail",f=p(a,c)||p(a,"sAMAccountName")||p(a,"userPrincipalName")||p(a,"mail")||a.dn;return{dn:a.dn,username:f,displayName:p(a,d)||p(a,"displayName")||p(a,"cn")||f,email:p(a,e)||p(a,"mail")||p(a,"userPrincipalName")||"",userPrincipalName:p(a,"userPrincipalName")||"",sAMAccountName:p(a,"sAMAccountName")||"",memberOf:q(a,"memberOf")}}function s(a,b={}){let c=a.allowedUsers.map(k).filter(Boolean);return 0!==c.length&&(function(a={}){return[a.username,a.email,a.displayName,a.userPrincipalName,a.sAMAccountName,a.dn].map(k).filter(Boolean)})(b).some(a=>c.includes(a))}async function t(a,b,c){var d;let g,i,k=(d=b.userSearchFilter,g=h(d)||e,i=l(c),g.replaceAll("{{username}}",i).replaceAll("{username}",i));return(await a.search(b.userBaseDn,{scope:"sub",filter:k,sizeLimit:1,attributes:j([...f,b.userNameAttribute,b.userDisplayAttribute,b.userEmailAttribute])})).searchEntries[0]||null}async function u(a,b,c,d){if(!b.nestedGroups)return!1;try{let e=`(&(distinguishedName=${l(c)})(memberOf:${g}:=${l(d)}))`;return(await a.search(b.userBaseDn,{scope:"sub",filter:e,sizeLimit:1,attributes:["dn"]})).searchEntries.length>0}catch{return!1}}async function v(a,b){try{let c=(await a.search(b,{scope:"base",filter:"(objectClass=*)",sizeLimit:1,attributes:["member","uniqueMember"]})).searchEntries[0]||{};return j([...q(c,"member"),...q(c,"uniqueMember")])}catch{return[]}}async function w(a,b,c,d){let e=h(d);if(!e)return!1;let f=h(c?.dn);return!!f&&(!!(q(c,"memberOf").map(k).includes(k(e))||await u(a,b,f,e))||(await v(a,e)).map(k).includes(k(f)))}async function x(a,b,c,d){let e=b.userNameAttribute||"sAMAccountName",h=b.userDisplayAttribute||"displayName",i=b.userEmailAttribute||"mail",k=String(c||"").trim(),m=l(k||"*"),n=k?`(|(${e}=*${m}*)(${h}=*${m}*)(${i}=*${m}*)(userPrincipalName=*${m}*)(sAMAccountName=*${m}*))`:"(|(sAMAccountName=*)(userPrincipalName=*)(mail=*))",o=b.nestedGroups?`(memberOf:${g}:=${l(d)})`:`(memberOf=${l(d)})`,p=`(&(&(objectCategory=person)(objectClass=user)(!(objectClass=computer))(!(userAccountControl:1.2.840.113556.1.4.803:=2)))${n}${o})`;return(await a.search(b.userBaseDn,{scope:"sub",filter:p,sizeLimit:100,attributes:j([...f,e,h,i])})).searchEntries.map(a=>r(a,b))}async function y(a,b,c,d){let e=await v(a,d),g=[];for(let d of e.slice(0,200))try{let e=(await a.search(d,{scope:"base",filter:"(objectClass=*)",sizeLimit:1,attributes:j([...f,b.userNameAttribute,b.userDisplayAttribute,b.userEmailAttribute])})).searchEntries[0];if(e?.dn){let a=r(e,b);(function(a,b){let c=k(b);return!c||[a.username,a.displayName,a.email,a.userPrincipalName,a.sAMAccountName,a.dn].map(k).some(a=>a.includes(c))})(a,c)&&g.push(a)}}catch{}return g}function z(a={}){let b=m(a);return!!(b.enabled&&b.url&&b.bindDn&&b.bindPassword&&b.userBaseDn)}function A(a={}){let b=m(a);return{ldapEnabled:b.enabled,ldapUrl:b.url,ldapBindDn:b.bindDn,ldapBaseDn:b.userBaseDn,ldapUserBaseDn:b.userBaseDn,ldapUserSearchFilter:b.userSearchFilter,ldapUserNameAttribute:b.userNameAttribute,ldapUserDisplayAttribute:b.userDisplayAttribute,ldapUserEmailAttribute:b.userEmailAttribute,ldapLoginAllowedGroupDn:b.loginAllowedGroupDn,ldapAdminGroupDn:b.adminGroupDn,ldapMonitorAdminGroupDn:b.monitorAdminGroupDn,ldapAiGatewaysMonitorsGroupDn:b.aiGatewaysMonitorsGroupDn,ldapNestedGroups:b.nestedGroups,ldapAllowedUsers:b.allowedUsers,ldapAllowAnyUser:b.allowAnyUser,ldapTlsRejectUnauthorized:b.tlsRejectUnauthorized,ldapConnectTimeoutMs:b.connectTimeoutMs,ldapHasBindPassword:!!a.ldapBindPassword,ldapConfigured:z(a)}}function B(a={}){let b={};for(let c of["ldapUrl","ldapBindDn","ldapBaseDn","ldapUserBaseDn","ldapUserSearchFilter","ldapUserNameAttribute","ldapUserDisplayAttribute","ldapUserEmailAttribute","ldapLoginAllowedGroupDn","ldapAdminGroupDn","ldapMonitorAdminGroupDn","ldapAiGatewaysMonitorsGroupDn"])Object.prototype.hasOwnProperty.call(a,c)&&(b[c]=h(a[c]));if(Object.prototype.hasOwnProperty.call(b,"ldapUserBaseDn")&&(b.ldapBaseDn=b.ldapUserBaseDn),Object.prototype.hasOwnProperty.call(a,"ldapEnabled")&&(b.ldapEnabled=!0===a.ldapEnabled),Object.prototype.hasOwnProperty.call(a,"ldapBindPassword")){let c=String(a.ldapBindPassword||"");c&&(b.ldapBindPassword=c)}if(Object.prototype.hasOwnProperty.call(a,"ldapClearBindPassword")&&!0===a.ldapClearBindPassword&&(b.ldapBindPassword=""),Object.prototype.hasOwnProperty.call(a,"ldapAllowedUsers")&&(b.ldapAllowedUsers=i(a.ldapAllowedUsers)),Object.prototype.hasOwnProperty.call(a,"ldapAllowAnyUser")&&(b.ldapAllowAnyUser=!0===a.ldapAllowAnyUser),Object.prototype.hasOwnProperty.call(a,"ldapNestedGroups")&&(b.ldapNestedGroups=!1!==a.ldapNestedGroups),Object.prototype.hasOwnProperty.call(a,"ldapTlsRejectUnauthorized")&&(b.ldapTlsRejectUnauthorized=!1!==a.ldapTlsRejectUnauthorized),Object.prototype.hasOwnProperty.call(a,"ldapConnectTimeoutMs")){let c=Number(a.ldapConnectTimeoutMs);b.ldapConnectTimeoutMs=Number.isFinite(c)&&c>0?Math.min(c,3e4):8e3}return b}async function C(a={}){let b=m(a);return n(b),await o(b,async a=>{let c=await a.search(b.userBaseDn,{scope:"sub",filter:"(objectClass=*)",sizeLimit:1,attributes:["dn"]}),d=!0,e=!0,f=!0,g=!0;return b.loginAllowedGroupDn&&(d=(await v(a,b.loginAllowedGroupDn)).length>=0),b.adminGroupDn&&(e=(await v(a,b.adminGroupDn)).length>=0),b.monitorAdminGroupDn&&(f=(await v(a,b.monitorAdminGroupDn)).length>=0),b.aiGatewaysMonitorsGroupDn&&(g=(await v(a,b.aiGatewaysMonitorsGroupDn)).length>=0),{ok:!0,message:`LDAP bind and user base search OK. Found ${c.searchEntries.length} object(s).${b.loginAllowedGroupDn?" Login group DN is readable.":""}${b.adminGroupDn?" Admin group DN is readable.":""}${b.monitorAdminGroupDn?" Monitor admin group DN is readable.":""}${b.aiGatewaysMonitorsGroupDn?" AI Gateways monitors group DN is readable.":""}`,loginGroupOk:d,adminGroupOk:e,monitorAdminGroupOk:f,aiGatewaysMonitorsGroupOk:g}})}async function D(a={},b=""){let c=m(a);return n(c),await o(c,async a=>{if(c.loginAllowedGroupDn){let d=await x(a,c,b,c.loginAllowedGroupDn).catch(()=>[]);return d.length>0?d:await y(a,c,b,c.loginAllowedGroupDn)}let d=c.userNameAttribute||"sAMAccountName",e=c.userDisplayAttribute||"displayName",g=c.userEmailAttribute||"mail",h=String(b||"").trim(),i=l(h||"*"),k=h?`(|(${d}=*${i}*)(${e}=*${i}*)(${g}=*${i}*)(userPrincipalName=*${i}*)(sAMAccountName=*${i}*))`:"(|(sAMAccountName=*)(userPrincipalName=*)(mail=*))",m=`(&(&(objectCategory=person)(objectClass=user)(!(objectClass=computer))(!(userAccountControl:1.2.840.113556.1.4.803:=2)))${k})`;return(await a.search(c.userBaseDn,{scope:"sub",filter:m,sizeLimit:100,attributes:j([...f,d,e,g])})).searchEntries.map(a=>r(a,c))})}async function E(a={},b,c){let e=m(a);n(e);let f=h(b),g=String(c||"");if(!f)throw Error("LDAP username is required.");if(!g)throw Error("LDAP password is required.");return await o(e,async a=>{let b=await t(a,e,f);if(!b?.dn)throw Error("LDAP user was not found.");let c=new d.Kj({url:e.url,timeout:e.connectTimeoutMs,connectTimeout:e.connectTimeoutMs,tlsOptions:{rejectUnauthorized:!1!==e.tlsRejectUnauthorized}});try{await c.bind(b.dn,g)}finally{try{await c.unbind()}catch{}}let h=r(b,e),i=e.loginAllowedGroupDn;if(i){if(!await w(a,e,b,i))throw Error("This LDAP user is not a member of the allowed login group.")}else if(!e.allowAnyUser&&e.allowedUsers.length>0&&!s(e,h))throw Error("This LDAP user is not allowed to access the dashboard.");let j=!!e.adminGroupDn&&await w(a,e,b,e.adminGroupDn),k=s(e,h),l=j||k,m=!l&&!!e.monitorAdminGroupDn&&await w(a,e,b,e.monitorAdminGroupDn),n=!l&&!m&&!!e.aiGatewaysMonitorsGroupDn&&await w(a,e,b,e.aiGatewaysMonitorsGroupDn);return{...h,isLoginAllowed:!0,isAdmin:l,isMonitorAdmin:m,isAiGatewaysMonitor:n,adminSource:j?"ldap-admin-group":k?"manual-admin-list":"none",monitorAdminSource:m?"ldap-monitor-admin-group":"none",aiGatewaysMonitorSource:n?"ldap-ai-gateways-monitors-group":"none"}})}}};
|
|
1
|
+
"use strict";exports.id=5206,exports.ids=[5206],exports.modules={92825:(a,b,c)=>{c.d(b,{CO:()=>z,Qx:()=>C,cf:()=>D,ih:()=>B,sU:()=>F,uj:()=>A});var d=c(25060);let e="(|(sAMAccountName={{username}})(userPrincipalName={{username}})(mail={{username}}))",f=["dn","cn","displayName","mail","sAMAccountName","userPrincipalName","distinguishedName","memberOf"],g="1.2.840.113556.1.4.1941";function h(a){return String(a||"").trim()}function i(a){return Array.isArray(a)?a.map(a=>h(a)).filter(Boolean):String(a||"").split(/[,\n]/).map(a=>h(a)).filter(Boolean)}function j(a){return[...new Set(a.filter(Boolean))]}function k(a){return String(a||"").trim().toLowerCase()}function l(a){return String(a||"").replace(/[\\*()\u0000]/g,a=>{switch(a){case"\\":return"\\5c";case"*":return"\\2a";case"(":return"\\28";case")":return"\\29";case"\0":return"\\00";default:return a}})}function m(a={}){let b=h(a.ldapUserBaseDn||a.ldapBaseDn);return{enabled:!0===a.ldapEnabled,url:h(a.ldapUrl),bindDn:h(a.ldapBindDn),bindPassword:a.ldapBindPassword||"",baseDn:b,userBaseDn:b,userSearchFilter:h(a.ldapUserSearchFilter)||e,userNameAttribute:h(a.ldapUserNameAttribute)||"sAMAccountName",userDisplayAttribute:h(a.ldapUserDisplayAttribute)||"displayName",userEmailAttribute:h(a.ldapUserEmailAttribute)||"mail",allowedUsers:i(a.ldapAllowedUsers),allowAnyUser:!0===a.ldapAllowAnyUser,loginAllowedGroupDn:h(a.ldapLoginAllowedGroupDn),adminGroupDn:h(a.ldapAdminGroupDn),monitorAdminGroupDn:h(a.ldapMonitorAdminGroupDn),aiGatewaysMonitorsGroupDn:h(a.ldapAiGatewaysMonitorsGroupDn),nestedGroups:!1!==a.ldapNestedGroups,tlsRejectUnauthorized:function(a,b=!1){return null==a||""===a?b:!0===a||"true"===a}(a.ldapTlsRejectUnauthorized,!0),connectTimeoutMs:Number(a.ldapConnectTimeoutMs||8e3)}}function n(a,{requirePassword:b=!0}={}){if(!a.enabled)throw Error("LDAP login is disabled.");if(!a.url)throw Error("LDAP URL is required.");if(!a.userBaseDn)throw Error("LDAP User Base DN is required.");if(!a.bindDn)throw Error("LDAP Bind DN is required.");if(b&&!a.bindPassword)throw Error("LDAP Bind password is required.")}async function o(a,b){let c=new d.Kj({url:a.url,timeout:a.connectTimeoutMs,connectTimeout:a.connectTimeoutMs,tlsOptions:{rejectUnauthorized:!1!==a.tlsRejectUnauthorized}});try{return await c.bind(a.bindDn,a.bindPassword||""),await b(c)}finally{try{await c.unbind()}catch{}}}function p(a,b){let c=a?.[b];return Array.isArray(c)?c[0]||"":c||""}function q(a,b){let c=a?.[b];return Array.isArray(c)?c.map(String).filter(Boolean):c?[String(c)]:[]}function r(a,b){let c=b.userNameAttribute||"sAMAccountName",d=b.userDisplayAttribute||"displayName",e=b.userEmailAttribute||"mail",f=p(a,c)||p(a,"sAMAccountName")||p(a,"userPrincipalName")||p(a,"mail")||a.dn;return{dn:a.dn,username:f,displayName:p(a,d)||p(a,"displayName")||p(a,"cn")||f,email:p(a,e)||p(a,"mail")||p(a,"userPrincipalName")||"",userPrincipalName:p(a,"userPrincipalName")||"",sAMAccountName:p(a,"sAMAccountName")||"",memberOf:q(a,"memberOf")}}function s(a,b={}){let c=a.allowedUsers.map(k).filter(Boolean);return 0!==c.length&&(function(a={}){return[a.username,a.email,a.displayName,a.userPrincipalName,a.sAMAccountName,a.dn].map(k).filter(Boolean)})(b).some(a=>c.includes(a))}async function t(a,b,c){var d;let g,i,k=(d=b.userSearchFilter,g=h(d)||e,i=l(c),g.replaceAll("{{username}}",i).replaceAll("{username}",i));return(await a.search(b.userBaseDn,{scope:"sub",filter:k,sizeLimit:1,attributes:j([...f,b.userNameAttribute,b.userDisplayAttribute,b.userEmailAttribute])})).searchEntries[0]||null}async function u(a,b,c,d){if(!b.nestedGroups)return!1;try{let e=`(&(distinguishedName=${l(c)})(memberOf:${g}:=${l(d)}))`;return(await a.search(b.userBaseDn,{scope:"sub",filter:e,sizeLimit:1,attributes:["dn"]})).searchEntries.length>0}catch{return!1}}async function v(a,b){try{let c=(await a.search(b,{scope:"base",filter:"(objectClass=*)",sizeLimit:1,attributes:["member","uniqueMember"]})).searchEntries[0]||{};return j([...q(c,"member"),...q(c,"uniqueMember")])}catch{return[]}}async function w(a,b,c,d){let e=h(d);if(!e)return!1;let f=h(c?.dn);return!!f&&(!!(q(c,"memberOf").map(k).includes(k(e))||await u(a,b,f,e))||(await v(a,e)).map(k).includes(k(f)))}async function x(a,b,c,d){let e=b.userNameAttribute||"sAMAccountName",h=b.userDisplayAttribute||"displayName",i=b.userEmailAttribute||"mail",k=String(c||"").trim(),m=l(k||"*"),n=k?`(|(${e}=*${m}*)(${h}=*${m}*)(${i}=*${m}*)(userPrincipalName=*${m}*)(sAMAccountName=*${m}*))`:"(|(sAMAccountName=*)(userPrincipalName=*)(mail=*))",o=b.nestedGroups?`(memberOf:${g}:=${l(d)})`:`(memberOf=${l(d)})`,p=`(&(&(objectCategory=person)(objectClass=user)(!(objectClass=computer))(!(userAccountControl:1.2.840.113556.1.4.803:=2)))${n}${o})`;return(await a.search(b.userBaseDn,{scope:"sub",filter:p,sizeLimit:100,attributes:j([...f,e,h,i])})).searchEntries.map(a=>r(a,b))}async function y(a,b,c,d){let e=await v(a,d),g=[];for(let d of e.slice(0,200))try{let e=(await a.search(d,{scope:"base",filter:"(objectClass=*)",sizeLimit:1,attributes:j([...f,b.userNameAttribute,b.userDisplayAttribute,b.userEmailAttribute])})).searchEntries[0];if(e?.dn){let a=r(e,b);(function(a,b){let c=k(b);return!c||[a.username,a.displayName,a.email,a.userPrincipalName,a.sAMAccountName,a.dn].map(k).some(a=>a.includes(c))})(a,c)&&g.push(a)}}catch{}return g}function z(a={}){let b=m(a);return!!(b.enabled&&b.url&&b.bindDn&&b.bindPassword&&b.userBaseDn)}function A(a={}){let b=m(a);return{ldapEnabled:b.enabled,ldapUrl:b.url,ldapBindDn:b.bindDn,ldapBaseDn:b.userBaseDn,ldapUserBaseDn:b.userBaseDn,ldapUserSearchFilter:b.userSearchFilter,ldapUserNameAttribute:b.userNameAttribute,ldapUserDisplayAttribute:b.userDisplayAttribute,ldapUserEmailAttribute:b.userEmailAttribute,ldapLoginAllowedGroupDn:b.loginAllowedGroupDn,ldapAdminGroupDn:b.adminGroupDn,ldapMonitorAdminGroupDn:b.monitorAdminGroupDn,ldapAiGatewaysMonitorsGroupDn:b.aiGatewaysMonitorsGroupDn,ldapNestedGroups:b.nestedGroups,ldapAllowedUsers:b.allowedUsers,ldapAllowAnyUser:b.allowAnyUser,ldapTlsRejectUnauthorized:b.tlsRejectUnauthorized,ldapConnectTimeoutMs:b.connectTimeoutMs,ldapHasBindPassword:!!a.ldapBindPassword,ldapConfigured:z(a)}}function B(a={}){let b={};for(let c of["ldapUrl","ldapBindDn","ldapBaseDn","ldapUserBaseDn","ldapUserSearchFilter","ldapUserNameAttribute","ldapUserDisplayAttribute","ldapUserEmailAttribute","ldapLoginAllowedGroupDn","ldapAdminGroupDn","ldapMonitorAdminGroupDn","ldapAiGatewaysMonitorsGroupDn"])Object.prototype.hasOwnProperty.call(a,c)&&(b[c]=h(a[c]));if(Object.prototype.hasOwnProperty.call(b,"ldapUserBaseDn")&&(b.ldapBaseDn=b.ldapUserBaseDn),Object.prototype.hasOwnProperty.call(a,"ldapEnabled")&&(b.ldapEnabled=!0===a.ldapEnabled),Object.prototype.hasOwnProperty.call(a,"ldapBindPassword")){let c=String(a.ldapBindPassword||"");c&&(b.ldapBindPassword=c)}if(Object.prototype.hasOwnProperty.call(a,"ldapClearBindPassword")&&!0===a.ldapClearBindPassword&&(b.ldapBindPassword=""),Object.prototype.hasOwnProperty.call(a,"ldapAllowedUsers")&&(b.ldapAllowedUsers=i(a.ldapAllowedUsers)),Object.prototype.hasOwnProperty.call(a,"ldapAllowAnyUser")&&(b.ldapAllowAnyUser=!0===a.ldapAllowAnyUser),Object.prototype.hasOwnProperty.call(a,"ldapNestedGroups")&&(b.ldapNestedGroups=!1!==a.ldapNestedGroups),Object.prototype.hasOwnProperty.call(a,"ldapTlsRejectUnauthorized")&&(b.ldapTlsRejectUnauthorized=!1!==a.ldapTlsRejectUnauthorized),Object.prototype.hasOwnProperty.call(a,"ldapConnectTimeoutMs")){let c=Number(a.ldapConnectTimeoutMs);b.ldapConnectTimeoutMs=Number.isFinite(c)&&c>0?Math.min(c,3e4):8e3}return b}async function C(a={}){let b=m(a);return n(b),await o(b,async a=>{let c=await a.search(b.userBaseDn,{scope:"sub",filter:"(objectClass=*)",sizeLimit:1,attributes:["dn"]}),d=!0,e=!0,f=!0,g=!0;return b.loginAllowedGroupDn&&(d=(await v(a,b.loginAllowedGroupDn)).length>=0),b.adminGroupDn&&(e=(await v(a,b.adminGroupDn)).length>=0),b.monitorAdminGroupDn&&(f=(await v(a,b.monitorAdminGroupDn)).length>=0),b.aiGatewaysMonitorsGroupDn&&(g=(await v(a,b.aiGatewaysMonitorsGroupDn)).length>=0),{ok:!0,message:`LDAP bind and user base search OK. Found ${c.searchEntries.length} object(s).${b.loginAllowedGroupDn?" Login group DN is readable.":""}${b.adminGroupDn?" Admin group DN is readable.":""}${b.monitorAdminGroupDn?" Monitor admin group DN is readable.":""}${b.aiGatewaysMonitorsGroupDn?" AI Gateways monitors group DN is readable.":""}`,loginGroupOk:d,adminGroupOk:e,monitorAdminGroupOk:f,aiGatewaysMonitorsGroupOk:g}})}async function D(a={},b=""){let c=m(a);return n(c),await o(c,async a=>{if(c.loginAllowedGroupDn){let d=await x(a,c,b,c.loginAllowedGroupDn).catch(()=>[]);return d.length>0?d:await y(a,c,b,c.loginAllowedGroupDn)}let d=c.userNameAttribute||"sAMAccountName",e=c.userDisplayAttribute||"displayName",g=c.userEmailAttribute||"mail",h=String(b||"").trim(),i=l(h||"*"),k=h?`(|(${d}=*${i}*)(${e}=*${i}*)(${g}=*${i}*)(userPrincipalName=*${i}*)(sAMAccountName=*${i}*))`:"(|(sAMAccountName=*)(userPrincipalName=*)(mail=*))",m=`(&(&(objectCategory=person)(objectClass=user)(!(objectClass=computer))(!(userAccountControl:1.2.840.113556.1.4.803:=2)))${k})`;return(await a.search(c.userBaseDn,{scope:"sub",filter:m,sizeLimit:100,attributes:j([...f,d,e,g])})).searchEntries.map(a=>r(a,c))})}async function E(a,b,c,d=[]){let e=[...new Set((d||[]).map(a=>h(a)).filter(Boolean))];if(!e.length)return[];let f=[];for(let d of e)try{await w(a,b,c,d)&&f.push(d)}catch{}return f}async function F(a={},b,c,{groupDns:e=[]}={}){let f=m(a);n(f);let g=h(b),i=String(c||"");if(!g)throw Error("LDAP username is required.");if(!i)throw Error("LDAP password is required.");return await o(f,async a=>{let b=await t(a,f,g);if(!b?.dn)throw Error("LDAP user was not found.");let c=new d.Kj({url:f.url,timeout:f.connectTimeoutMs,connectTimeout:f.connectTimeoutMs,tlsOptions:{rejectUnauthorized:!1!==f.tlsRejectUnauthorized}});try{await c.bind(b.dn,i)}finally{try{await c.unbind()}catch{}}let h=r(b,f),j=f.loginAllowedGroupDn;if(j){if(!await w(a,f,b,j))throw Error("This LDAP user is not a member of the allowed login group.")}else if(!f.allowAnyUser&&f.allowedUsers.length>0&&!s(f,h))throw Error("This LDAP user is not allowed to access the dashboard.");let k=!!f.adminGroupDn&&await w(a,f,b,f.adminGroupDn),l=s(f,h),m=k||l,n=!m&&!!f.monitorAdminGroupDn&&await w(a,f,b,f.monitorAdminGroupDn),o=!m&&!n&&!!f.aiGatewaysMonitorsGroupDn&&await w(a,f,b,f.aiGatewaysMonitorsGroupDn),p=await E(a,f,b,e);return{...h,dlpGroups:p,isLoginAllowed:!0,isAdmin:m,isMonitorAdmin:n,isAiGatewaysMonitor:o,adminSource:k?"ldap-admin-group":l?"manual-admin-list":"none",monitorAdminSource:n?"ldap-monitor-admin-group":"none",aiGatewaysMonitorSource:o?"ldap-ai-gateways-monitors-group":"none"}})}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=6811,exports.ids=[6811],exports.modules={15626:(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.startsWith("workos:")?b:`workos:${b}`:""}(a))?`Bearer ${c}`:"",g={"HTTP-Referer":"https://cline.bot","X-Title":"Cline","User-Agent":`Bluerouter/${d}`,"X-PLATFORM":process.platform||"unknown","X-PLATFORM-VERSION":process.version||"unknown","X-CLIENT-TYPE":"bluerouter","X-CLIENT-VERSION":d,"X-CORE-VERSION":d,"X-IS-MULTIROOT":"false",...b};return f&&(g.Authorization=f),g}},30869:(a,b,c)=>{c.d(b,{UY:()=>h,X3:()=>i,eh:()=>f.eh,fg:()=>e.fg,h0:()=>g});var d=c(39006),e=c(75681),f=c(81329);d.rE;let g={npmPackageName:"@jheavenknows/bluerouter",installCmd:"npm i -g @jheavenknows/bluerouter",installCmdLatest:"npm install -g @jheavenknows/bluerouter@latest",shutdownCountdownSec:3,exitDelayMs:500,statusPort:20129,statusPollIntervalMs:1e3,statusLogTailLines:8,installRetries:3,installRetryDelayMs:5e3,lingerAfterDoneMs:3e4,waitForExitMinMs:5e3,waitForExitMaxMs:2e4,waitForExitCheckMs:500,appPort:20128},h={maxLines:200,pollIntervalMs:1e3},i={openrouter:"https://openrouter.ai/api/v1/chat/completions",glm:"https://api.z.ai/api/anthropic/v1/messages","glm-cn":"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",kimi:"https://api.kimi.com/coding/v1/messages",minimax:"https://api.minimax.io/anthropic/v1/messages","minimax-cn":"https://api.minimaxi.com/anthropic/v1/messages",alicode:"https://coding.dashscope.aliyuncs.com/v1/chat/completions","alicode-intl":"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions","alims-intl":"https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions","volcengine-ark":"https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions",byteplus:"https://ark.ap-southeast.bytepluses.com/api/coding/v3/chat/completions",openai:"https://api.openai.com/v1/chat/completions","vercel-ai-gateway":"https://ai-gateway.vercel.sh/v1/chat/completions",anthropic:"https://api.anthropic.com/v1/messages",gemini:"https://generativelanguage.googleapis.com/v1beta/models",ollama:"https://ollama.com/api/chat","ollama-local":"http://localhost:11434/api/chat"}},39006:a=>{a.exports={rE:"5.5.4"}},66811:(a,b,c)=>{c.d(b,{F:()=>s});var d=c(89718),e=c(39326),f=c(74926),g=c(75681),h=c(30869),i=c(44404),j=c(35024),k=c(92990),l=c(15626);let m={claude:{checkExpiry:!0,refreshable:!0},codex:{url:"https://chatgpt.com/backend-api/codex/responses",method:"POST",authHeader:"Authorization",authPrefix:"Bearer ",extraHeaders:{"Content-Type":"application/json",originator:"codex-cli","User-Agent":"codex-cli/1.0.18 (macOS; arm64)"},body:JSON.stringify({model:"gpt-5.3-codex",input:[],stream:!1,store:!1}),acceptStatuses:[400],refreshable:!0},"gemini-cli":{url:"https://www.googleapis.com/oauth2/v1/userinfo?alt=json",method:"GET",authHeader:"Authorization",authPrefix:"Bearer ",refreshable:!0},antigravity:{url:"https://www.googleapis.com/oauth2/v1/userinfo?alt=json",method:"GET",authHeader:"Authorization",authPrefix:"Bearer ",refreshable:!0},github:{url:"https://api.github.com/user",method:"GET",authHeader:"Authorization",authPrefix:"Bearer ",extraHeaders:{"User-Agent":"Bluerouter",Accept:"application/vnd.github+json"}},iflow:{buildUrl:a=>`https://iflow.cn/api/oauth/getUserInfo?accessToken=${encodeURIComponent(a)}`,method:"GET",noAuth:!0},qwen:{checkExpiry:!0,refreshable:!0},kiro:{checkExpiry:!0,refreshable:!0},"kimi-coding":{checkExpiry:!0,refreshable:!1},cursor:{tokenExists:!0},kilocode:{url:`${k.MZ.apiBaseUrl}/api/profile`,method:"GET",authHeader:"Authorization",authPrefix:"Bearer "},cline:{refreshable:!0},gitlab:{url:"https://gitlab.com/api/v4/user",method:"GET",authHeader:"Authorization",authPrefix:"Bearer "},codebuddy:{tokenExists:!0}};async function n(a){return await fetch("https://api.cline.bot/api/v1/users/me",{method:"GET",headers:(0,l.w$)(a,{Accept:"application/json"})})}async function o(a){let b=a.provider,c=a.refreshToken;if(!c)return null;try{if("gemini-cli"===b||"antigravity"===b){let a="gemini-cli"===b?k.LT:k.YT,d=await fetch("https://oauth2.googleapis.com/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:a.clientId,client_secret:a.clientSecret,grant_type:"refresh_token",refresh_token:c})});if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,expiresIn:e.expires_in,refreshToken:e.refresh_token||c}}if("codex"===b){let a=await fetch(k.DI.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"refresh_token",client_id:k.DI.clientId,refresh_token:c})});if(!a.ok)return null;let b=await a.json();return{accessToken:b.access_token,expiresIn:b.expires_in,refreshToken:b.refresh_token||c}}if("claude"===b){let a=await fetch(k.OV.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"refresh_token",refresh_token:c,client_id:k.OV.clientId})});if(!a.ok)return null;let b=await a.json();return{accessToken:b.access_token,expiresIn:b.expires_in,refreshToken:b.refresh_token||c}}if("kiro"===b){let b=a.providerSpecificData||{},d=b.clientId||a.clientId,e=b.clientSecret||a.clientSecret,f=b.region||a.region;if(d&&e){let a=`https://oidc.${f||"us-east-1"}.amazonaws.com/token`,b=await fetch(a,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({clientId:d,clientSecret:e,refreshToken:c,grantType:"refresh_token"})});if(!b.ok)return null;let g=await b.json();return{accessToken:g.accessToken,expiresIn:g.expiresIn||3600,refreshToken:g.refreshToken||c}}let g=await fetch(k.Tx.socialRefreshUrl,{method:"POST",headers:{"Content-Type":"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:c})});if(!g.ok)return null;let h=await g.json();return{accessToken:h.accessToken,expiresIn:h.expiresIn||3600,refreshToken:h.refreshToken||c}}if("qwen"===b){let a=await fetch(k.Hp.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:c,client_id:k.Hp.clientId})});if(!a.ok)return null;let b=await a.json();return{accessToken:b.access_token,expiresIn:b.expires_in,refreshToken:b.refresh_token||c}}if("cline"===b){let a=await fetch(k.lB.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:c,grantType:"refresh_token",clientType:"extension"})});if(!a.ok)return null;let b=await a.json(),d=b?.data||b,e=d?.expiresAt?Math.max(1,Math.floor((new Date(d.expiresAt).getTime()-Date.now())/1e3)):3600;return{accessToken:d?.accessToken,expiresIn:e,refreshToken:d?.refreshToken||c}}return null}catch(a){return console.log(`Error refreshing ${b} token:`,a.message),null}}async function p(a,b=null){var c;let d=m[a.provider];if(!d)return{valid:!1,error:"Provider test not supported",refreshed:!1};if(!a.accessToken)return{valid:!1,error:"No access token",refreshed:!1};if(d.tokenExists)return{valid:!0,error:null,refreshed:!1,newTokens:null};let e=a.accessToken,f=!1,g=null,h=!!(c=a).expiresAt&&new Date(c.expiresAt).getTime()<=Date.now()+3e5;if(d.refreshable&&h&&a.refreshToken){let b=await o(a);if(!b)return{valid:!1,error:"Token expired and refresh failed",refreshed:!1};e=b.accessToken,f=!0,g=b}if(d.checkExpiry)return f?{valid:!0,error:null,refreshed:f,newTokens:g}:h?{valid:!1,error:"Token expired",refreshed:!1}:{valid:!0,error:null,refreshed:!1,newTokens:null};if("cline"===a.provider){let b=async a=>{let b=await n(a);return b.ok?{valid:!0,error:null,refreshed:f,newTokens:g}:401===b.status?{valid:!1,error:"Token invalid or revoked",refreshed:f}:403===b.status?{valid:!1,error:"Access denied",refreshed:f}:{valid:!1,error:`API returned ${b.status}`,refreshed:f}},c=await b(e);if(c.valid||"Token invalid or revoked"!==c.error||!a.refreshToken)return c;let d=await o(a);return d?.accessToken?(f=!0,g=d,e=d.accessToken,await b(e)):{valid:!1,error:"Token invalid or revoked",refreshed:!1}}try{let c=d.buildUrl?d.buildUrl(e):d.url,h=d.noAuth?{...d.extraHeaders}:{[d.authHeader]:`${d.authPrefix}${e}`,...d.extraHeaders},i={method:d.method,headers:h};d.body&&(i.body=d.body);let j=await q(c,i,b);if(j.ok||d.acceptStatuses&&d.acceptStatuses.includes(j.status))return{valid:!0,error:null,refreshed:f,newTokens:g};if(401===j.status&&d.refreshable&&!f&&a.refreshToken){let e=await o(a);if(e){let a=d.buildUrl?d.buildUrl(e.accessToken):c,f=d.noAuth?{...d.extraHeaders}:{[d.authHeader]:`${d.authPrefix}${e.accessToken}`,...d.extraHeaders},g={method:d.method,headers:f};d.body&&(g.body=d.body);let h=await q(a,g,b);if(h.ok||d.acceptStatuses&&d.acceptStatuses.includes(h.status))return{valid:!0,error:null,refreshed:!0,newTokens:e}}return{valid:!1,error:"Token invalid or revoked",refreshed:!1}}if(401===j.status)return{valid:!1,error:"Token invalid or revoked",refreshed:f};if(403===j.status)return{valid:!1,error:"Access denied",refreshed:f};return{valid:!1,error:`API returned ${j.status}`,refreshed:f}}catch(a){return{valid:!1,error:a.message,refreshed:f}}}async function q(a,b={},d=null){if(d?.vercelRelayUrl){let{proxyAwareFetch:e}=await c.e(9609).then(c.bind(c,39609));return e(a,b,{vercelRelayUrl:d.vercelRelayUrl})}if(!d?.connectionProxyEnabled||!d?.connectionProxyUrl)return fetch(a,b);let{proxyAwareFetch:e}=await c.e(9609).then(c.bind(c,39609));return e(a,b,{connectionProxyEnabled:!0,connectionProxyUrl:d.connectionProxyUrl,connectionNoProxy:d.connectionNoProxy||""})}async function r(a,b=null){if((0,g.mq)(a.provider)){let c=a.providerSpecificData?.baseUrl;if(!c)return{valid:!1,error:"Missing base URL"};try{let d=await q(`${c.replace(/\/$/,"")}/models`,{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:d.ok,error:d.ok?null:"Invalid API key or base URL"}}catch(a){return{valid:!1,error:a.message}}}if((0,g.gb)(a.provider)){let c=a.providerSpecificData?.baseUrl;if(!c)return{valid:!1,error:"Missing base URL"};try{(c=c.replace(/\/$/,"")).endsWith("/messages")&&(c=c.slice(0,-9));let d=await q(`${c}/models`,{headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01",Authorization:`Bearer ${a.apiKey}`}},b);return{valid:d.ok,error:d.ok?null:"Invalid API key or base URL"}}catch(a){return{valid:!1,error:a.message}}}try{switch(a.provider){case"cloudflare-ai":{let c=(a.providerSpecificData||{}).accountId;if(!c)return{valid:!1,error:"Missing Account ID"};let d=`https://api.cloudflare.com/client/v4/accounts/${c}/ai/v1/chat/completions`,e=await q(d,{method:"POST",headers:{Authorization:`Bearer ${a.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify({model:(0,i.fZ)("cloudflare-ai"),messages:[{role:"user",content:"test"}],max_tokens:1})},b),f=401!==e.status&&403!==e.status&&404!==e.status;return{valid:f,error:f?null:"Invalid API token or Account ID"}}case"azure":{let c=a.providerSpecificData||{},d=(c.azureEndpoint||"").replace(/\/$/,""),e=c.deployment||"gpt-4",f=c.apiVersion||"2024-10-01-preview",g=`${d}/openai/deployments/${e}/chat/completions?api-version=${f}`,h={"api-key":a.apiKey,"Content-Type":"application/json"};c.organization&&(h["OpenAI-Organization"]=c.organization);let i=await q(g,{method:"POST",headers:h,body:JSON.stringify({messages:[{role:"user",content:"test"}],max_completion_tokens:1})},b),j=401!==i.status&&403!==i.status;return{valid:j,error:j?null:"Invalid API key or Azure configuration"}}case"openai":{let c=await q("https://api.openai.com/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"vercel-ai-gateway":{let c=await q("https://ai-gateway.vercel.sh/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"anthropic":{let c=await q("https://api.anthropic.com/v1/messages",{method:"POST",headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01","content-type":"application/json"},body:JSON.stringify({model:"claude-3-haiku-20240307",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"gemini":{let c=await q(`https://generativelanguage.googleapis.com/v1/models?key=${a.apiKey}`,{},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"openrouter":{let c=await q("https://openrouter.ai/api/v1/auth/key",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"glm":{let c=await q("https://api.z.ai/api/anthropic/v1/messages",{method:"POST",headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01","content-type":"application/json"},body:JSON.stringify({model:"glm-4.7",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"glm-cn":{let c=await q("https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",{method:"POST",headers:{Authorization:`Bearer ${a.apiKey}`,"content-type":"application/json"},body:JSON.stringify({model:"glm-4.7",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"minimax":case"minimax-cn":{let c=await q({minimax:"https://api.minimax.io/anthropic/v1/messages","minimax-cn":"https://api.minimaxi.com/anthropic/v1/messages"}[a.provider],{method:"POST",headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01","content-type":"application/json"},body:JSON.stringify({model:"minimax-m2",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"kimi":{let c=await q("https://api.kimi.com/coding/v1/messages",{method:"POST",headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01","content-type":"application/json"},body:JSON.stringify({model:"kimi-latest",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"alicode":case"alicode-intl":case"alims-intl":{let c="alicode-intl"===a.provider?"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions":"alims-intl"===a.provider?"https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions":"https://coding.dashscope.aliyuncs.com/v1/chat/completions",d=await q(c,{method:"POST",headers:{Authorization:`Bearer ${a.apiKey}`,"content-type":"application/json"},body:JSON.stringify({model:(0,i.fZ)(a.provider),max_tokens:1,messages:[{role:"user",content:"test"}]})},b),e=401!==d.status&&403!==d.status;return{valid:e,error:e?null:"Invalid API key"}}case"volcengine-ark":case"byteplus":{let c=await q(h.X3[a.provider],{method:"POST",headers:{Authorization:`Bearer ${a.apiKey}`,"content-type":"application/json"},body:JSON.stringify({model:(0,i.fZ)(a.provider),max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"deepseek":{let c=await q("https://api.deepseek.com/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"groq":{let c=await q("https://api.groq.com/openai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"mistral":{let c=await q("https://api.mistral.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"xai":{let c=await q("https://api.x.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"nvidia":{let c=await q("https://integrate.api.nvidia.com/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"perplexity":{let c=await q("https://api.perplexity.ai/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"together":{let c=await q("https://api.together.xyz/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"fireworks":{let c=await q("https://api.fireworks.ai/inference/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"cerebras":{let c=await q("https://api.cerebras.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"cohere":{let c=await q("https://api.cohere.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"nebius":{let c=await q("https://api.studio.nebius.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"siliconflow":{let c=await q("https://api.siliconflow.cn/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"hyperbolic":{let c=await q("https://api.hyperbolic.xyz/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"ollama":{let b=await fetch("https://ollama.com/api/tags",{headers:{Authorization:`Bearer ${a.apiKey}`}});return{valid:b.ok,error:b.ok?null:"Invalid API key"}}case"ollama-local":{let b=(0,j.Ak)(a),c=await fetch(`${b}/api/tags`);return{valid:c.ok,error:c.ok?null:`Ollama not reachable at ${b}`}}case"deepgram":{let c=await q("https://api.deepgram.com/v1/projects",{headers:{Authorization:`Token ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"assemblyai":{let c=await q("https://api.assemblyai.com/v1/account",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"nanobanana":{let c=await q("https://api.nanobananaapi.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"fal-ai":{let c=await q("https://api.fal.ai/v1/models?limit=1",{headers:{Authorization:`Key ${a.apiKey}`}},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"chutes":{let c=await q("https://llm.chutes.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"grok-web":{let c=a.apiKey.startsWith("sso=")?a.apiKey.slice(4):a.apiKey,d=a=>Array.from(crypto.getRandomValues(new Uint8Array(a)),a=>a.toString(16).padStart(2,"0")).join(""),e=Buffer.from("e:TypeError: Cannot read properties of null (reading 'children')").toString("base64"),f=await q("https://grok.com/rest/app-chat/conversations/new",{method:"POST",headers:{Accept:"*/*","Content-Type":"application/json",Cookie:`sso=${c}`,Origin:"https://grok.com",Referer:"https://grok.com/","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36","x-statsig-id":e,"x-xai-request-id":crypto.randomUUID(),traceparent:`00-${d(16)}-${d(8)}-00`},body:JSON.stringify({temporary:!0,modelName:"grok-4",message:"ping",fileAttachments:[],imageAttachments:[],disableSearch:!1,enableImageGeneration:!1,sendFinalMetadata:!0})},b),g=401!==f.status&&403!==f.status;return{valid:g,error:g?null:"Invalid SSO cookie"}}case"perplexity-web":{let c=a.apiKey;c.startsWith("__Secure-next-auth.session-token=")&&(c=c.slice(33));let d=await q("https://www.perplexity.ai/api/auth/session",{method:"GET",headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36",Cookie:`__Secure-next-auth.session-token=${c}`}},b);if(!d.ok)return{valid:!1,error:"Invalid session cookie"};let e=await d.json().catch(()=>null),f=!!(e&&e.user);return{valid:f,error:f?null:"Session expired — re-paste cookie"}}default:return{valid:!1,error:"Provider test not supported"}}}catch(a){return{valid:!1,error:a.message}}}async function s(a){let b,c=await (0,d.getProviderConnectionById)(a);if(!c)return{valid:!1,error:"Connection not found",latencyMs:0,testedAt:new Date().toISOString()};let g=await (0,e.B)(c.providerSpecificData||{});if(g.connectionProxyEnabled&&g.connectionProxyUrl&&!g.vercelRelayUrl){let b=await (0,f.C)({proxyUrl:g.connectionProxyUrl});if(!b.ok){let c=b.error||`Proxy test failed with status ${b.status}`;return await (0,d.updateProviderConnection)(a,{testStatus:"error",lastError:c,lastErrorAt:new Date().toISOString()}),{valid:!1,error:c,latencyMs:0,testedAt:new Date().toISOString()}}}let h=Date.now();b="apikey"===c.authType||"cookie"===c.authType?await r(c,g):await p(c,g);let i=Date.now()-h,j={testStatus:b.valid?"active":"error",lastError:b.valid?null:b.error,lastErrorAt:b.valid?null:new Date().toISOString()};return b.refreshed&&b.newTokens&&(j.accessToken=b.newTokens.accessToken,b.newTokens.refreshToken&&(j.refreshToken=b.newTokens.refreshToken),b.newTokens.expiresIn&&(j.expiresAt=new Date(Date.now()+1e3*b.newTokens.expiresIn).toISOString())),await (0,d.updateProviderConnection)(a,j),{valid:b.valid,error:b.error,latencyMs:i,testedAt:new Date().toISOString()}}},74926:(a,b,c)=>{c.d(b,{C:()=>f});var d=c(47774);function e(a){return null==a?"":String(a).trim()}async function f({proxyUrl:a,testUrl:b,timeoutMs:c}={}){let g,h=e(a);if(!h)return{ok:!1,status:400,error:"proxyUrl is required"};let i=e(b)||"https://google.com/",j=Number(c),k=Number.isFinite(j)&&j>0?Math.min(j,3e4):8e3;try{try{g=new d.ProxyAgent({uri:h})}catch(a){return{ok:!1,status:400,error:`Invalid proxy URL: ${a?.message||String(a)}`}}let a=new AbortController,b=Date.now(),c=setTimeout(()=>a.abort(),k);try{let c=await (0,d.hd)(i,{method:"HEAD",dispatcher:g,signal:a.signal,headers:{"User-Agent":"Bluerouter"}});return{ok:c.ok,status:c.status,statusText:c.statusText,url:i,elapsedMs:Date.now()-b}}catch(b){let a=b?.name==="AbortError"?"Proxy test timed out":function(a){if(!a)return"Unknown error";let b=a?.message||String(a),c=a?.cause?.code||a?.code,d=a?.cause?.message;return d&&d!==b?c?`${b}: ${d} (${c})`:`${b}: ${d}`:c&&!b.includes(c)?`${b} (${c})`:b}(b);return{ok:!1,status:500,error:a}}finally{clearTimeout(c)}}finally{try{await g?.close?.()}catch{}}}},92990:(a,b,c)=>{c.d(b,{DI:()=>g,Hp:()=>i,LT:()=>h,MZ:()=>r,Nl:()=>u,Nu:()=>n,OV:()=>f,Tx:()=>o,WN:()=>p,Ww:()=>v,YT:()=>l,ZL:()=>k,cD:()=>m,f7:()=>t,hF:()=>j,lB:()=>s,t:()=>q});var d=c(21820);function e(){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 f={clientId:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",authorizeUrl:"https://claude.ai/oauth/authorize",tokenUrl:"https://api.anthropic.com/v1/oauth/token",scopes:["org:create_api_key","user:profile","user:inference"],codeChallengeMethod:"S256"},g={clientId:"app_EMoamEEZ73f0CkXaXp7hrann",authorizeUrl:"https://auth.openai.com/oauth/authorize",tokenUrl:"https://auth.openai.com/oauth/token",revocationUrl:"https://auth.openai.com/api/accounts/oauth/revoke",scope:"openid profile email offline_access",codeChallengeMethod:"S256",extraParams:{id_token_add_organizations:"true",codex_cli_simplified_flow:"true",originator:"codex_cli_rs"}},h={clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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",authorizeUrl:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",userInfoUrl:"https://www.googleapis.com/oauth2/v1/userinfo",scopes:["https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/userinfo.email","https://www.googleapis.com/auth/userinfo.profile"]},i={clientId:"f0304373b74a44d2b584a3fb70ca9e56",deviceCodeUrl:"https://chat.qwen.ai/api/v1/oauth2/device/code",tokenUrl:"https://chat.qwen.ai/api/v1/oauth2/token",scope:"openid profile email model.completion",codeChallengeMethod:"S256"},j={apiBaseUrl:"https://api2.qoder.sh",deviceTokenUrl:"https://api2.qoder.sh/api/v1/deviceToken/poll",deviceRefreshUrl:"https://api2.qoder.sh/api/v1/deviceToken/refresh",refreshUrl:"https://api2.qoder.sh/api/v3/user/refresh_token",userInfoUrl:"https://api2.qoder.sh/api/v1/userinfo",statusUrl:"https://api2.qoder.sh/api/v3/user/status",loginUrl:"https://qoder.com/login"},k={clientId:"10009311001",clientSecret:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",authorizeUrl:"https://iflow.cn/oauth",tokenUrl:"https://iflow.cn/oauth/token",userInfoUrl:"https://iflow.cn/api/oauth/getUserInfo",extraParams:{loginMethod:"phone",type:"phone"}},l={clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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",authorizeUrl:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",revocationUrl:"https://oauth2.googleapis.com/revoke",userInfoUrl:"https://www.googleapis.com/oauth2/v1/userinfo",scopes:["https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/userinfo.email","https://www.googleapis.com/auth/userinfo.profile","https://www.googleapis.com/auth/cclog","https://www.googleapis.com/auth/experimentsandconfigs"],apiEndpoint:"https://cloudcode-pa.googleapis.com",apiVersion:"v1internal",loadCodeAssistEndpoint:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",onboardUserEndpoint:"https://cloudcode-pa.googleapis.com/v1internal:onboardUser",loadCodeAssistUserAgent:"google-api-nodejs-client/9.15.1",loadCodeAssistApiClient:"google-cloud-sdk vscode_cloudshelleditor/0.1",loadCodeAssistClientMetadata:JSON.stringify({ideType:9,platform:e(),pluginType:2})};function m(){return{ideType:9,platform:e(),pluginType:2}}let n={clientId:"Iv1.b507a08c87ecfe98",deviceCodeUrl:"https://github.com/login/device/code",tokenUrl:"https://github.com/login/oauth/access_token",userInfoUrl:"https://api.github.com/user",scopes:"read:user",apiVersion:"2022-11-28",copilotTokenUrl:"https://api.github.com/copilot_internal/v2/token",userAgent:"GitHubCopilotChat/0.26.7",editorVersion:"vscode/1.85.0",editorPluginVersion:"copilot-chat/0.26.7"},o={ssoOidcEndpoint:"https://oidc.us-east-1.amazonaws.com",registerClientUrl:"https://oidc.us-east-1.amazonaws.com/client/register",deviceAuthUrl:"https://oidc.us-east-1.amazonaws.com/device_authorization",tokenUrl:"https://oidc.us-east-1.amazonaws.com/token",startUrl:"https://view.awsapps.com/start",clientName:"kiro-oauth-client",clientType:"public",scopes:["codewhisperer:completions","codewhisperer:analysis","codewhisperer:conversations"],grantTypes:["urn:ietf:params:oauth:grant-type:device_code","refresh_token"],issuerUrl:"https://identitycenter.amazonaws.com/ssoins-722374e8c3c8e6c6",socialAuthEndpoint:"https://prod.us-east-1.auth.desktop.kiro.dev",socialLoginUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/login",socialTokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/oauth/token",socialRefreshUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authMethods:["builder-id","idc","google","github","import"]},p={apiEndpoint:"https://api2.cursor.sh",chatEndpoint:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",modelsEndpoint:"/aiserver.v1.AiService/GetDefaultModelNudgeData",api3Endpoint:"https://api3.cursor.sh",agentEndpoint:"https://agent.api5.cursor.sh",agentNonPrivacyEndpoint:"https://agentn.api5.cursor.sh",clientVersion:"3.1.0",clientType:"ide",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"},dbKeys:{accessToken:"cursorAuth/accessToken",machineId:"storage.serviceMachineId"}},q={clientId:process.env.KIMI_CODING_OAUTH_CLIENT_ID||"17e5f671-d194-4dfb-9706-5516cb48c098",deviceCodeUrl:"https://auth.kimi.com/api/oauth/device_authorization",tokenUrl:"https://auth.kimi.com/api/oauth/token"},r={apiBaseUrl:"https://api.kilo.ai",initiateUrl:"https://api.kilo.ai/api/device-auth/codes",pollUrlBase:"https://api.kilo.ai/api/device-auth/codes"},s={appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",authorizeUrl:"https://api.cline.bot/api/v1/auth/authorize",tokenExchangeUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},t={defaultBaseUrl:"https://gitlab.com",authorizeUrlPath:"/oauth/authorize",tokenUrlPath:"/oauth/token",userInfoUrlPath:"/api/v4/user",scope:"api read_user",codeChallengeMethod:"S256"},u={baseUrl:"https://copilot.tencent.com",stateUrl:"https://copilot.tencent.com/v2/plugin/auth/state",tokenUrl:"https://copilot.tencent.com/v2/plugin/auth/token",refreshUrl:"https://copilot.tencent.com/v2/plugin/auth/token/refresh",userAgent:"CLI/2.63.2 CodeBuddy/2.63.2",platform:"CLI",pollInterval:5e3},v=3e5}};
|
|
1
|
+
"use strict";exports.id=6811,exports.ids=[6811],exports.modules={15626:(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.startsWith("workos:")?b:`workos:${b}`:""}(a))?`Bearer ${c}`:"",g={"HTTP-Referer":"https://cline.bot","X-Title":"Cline","User-Agent":`Bluerouter/${d}`,"X-PLATFORM":process.platform||"unknown","X-PLATFORM-VERSION":process.version||"unknown","X-CLIENT-TYPE":"bluerouter","X-CLIENT-VERSION":d,"X-CORE-VERSION":d,"X-IS-MULTIROOT":"false",...b};return f&&(g.Authorization=f),g}},30869:(a,b,c)=>{c.d(b,{UY:()=>h,X3:()=>i,eh:()=>f.eh,fg:()=>e.fg,h0:()=>g});var d=c(39006),e=c(75681),f=c(81329);d.rE;let g={npmPackageName:"@jheavenknows/bluerouter",installCmd:"npm i -g @jheavenknows/bluerouter",installCmdLatest:"npm install -g @jheavenknows/bluerouter@latest",shutdownCountdownSec:3,exitDelayMs:500,statusPort:20129,statusPollIntervalMs:1e3,statusLogTailLines:8,installRetries:3,installRetryDelayMs:5e3,lingerAfterDoneMs:3e4,waitForExitMinMs:5e3,waitForExitMaxMs:2e4,waitForExitCheckMs:500,appPort:20128},h={maxLines:200,pollIntervalMs:1e3},i={openrouter:"https://openrouter.ai/api/v1/chat/completions",glm:"https://api.z.ai/api/anthropic/v1/messages","glm-cn":"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",kimi:"https://api.kimi.com/coding/v1/messages",minimax:"https://api.minimax.io/anthropic/v1/messages","minimax-cn":"https://api.minimaxi.com/anthropic/v1/messages",alicode:"https://coding.dashscope.aliyuncs.com/v1/chat/completions","alicode-intl":"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions","alims-intl":"https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions","volcengine-ark":"https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions",byteplus:"https://ark.ap-southeast.bytepluses.com/api/coding/v3/chat/completions",openai:"https://api.openai.com/v1/chat/completions","vercel-ai-gateway":"https://ai-gateway.vercel.sh/v1/chat/completions",anthropic:"https://api.anthropic.com/v1/messages",gemini:"https://generativelanguage.googleapis.com/v1beta/models",ollama:"https://ollama.com/api/chat","ollama-local":"http://localhost:11434/api/chat"}},39006:a=>{a.exports={rE:"5.5.6"}},66811:(a,b,c)=>{c.d(b,{F:()=>s});var d=c(89718),e=c(39326),f=c(74926),g=c(75681),h=c(30869),i=c(44404),j=c(35024),k=c(92990),l=c(15626);let m={claude:{checkExpiry:!0,refreshable:!0},codex:{url:"https://chatgpt.com/backend-api/codex/responses",method:"POST",authHeader:"Authorization",authPrefix:"Bearer ",extraHeaders:{"Content-Type":"application/json",originator:"codex-cli","User-Agent":"codex-cli/1.0.18 (macOS; arm64)"},body:JSON.stringify({model:"gpt-5.3-codex",input:[],stream:!1,store:!1}),acceptStatuses:[400],refreshable:!0},"gemini-cli":{url:"https://www.googleapis.com/oauth2/v1/userinfo?alt=json",method:"GET",authHeader:"Authorization",authPrefix:"Bearer ",refreshable:!0},antigravity:{url:"https://www.googleapis.com/oauth2/v1/userinfo?alt=json",method:"GET",authHeader:"Authorization",authPrefix:"Bearer ",refreshable:!0},github:{url:"https://api.github.com/user",method:"GET",authHeader:"Authorization",authPrefix:"Bearer ",extraHeaders:{"User-Agent":"Bluerouter",Accept:"application/vnd.github+json"}},iflow:{buildUrl:a=>`https://iflow.cn/api/oauth/getUserInfo?accessToken=${encodeURIComponent(a)}`,method:"GET",noAuth:!0},qwen:{checkExpiry:!0,refreshable:!0},kiro:{checkExpiry:!0,refreshable:!0},"kimi-coding":{checkExpiry:!0,refreshable:!1},cursor:{tokenExists:!0},kilocode:{url:`${k.MZ.apiBaseUrl}/api/profile`,method:"GET",authHeader:"Authorization",authPrefix:"Bearer "},cline:{refreshable:!0},gitlab:{url:"https://gitlab.com/api/v4/user",method:"GET",authHeader:"Authorization",authPrefix:"Bearer "},codebuddy:{tokenExists:!0}};async function n(a){return await fetch("https://api.cline.bot/api/v1/users/me",{method:"GET",headers:(0,l.w$)(a,{Accept:"application/json"})})}async function o(a){let b=a.provider,c=a.refreshToken;if(!c)return null;try{if("gemini-cli"===b||"antigravity"===b){let a="gemini-cli"===b?k.LT:k.YT,d=await fetch("https://oauth2.googleapis.com/token",{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({client_id:a.clientId,client_secret:a.clientSecret,grant_type:"refresh_token",refresh_token:c})});if(!d.ok)return null;let e=await d.json();return{accessToken:e.access_token,expiresIn:e.expires_in,refreshToken:e.refresh_token||c}}if("codex"===b){let a=await fetch(k.DI.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"refresh_token",client_id:k.DI.clientId,refresh_token:c})});if(!a.ok)return null;let b=await a.json();return{accessToken:b.access_token,expiresIn:b.expires_in,refreshToken:b.refresh_token||c}}if("claude"===b){let a=await fetch(k.OV.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"refresh_token",refresh_token:c,client_id:k.OV.clientId})});if(!a.ok)return null;let b=await a.json();return{accessToken:b.access_token,expiresIn:b.expires_in,refreshToken:b.refresh_token||c}}if("kiro"===b){let b=a.providerSpecificData||{},d=b.clientId||a.clientId,e=b.clientSecret||a.clientSecret,f=b.region||a.region;if(d&&e){let a=`https://oidc.${f||"us-east-1"}.amazonaws.com/token`,b=await fetch(a,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({clientId:d,clientSecret:e,refreshToken:c,grantType:"refresh_token"})});if(!b.ok)return null;let g=await b.json();return{accessToken:g.accessToken,expiresIn:g.expiresIn||3600,refreshToken:g.refreshToken||c}}let g=await fetch(k.Tx.socialRefreshUrl,{method:"POST",headers:{"Content-Type":"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:c})});if(!g.ok)return null;let h=await g.json();return{accessToken:h.accessToken,expiresIn:h.expiresIn||3600,refreshToken:h.refreshToken||c}}if("qwen"===b){let a=await fetch(k.Hp.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:c,client_id:k.Hp.clientId})});if(!a.ok)return null;let b=await a.json();return{accessToken:b.access_token,expiresIn:b.expires_in,refreshToken:b.refresh_token||c}}if("cline"===b){let a=await fetch(k.lB.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:c,grantType:"refresh_token",clientType:"extension"})});if(!a.ok)return null;let b=await a.json(),d=b?.data||b,e=d?.expiresAt?Math.max(1,Math.floor((new Date(d.expiresAt).getTime()-Date.now())/1e3)):3600;return{accessToken:d?.accessToken,expiresIn:e,refreshToken:d?.refreshToken||c}}return null}catch(a){return console.log(`Error refreshing ${b} token:`,a.message),null}}async function p(a,b=null){var c;let d=m[a.provider];if(!d)return{valid:!1,error:"Provider test not supported",refreshed:!1};if(!a.accessToken)return{valid:!1,error:"No access token",refreshed:!1};if(d.tokenExists)return{valid:!0,error:null,refreshed:!1,newTokens:null};let e=a.accessToken,f=!1,g=null,h=!!(c=a).expiresAt&&new Date(c.expiresAt).getTime()<=Date.now()+3e5;if(d.refreshable&&h&&a.refreshToken){let b=await o(a);if(!b)return{valid:!1,error:"Token expired and refresh failed",refreshed:!1};e=b.accessToken,f=!0,g=b}if(d.checkExpiry)return f?{valid:!0,error:null,refreshed:f,newTokens:g}:h?{valid:!1,error:"Token expired",refreshed:!1}:{valid:!0,error:null,refreshed:!1,newTokens:null};if("cline"===a.provider){let b=async a=>{let b=await n(a);return b.ok?{valid:!0,error:null,refreshed:f,newTokens:g}:401===b.status?{valid:!1,error:"Token invalid or revoked",refreshed:f}:403===b.status?{valid:!1,error:"Access denied",refreshed:f}:{valid:!1,error:`API returned ${b.status}`,refreshed:f}},c=await b(e);if(c.valid||"Token invalid or revoked"!==c.error||!a.refreshToken)return c;let d=await o(a);return d?.accessToken?(f=!0,g=d,e=d.accessToken,await b(e)):{valid:!1,error:"Token invalid or revoked",refreshed:!1}}try{let c=d.buildUrl?d.buildUrl(e):d.url,h=d.noAuth?{...d.extraHeaders}:{[d.authHeader]:`${d.authPrefix}${e}`,...d.extraHeaders},i={method:d.method,headers:h};d.body&&(i.body=d.body);let j=await q(c,i,b);if(j.ok||d.acceptStatuses&&d.acceptStatuses.includes(j.status))return{valid:!0,error:null,refreshed:f,newTokens:g};if(401===j.status&&d.refreshable&&!f&&a.refreshToken){let e=await o(a);if(e){let a=d.buildUrl?d.buildUrl(e.accessToken):c,f=d.noAuth?{...d.extraHeaders}:{[d.authHeader]:`${d.authPrefix}${e.accessToken}`,...d.extraHeaders},g={method:d.method,headers:f};d.body&&(g.body=d.body);let h=await q(a,g,b);if(h.ok||d.acceptStatuses&&d.acceptStatuses.includes(h.status))return{valid:!0,error:null,refreshed:!0,newTokens:e}}return{valid:!1,error:"Token invalid or revoked",refreshed:!1}}if(401===j.status)return{valid:!1,error:"Token invalid or revoked",refreshed:f};if(403===j.status)return{valid:!1,error:"Access denied",refreshed:f};return{valid:!1,error:`API returned ${j.status}`,refreshed:f}}catch(a){return{valid:!1,error:a.message,refreshed:f}}}async function q(a,b={},d=null){if(d?.vercelRelayUrl){let{proxyAwareFetch:e}=await c.e(9609).then(c.bind(c,39609));return e(a,b,{vercelRelayUrl:d.vercelRelayUrl})}if(!d?.connectionProxyEnabled||!d?.connectionProxyUrl)return fetch(a,b);let{proxyAwareFetch:e}=await c.e(9609).then(c.bind(c,39609));return e(a,b,{connectionProxyEnabled:!0,connectionProxyUrl:d.connectionProxyUrl,connectionNoProxy:d.connectionNoProxy||""})}async function r(a,b=null){if((0,g.mq)(a.provider)){let c=a.providerSpecificData?.baseUrl;if(!c)return{valid:!1,error:"Missing base URL"};try{let d=await q(`${c.replace(/\/$/,"")}/models`,{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:d.ok,error:d.ok?null:"Invalid API key or base URL"}}catch(a){return{valid:!1,error:a.message}}}if((0,g.gb)(a.provider)){let c=a.providerSpecificData?.baseUrl;if(!c)return{valid:!1,error:"Missing base URL"};try{(c=c.replace(/\/$/,"")).endsWith("/messages")&&(c=c.slice(0,-9));let d=await q(`${c}/models`,{headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01",Authorization:`Bearer ${a.apiKey}`}},b);return{valid:d.ok,error:d.ok?null:"Invalid API key or base URL"}}catch(a){return{valid:!1,error:a.message}}}try{switch(a.provider){case"cloudflare-ai":{let c=(a.providerSpecificData||{}).accountId;if(!c)return{valid:!1,error:"Missing Account ID"};let d=`https://api.cloudflare.com/client/v4/accounts/${c}/ai/v1/chat/completions`,e=await q(d,{method:"POST",headers:{Authorization:`Bearer ${a.apiKey}`,"Content-Type":"application/json"},body:JSON.stringify({model:(0,i.fZ)("cloudflare-ai"),messages:[{role:"user",content:"test"}],max_tokens:1})},b),f=401!==e.status&&403!==e.status&&404!==e.status;return{valid:f,error:f?null:"Invalid API token or Account ID"}}case"azure":{let c=a.providerSpecificData||{},d=(c.azureEndpoint||"").replace(/\/$/,""),e=c.deployment||"gpt-4",f=c.apiVersion||"2024-10-01-preview",g=`${d}/openai/deployments/${e}/chat/completions?api-version=${f}`,h={"api-key":a.apiKey,"Content-Type":"application/json"};c.organization&&(h["OpenAI-Organization"]=c.organization);let i=await q(g,{method:"POST",headers:h,body:JSON.stringify({messages:[{role:"user",content:"test"}],max_completion_tokens:1})},b),j=401!==i.status&&403!==i.status;return{valid:j,error:j?null:"Invalid API key or Azure configuration"}}case"openai":{let c=await q("https://api.openai.com/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"vercel-ai-gateway":{let c=await q("https://ai-gateway.vercel.sh/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"anthropic":{let c=await q("https://api.anthropic.com/v1/messages",{method:"POST",headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01","content-type":"application/json"},body:JSON.stringify({model:"claude-3-haiku-20240307",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"gemini":{let c=await q(`https://generativelanguage.googleapis.com/v1/models?key=${a.apiKey}`,{},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"openrouter":{let c=await q("https://openrouter.ai/api/v1/auth/key",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"glm":{let c=await q("https://api.z.ai/api/anthropic/v1/messages",{method:"POST",headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01","content-type":"application/json"},body:JSON.stringify({model:"glm-4.7",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"glm-cn":{let c=await q("https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",{method:"POST",headers:{Authorization:`Bearer ${a.apiKey}`,"content-type":"application/json"},body:JSON.stringify({model:"glm-4.7",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"minimax":case"minimax-cn":{let c=await q({minimax:"https://api.minimax.io/anthropic/v1/messages","minimax-cn":"https://api.minimaxi.com/anthropic/v1/messages"}[a.provider],{method:"POST",headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01","content-type":"application/json"},body:JSON.stringify({model:"minimax-m2",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"kimi":{let c=await q("https://api.kimi.com/coding/v1/messages",{method:"POST",headers:{"x-api-key":a.apiKey,"anthropic-version":"2023-06-01","content-type":"application/json"},body:JSON.stringify({model:"kimi-latest",max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"alicode":case"alicode-intl":case"alims-intl":{let c="alicode-intl"===a.provider?"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions":"alims-intl"===a.provider?"https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions":"https://coding.dashscope.aliyuncs.com/v1/chat/completions",d=await q(c,{method:"POST",headers:{Authorization:`Bearer ${a.apiKey}`,"content-type":"application/json"},body:JSON.stringify({model:(0,i.fZ)(a.provider),max_tokens:1,messages:[{role:"user",content:"test"}]})},b),e=401!==d.status&&403!==d.status;return{valid:e,error:e?null:"Invalid API key"}}case"volcengine-ark":case"byteplus":{let c=await q(h.X3[a.provider],{method:"POST",headers:{Authorization:`Bearer ${a.apiKey}`,"content-type":"application/json"},body:JSON.stringify({model:(0,i.fZ)(a.provider),max_tokens:1,messages:[{role:"user",content:"test"}]})},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"deepseek":{let c=await q("https://api.deepseek.com/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"groq":{let c=await q("https://api.groq.com/openai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"mistral":{let c=await q("https://api.mistral.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"xai":{let c=await q("https://api.x.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"nvidia":{let c=await q("https://integrate.api.nvidia.com/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"perplexity":{let c=await q("https://api.perplexity.ai/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"together":{let c=await q("https://api.together.xyz/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"fireworks":{let c=await q("https://api.fireworks.ai/inference/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"cerebras":{let c=await q("https://api.cerebras.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"cohere":{let c=await q("https://api.cohere.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"nebius":{let c=await q("https://api.studio.nebius.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"siliconflow":{let c=await q("https://api.siliconflow.cn/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"hyperbolic":{let c=await q("https://api.hyperbolic.xyz/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"ollama":{let b=await fetch("https://ollama.com/api/tags",{headers:{Authorization:`Bearer ${a.apiKey}`}});return{valid:b.ok,error:b.ok?null:"Invalid API key"}}case"ollama-local":{let b=(0,j.Ak)(a),c=await fetch(`${b}/api/tags`);return{valid:c.ok,error:c.ok?null:`Ollama not reachable at ${b}`}}case"deepgram":{let c=await q("https://api.deepgram.com/v1/projects",{headers:{Authorization:`Token ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"assemblyai":{let c=await q("https://api.assemblyai.com/v1/account",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"nanobanana":{let c=await q("https://api.nanobananaapi.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"fal-ai":{let c=await q("https://api.fal.ai/v1/models?limit=1",{headers:{Authorization:`Key ${a.apiKey}`}},b),d=401!==c.status&&403!==c.status;return{valid:d,error:d?null:"Invalid API key"}}case"chutes":{let c=await q("https://llm.chutes.ai/v1/models",{headers:{Authorization:`Bearer ${a.apiKey}`}},b);return{valid:c.ok,error:c.ok?null:"Invalid API key"}}case"grok-web":{let c=a.apiKey.startsWith("sso=")?a.apiKey.slice(4):a.apiKey,d=a=>Array.from(crypto.getRandomValues(new Uint8Array(a)),a=>a.toString(16).padStart(2,"0")).join(""),e=Buffer.from("e:TypeError: Cannot read properties of null (reading 'children')").toString("base64"),f=await q("https://grok.com/rest/app-chat/conversations/new",{method:"POST",headers:{Accept:"*/*","Content-Type":"application/json",Cookie:`sso=${c}`,Origin:"https://grok.com",Referer:"https://grok.com/","User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36","x-statsig-id":e,"x-xai-request-id":crypto.randomUUID(),traceparent:`00-${d(16)}-${d(8)}-00`},body:JSON.stringify({temporary:!0,modelName:"grok-4",message:"ping",fileAttachments:[],imageAttachments:[],disableSearch:!1,enableImageGeneration:!1,sendFinalMetadata:!0})},b),g=401!==f.status&&403!==f.status;return{valid:g,error:g?null:"Invalid SSO cookie"}}case"perplexity-web":{let c=a.apiKey;c.startsWith("__Secure-next-auth.session-token=")&&(c=c.slice(33));let d=await q("https://www.perplexity.ai/api/auth/session",{method:"GET",headers:{"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36",Cookie:`__Secure-next-auth.session-token=${c}`}},b);if(!d.ok)return{valid:!1,error:"Invalid session cookie"};let e=await d.json().catch(()=>null),f=!!(e&&e.user);return{valid:f,error:f?null:"Session expired — re-paste cookie"}}default:return{valid:!1,error:"Provider test not supported"}}}catch(a){return{valid:!1,error:a.message}}}async function s(a){let b,c=await (0,d.getProviderConnectionById)(a);if(!c)return{valid:!1,error:"Connection not found",latencyMs:0,testedAt:new Date().toISOString()};let g=await (0,e.B)(c.providerSpecificData||{});if(g.connectionProxyEnabled&&g.connectionProxyUrl&&!g.vercelRelayUrl){let b=await (0,f.C)({proxyUrl:g.connectionProxyUrl});if(!b.ok){let c=b.error||`Proxy test failed with status ${b.status}`;return await (0,d.updateProviderConnection)(a,{testStatus:"error",lastError:c,lastErrorAt:new Date().toISOString()}),{valid:!1,error:c,latencyMs:0,testedAt:new Date().toISOString()}}}let h=Date.now();b="apikey"===c.authType||"cookie"===c.authType?await r(c,g):await p(c,g);let i=Date.now()-h,j={testStatus:b.valid?"active":"error",lastError:b.valid?null:b.error,lastErrorAt:b.valid?null:new Date().toISOString()};return b.refreshed&&b.newTokens&&(j.accessToken=b.newTokens.accessToken,b.newTokens.refreshToken&&(j.refreshToken=b.newTokens.refreshToken),b.newTokens.expiresIn&&(j.expiresAt=new Date(Date.now()+1e3*b.newTokens.expiresIn).toISOString())),await (0,d.updateProviderConnection)(a,j),{valid:b.valid,error:b.error,latencyMs:i,testedAt:new Date().toISOString()}}},74926:(a,b,c)=>{c.d(b,{C:()=>f});var d=c(47774);function e(a){return null==a?"":String(a).trim()}async function f({proxyUrl:a,testUrl:b,timeoutMs:c}={}){let g,h=e(a);if(!h)return{ok:!1,status:400,error:"proxyUrl is required"};let i=e(b)||"https://google.com/",j=Number(c),k=Number.isFinite(j)&&j>0?Math.min(j,3e4):8e3;try{try{g=new d.ProxyAgent({uri:h})}catch(a){return{ok:!1,status:400,error:`Invalid proxy URL: ${a?.message||String(a)}`}}let a=new AbortController,b=Date.now(),c=setTimeout(()=>a.abort(),k);try{let c=await (0,d.hd)(i,{method:"HEAD",dispatcher:g,signal:a.signal,headers:{"User-Agent":"Bluerouter"}});return{ok:c.ok,status:c.status,statusText:c.statusText,url:i,elapsedMs:Date.now()-b}}catch(b){let a=b?.name==="AbortError"?"Proxy test timed out":function(a){if(!a)return"Unknown error";let b=a?.message||String(a),c=a?.cause?.code||a?.code,d=a?.cause?.message;return d&&d!==b?c?`${b}: ${d} (${c})`:`${b}: ${d}`:c&&!b.includes(c)?`${b} (${c})`:b}(b);return{ok:!1,status:500,error:a}}finally{clearTimeout(c)}}finally{try{await g?.close?.()}catch{}}}},92990:(a,b,c)=>{c.d(b,{DI:()=>g,Hp:()=>i,LT:()=>h,MZ:()=>r,Nl:()=>u,Nu:()=>n,OV:()=>f,Tx:()=>o,WN:()=>p,Ww:()=>v,YT:()=>l,ZL:()=>k,cD:()=>m,f7:()=>t,hF:()=>j,lB:()=>s,t:()=>q});var d=c(21820);function e(){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 f={clientId:"9d1c250a-e61b-44d9-88ed-5944d1962f5e",authorizeUrl:"https://claude.ai/oauth/authorize",tokenUrl:"https://api.anthropic.com/v1/oauth/token",scopes:["org:create_api_key","user:profile","user:inference"],codeChallengeMethod:"S256"},g={clientId:"app_EMoamEEZ73f0CkXaXp7hrann",authorizeUrl:"https://auth.openai.com/oauth/authorize",tokenUrl:"https://auth.openai.com/oauth/token",revocationUrl:"https://auth.openai.com/api/accounts/oauth/revoke",scope:"openid profile email offline_access",codeChallengeMethod:"S256",extraParams:{id_token_add_organizations:"true",codex_cli_simplified_flow:"true",originator:"codex_cli_rs"}},h={clientId:"681255809395-oo8ft2oprdrnp9e3aqf6av3hmdib135j.apps.googleusercontent.com",clientSecret:"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",authorizeUrl:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",userInfoUrl:"https://www.googleapis.com/oauth2/v1/userinfo",scopes:["https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/userinfo.email","https://www.googleapis.com/auth/userinfo.profile"]},i={clientId:"f0304373b74a44d2b584a3fb70ca9e56",deviceCodeUrl:"https://chat.qwen.ai/api/v1/oauth2/device/code",tokenUrl:"https://chat.qwen.ai/api/v1/oauth2/token",scope:"openid profile email model.completion",codeChallengeMethod:"S256"},j={apiBaseUrl:"https://api2.qoder.sh",deviceTokenUrl:"https://api2.qoder.sh/api/v1/deviceToken/poll",deviceRefreshUrl:"https://api2.qoder.sh/api/v1/deviceToken/refresh",refreshUrl:"https://api2.qoder.sh/api/v3/user/refresh_token",userInfoUrl:"https://api2.qoder.sh/api/v1/userinfo",statusUrl:"https://api2.qoder.sh/api/v3/user/status",loginUrl:"https://qoder.com/login"},k={clientId:"10009311001",clientSecret:"4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW",authorizeUrl:"https://iflow.cn/oauth",tokenUrl:"https://iflow.cn/oauth/token",userInfoUrl:"https://iflow.cn/api/oauth/getUserInfo",extraParams:{loginMethod:"phone",type:"phone"}},l={clientId:"1071006060591-tmhssin2h21lcre235vtolojh4g403ep.apps.googleusercontent.com",clientSecret:"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",authorizeUrl:"https://accounts.google.com/o/oauth2/v2/auth",tokenUrl:"https://oauth2.googleapis.com/token",revocationUrl:"https://oauth2.googleapis.com/revoke",userInfoUrl:"https://www.googleapis.com/oauth2/v1/userinfo",scopes:["https://www.googleapis.com/auth/cloud-platform","https://www.googleapis.com/auth/userinfo.email","https://www.googleapis.com/auth/userinfo.profile","https://www.googleapis.com/auth/cclog","https://www.googleapis.com/auth/experimentsandconfigs"],apiEndpoint:"https://cloudcode-pa.googleapis.com",apiVersion:"v1internal",loadCodeAssistEndpoint:"https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",onboardUserEndpoint:"https://cloudcode-pa.googleapis.com/v1internal:onboardUser",loadCodeAssistUserAgent:"google-api-nodejs-client/9.15.1",loadCodeAssistApiClient:"google-cloud-sdk vscode_cloudshelleditor/0.1",loadCodeAssistClientMetadata:JSON.stringify({ideType:9,platform:e(),pluginType:2})};function m(){return{ideType:9,platform:e(),pluginType:2}}let n={clientId:"Iv1.b507a08c87ecfe98",deviceCodeUrl:"https://github.com/login/device/code",tokenUrl:"https://github.com/login/oauth/access_token",userInfoUrl:"https://api.github.com/user",scopes:"read:user",apiVersion:"2022-11-28",copilotTokenUrl:"https://api.github.com/copilot_internal/v2/token",userAgent:"GitHubCopilotChat/0.26.7",editorVersion:"vscode/1.85.0",editorPluginVersion:"copilot-chat/0.26.7"},o={ssoOidcEndpoint:"https://oidc.us-east-1.amazonaws.com",registerClientUrl:"https://oidc.us-east-1.amazonaws.com/client/register",deviceAuthUrl:"https://oidc.us-east-1.amazonaws.com/device_authorization",tokenUrl:"https://oidc.us-east-1.amazonaws.com/token",startUrl:"https://view.awsapps.com/start",clientName:"kiro-oauth-client",clientType:"public",scopes:["codewhisperer:completions","codewhisperer:analysis","codewhisperer:conversations"],grantTypes:["urn:ietf:params:oauth:grant-type:device_code","refresh_token"],issuerUrl:"https://identitycenter.amazonaws.com/ssoins-722374e8c3c8e6c6",socialAuthEndpoint:"https://prod.us-east-1.auth.desktop.kiro.dev",socialLoginUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/login",socialTokenUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/oauth/token",socialRefreshUrl:"https://prod.us-east-1.auth.desktop.kiro.dev/refreshToken",authMethods:["builder-id","idc","google","github","import"]},p={apiEndpoint:"https://api2.cursor.sh",chatEndpoint:"/aiserver.v1.ChatService/StreamUnifiedChatWithTools",modelsEndpoint:"/aiserver.v1.AiService/GetDefaultModelNudgeData",api3Endpoint:"https://api3.cursor.sh",agentEndpoint:"https://agent.api5.cursor.sh",agentNonPrivacyEndpoint:"https://agentn.api5.cursor.sh",clientVersion:"3.1.0",clientType:"ide",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"},dbKeys:{accessToken:"cursorAuth/accessToken",machineId:"storage.serviceMachineId"}},q={clientId:process.env.KIMI_CODING_OAUTH_CLIENT_ID||"17e5f671-d194-4dfb-9706-5516cb48c098",deviceCodeUrl:"https://auth.kimi.com/api/oauth/device_authorization",tokenUrl:"https://auth.kimi.com/api/oauth/token"},r={apiBaseUrl:"https://api.kilo.ai",initiateUrl:"https://api.kilo.ai/api/device-auth/codes",pollUrlBase:"https://api.kilo.ai/api/device-auth/codes"},s={appBaseUrl:"https://app.cline.bot",apiBaseUrl:"https://api.cline.bot",authorizeUrl:"https://api.cline.bot/api/v1/auth/authorize",tokenExchangeUrl:"https://api.cline.bot/api/v1/auth/token",refreshUrl:"https://api.cline.bot/api/v1/auth/refresh"},t={defaultBaseUrl:"https://gitlab.com",authorizeUrlPath:"/oauth/authorize",tokenUrlPath:"/oauth/token",userInfoUrlPath:"/api/v4/user",scope:"api read_user",codeChallengeMethod:"S256"},u={baseUrl:"https://copilot.tencent.com",stateUrl:"https://copilot.tencent.com/v2/plugin/auth/state",tokenUrl:"https://copilot.tencent.com/v2/plugin/auth/token",refreshUrl:"https://copilot.tencent.com/v2/plugin/auth/token/refresh",userAgent:"CLI/2.63.2 CodeBuddy/2.63.2",platform:"CLI",pollInterval:5e3},v=3e5}};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";exports.id=6977,exports.ids=[6977],exports.modules={16977:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{ensureResourceMonitorAiScheduler:()=>k});var e=c(70321),f=c(75870),g=c(62636),h=a([g]);g=(h.then?(await h)():h)[0];let l="__blueRouterResourceMonitorAiScheduler";function i(){return globalThis[l]||(globalThis[l]={timer:null,running:null,started:!1}),globalThis[l]}async function j(){let a=i();return a.running||(a.running=(async()=>{if(await (0,f.isClusterStandby)())return;let a=(await (0,e.getSettings)()).resourceMonitorAiModel;a&&await (0,g.E)(a,{requestedBy:"Hệ thống (tự động)"})})().finally(()=>{a.running=null})),a.running}function k(){let a=i();if(a.started)return;a.started=!0;let b=async()=>{try{await j()}catch(a){console.warn("[resource-monitor] AI analysis scheduler failed:",a?.message||a)}finally{a.timer=setTimeout(b,9e5),a.timer.unref?.()}};a.timer=setTimeout(b,5e3),a.timer.unref?.()}d()}catch(a){d(a)}})},48595:(a,b,c)=>{c.d(b,{X3:()=>h,h0:()=>g});var d=c(90053),e=c(23740),f=c(14372);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}))),d.rE;let g={npmPackageName:"@jheavenknows/bluerouter",installCmd:"npm i -g @jheavenknows/bluerouter",installCmdLatest:"npm install -g @jheavenknows/bluerouter@latest",shutdownCountdownSec:3,exitDelayMs:500,statusPort:20129,statusPollIntervalMs:1e3,statusLogTailLines:8,installRetries:3,installRetryDelayMs:5e3,lingerAfterDoneMs:3e4,waitForExitMinMs:5e3,waitForExitMaxMs:2e4,waitForExitCheckMs:500,appPort:20128},h={openrouter:"https://openrouter.ai/api/v1/chat/completions",glm:"https://api.z.ai/api/anthropic/v1/messages","glm-cn":"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",kimi:"https://api.kimi.com/coding/v1/messages",minimax:"https://api.minimax.io/anthropic/v1/messages","minimax-cn":"https://api.minimaxi.com/anthropic/v1/messages",alicode:"https://coding.dashscope.aliyuncs.com/v1/chat/completions","alicode-intl":"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions","alims-intl":"https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions","volcengine-ark":"https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions",byteplus:"https://ark.ap-southeast.bytepluses.com/api/coding/v3/chat/completions",openai:"https://api.openai.com/v1/chat/completions","vercel-ai-gateway":"https://ai-gateway.vercel.sh/v1/chat/completions",anthropic:"https://api.anthropic.com/v1/messages",gemini:"https://generativelanguage.googleapis.com/v1beta/models",ollama:"https://ollama.com/api/chat","ollama-local":"http://localhost:11434/api/chat"}},62636:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{E:()=>j});var e=c(70321),f=c(14938),g=c(69810),h=c(
|
|
1
|
+
"use strict";exports.id=6977,exports.ids=[6977],exports.modules={16977:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{ensureResourceMonitorAiScheduler:()=>k});var e=c(70321),f=c(75870),g=c(62636),h=a([g]);g=(h.then?(await h)():h)[0];let l="__blueRouterResourceMonitorAiScheduler";function i(){return globalThis[l]||(globalThis[l]={timer:null,running:null,started:!1}),globalThis[l]}async function j(){let a=i();return a.running||(a.running=(async()=>{if(await (0,f.isClusterStandby)())return;let a=(await (0,e.getSettings)()).resourceMonitorAiModel;a&&await (0,g.E)(a,{requestedBy:"Hệ thống (tự động)"})})().finally(()=>{a.running=null})),a.running}function k(){let a=i();if(a.started)return;a.started=!0;let b=async()=>{try{await j()}catch(a){console.warn("[resource-monitor] AI analysis scheduler failed:",a?.message||a)}finally{a.timer=setTimeout(b,9e5),a.timer.unref?.()}};a.timer=setTimeout(b,5e3),a.timer.unref?.()}d()}catch(a){d(a)}})},48595:(a,b,c)=>{c.d(b,{X3:()=>h,h0:()=>g});var d=c(90053),e=c(23740),f=c(14372);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}))),d.rE;let g={npmPackageName:"@jheavenknows/bluerouter",installCmd:"npm i -g @jheavenknows/bluerouter",installCmdLatest:"npm install -g @jheavenknows/bluerouter@latest",shutdownCountdownSec:3,exitDelayMs:500,statusPort:20129,statusPollIntervalMs:1e3,statusLogTailLines:8,installRetries:3,installRetryDelayMs:5e3,lingerAfterDoneMs:3e4,waitForExitMinMs:5e3,waitForExitMaxMs:2e4,waitForExitCheckMs:500,appPort:20128},h={openrouter:"https://openrouter.ai/api/v1/chat/completions",glm:"https://api.z.ai/api/anthropic/v1/messages","glm-cn":"https://open.bigmodel.cn/api/coding/paas/v4/chat/completions",kimi:"https://api.kimi.com/coding/v1/messages",minimax:"https://api.minimax.io/anthropic/v1/messages","minimax-cn":"https://api.minimaxi.com/anthropic/v1/messages",alicode:"https://coding.dashscope.aliyuncs.com/v1/chat/completions","alicode-intl":"https://coding-intl.dashscope.aliyuncs.com/v1/chat/completions","alims-intl":"https://dashscope-intl.aliyuncs.com/compatible-mode/v1/chat/completions","volcengine-ark":"https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions",byteplus:"https://ark.ap-southeast.bytepluses.com/api/coding/v3/chat/completions",openai:"https://api.openai.com/v1/chat/completions","vercel-ai-gateway":"https://ai-gateway.vercel.sh/v1/chat/completions",anthropic:"https://api.anthropic.com/v1/messages",gemini:"https://generativelanguage.googleapis.com/v1beta/models",ollama:"https://ollama.com/api/chat","ollama-local":"http://localhost:11434/api/chat"}},62636:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{E:()=>j});var e=c(70321),f=c(14938),g=c(69810),h=c(86394),i=a([h]);async function j(a,{requestedBy:b="Hệ thống (tự động)"}={}){let c,d,i,k,l=await (0,f.HI)(),{rangeStart:m,rangeEnd:n}=((c=new Date).setHours(8,0,0,0),(d=new Date).setHours(18,0,0,0),{rangeStart:c.getTime(),rangeEnd:d.getTime()}),o=await (0,g.vY)(m,n),p=(i=new Map(o.map(a=>[a.serverId,a])),k=l.map(a=>{let b=i.get(a.id);if(!b||!b.sampleCount)return`- ${a.name} (id: ${a.id}): kh\xf4ng c\xf3 dữ liệu trong khung giờ n\xe0y.`;let c=b.gpus.length?b.gpus.map(a=>`${a.name}: usage avg ${a.usageAvg}% / max ${a.usageMax}%, VRAM avg ${a.memoryUsageAvg}% / max ${a.memoryUsageMax}%${null!=a.temperatureAvg?`, nhiệt độ avg ${a.temperatureAvg}\xb0C / max ${a.temperatureMax}\xb0C`:""}`).join("; "):"kh\xf4ng c\xf3 GPU";return`- ${a.name} (id: ${a.id}): CPU avg ${b.cpuAvg}% / max ${b.cpuMax}%, RAM avg ${b.memoryAvg}% / max ${b.memoryMax}%, Disk avg ${b.diskAvg}% / max ${b.diskMax}%, GPU: ${c}. (${b.sampleCount} mẫu)`}),`Bạn l\xe0 một chuy\xean gia vận h\xe0nh hạ tầng Linux server. Dưới đ\xe2y l\xe0 dữ liệu t\xe0i nguy\xean trung b\xecnh/đỉnh của c\xe1c server trong giờ l\xe0m việc h\xf4m nay (${new Date(m).toLocaleTimeString("vi-VN")} - ${new Date(n).toLocaleTimeString("vi-VN")}):
|
|
2
2
|
|
|
3
3
|
${k.join("\n")}
|
|
4
4
|
|
|
@@ -8,4 +8,4 @@ Sau phần t\xf3m lược, kết th\xfac c\xe2u trả lời bằng một khối
|
|
|
8
8
|
|
|
9
9
|
\`\`\`json
|
|
10
10
|
{"servers":[{"serverId":"<id>","status":"normal|warning|critical|unknown"}]}
|
|
11
|
-
\`\`\``),{content:q,connection:r,isCombo:s}=await (0,h.sn)(a,p),{model:t}=(0,h.M1)(a),u=function(a){let b=a.match(/```json\s*([\s\S]*?)\s*```/)||a.match(/(\{[\s\S]*\})\s*$/);if(!b)return new Map;try{let a=JSON.parse(b[1]),c=Array.isArray(a?.servers)?a.servers:[];return new Map(c.map(a=>[String(a.serverId),String(a.status||"unknown")]))}catch{return new Map}}(q),v=q.replace(/```json[\s\S]*?```/,"").trim(),w={connectionId:s?"combo":r.id,provider:s?"combo":r.provider,model:t,modelLabel:(0,h.XA)(s,r,t),generatedAt:Date.now(),rangeStart:m,rangeEnd:n,summary:v,servers:l.map(a=>({serverId:a.id,name:a.name,status:u.get(a.id)||"unknown"})),requestedBy:b};return await (0,e.updateSettings)({resourceMonitorAiAnalysis:w}),w}h=(i.then?(await i)():i)[0],d()}catch(a){d(a)}})},
|
|
11
|
+
\`\`\``),{content:q,connection:r,isCombo:s}=await (0,h.sn)(a,p),{model:t}=(0,h.M1)(a),u=function(a){let b=a.match(/```json\s*([\s\S]*?)\s*```/)||a.match(/(\{[\s\S]*\})\s*$/);if(!b)return new Map;try{let a=JSON.parse(b[1]),c=Array.isArray(a?.servers)?a.servers:[];return new Map(c.map(a=>[String(a.serverId),String(a.status||"unknown")]))}catch{return new Map}}(q),v=q.replace(/```json[\s\S]*?```/,"").trim(),w={connectionId:s?"combo":r.id,provider:s?"combo":r.provider,model:t,modelLabel:(0,h.XA)(s,r,t),generatedAt:Date.now(),rangeStart:m,rangeEnd:n,summary:v,servers:l.map(a=>({serverId:a.id,name:a.name,status:u.get(a.id)||"unknown"})),requestedBy:b};return await (0,e.updateSettings)({resourceMonitorAiAnalysis:w}),w}h=(i.then?(await i)():i)[0],d()}catch(a){d(a)}})},86394:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{M1:()=>j,XA:()=>n,sn:()=>m});var e=c(70321),f=c(48595),g=c(41310),h=c(5210),i=a([h]);function j(a){let b=String(a||""),c=b.indexOf("::");return -1===c?{connectionId:"",model:""}:{connectionId:b.slice(0,c),model:b.slice(c+2)}}async function k(){let a=(await (0,e.getApiKeys)()).find(a=>"SYSTEM"===String(a.name||"").trim().toUpperCase());return a?.key||null}async function l(a,b){let c,d=await k();if(!d)throw Error('API key với t\xean "SYSTEM" kh\xf4ng tồn tại, kh\xf4ng thể gọi combo');let e=`http://127.0.0.1:${process.env.PORT||f.h0.appPort}`,h=await fetch(`${e}/api/v1/chat/completions`,{method:"POST",headers:{"Content-Type":"application/json",Authorization:`Bearer ${d}`,"x-9r-cli-token":await (0,g.Xj)("9r-cli-auth")},body:JSON.stringify({model:a,stream:!1,messages:[{role:"user",content:b}]}),signal:AbortSignal.timeout(12e4)}),i=await h.text().catch(()=>"");if(!h.ok)throw Error(`Combo trả về lỗi ${h.status}: ${i.slice(0,500)}`);try{c=JSON.parse(i)}catch{throw Error("Combo kh\xf4ng trả về JSON hợp lệ")}return c?.choices?.[0]?.message?.content||""}async function m(a,b){let c,{connectionId:d,model:f}=j(a),g="combo"===d;if(!d||!f)throw Error("Chưa chọn AI model để ph\xe2n t\xedch");let i=g?null:await (0,e.getProviderConnectionById)(d);if(!g&&(!i||!1===i.isActive))throw Error("Kh\xf4ng t\xecm thấy kết nối AI hoặc kết nối đ\xe3 bị v\xf4 hiệu h\xf3a");if(g)c=await l(f,b);else{let a={apiKey:i.apiKey,accessToken:i.accessToken,refreshToken:i.refreshToken,copilotToken:i.copilotToken,projectId:i.projectId,providerSpecificData:i.providerSpecificData},d=(0,h.SB)(i.provider),e={model:f,stream:!1,messages:[{role:"user",content:b}]},{response:g}=await d.execute({model:f,body:e,stream:!1,credentials:a});if(401===g.status||403===g.status){let b=await (0,h.$B)(i.provider,a);(b?.accessToken||b?.copilotToken)&&(Object.assign(a,b),{response:g}=await d.execute({model:f,body:e,stream:!1,credentials:a}))}if(!g.ok){let a=await g.text();throw Error(`Provider trả về lỗi ${g.status}: ${a.slice(0,500)}`)}let j=await g.json();c=j?.choices?.[0]?.message?.content||""}if(!c)throw Error("Provider kh\xf4ng trả về nội dung ph\xe2n t\xedch");return{content:c,connection:i,isCombo:g}}function n(a,b,c){return a?`Combo — ${c}`:`${b.name||b.provider} — ${c}`}h=(i.then?(await i)():i)[0],d()}catch(a){d(a)}})}};
|
|
@@ -59,7 +59,7 @@ ${f(e.content)}`});continue}if("tool"===e.role){let a=f(e.content),d=e.tool_call
|
|
|
59
59
|
\`\`\`json
|
|
60
60
|
${b}
|
|
61
61
|
\`\`\`
|
|
62
|
-
Respond ONLY with the JSON object, no other text.`)}else"json_object"===a.type&&j.push("You must respond with valid JSON. Respond ONLY with a JSON object, no other text.")}let k={type:"text",text:f.Co};if(j.length>0?h.system=[k,{type:"text",text:j.join("\n"),cache_control:{type:"ephemeral",ttl:"1h"}}]:h.system=[k],b.tools&&Array.isArray(b.tools)){for(let a of(h.tools=[],b.tools)){let b=a.type;if(b&&"function"!==b){h.tools.push(a);continue}let c=a.function??a,d=c.name,f=""+d;e.set(f,d),h.tools.push({name:f,description:c.description||"",input_schema:c.parameters||c.input_schema||{type:"object",properties:{},required:[]}})}h.tools.length>0&&(h.tools[h.tools.length-1].cache_control={type:"ephemeral",ttl:"1h"})}if(b.tool_choice&&(h.tool_choice=(d=b.tool_choice)?"object"==typeof d&&d.type?d:"auto"===d||"none"===d?{type:"auto"}:"required"===d?{type:"any"}:"object"==typeof d&&d.function?{type:"tool",name:d.function.name}:{type:"auto"}:{type:"auto"}),b.thinking&&(h.thinking={type:b.thinking.type||"enabled",...b.thinking.budget_tokens&&{budget_tokens:b.thinking.budget_tokens},...b.thinking.max_tokens&&{max_tokens:b.thinking.max_tokens}}),b.reasoning_effort&&!h.thinking){let a={none:0,low:4096,medium:8192,high:16384,xhigh:32768}[b.reasoning_effort.toLowerCase()];0===a||a&&(h.thinking={type:"enabled",budget_tokens:a})}return e.size>0&&(h._toolNameMap=e),h}function i(a){return"string"==typeof a?a:Array.isArray(a)?a.filter(a=>"text"===a.type).map(a=>a.text).join("\n"):""}function j(a,b,c){let d=h(a,b,c);return d.system&&Array.isArray(d.system)&&(d.system=d.system.filter(a=>!a.text||!a.text.includes("You are Claude Code")),0===d.system.length&&delete d.system),d.tools&&Array.isArray(d.tools)&&(d.tools=d.tools.map(a=>a.name&&a.name.startsWith("")?{...a,name:a.name.slice(0)}:a)),d.messages&&Array.isArray(d.messages)&&(d.messages=d.messages.map(a=>{if(!a.content||!Array.isArray(a.content))return a;let b=a.content.map(a=>"tool_use"===a.type&&a.name&&a.name.startsWith("")?{...a,name:a.name.slice(0)}:a);return{...a,content:b}})),d}(0,d.kz)(e.h.OPENAI,e.h.CLAUDE,h,null)},29675:(a,b,c)=>{c.r(b),c.d(b,{claudeToOpenAIResponse:()=>g});var d=c(46992),e=c(14170);function f(a,b,c=null){return{id:`chatcmpl-${a.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:a.model,choices:[{index:0,delta:b,finish_reason:c}]}}function g(a,b){if(!a)return null;let c=[];switch(a.type){case"message_start":b.messageId=a.message?.id||`msg_${Date.now()}`,b.model=a.message?.model,b.toolCallIndex=0,c.push(f(b,{role:"assistant"}));break;case"content_block_start":{let d=a.content_block;if(d?.type==="server_tool_use"){b.serverToolBlockIndex=a.index;break}if(d?.type==="text")b.textBlockStarted=!0;else if(d?.type==="thinking")b.inThinkingBlock=!0,b.currentBlockIndex=a.index,c.push(f(b,{content:"<think>"}));else if(d?.type==="tool_use"){let e=b.toolCallIndex++,g=b.toolNameMap?.get(d.name)||d.name,h={index:e,id:d.id,type:"function",function:{name:g,arguments:""}};b.toolCalls.set(a.index,h),c.push(f(b,{tool_calls:[h]}))}break}case"content_block_delta":{if(a.index===b.serverToolBlockIndex)break;let d=a.delta;if(d?.type==="text_delta"&&d.text)c.push(f(b,{content:d.text}));else if(d?.type==="thinking_delta"&&d.thinking)c.push(f(b,{reasoning_content:d.thinking}));else if(d?.type==="input_json_delta"&&d.partial_json){let e=b.toolCalls.get(a.index);e&&(e.function.arguments+=d.partial_json,c.push(f(b,{tool_calls:[{index:e.index,id:e.id,function:{arguments:d.partial_json}}]})))}break}case"content_block_stop":if(a.index===b.serverToolBlockIndex){b.serverToolBlockIndex=-1;break}b.inThinkingBlock&&a.index===b.currentBlockIndex&&(c.push(f(b,{content:"</think>"})),b.inThinkingBlock=!1),b.textBlockStarted=!1,b.thinkingBlockStarted=!1;break;case"message_delta":if(a.usage&&"object"==typeof a.usage){let c="number"==typeof a.usage.input_tokens?a.usage.input_tokens:0,d="number"==typeof a.usage.output_tokens?a.usage.output_tokens:0,e="number"==typeof a.usage.cache_read_input_tokens?a.usage.cache_read_input_tokens:0,f="number"==typeof a.usage.cache_creation_input_tokens?a.usage.cache_creation_input_tokens:0,g=c+e+f;b.usage={prompt_tokens:g,completion_tokens:d,total_tokens:g+d,input_tokens:c,output_tokens:d},e>0&&(b.usage.cache_read_input_tokens=e),f>0&&(b.usage.cache_creation_input_tokens=f)}if(a.delta?.stop_reason){b.finishReason=function(a){switch(a){case"end_turn":case"stop_sequence":default:return"stop";case"max_tokens":return"length";case"tool_use":return"tool_calls"}}(a.delta.stop_reason);let d={id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{},finish_reason:b.finishReason}]};if(b.usage){d.usage={prompt_tokens:b.usage.prompt_tokens,completion_tokens:b.usage.completion_tokens,total_tokens:b.usage.total_tokens};let a=b.usage.cache_read_input_tokens,c=b.usage.cache_creation_input_tokens;(a>0||c>0)&&(d.usage.prompt_tokens_details={},a>0&&(d.usage.prompt_tokens_details.cached_tokens=a),c>0&&(d.usage.prompt_tokens_details.cache_creation_tokens=c))}c.push(d),b.finishReasonSent=!0}break;case"message_stop":if(!b.finishReasonSent){let a=b.finishReason||(b.toolCalls?.size>0?"tool_calls":"stop"),d=b.usage&&"object"==typeof b.usage?{usage:{prompt_tokens:b.usage.input_tokens||0,completion_tokens:b.usage.output_tokens||0,total_tokens:(b.usage.input_tokens||0)+(b.usage.output_tokens||0)}}:{};c.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{},finish_reason:a}],...d}),b.finishReasonSent=!0}}return c.length>0?c:null}(0,d.kz)(e.h.CLAUDE,e.h.OPENAI,null,g)},32546:(a,b,c)=>{c.r(b),c.d(b,{geminiToOpenAIResponse:()=>f});var d=c(46992),e=c(14170);function f(a,b){if(!a)return null;let c=a.response||a;if(!c||!c.candidates?.[0])return null;let d=[],e=c.candidates[0],f=e.content;if(b.messageId||(b.messageId=c.responseId||`msg_${Date.now()}`,b.model=c.modelVersion||"gemini",b.functionIndex=0,d.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{role:"assistant"},finish_reason:null}]})),f?.parts)for(let a of f.parts){let c=a.thoughtSignature||a.thought_signature,e=!0===a.thought;if(c){let c=void 0!==a.text&&""!==a.text,f=!!a.functionCall;if(c&&d.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:e?{reasoning_content:a.text}:{content:a.text},finish_reason:null}]}),f){let c=a.functionCall.name,e=b.toolNameMap?.get(c)||c,f=a.functionCall.args||{},g=b.functionIndex++,h={id:`${e}-${Date.now()}-${g}`,index:g,type:"function",function:{name:e,arguments:JSON.stringify(f)}};b.toolCalls.set(g,h),d.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{tool_calls:[h]},finish_reason:null}]})}continue}if(void 0!==a.text&&""!==a.text&&d.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{content:a.text},finish_reason:null}]}),a.functionCall){let c=a.functionCall.name,e=b.toolNameMap?.get(c)||c,f=a.functionCall.args||{},g=b.functionIndex++,h={id:`${e}-${Date.now()}-${g}`,index:g,type:"function",function:{name:e,arguments:JSON.stringify(f)}};b.toolCalls.set(g,h),d.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{tool_calls:[h]},finish_reason:null}]})}let f=a.inlineData||a.inline_data;if(f?.data){let a=f.mimeType||f.mime_type||"image/png";d.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{images:[{type:"image_url",image_url:{url:`data:${a};base64,${f.data}`}}]},finish_reason:null}]})}}let g=c.usageMetadata||a.usageMetadata;if(g&&"object"==typeof g){let a="number"==typeof g.cachedContentTokenCount?g.cachedContentTokenCount:0,c="number"==typeof g.promptTokenCount?g.promptTokenCount:0,d="number"==typeof g.thoughtsTokenCount?g.thoughtsTokenCount:0,e="number"==typeof g.candidatesTokenCount?g.candidatesTokenCount:0,f="number"==typeof g.totalTokenCount?g.totalTokenCount:0;0===e&&f>0&&(e=f-c-d)<0&&(e=0),b.usage={prompt_tokens:c,completion_tokens:e+d,total_tokens:f},a>0&&(b.usage.prompt_tokens_details={cached_tokens:a}),d>0&&(b.usage.completion_tokens_details={reasoning_tokens:d})}if(e.finishReason){let a=e.finishReason.toLowerCase();"stop"===a&&b.toolCalls.size>0&&(a="tool_calls");let c={id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{},finish_reason:a}]};b.usage&&(c.usage=b.usage),d.push(c),b.finishReason=a}return d.length>0?d:null}(0,d.kz)(e.h.GEMINI,e.h.OPENAI,null,f),(0,d.kz)(e.h.GEMINI_CLI,e.h.OPENAI,null,f),(0,d.kz)(e.h.ANTIGRAVITY,e.h.OPENAI,null,f),(0,d.kz)(e.h.VERTEX,e.h.OPENAI,null,f)},39006:a=>{a.exports={rE:"5.5.4"}},39536:(a,b,c)=>{c.d(b,{c:()=>n});var d=c(55511),e=c.n(d),f=c(5259),g=c(35024),h=c(75924),i=c(41004),j=c(80662),k=c(39609),l=c(47593);let m=Object.freeze({"gemini-3.7-flash":"Gemini 3.7 Flash"});class n extends f.H{constructor(){super("antigravity",g.xq.antigravity)}buildUrl(a,b,c=0){let d=this.getBaseUrls(),e=d[c]||d[0];return`${e}/v1internal:${b?"streamGenerateContent?alt=sse":"generateContent"}`}buildHeaders(a,b=!0,c=null){return{"Content-Type":"application/json",Authorization:`Bearer ${a.accessToken}`,"User-Agent":this.config.headers?.["User-Agent"]||h.K["User-Agent"],[h.Ox.name]:h.Ox.value,...c&&{"X-Machine-Session-Id":c},Accept:b?"text/event-stream":"application/json"}}transformRequest(a,b,c,d){let f=d?.projectId||this.generateProjectId(),g=b.request?.contents?.map(a=>{let b=a.role;a.parts?.some(a=>a.functionResponse)&&(b="user");let c=a.parts?.filter(a=>(!a.thought||!!a.functionCall)&&(!a.thoughtSignature||!!a.functionCall||!!a.text));return b!==a.role||c?.length!==a.parts?.length?{...a,role:b,parts:c}:a}),h=b.request?.tools;if(h&&h.length>0){let a=h.flatMap(a=>(a.functionDeclarations||[]).map(a=>({...a,name:function(a){if(!a)return"_unknown";let b=a.replace(/[^a-zA-Z0-9_.:\-]/g,"_");return/^[a-zA-Z_]/.test(b)||(b="_"+b),b.substring(0,64)}(a.name),parameters:a.parameters?(0,l.Yr)(structuredClone(a.parameters)):{type:"object",properties:{reason:{type:"string",description:"Brief explanation"}},required:["reason"]}})));h=a.length>0?[{functionDeclarations:a}]:[]}let{tools:i,toolConfig:k,...m}=b.request||{},n={...m.generationConfig||{}};n.maxOutputTokens>16384&&(n.maxOutputTokens=16384);let o={...m,generationConfig:n,...g&&{contents:g},...h&&{tools:h},sessionId:b.request?.sessionId||(0,j.RF)(d?.email||d?.connectionId),safetySettings:void 0,...h?.length>0&&{toolConfig:{functionCallingConfig:{mode:"VALIDATED"}}}};return{...b,project:f,model:a,userAgent:"antigravity",requestType:"agent",requestId:`agent-${e().randomUUID()}`,request:o}}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;try{let d=await (0,k.proxyAwareFetch)(h.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.refreshToken,client_id:this.config.clientId,client_secret:this.config.clientSecret})},c);if(!d.ok)return null;let e=await d.json();return b?.info?.("TOKEN","Antigravity refreshed"),{accessToken:e.access_token,refreshToken:e.refresh_token||a.refreshToken,expiresIn:e.expires_in,projectId:a.projectId}}catch(a){return b?.error?.("TOKEN",`Antigravity refresh error: ${a.message}`),null}}generateProjectId(){let a=["useful","bright","swift","calm","bold"][Math.floor(5*Math.random())],b=["fuze","wave","spark","flow","core"][Math.floor(5*Math.random())];return`${a}-${b}-${e().randomUUID().slice(0,5)}`}generateSessionId(){return e().randomUUID()+Date.now().toString()}parseRetryHeaders(a){if(!a?.get)return null;let b=a.get("retry-after");if(b){let a=parseInt(b,10);if(!isNaN(a)&&a>0)return 1e3*a;let c=new Date(b);if(!isNaN(c.getTime())){let a=c.getTime()-Date.now();return a>0?a:null}}let c=a.get("x-ratelimit-reset-after");if(c){let a=parseInt(c,10);if(!isNaN(a)&&a>0)return 1e3*a}let d=a.get("x-ratelimit-reset");if(d){let a=1e3*parseInt(d,10)-Date.now();return a>0?a:null}return null}parseRetryFromErrorMessage(a){if(!a||"string"!=typeof a)return null;let b=a.match(/reset after (\d+h)?(\d+m)?(\d+s)?/i);if(!b)return null;let c=0;return b[1]&&(c+=3600*parseInt(b[1])*1e3),b[2]&&(c+=60*parseInt(b[2])*1e3),b[3]&&(c+=1e3*parseInt(b[3])),c>0?c:null}async resolveDynamicModelId(a,b,c=null,d=null){let e=m[a];if(!e||!b?.accessToken)return a;let f=a=>String(a||"").trim().toLowerCase(),g=f(e);for(let e of[...new Set([...this.getBaseUrls().map(a=>`${a}/v1internal:fetchAvailableModels`),"https://cloudcode-pa.googleapis.com/v1internal:fetchAvailableModels"])])try{let i=await (0,k.proxyAwareFetch)(e,{method:"POST",headers:{Authorization:`Bearer ${b.accessToken}`,"User-Agent":this.config.headers?.["User-Agent"]||h.K["User-Agent"],"Content-Type":"application/json","X-Client-Name":"antigravity","X-Client-Version":"1.107.0","x-request-source":"local"},body:JSON.stringify(b?.projectId?{project:b.projectId}:{})},c);if(!i.ok)continue;let j=await i.json(),l=Object.entries(j?.models||{}).filter(([,a])=>!a?.isInternal),m=l.find(([,a])=>f(a?.displayName)===g);if(m||(m=l.find(([,a])=>{let b=f(a?.displayName);return b.startsWith(g)&&b.includes("high")})),m||(m=l.find(([,a])=>f(a?.displayName).startsWith(g))),m||(m=l.find(([a])=>{let b=f(a);return b.includes("gemini")&&b.includes("3.7")&&b.includes("flash")})),m?.[0]){let b=m[0];return d?.debug?.("MODEL",`Resolved Antigravity ${a} -> ${b}`),b}}catch(a){d?.debug?.("MODEL",`Antigravity model discovery failed on ${e}: ${a.message}`)}return d?.debug?.("MODEL",`No Antigravity upstream id found for ${a}; using requested id`),a}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:f,proxyOptions:g=null}){let h=await this.resolveDynamicModelId(a,d,g,f),j=this.getFallbackCount(),l=null,m=0,n={},o={};for(let a=0;a<j;a++){let p=this.buildUrl(h,c,a),q=this.transformRequest(h,b,c,d),r=q.request?.sessionId,s=this.buildHeaders(d,c,r);n[a]||(n[a]=0),o[a]||(o[a]=0);try{let b=await (0,k.proxyAwareFetch)(p,{method:"POST",headers:s,body:JSON.stringify(q),signal:e},g);if(b.status===i.gx.RATE_LIMITED||b.status===i.gx.SERVICE_UNAVAILABLE){let c=this.parseRetryHeaders(b.headers);if(!c)try{let a=await b.clone().text(),d=JSON.parse(a),e=d?.error?.message||d?.message||"";c=this.parseRetryFromErrorMessage(e)}catch(a){}if(c&&c<=1e4&&o[a]<3){o[a]++,f?.debug?.("RETRY",`${b.status} with Retry-After: ${Math.ceil(c/1e3)}s, waiting... (${o[a]}/3)`),await new Promise(a=>setTimeout(a,c)),a--;continue}if(b.status===i.gx.RATE_LIMITED&&(!c||0===c)&&n[a]<3){n[a]++;let b=Math.min(1e3*2**n[a],1e4);f?.debug?.("RETRY",`429 auto retry ${n[a]}/3 after ${b/1e3}s`),await new Promise(a=>setTimeout(a,b)),a--;continue}if(f?.debug?.("RETRY",`${b.status}, Retry-After ${c?`too long (${Math.ceil(c/1e3)}s)`:"missing"}, trying fallback`),m=b.status,a+1<j)continue}if(this.shouldRetry(b.status,a)){f?.debug?.("RETRY",`${b.status} on ${p}, trying fallback ${a+1}`),m=b.status;continue}return{response:b,url:p,headers:s,transformedBody:q}}catch(b){if(l=b,a+1<j){f?.debug?.("RETRY",`Error on ${p}, trying fallback ${a+1}`);continue}throw b}}throw l||Error(`All ${j} URLs failed with status ${m}`)}static cloakTools(a,b=null){let c=a.request?.tools;if(!c||0===c.length)return{cloakedBody:a,toolNameMap:null};let d="github-copilot"===b,e=new Map,f=[],g=new Set(o.map(a=>a.name));for(let a of c)if(a.functionDeclarations)for(let b of a.functionDeclarations){if(d&&h.J5.has(b.name)||d&&g.has(b.name))continue;if(h.J5.has(b.name)){f.push(b);continue}let a=`${b.name}${h.QH}`;e.set(a,b.name),f.push({...b,name:a})}let i=[],j=new Set;for(let a of[...f,...o])!a?.name||j.has(a.name)||(j.add(a.name),i.push(a));let k=a.request?.contents?.map(a=>{if(!a.parts)return a;let b=a.parts.map(a=>a.functionCall&&!h.J5.has(a.functionCall.name)?{...a,functionCall:{...a.functionCall,name:`${a.functionCall.name}${h.QH}`}}:a.functionResponse&&!h.J5.has(a.functionResponse.name)?{...a,functionResponse:{...a.functionResponse,name:`${a.functionResponse.name}${h.QH}`}}:a);return{...a,parts:b}});return{cloakedBody:{...a,request:{...a.request,tools:[{functionDeclarations:i}],contents:k||a.request.contents}},toolNameMap:e}}}let o=[{name:"browser_subagent",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"command_status",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"find_by_name",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"generate_image",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"grep_search",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"list_dir",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"list_resources",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"mcp_sequential-thinking_sequentialthinking",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"multi_replace_file_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"notify_user",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_resource",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_terminal",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_url_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"replace_file_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"run_command",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"search_web",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"send_command_input",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"task_boundary",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"view_content_chunk",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"view_file",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"write_to_file",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}}]},39551:(a,b,c)=>{c.r(b),c.d(b,{ollamaBodyToOpenAI:()=>i,ollamaToOpenAI:()=>f});var d=c(46992),e=c(14170);function f(a,b){if(!a||"object"!=typeof a)return null;b.ollama||(b.ollama={id:`chatcmpl-${Date.now()}`,created:Math.floor(Date.now()/1e3),model:a.model||b.model});let{id:c,created:d,model:e}=b.ollama;if(a.done){let f=g(a),h="stop";return("tool_calls"===a.done_reason||b.hadToolCalls)&&(h="tool_calls"),{id:c,object:"chat.completion.chunk",created:d,model:e,choices:[{index:0,delta:{},finish_reason:h}],usage:f}}let f=a.message;if(!f)return null;let i="string"==typeof f.content?f.content:"",j="string"==typeof f.thinking?f.thinking:"",k=Array.isArray(f.tool_calls)?f.tool_calls:null;if(!i&&!j&&!k)return null;i&&(b.accumulatedContent=(b.accumulatedContent||"")+i),j&&(b.accumulatedThinking=(b.accumulatedThinking||"")+j);let l={};return i&&(l.content=i),j&&(l.reasoning_content=j),k&&(b.hadToolCalls=!0,l.tool_calls=h(k)),{id:c,object:"chat.completion.chunk",created:d,model:e,choices:[{index:0,delta:l,finish_reason:null}]}}function g(a){return{prompt_tokens:a.prompt_eval_count||0,completion_tokens:a.eval_count||0,total_tokens:(a.prompt_eval_count||0)+(a.eval_count||0)}}function h(a){return a.map((a,b)=>({index:a.function?.index??b,id:a.id||`call_${b}_${Date.now()}`,type:"function",function:{name:a.function?.name||"",arguments:"string"==typeof a.function?.arguments?a.function.arguments:JSON.stringify(a.function?.arguments||{})}}))}function i(a){let b=a.message||{},c=b.content||"",d=b.thinking||"",e=Array.isArray(b.tool_calls)?b.tool_calls:[],f={role:"assistant"};c&&(f.content=c),d&&(f.reasoning_content=d),e.length>0&&(f.tool_calls=h(e)),f.content||f.tool_calls||(f.content="");let i=a.done_reason||"stop";return e.length>0&&(i="tool_calls"),{id:`chatcmpl-${Date.now()}`,object:"chat.completion",created:Math.floor(Date.now()/1e3),model:a.model||"ollama",choices:[{index:0,message:f,finish_reason:i}],usage:g(a)}}(0,d.kz)(e.h.OLLAMA,e.h.OPENAI,null,f)},42654:(a,b,c)=>{c.d(b,{m:()=>d});function d(a){return"string"==typeof a?[{type:"message",role:"user",content:[{type:"input_text",text:""===a.trim()?"...":a}]}]:Array.isArray(a)?0===a.length?[{type:"message",role:"user",content:[{type:"input_text",text:"..."}]}]:a:null}},46992:(a,b,c)=>{c.d(b,{Ws:()=>x,Ai:()=>y,nZ:()=>w,kz:()=>s,GH:()=>u,Y8:()=>v});var d=c(14170);let e=/^[a-zA-Z0-9_-]+$/;function f(a=0,b=0,c=""){let d=c?`_${c.replace(/[^a-zA-Z0-9_-]/g,"")}`:"";return`call_msg${a}_tc${b}${d}`}function g(a){if(!a||"string"!=typeof a)return null;let b=a.replace(/[^a-zA-Z0-9_-]/g,"");return b.length>0?b:null}var h=c(96281);c(3156);var i=c(55399),j=c(80662);let k=new Set(["minimax","minimax-cn"]),l=/(^|\r?\n)[ \t]*<total_tokens>[ \t]*[\d,]+[ \t]+tokens[ \t]+left[ \t]*<\/total_tokens>[ \t]*(?=\r?\n|$)/gi;function m(a){return"string"==typeof a&&0!==a.length&&a.includes("<total_tokens>")?a.replace(l,"$1"):a}let n=["text","image_url","image","input_audio","audio_url"];var o=c(57647);c(39536);let p=new Map,q=new Map,r=!1;function s(a,b,c,d){let e=`${a}:${b}`;c&&p.set(e,c),d&&q.set(e,d)}function t(){r||(r=!0,c(60983),c(19979),c(52638),c(97102),c(59611),c(54817),c(65377),c(10010),c(13595),c(74447),c(97821),c(29675),c(66159),c(32546),c(89475),c(86368),c(52830),c(65651),c(39551),c(47723))}function u(a,b,c,l,q=!0,r=null,s=null,v=null,w=[],x=null,y=null){t();let z=structuredClone(l);if(a===d.h.CLAUDE&&b!==d.h.CLAUDE&&(z=function(a){if(!a||"object"!=typeof a)return a;let b=function(a){if("string"==typeof a)return m(a);if(!Array.isArray(a))return a;let b=!1,c=a.map(a=>{if(!a||"text"!==a.type||"string"!=typeof a.text)return a;let c=m(a.text);return c===a.text?a:(b=!0,{...a,text:c})});return b?c:a}(a.system),c=a.messages;if(Array.isArray(a.messages)){let b=!1,d=a.messages.map(a=>{let c=function(a){if(!a||"assistant"!==a.role&&"system"!==a.role)return a;if("string"==typeof a.content){let b=m(a.content);return b===a.content?a:{...a,content:b}}if(!Array.isArray(a.content))return a;let b=!1,c=a.content.map(a=>{if(!a||"text"!==a.type||"string"!=typeof a.text)return a;let c=m(a.text);return c===a.text?a:(b=!0,{...a,text:c})});return b?{...a,content:c}:a}(a);return c!==a&&(b=!0),c});b&&(c=d)}let d=b!==a.system,e=c!==a.messages;return d||e?{...a,...d?{system:b}:{},...e?{messages:c}:{}}:a}(z)),!function(a,b=[]){if(!b.length||!a.messages||!Array.isArray(a.messages))return;let c=new Set(["image_url","image"]),d=new Set(["audio_url","input_audio"]),e=a=>c.has(a)?b.includes("image"):!!d.has(a)&&b.includes("audio");for(let b of a.messages)Array.isArray(b.content)&&(b.content=b.content.filter(a=>!e(a.type)),0===b.content.length&&(b.content=""))}(z,w),(0,o.SZ)(z),!function(a){if(a.messages&&Array.isArray(a.messages))for(let b=0;b<a.messages.length;b++){let c=a.messages[b];if("assistant"===c.role&&c.tool_calls&&Array.isArray(c.tool_calls))for(let a=0;a<c.tool_calls.length;a++){let d=c.tool_calls[a];if(!d.id||!e.test(d.id)){let c=g(d.id);d.id=c||f(b,a,d.function?.name)}d.type||(d.type="function"),d.function?.arguments&&"string"!=typeof d.function.arguments&&(d.function.arguments=JSON.stringify(d.function.arguments))}if("tool"===c.role&&c.tool_call_id&&!e.test(c.tool_call_id)){let a=g(c.tool_call_id);c.tool_call_id=a||f(b,0)}if(Array.isArray(c.content))for(let a=0;a<c.content.length;a++){let d=c.content[a];if("tool_use"===d.type&&d.id&&!e.test(d.id)){let c=g(d.id);d.id=c||f(b,a,d.name)}if("tool_result"===d.type&&d.tool_use_id&&!e.test(d.tool_use_id)){let c=g(d.tool_use_id);d.tool_use_id=c||f(b,a)}}}}(z),!function(a){if(!a.messages||!Array.isArray(a.messages))return;let b=[];for(let c=0;c<a.messages.length;c++){let d=a.messages[c],e=a.messages[c+1];b.push(d);let f=function(a){if("assistant"!==a.role)return[];let b=[];if(a.tool_calls&&Array.isArray(a.tool_calls))for(let c of a.tool_calls)c.id&&b.push(c.id);if(Array.isArray(a.content))for(let c of a.content)"tool_use"===c.type&&c.id&&b.push(c.id);return b}(d);if(0!==f.length&&e&&!function(a,b){if(!a||!b.length)return!1;if("tool"===a.role&&a.tool_call_id)return b.includes(a.tool_call_id);if("user"===a.role&&Array.isArray(a.content)){for(let c of a.content)if("tool_result"===c.type&&b.includes(c.tool_use_id))return!0}return!1}(e,f))for(let a of f)b.push({role:"tool",tool_call_id:a,content:""})}a.messages=b}(z),a!==b){if(a!==d.h.OPENAI){let b=p.get(`${a}:${d.h.OPENAI}`);b&&(z=b(c,z,q,r),v?.logOpenAIRequest?.(z))}if(b!==d.h.OPENAI){let a=p.get(`${d.h.OPENAI}:${b}`);a&&(z=a(c,z,q,r))}}if(b===d.h.OPENAI&&(z=function(a){if(!a.messages||!Array.isArray(a.messages))return a;if(a.messages=a.messages.map(a=>{if("developer"===a.role&&(a={...a,role:"system"}),"tool"===a.role||"assistant"===a.role&&a.tool_calls||"string"==typeof a.content)return a;if(Array.isArray(a.content)){let b=[];for(let c of a.content)if("thinking"!==c.type&&"redacted_thinking"!==c.type){if(n.includes(c.type)){let{signature:a,cache_control:d,...e}=c;b.push(e)}else if("tool_use"===c.type)continue;else if("tool_result"===c.type){let{signature:a,cache_control:d,...e}=c;b.push(e)}}return 0===b.length&&b.push({type:"text",text:""}),{...a,content:b}}return a}),a.messages=a.messages.filter(a=>"tool"===a.role||"assistant"===a.role&&!!a.tool_calls||("string"==typeof a.content?""!==a.content.trim():!Array.isArray(a.content)||a.content.some(a=>"text"===a.type&&a.text?.trim()||"text"!==a.type))),a.messages=function(a){let b,c=[];for(let b=0;b<a.length;b++)a[b]?.role==="system"&&c.push(b);if(0===c.length||1===c.length&&0===c[0])return a;let d=c.map(b=>a[b]);if(d.some(a=>Array.isArray(a.content)))for(let a of(b=[],d))"string"==typeof a.content?a.content&&b.push({type:"text",text:a.content}):Array.isArray(a.content)&&b.push(...a.content);else b=d.map(a=>"string"==typeof a.content?a.content:"").filter(Boolean).join("\n\n");let e=new Set(c);return[{...d[0],content:b},...a.filter((a,b)=>!e.has(b))]}(a.messages),a.tools&&Array.isArray(a.tools)&&0===a.tools.length&&delete a.tools,a.tools&&Array.isArray(a.tools)&&a.tools.length>0&&(a.tools=a.tools.map(a=>"function"===a.type&&a.function?a:a.name&&(a.input_schema||a.description)?{type:"function",function:{name:a.name,description:String(a.description||""),parameters:a.input_schema||{type:"object",properties:{}}}}:a.functionDeclarations&&Array.isArray(a.functionDeclarations)?a.functionDeclarations.map(a=>({type:"function",function:{name:a.name,description:String(a.description||""),parameters:a.parameters||{type:"object",properties:{}}}})):a).flat()),a.tool_choice&&"object"==typeof a.tool_choice){let b=a.tool_choice;"auto"===b.type?a.tool_choice="auto":"any"===b.type?a.tool_choice="required":"tool"===b.type&&b.name&&(a.tool_choice={type:"function",function:{name:b.name}})}return a}(z)),b===d.h.CLAUDE&&(z=function(a,b=null,c=null,d=null){if(k.has(b)&&delete a.output_config,a.system&&Array.isArray(a.system)&&(a.system=a.system.map((b,c)=>{let{cache_control:d,...e}=b;return c===a.system.length-1?{...e,cache_control:{type:"ephemeral",ttl:"1h"}}:e})),a.messages&&Array.isArray(a.messages)){let c=a.messages.length,d=[];for(let b=0;b<c;b++){let e=a.messages[b];if(Array.isArray(e.content))for(let a of e.content)delete a.cache_control;(b===c-1&&"assistant"===e.role||"string"==typeof e.content&&e.content.trim()||Array.isArray(e.content)&&e.content.some(a=>"text"===a.type&&a.text?.trim()||"tool_use"===a.type||"tool_result"===a.type))&&d.push(e)}d=function(a){if(a.length<=1)return a;for(let b of a)if("assistant"===b.role&&Array.isArray(b.content)&&b.content.some(a=>"tool_use"===a.type)){let a=[],c=!1;for(let d of b.content)"tool_use"===d.type?(c=!0,a.push(d)):"thinking"===d.type||"redacted_thinking"===d.type?a.push(d):c||a.push(d);b.content=a}let b=[];for(let c of a){let a=b[b.length-1];if(a&&a.role===c.role){let b=Array.isArray(a.content)?a.content:[{type:"text",text:a.content}],d=Array.isArray(c.content)?c.content:[{type:"text",text:c.content}];a.content=[...b.filter(a=>"tool_result"===a.type),...d.filter(a=>"tool_result"===a.type),...b.filter(a=>"tool_result"!==a.type),...d.filter(a=>"tool_result"!==a.type)]}else{let a=Array.isArray(c.content)?c.content:[{type:"text",text:c.content}];b.push({role:c.role,content:[...a]})}}return b}(d),a.messages=d;let e=d[d.length-1],f=e?.role==="user",g=a.thinking?.type==="enabled"&&f,i=!1;for(let a=d.length-1;a>=0;a--){let c=d[a];if("assistant"===c.role&&Array.isArray(c.content)){if(!i&&c.content.length>0){for(let a=c.content.length-1;a>=0;a--){let b=c.content[a];if("thinking"!==b.type&&"redacted_thinking"!==b.type){b.cache_control={type:"ephemeral"};break}}i=!0}if("claude"===b||b?.startsWith("anthropic-compatible")){let a=!1,b=!1;for(let d of c.content)("thinking"===d.type||"redacted_thinking"===d.type)&&(d.signature=h.xr,b=!0),"tool_use"===d.type&&(a=!0);g&&!b&&a&&c.content.unshift({type:"thinking",thinking:".",signature:h.xr})}}}}if(a.tools&&Array.isArray(a.tools)&&("claude"!==b&&(a.tools=a.tools.filter(a=>!a.type||"function"===a.type)),a.tools=a.tools.map((b,c)=>{let{cache_control:d,...e}=b;return c===a.tools.length-1?{...e,cache_control:{type:"ephemeral",ttl:"1h"}}:e}),0===a.tools.length&&(delete a.tools,delete a.tool_choice)),("claude"===b||b?.startsWith("anthropic-compatible"))&&c){let b=d?(0,j.RF)(d):null;a=(0,i.fO)(a,c,b)}return a}(z,s,r?.accessToken||r?.apiKey||null,x)),"claude"===s){let a=r?.accessToken||r?.apiKey||null;if(a?.includes("sk-ant-oat")){let{body:a,toolNameMap:b}=(0,i.Az)(z);z=a,b?.size>0&&(z._toolNameMap=b)}}return z}function v(a,b,c,e){if(t(),b===a)return[c];let f=[c],g=null;if(a!==d.h.OPENAI){let b=q.get(`${a}:${d.h.OPENAI}`);if(b){f=[];let a=b(c,e);a&&(g=f=Array.isArray(a)?a:[a])}}if(b!==d.h.OPENAI){let a=q.get(`${d.h.OPENAI}:${b}`);if(a){let b=[];for(let c of f){let d=a(c,e);d&&b.push(...Array.isArray(d)?d:[d])}f=b}}return g&&b!==d.h.OPENAI&&a!==d.h.OPENAI&&(f._openaiIntermediate=g),f}function w(a,b){return a!==b}function x(a){let b={messageId:null,model:null,textBlockStarted:!1,thinkingBlockStarted:!1,inThinkingBlock:!1,currentBlockIndex:null,toolCalls:new Map,finishReason:null,finishReasonSent:!1,usage:null,contentBlockIndex:-1};return a===d.h.OPENAI_RESPONSES?{...b,seq:0,responseId:`resp_${Date.now()}`,created:Math.floor(Date.now()/1e3),started:!1,msgTextBuf:{},msgItemAdded:{},msgContentAdded:{},msgItemDone:{},reasoningId:"",reasoningIndex:-1,reasoningBuf:"",reasoningPartAdded:!1,reasoningDone:!1,reasoningSeq:0,inThinking:!1,funcArgsBuf:{},funcNames:{},funcCallIds:{},funcArgsDone:{},funcItemDone:{},completedSent:!1,nextOutputIndex:0,msgOutputIndex:{},funcOutputIndex:{},outputItems:[]}:b}function y(){t()}},47593:(a,b,c)=>{c.d(b,{KZ:()=>i,S6:()=>f,Yr:()=>m,f6:()=>j,fc:()=>e,kU:()=>g,pT:()=>h,w_:()=>k});let d=["minLength","maxLength","exclusiveMinimum","exclusiveMaximum","minItems","maxItems","format","default","examples","$schema","$defs","definitions","const","$ref","$comment","additionalProperties","propertyNames","patternProperties","enumDescriptions","anyOf","oneOf","allOf","not","dependencies","dependentSchemas","dependentRequired","title","if","then","else","contentMediaType","contentEncoding","cornerRadius","fillColor","fontFamily","fontSize","fontWeight","gap","padding","strokeColor","strokeThickness","textColor"],e=[{category:"HARM_CATEGORY_HATE_SPEECH",threshold:"OFF"},{category:"HARM_CATEGORY_DANGEROUS_CONTENT",threshold:"OFF"},{category:"HARM_CATEGORY_SEXUALLY_EXPLICIT",threshold:"OFF"},{category:"HARM_CATEGORY_HARASSMENT",threshold:"OFF"},{category:"HARM_CATEGORY_CIVIC_INTEGRITY",threshold:"OFF"}];function f(a){let b=[];if("string"==typeof a)b.push({text:a});else if(Array.isArray(a)){for(let c of a)if("text"===c.type)b.push({text:c.text});else if("image_url"===c.type&&c.image_url?.url?.startsWith("data:")){let a=c.image_url.url,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d),e=a.substring(d+1),f=c.split(";")[0];b.push({inlineData:{mime_type:f,data:e}})}}else if("image_url"===c.type&&c.image_url?.url&&(c.image_url.url.startsWith("http://")||c.image_url.url.startsWith("https://")))b.push({fileData:{fileUri:c.image_url.url,mimeType:"image/*"}});else if("input_audio"===c.type&&c.input_audio?.data){let a=c.input_audio.format||"wav",d="mp3"===a?"audio/mpeg":`audio/${a}`;b.push({inlineData:{mime_type:d,data:c.input_audio.data}})}else if("audio_url"===c.type&&c.audio_url?.url?.startsWith("data:")){let a=c.audio_url.url,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d),e=a.substring(d+1),f=c.split(";")[0];b.push({inlineData:{mime_type:f,data:e}})}}}return b}function g(a){return"string"==typeof a?a:Array.isArray(a)?a.filter(a=>"text"===a.type).map(a=>a.text).join(""):""}function h(a){if("string"!=typeof a)return a;try{return JSON.parse(a)}catch{return null}}function i(){return`agent-${crypto.randomUUID()}`}function j(){return crypto.randomUUID()+Date.now().toString()}function k(){let a=["useful","bright","swift","calm","bold"],b=["fuze","wave","spark","flow","core"],c=a[Math.floor(Math.random()*a.length)],d=b[Math.floor(Math.random()*b.length)];return`${c}-${d}-${crypto.randomUUID().slice(0,5)}`}function l(a){let b=0,c=-1;for(let d=0;d<a.length;d++){let e=a[d],f=0,g=e.type;"object"===g||e.properties?f=3:"array"===g||e.items?f=2:g&&"null"!==g&&(f=1),f>c&&(c=f,b=d)}return b}function m(a){return a&&"object"==typeof a&&(!function a(b){if(b&&"object"==typeof b)for(let c of(void 0===b.const||b.enum||(b.enum=[b.const],delete b.const),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b){if(b&&"object"==typeof b)for(let c of(b.enum&&Array.isArray(b.enum)&&(b.enum=b.enum.map(a=>String(a)),b.type||(b.type="string")),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b){if(b&&"object"==typeof b){if(b.allOf&&Array.isArray(b.allOf)){let a={};for(let c of b.allOf)if(c.properties&&(a.properties||(a.properties={}),Object.assign(a.properties,c.properties)),c.required&&Array.isArray(c.required))for(let b of(a.required||(a.required=[]),c.required))a.required.includes(b)||a.required.push(b);delete b.allOf,a.properties&&(b.properties={...b.properties,...a.properties}),a.required&&(b.required=[...b.required||[],...a.required])}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b){if(b.anyOf&&Array.isArray(b.anyOf)&&b.anyOf.length>0){let a=b.anyOf.filter(a=>a&&"null"!==a.type);if(a.length>0){let c=l(a),d=a[c];delete b.anyOf,Object.assign(b,d)}}if(b.oneOf&&Array.isArray(b.oneOf)&&b.oneOf.length>0){let a=b.oneOf.filter(a=>a&&"null"!==a.type);if(a.length>0){let c=l(a),d=a[c];delete b.oneOf,Object.assign(b,d)}}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b){if(b.type&&Array.isArray(b.type)){let a=b.type.filter(a=>"null"!==a);b.type=a.length>0?a[0]:"string"}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b)for(let c of(b.properties&&!b.type&&(b.type="object"),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b,c){if(b&&"object"==typeof b){if(Array.isArray(b)){for(let d of b)a(d,c);return}for(let d of Object.keys(b)){if(c.includes(d)||d.startsWith("x-")){delete b[d];continue}let e=b[d];e&&"object"==typeof e&&a(e,c)}}}(a,d),!function a(b){if(b&&"object"==typeof b){if(b.required&&Array.isArray(b.required)&&b.properties){let a=b.required.filter(a=>Object.prototype.hasOwnProperty.call(b.properties,a));0===a.length?delete b.required:b.required=a}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b)for(let c of("object"!==b.type||b.properties&&0!==Object.keys(b.properties).length||(b.properties={reason:{type:"string",description:"Brief explanation of why you are calling this tool"}},b.required=["reason"]),Object.values(b)))c&&"object"==typeof c&&a(c)}(a)),a}},47723:(a,b,c)=>{c.r(b),c.d(b,{convertCommandCodeToOpenAI:()=>h});var d=c(46992),e=c(14170);function f(a,b,c=null){return{id:a.responseId,object:"chat.completion.chunk",created:a.created,model:a.model,choices:[{index:0,delta:b,finish_reason:c}]}}function g(a){switch(a){case"stop":case"error":return"stop";case"length":return"length";case"tool-calls":case"tool_use":return"tool_calls";case"content-filter":return"content_filter";default:return a||"stop"}}function h(a,b){var c;if(!a)return null;if(a&&"object"==typeof a&&"chat.completion.chunk"===a.object)return a;let d=a;if("string"==typeof a){let b=a.trim();if(!b)return null;let c=b.startsWith("data:")?b.slice(5).trim():b;if(!c||"[DONE]"===c)return null;try{d=JSON.parse(c)}catch{return null}}if(!d||"object"!=typeof d||!d.type)return null;c=d.model,b.responseId||(b.responseId=`chatcmpl-${Date.now()}`,b.created=Math.floor(Date.now()/1e3),b.model=b.model||c||"commandcode",b.chunkIndex=0,b.toolIndex=0,b.toolIndexById=new Map,b.openTools=new Set,b.openText=!1,b.finishReason=null,b.usage=null);let e=[];switch(d.type){case"text-delta":{let a=d.text||d.delta||"";if(!a)break;let c=0===b.chunkIndex?{role:"assistant",content:a}:{content:a};b.chunkIndex++,b.openText=!0,e.push(f(b,c));break}case"reasoning-delta":{let a=d.text||"";if(!a)break;let c=0===b.chunkIndex?{role:"assistant",reasoning_content:a}:{reasoning_content:a};b.chunkIndex++,e.push(f(b,c));break}case"tool-input-start":{let a=d.id||d.toolCallId||`call_${Date.now()}_${b.toolIndex}`,c=b.toolIndexById.get(a);null==c&&(c=b.toolIndex++,b.toolIndexById.set(a,c)),b.openTools.add(a);let g={...0===b.chunkIndex?{role:"assistant"}:{},tool_calls:[{index:c,id:a,type:"function",function:{name:d.toolName||"",arguments:""}}]};b.chunkIndex++,e.push(f(b,g));break}case"tool-input-delta":{let a=d.id||d.toolCallId,c=b.toolIndexById.get(a);if(null==c)break;let g={tool_calls:[{index:c,function:{arguments:d.delta||d.inputTextDelta||""}}]};e.push(f(b,g));break}case"tool-call":{let a=d.toolCallId;if(b.toolIndexById.has(a))break;let c=b.toolIndex++;b.toolIndexById.set(a,c);let g="string"==typeof d.input?d.input:JSON.stringify(d.input??{}),h={...0===b.chunkIndex?{role:"assistant"}:{},tool_calls:[{index:c,id:a,type:"function",function:{name:d.toolName||"",arguments:g}}]};b.chunkIndex++,e.push(f(b,h));break}case"finish-step":b.finishReason=g(d.finishReason),d.usage&&(b.usage=d.usage);break;case"finish":{let a=b.finishReason||g(d.finishReason||"stop"),c=f(b,{},a),h=d.totalUsage||b.usage;h&&(c.usage={prompt_tokens:h.inputTokens??0,completion_tokens:h.outputTokens??0,total_tokens:h.totalTokens??(h.inputTokens??0)+(h.outputTokens??0)}),e.push(c);break}case"error":{b.finishReason="stop";let a=d.error??d.message??"unknown",c="string"==typeof a?a:JSON.stringify(a);e.push(f(b,{content:`
|
|
62
|
+
Respond ONLY with the JSON object, no other text.`)}else"json_object"===a.type&&j.push("You must respond with valid JSON. Respond ONLY with a JSON object, no other text.")}let k={type:"text",text:f.Co};if(j.length>0?h.system=[k,{type:"text",text:j.join("\n"),cache_control:{type:"ephemeral",ttl:"1h"}}]:h.system=[k],b.tools&&Array.isArray(b.tools)){for(let a of(h.tools=[],b.tools)){let b=a.type;if(b&&"function"!==b){h.tools.push(a);continue}let c=a.function??a,d=c.name,f=""+d;e.set(f,d),h.tools.push({name:f,description:c.description||"",input_schema:c.parameters||c.input_schema||{type:"object",properties:{},required:[]}})}h.tools.length>0&&(h.tools[h.tools.length-1].cache_control={type:"ephemeral",ttl:"1h"})}if(b.tool_choice&&(h.tool_choice=(d=b.tool_choice)?"object"==typeof d&&d.type?d:"auto"===d||"none"===d?{type:"auto"}:"required"===d?{type:"any"}:"object"==typeof d&&d.function?{type:"tool",name:d.function.name}:{type:"auto"}:{type:"auto"}),b.thinking&&(h.thinking={type:b.thinking.type||"enabled",...b.thinking.budget_tokens&&{budget_tokens:b.thinking.budget_tokens},...b.thinking.max_tokens&&{max_tokens:b.thinking.max_tokens}}),b.reasoning_effort&&!h.thinking){let a={none:0,low:4096,medium:8192,high:16384,xhigh:32768}[b.reasoning_effort.toLowerCase()];0===a||a&&(h.thinking={type:"enabled",budget_tokens:a})}return e.size>0&&(h._toolNameMap=e),h}function i(a){return"string"==typeof a?a:Array.isArray(a)?a.filter(a=>"text"===a.type).map(a=>a.text).join("\n"):""}function j(a,b,c){let d=h(a,b,c);return d.system&&Array.isArray(d.system)&&(d.system=d.system.filter(a=>!a.text||!a.text.includes("You are Claude Code")),0===d.system.length&&delete d.system),d.tools&&Array.isArray(d.tools)&&(d.tools=d.tools.map(a=>a.name&&a.name.startsWith("")?{...a,name:a.name.slice(0)}:a)),d.messages&&Array.isArray(d.messages)&&(d.messages=d.messages.map(a=>{if(!a.content||!Array.isArray(a.content))return a;let b=a.content.map(a=>"tool_use"===a.type&&a.name&&a.name.startsWith("")?{...a,name:a.name.slice(0)}:a);return{...a,content:b}})),d}(0,d.kz)(e.h.OPENAI,e.h.CLAUDE,h,null)},29675:(a,b,c)=>{c.r(b),c.d(b,{claudeToOpenAIResponse:()=>g});var d=c(46992),e=c(14170);function f(a,b,c=null){return{id:`chatcmpl-${a.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:a.model,choices:[{index:0,delta:b,finish_reason:c}]}}function g(a,b){if(!a)return null;let c=[];switch(a.type){case"message_start":b.messageId=a.message?.id||`msg_${Date.now()}`,b.model=a.message?.model,b.toolCallIndex=0,c.push(f(b,{role:"assistant"}));break;case"content_block_start":{let d=a.content_block;if(d?.type==="server_tool_use"){b.serverToolBlockIndex=a.index;break}if(d?.type==="text")b.textBlockStarted=!0;else if(d?.type==="thinking")b.inThinkingBlock=!0,b.currentBlockIndex=a.index,c.push(f(b,{content:"<think>"}));else if(d?.type==="tool_use"){let e=b.toolCallIndex++,g=b.toolNameMap?.get(d.name)||d.name,h={index:e,id:d.id,type:"function",function:{name:g,arguments:""}};b.toolCalls.set(a.index,h),c.push(f(b,{tool_calls:[h]}))}break}case"content_block_delta":{if(a.index===b.serverToolBlockIndex)break;let d=a.delta;if(d?.type==="text_delta"&&d.text)c.push(f(b,{content:d.text}));else if(d?.type==="thinking_delta"&&d.thinking)c.push(f(b,{reasoning_content:d.thinking}));else if(d?.type==="input_json_delta"&&d.partial_json){let e=b.toolCalls.get(a.index);e&&(e.function.arguments+=d.partial_json,c.push(f(b,{tool_calls:[{index:e.index,id:e.id,function:{arguments:d.partial_json}}]})))}break}case"content_block_stop":if(a.index===b.serverToolBlockIndex){b.serverToolBlockIndex=-1;break}b.inThinkingBlock&&a.index===b.currentBlockIndex&&(c.push(f(b,{content:"</think>"})),b.inThinkingBlock=!1),b.textBlockStarted=!1,b.thinkingBlockStarted=!1;break;case"message_delta":if(a.usage&&"object"==typeof a.usage){let c="number"==typeof a.usage.input_tokens?a.usage.input_tokens:0,d="number"==typeof a.usage.output_tokens?a.usage.output_tokens:0,e="number"==typeof a.usage.cache_read_input_tokens?a.usage.cache_read_input_tokens:0,f="number"==typeof a.usage.cache_creation_input_tokens?a.usage.cache_creation_input_tokens:0,g=c+e+f;b.usage={prompt_tokens:g,completion_tokens:d,total_tokens:g+d,input_tokens:c,output_tokens:d},e>0&&(b.usage.cache_read_input_tokens=e),f>0&&(b.usage.cache_creation_input_tokens=f)}if(a.delta?.stop_reason){b.finishReason=function(a){switch(a){case"end_turn":case"stop_sequence":default:return"stop";case"max_tokens":return"length";case"tool_use":return"tool_calls"}}(a.delta.stop_reason);let d={id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{},finish_reason:b.finishReason}]};if(b.usage){d.usage={prompt_tokens:b.usage.prompt_tokens,completion_tokens:b.usage.completion_tokens,total_tokens:b.usage.total_tokens};let a=b.usage.cache_read_input_tokens,c=b.usage.cache_creation_input_tokens;(a>0||c>0)&&(d.usage.prompt_tokens_details={},a>0&&(d.usage.prompt_tokens_details.cached_tokens=a),c>0&&(d.usage.prompt_tokens_details.cache_creation_tokens=c))}c.push(d),b.finishReasonSent=!0}break;case"message_stop":if(!b.finishReasonSent){let a=b.finishReason||(b.toolCalls?.size>0?"tool_calls":"stop"),d=b.usage&&"object"==typeof b.usage?{usage:{prompt_tokens:b.usage.input_tokens||0,completion_tokens:b.usage.output_tokens||0,total_tokens:(b.usage.input_tokens||0)+(b.usage.output_tokens||0)}}:{};c.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{},finish_reason:a}],...d}),b.finishReasonSent=!0}}return c.length>0?c:null}(0,d.kz)(e.h.CLAUDE,e.h.OPENAI,null,g)},32546:(a,b,c)=>{c.r(b),c.d(b,{geminiToOpenAIResponse:()=>f});var d=c(46992),e=c(14170);function f(a,b){if(!a)return null;let c=a.response||a;if(!c||!c.candidates?.[0])return null;let d=[],e=c.candidates[0],f=e.content;if(b.messageId||(b.messageId=c.responseId||`msg_${Date.now()}`,b.model=c.modelVersion||"gemini",b.functionIndex=0,d.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{role:"assistant"},finish_reason:null}]})),f?.parts)for(let a of f.parts){let c=a.thoughtSignature||a.thought_signature,e=!0===a.thought;if(c){let c=void 0!==a.text&&""!==a.text,f=!!a.functionCall;if(c&&d.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:e?{reasoning_content:a.text}:{content:a.text},finish_reason:null}]}),f){let c=a.functionCall.name,e=b.toolNameMap?.get(c)||c,f=a.functionCall.args||{},g=b.functionIndex++,h={id:`${e}-${Date.now()}-${g}`,index:g,type:"function",function:{name:e,arguments:JSON.stringify(f)}};b.toolCalls.set(g,h),d.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{tool_calls:[h]},finish_reason:null}]})}continue}if(void 0!==a.text&&""!==a.text&&d.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{content:a.text},finish_reason:null}]}),a.functionCall){let c=a.functionCall.name,e=b.toolNameMap?.get(c)||c,f=a.functionCall.args||{},g=b.functionIndex++,h={id:`${e}-${Date.now()}-${g}`,index:g,type:"function",function:{name:e,arguments:JSON.stringify(f)}};b.toolCalls.set(g,h),d.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{tool_calls:[h]},finish_reason:null}]})}let f=a.inlineData||a.inline_data;if(f?.data){let a=f.mimeType||f.mime_type||"image/png";d.push({id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{images:[{type:"image_url",image_url:{url:`data:${a};base64,${f.data}`}}]},finish_reason:null}]})}}let g=c.usageMetadata||a.usageMetadata;if(g&&"object"==typeof g){let a="number"==typeof g.cachedContentTokenCount?g.cachedContentTokenCount:0,c="number"==typeof g.promptTokenCount?g.promptTokenCount:0,d="number"==typeof g.thoughtsTokenCount?g.thoughtsTokenCount:0,e="number"==typeof g.candidatesTokenCount?g.candidatesTokenCount:0,f="number"==typeof g.totalTokenCount?g.totalTokenCount:0;0===e&&f>0&&(e=f-c-d)<0&&(e=0),b.usage={prompt_tokens:c,completion_tokens:e+d,total_tokens:f},a>0&&(b.usage.prompt_tokens_details={cached_tokens:a}),d>0&&(b.usage.completion_tokens_details={reasoning_tokens:d})}if(e.finishReason){let a=e.finishReason.toLowerCase();"stop"===a&&b.toolCalls.size>0&&(a="tool_calls");let c={id:`chatcmpl-${b.messageId}`,object:"chat.completion.chunk",created:Math.floor(Date.now()/1e3),model:b.model,choices:[{index:0,delta:{},finish_reason:a}]};b.usage&&(c.usage=b.usage),d.push(c),b.finishReason=a}return d.length>0?d:null}(0,d.kz)(e.h.GEMINI,e.h.OPENAI,null,f),(0,d.kz)(e.h.GEMINI_CLI,e.h.OPENAI,null,f),(0,d.kz)(e.h.ANTIGRAVITY,e.h.OPENAI,null,f),(0,d.kz)(e.h.VERTEX,e.h.OPENAI,null,f)},39006:a=>{a.exports={rE:"5.5.6"}},39536:(a,b,c)=>{c.d(b,{c:()=>n});var d=c(55511),e=c.n(d),f=c(5259),g=c(35024),h=c(75924),i=c(41004),j=c(80662),k=c(39609),l=c(47593);let m=Object.freeze({"gemini-3.7-flash":"Gemini 3.7 Flash"});class n extends f.H{constructor(){super("antigravity",g.xq.antigravity)}buildUrl(a,b,c=0){let d=this.getBaseUrls(),e=d[c]||d[0];return`${e}/v1internal:${b?"streamGenerateContent?alt=sse":"generateContent"}`}buildHeaders(a,b=!0,c=null){return{"Content-Type":"application/json",Authorization:`Bearer ${a.accessToken}`,"User-Agent":this.config.headers?.["User-Agent"]||h.K["User-Agent"],[h.Ox.name]:h.Ox.value,...c&&{"X-Machine-Session-Id":c},Accept:b?"text/event-stream":"application/json"}}transformRequest(a,b,c,d){let f=d?.projectId||this.generateProjectId(),g=b.request?.contents?.map(a=>{let b=a.role;a.parts?.some(a=>a.functionResponse)&&(b="user");let c=a.parts?.filter(a=>(!a.thought||!!a.functionCall)&&(!a.thoughtSignature||!!a.functionCall||!!a.text));return b!==a.role||c?.length!==a.parts?.length?{...a,role:b,parts:c}:a}),h=b.request?.tools;if(h&&h.length>0){let a=h.flatMap(a=>(a.functionDeclarations||[]).map(a=>({...a,name:function(a){if(!a)return"_unknown";let b=a.replace(/[^a-zA-Z0-9_.:\-]/g,"_");return/^[a-zA-Z_]/.test(b)||(b="_"+b),b.substring(0,64)}(a.name),parameters:a.parameters?(0,l.Yr)(structuredClone(a.parameters)):{type:"object",properties:{reason:{type:"string",description:"Brief explanation"}},required:["reason"]}})));h=a.length>0?[{functionDeclarations:a}]:[]}let{tools:i,toolConfig:k,...m}=b.request||{},n={...m.generationConfig||{}};n.maxOutputTokens>16384&&(n.maxOutputTokens=16384);let o={...m,generationConfig:n,...g&&{contents:g},...h&&{tools:h},sessionId:b.request?.sessionId||(0,j.RF)(d?.email||d?.connectionId),safetySettings:void 0,...h?.length>0&&{toolConfig:{functionCallingConfig:{mode:"VALIDATED"}}}};return{...b,project:f,model:a,userAgent:"antigravity",requestType:"agent",requestId:`agent-${e().randomUUID()}`,request:o}}async refreshCredentials(a,b,c=null){if(!a.refreshToken)return null;try{let d=await (0,k.proxyAwareFetch)(h.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.refreshToken,client_id:this.config.clientId,client_secret:this.config.clientSecret})},c);if(!d.ok)return null;let e=await d.json();return b?.info?.("TOKEN","Antigravity refreshed"),{accessToken:e.access_token,refreshToken:e.refresh_token||a.refreshToken,expiresIn:e.expires_in,projectId:a.projectId}}catch(a){return b?.error?.("TOKEN",`Antigravity refresh error: ${a.message}`),null}}generateProjectId(){let a=["useful","bright","swift","calm","bold"][Math.floor(5*Math.random())],b=["fuze","wave","spark","flow","core"][Math.floor(5*Math.random())];return`${a}-${b}-${e().randomUUID().slice(0,5)}`}generateSessionId(){return e().randomUUID()+Date.now().toString()}parseRetryHeaders(a){if(!a?.get)return null;let b=a.get("retry-after");if(b){let a=parseInt(b,10);if(!isNaN(a)&&a>0)return 1e3*a;let c=new Date(b);if(!isNaN(c.getTime())){let a=c.getTime()-Date.now();return a>0?a:null}}let c=a.get("x-ratelimit-reset-after");if(c){let a=parseInt(c,10);if(!isNaN(a)&&a>0)return 1e3*a}let d=a.get("x-ratelimit-reset");if(d){let a=1e3*parseInt(d,10)-Date.now();return a>0?a:null}return null}parseRetryFromErrorMessage(a){if(!a||"string"!=typeof a)return null;let b=a.match(/reset after (\d+h)?(\d+m)?(\d+s)?/i);if(!b)return null;let c=0;return b[1]&&(c+=3600*parseInt(b[1])*1e3),b[2]&&(c+=60*parseInt(b[2])*1e3),b[3]&&(c+=1e3*parseInt(b[3])),c>0?c:null}async resolveDynamicModelId(a,b,c=null,d=null){let e=m[a];if(!e||!b?.accessToken)return a;let f=a=>String(a||"").trim().toLowerCase(),g=f(e);for(let e of[...new Set([...this.getBaseUrls().map(a=>`${a}/v1internal:fetchAvailableModels`),"https://cloudcode-pa.googleapis.com/v1internal:fetchAvailableModels"])])try{let i=await (0,k.proxyAwareFetch)(e,{method:"POST",headers:{Authorization:`Bearer ${b.accessToken}`,"User-Agent":this.config.headers?.["User-Agent"]||h.K["User-Agent"],"Content-Type":"application/json","X-Client-Name":"antigravity","X-Client-Version":"1.107.0","x-request-source":"local"},body:JSON.stringify(b?.projectId?{project:b.projectId}:{})},c);if(!i.ok)continue;let j=await i.json(),l=Object.entries(j?.models||{}).filter(([,a])=>!a?.isInternal),m=l.find(([,a])=>f(a?.displayName)===g);if(m||(m=l.find(([,a])=>{let b=f(a?.displayName);return b.startsWith(g)&&b.includes("high")})),m||(m=l.find(([,a])=>f(a?.displayName).startsWith(g))),m||(m=l.find(([a])=>{let b=f(a);return b.includes("gemini")&&b.includes("3.7")&&b.includes("flash")})),m?.[0]){let b=m[0];return d?.debug?.("MODEL",`Resolved Antigravity ${a} -> ${b}`),b}}catch(a){d?.debug?.("MODEL",`Antigravity model discovery failed on ${e}: ${a.message}`)}return d?.debug?.("MODEL",`No Antigravity upstream id found for ${a}; using requested id`),a}async execute({model:a,body:b,stream:c,credentials:d,signal:e,log:f,proxyOptions:g=null}){let h=await this.resolveDynamicModelId(a,d,g,f),j=this.getFallbackCount(),l=null,m=0,n={},o={};for(let a=0;a<j;a++){let p=this.buildUrl(h,c,a),q=this.transformRequest(h,b,c,d),r=q.request?.sessionId,s=this.buildHeaders(d,c,r);n[a]||(n[a]=0),o[a]||(o[a]=0);try{let b=await (0,k.proxyAwareFetch)(p,{method:"POST",headers:s,body:JSON.stringify(q),signal:e},g);if(b.status===i.gx.RATE_LIMITED||b.status===i.gx.SERVICE_UNAVAILABLE){let c=this.parseRetryHeaders(b.headers);if(!c)try{let a=await b.clone().text(),d=JSON.parse(a),e=d?.error?.message||d?.message||"";c=this.parseRetryFromErrorMessage(e)}catch(a){}if(c&&c<=1e4&&o[a]<3){o[a]++,f?.debug?.("RETRY",`${b.status} with Retry-After: ${Math.ceil(c/1e3)}s, waiting... (${o[a]}/3)`),await new Promise(a=>setTimeout(a,c)),a--;continue}if(b.status===i.gx.RATE_LIMITED&&(!c||0===c)&&n[a]<3){n[a]++;let b=Math.min(1e3*2**n[a],1e4);f?.debug?.("RETRY",`429 auto retry ${n[a]}/3 after ${b/1e3}s`),await new Promise(a=>setTimeout(a,b)),a--;continue}if(f?.debug?.("RETRY",`${b.status}, Retry-After ${c?`too long (${Math.ceil(c/1e3)}s)`:"missing"}, trying fallback`),m=b.status,a+1<j)continue}if(this.shouldRetry(b.status,a)){f?.debug?.("RETRY",`${b.status} on ${p}, trying fallback ${a+1}`),m=b.status;continue}return{response:b,url:p,headers:s,transformedBody:q}}catch(b){if(l=b,a+1<j){f?.debug?.("RETRY",`Error on ${p}, trying fallback ${a+1}`);continue}throw b}}throw l||Error(`All ${j} URLs failed with status ${m}`)}static cloakTools(a,b=null){let c=a.request?.tools;if(!c||0===c.length)return{cloakedBody:a,toolNameMap:null};let d="github-copilot"===b,e=new Map,f=[],g=new Set(o.map(a=>a.name));for(let a of c)if(a.functionDeclarations)for(let b of a.functionDeclarations){if(d&&h.J5.has(b.name)||d&&g.has(b.name))continue;if(h.J5.has(b.name)){f.push(b);continue}let a=`${b.name}${h.QH}`;e.set(a,b.name),f.push({...b,name:a})}let i=[],j=new Set;for(let a of[...f,...o])!a?.name||j.has(a.name)||(j.add(a.name),i.push(a));let k=a.request?.contents?.map(a=>{if(!a.parts)return a;let b=a.parts.map(a=>a.functionCall&&!h.J5.has(a.functionCall.name)?{...a,functionCall:{...a.functionCall,name:`${a.functionCall.name}${h.QH}`}}:a.functionResponse&&!h.J5.has(a.functionResponse.name)?{...a,functionResponse:{...a.functionResponse,name:`${a.functionResponse.name}${h.QH}`}}:a);return{...a,parts:b}});return{cloakedBody:{...a,request:{...a.request,tools:[{functionDeclarations:i}],contents:k||a.request.contents}},toolNameMap:e}}}let o=[{name:"browser_subagent",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"command_status",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"find_by_name",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"generate_image",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"grep_search",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"list_dir",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"list_resources",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"mcp_sequential-thinking_sequentialthinking",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"multi_replace_file_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"notify_user",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_resource",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_terminal",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"read_url_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"replace_file_content",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"run_command",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"search_web",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"send_command_input",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"task_boundary",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"view_content_chunk",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"view_file",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}},{name:"write_to_file",description:"This tool is currently unavailable.",parameters:{type:"OBJECT",properties:{},required:[]}}]},39551:(a,b,c)=>{c.r(b),c.d(b,{ollamaBodyToOpenAI:()=>i,ollamaToOpenAI:()=>f});var d=c(46992),e=c(14170);function f(a,b){if(!a||"object"!=typeof a)return null;b.ollama||(b.ollama={id:`chatcmpl-${Date.now()}`,created:Math.floor(Date.now()/1e3),model:a.model||b.model});let{id:c,created:d,model:e}=b.ollama;if(a.done){let f=g(a),h="stop";return("tool_calls"===a.done_reason||b.hadToolCalls)&&(h="tool_calls"),{id:c,object:"chat.completion.chunk",created:d,model:e,choices:[{index:0,delta:{},finish_reason:h}],usage:f}}let f=a.message;if(!f)return null;let i="string"==typeof f.content?f.content:"",j="string"==typeof f.thinking?f.thinking:"",k=Array.isArray(f.tool_calls)?f.tool_calls:null;if(!i&&!j&&!k)return null;i&&(b.accumulatedContent=(b.accumulatedContent||"")+i),j&&(b.accumulatedThinking=(b.accumulatedThinking||"")+j);let l={};return i&&(l.content=i),j&&(l.reasoning_content=j),k&&(b.hadToolCalls=!0,l.tool_calls=h(k)),{id:c,object:"chat.completion.chunk",created:d,model:e,choices:[{index:0,delta:l,finish_reason:null}]}}function g(a){return{prompt_tokens:a.prompt_eval_count||0,completion_tokens:a.eval_count||0,total_tokens:(a.prompt_eval_count||0)+(a.eval_count||0)}}function h(a){return a.map((a,b)=>({index:a.function?.index??b,id:a.id||`call_${b}_${Date.now()}`,type:"function",function:{name:a.function?.name||"",arguments:"string"==typeof a.function?.arguments?a.function.arguments:JSON.stringify(a.function?.arguments||{})}}))}function i(a){let b=a.message||{},c=b.content||"",d=b.thinking||"",e=Array.isArray(b.tool_calls)?b.tool_calls:[],f={role:"assistant"};c&&(f.content=c),d&&(f.reasoning_content=d),e.length>0&&(f.tool_calls=h(e)),f.content||f.tool_calls||(f.content="");let i=a.done_reason||"stop";return e.length>0&&(i="tool_calls"),{id:`chatcmpl-${Date.now()}`,object:"chat.completion",created:Math.floor(Date.now()/1e3),model:a.model||"ollama",choices:[{index:0,message:f,finish_reason:i}],usage:g(a)}}(0,d.kz)(e.h.OLLAMA,e.h.OPENAI,null,f)},42654:(a,b,c)=>{c.d(b,{m:()=>d});function d(a){return"string"==typeof a?[{type:"message",role:"user",content:[{type:"input_text",text:""===a.trim()?"...":a}]}]:Array.isArray(a)?0===a.length?[{type:"message",role:"user",content:[{type:"input_text",text:"..."}]}]:a:null}},46992:(a,b,c)=>{c.d(b,{Ws:()=>x,Ai:()=>y,nZ:()=>w,kz:()=>s,GH:()=>u,Y8:()=>v});var d=c(14170);let e=/^[a-zA-Z0-9_-]+$/;function f(a=0,b=0,c=""){let d=c?`_${c.replace(/[^a-zA-Z0-9_-]/g,"")}`:"";return`call_msg${a}_tc${b}${d}`}function g(a){if(!a||"string"!=typeof a)return null;let b=a.replace(/[^a-zA-Z0-9_-]/g,"");return b.length>0?b:null}var h=c(96281);c(3156);var i=c(55399),j=c(80662);let k=new Set(["minimax","minimax-cn"]),l=/(^|\r?\n)[ \t]*<total_tokens>[ \t]*[\d,]+[ \t]+tokens[ \t]+left[ \t]*<\/total_tokens>[ \t]*(?=\r?\n|$)/gi;function m(a){return"string"==typeof a&&0!==a.length&&a.includes("<total_tokens>")?a.replace(l,"$1"):a}let n=["text","image_url","image","input_audio","audio_url"];var o=c(57647);c(39536);let p=new Map,q=new Map,r=!1;function s(a,b,c,d){let e=`${a}:${b}`;c&&p.set(e,c),d&&q.set(e,d)}function t(){r||(r=!0,c(60983),c(19979),c(52638),c(97102),c(59611),c(54817),c(65377),c(10010),c(13595),c(74447),c(97821),c(29675),c(66159),c(32546),c(89475),c(86368),c(52830),c(65651),c(39551),c(47723))}function u(a,b,c,l,q=!0,r=null,s=null,v=null,w=[],x=null,y=null){t();let z=structuredClone(l);if(a===d.h.CLAUDE&&b!==d.h.CLAUDE&&(z=function(a){if(!a||"object"!=typeof a)return a;let b=function(a){if("string"==typeof a)return m(a);if(!Array.isArray(a))return a;let b=!1,c=a.map(a=>{if(!a||"text"!==a.type||"string"!=typeof a.text)return a;let c=m(a.text);return c===a.text?a:(b=!0,{...a,text:c})});return b?c:a}(a.system),c=a.messages;if(Array.isArray(a.messages)){let b=!1,d=a.messages.map(a=>{let c=function(a){if(!a||"assistant"!==a.role&&"system"!==a.role)return a;if("string"==typeof a.content){let b=m(a.content);return b===a.content?a:{...a,content:b}}if(!Array.isArray(a.content))return a;let b=!1,c=a.content.map(a=>{if(!a||"text"!==a.type||"string"!=typeof a.text)return a;let c=m(a.text);return c===a.text?a:(b=!0,{...a,text:c})});return b?{...a,content:c}:a}(a);return c!==a&&(b=!0),c});b&&(c=d)}let d=b!==a.system,e=c!==a.messages;return d||e?{...a,...d?{system:b}:{},...e?{messages:c}:{}}:a}(z)),!function(a,b=[]){if(!b.length||!a.messages||!Array.isArray(a.messages))return;let c=new Set(["image_url","image"]),d=new Set(["audio_url","input_audio"]),e=a=>c.has(a)?b.includes("image"):!!d.has(a)&&b.includes("audio");for(let b of a.messages)Array.isArray(b.content)&&(b.content=b.content.filter(a=>!e(a.type)),0===b.content.length&&(b.content=""))}(z,w),(0,o.SZ)(z),!function(a){if(a.messages&&Array.isArray(a.messages))for(let b=0;b<a.messages.length;b++){let c=a.messages[b];if("assistant"===c.role&&c.tool_calls&&Array.isArray(c.tool_calls))for(let a=0;a<c.tool_calls.length;a++){let d=c.tool_calls[a];if(!d.id||!e.test(d.id)){let c=g(d.id);d.id=c||f(b,a,d.function?.name)}d.type||(d.type="function"),d.function?.arguments&&"string"!=typeof d.function.arguments&&(d.function.arguments=JSON.stringify(d.function.arguments))}if("tool"===c.role&&c.tool_call_id&&!e.test(c.tool_call_id)){let a=g(c.tool_call_id);c.tool_call_id=a||f(b,0)}if(Array.isArray(c.content))for(let a=0;a<c.content.length;a++){let d=c.content[a];if("tool_use"===d.type&&d.id&&!e.test(d.id)){let c=g(d.id);d.id=c||f(b,a,d.name)}if("tool_result"===d.type&&d.tool_use_id&&!e.test(d.tool_use_id)){let c=g(d.tool_use_id);d.tool_use_id=c||f(b,a)}}}}(z),!function(a){if(!a.messages||!Array.isArray(a.messages))return;let b=[];for(let c=0;c<a.messages.length;c++){let d=a.messages[c],e=a.messages[c+1];b.push(d);let f=function(a){if("assistant"!==a.role)return[];let b=[];if(a.tool_calls&&Array.isArray(a.tool_calls))for(let c of a.tool_calls)c.id&&b.push(c.id);if(Array.isArray(a.content))for(let c of a.content)"tool_use"===c.type&&c.id&&b.push(c.id);return b}(d);if(0!==f.length&&e&&!function(a,b){if(!a||!b.length)return!1;if("tool"===a.role&&a.tool_call_id)return b.includes(a.tool_call_id);if("user"===a.role&&Array.isArray(a.content)){for(let c of a.content)if("tool_result"===c.type&&b.includes(c.tool_use_id))return!0}return!1}(e,f))for(let a of f)b.push({role:"tool",tool_call_id:a,content:""})}a.messages=b}(z),a!==b){if(a!==d.h.OPENAI){let b=p.get(`${a}:${d.h.OPENAI}`);b&&(z=b(c,z,q,r),v?.logOpenAIRequest?.(z))}if(b!==d.h.OPENAI){let a=p.get(`${d.h.OPENAI}:${b}`);a&&(z=a(c,z,q,r))}}if(b===d.h.OPENAI&&(z=function(a){if(!a.messages||!Array.isArray(a.messages))return a;if(a.messages=a.messages.map(a=>{if("developer"===a.role&&(a={...a,role:"system"}),"tool"===a.role||"assistant"===a.role&&a.tool_calls||"string"==typeof a.content)return a;if(Array.isArray(a.content)){let b=[];for(let c of a.content)if("thinking"!==c.type&&"redacted_thinking"!==c.type){if(n.includes(c.type)){let{signature:a,cache_control:d,...e}=c;b.push(e)}else if("tool_use"===c.type)continue;else if("tool_result"===c.type){let{signature:a,cache_control:d,...e}=c;b.push(e)}}return 0===b.length&&b.push({type:"text",text:""}),{...a,content:b}}return a}),a.messages=a.messages.filter(a=>"tool"===a.role||"assistant"===a.role&&!!a.tool_calls||("string"==typeof a.content?""!==a.content.trim():!Array.isArray(a.content)||a.content.some(a=>"text"===a.type&&a.text?.trim()||"text"!==a.type))),a.messages=function(a){let b,c=[];for(let b=0;b<a.length;b++)a[b]?.role==="system"&&c.push(b);if(0===c.length||1===c.length&&0===c[0])return a;let d=c.map(b=>a[b]);if(d.some(a=>Array.isArray(a.content)))for(let a of(b=[],d))"string"==typeof a.content?a.content&&b.push({type:"text",text:a.content}):Array.isArray(a.content)&&b.push(...a.content);else b=d.map(a=>"string"==typeof a.content?a.content:"").filter(Boolean).join("\n\n");let e=new Set(c);return[{...d[0],content:b},...a.filter((a,b)=>!e.has(b))]}(a.messages),a.tools&&Array.isArray(a.tools)&&0===a.tools.length&&delete a.tools,a.tools&&Array.isArray(a.tools)&&a.tools.length>0&&(a.tools=a.tools.map(a=>"function"===a.type&&a.function?a:a.name&&(a.input_schema||a.description)?{type:"function",function:{name:a.name,description:String(a.description||""),parameters:a.input_schema||{type:"object",properties:{}}}}:a.functionDeclarations&&Array.isArray(a.functionDeclarations)?a.functionDeclarations.map(a=>({type:"function",function:{name:a.name,description:String(a.description||""),parameters:a.parameters||{type:"object",properties:{}}}})):a).flat()),a.tool_choice&&"object"==typeof a.tool_choice){let b=a.tool_choice;"auto"===b.type?a.tool_choice="auto":"any"===b.type?a.tool_choice="required":"tool"===b.type&&b.name&&(a.tool_choice={type:"function",function:{name:b.name}})}return a}(z)),b===d.h.CLAUDE&&(z=function(a,b=null,c=null,d=null){if(k.has(b)&&delete a.output_config,a.system&&Array.isArray(a.system)&&(a.system=a.system.map((b,c)=>{let{cache_control:d,...e}=b;return c===a.system.length-1?{...e,cache_control:{type:"ephemeral",ttl:"1h"}}:e})),a.messages&&Array.isArray(a.messages)){let c=a.messages.length,d=[];for(let b=0;b<c;b++){let e=a.messages[b];if(Array.isArray(e.content))for(let a of e.content)delete a.cache_control;(b===c-1&&"assistant"===e.role||"string"==typeof e.content&&e.content.trim()||Array.isArray(e.content)&&e.content.some(a=>"text"===a.type&&a.text?.trim()||"tool_use"===a.type||"tool_result"===a.type))&&d.push(e)}d=function(a){if(a.length<=1)return a;for(let b of a)if("assistant"===b.role&&Array.isArray(b.content)&&b.content.some(a=>"tool_use"===a.type)){let a=[],c=!1;for(let d of b.content)"tool_use"===d.type?(c=!0,a.push(d)):"thinking"===d.type||"redacted_thinking"===d.type?a.push(d):c||a.push(d);b.content=a}let b=[];for(let c of a){let a=b[b.length-1];if(a&&a.role===c.role){let b=Array.isArray(a.content)?a.content:[{type:"text",text:a.content}],d=Array.isArray(c.content)?c.content:[{type:"text",text:c.content}];a.content=[...b.filter(a=>"tool_result"===a.type),...d.filter(a=>"tool_result"===a.type),...b.filter(a=>"tool_result"!==a.type),...d.filter(a=>"tool_result"!==a.type)]}else{let a=Array.isArray(c.content)?c.content:[{type:"text",text:c.content}];b.push({role:c.role,content:[...a]})}}return b}(d),a.messages=d;let e=d[d.length-1],f=e?.role==="user",g=a.thinking?.type==="enabled"&&f,i=!1;for(let a=d.length-1;a>=0;a--){let c=d[a];if("assistant"===c.role&&Array.isArray(c.content)){if(!i&&c.content.length>0){for(let a=c.content.length-1;a>=0;a--){let b=c.content[a];if("thinking"!==b.type&&"redacted_thinking"!==b.type){b.cache_control={type:"ephemeral"};break}}i=!0}if("claude"===b||b?.startsWith("anthropic-compatible")){let a=!1,b=!1;for(let d of c.content)("thinking"===d.type||"redacted_thinking"===d.type)&&(d.signature=h.xr,b=!0),"tool_use"===d.type&&(a=!0);g&&!b&&a&&c.content.unshift({type:"thinking",thinking:".",signature:h.xr})}}}}if(a.tools&&Array.isArray(a.tools)&&("claude"!==b&&(a.tools=a.tools.filter(a=>!a.type||"function"===a.type)),a.tools=a.tools.map((b,c)=>{let{cache_control:d,...e}=b;return c===a.tools.length-1?{...e,cache_control:{type:"ephemeral",ttl:"1h"}}:e}),0===a.tools.length&&(delete a.tools,delete a.tool_choice)),("claude"===b||b?.startsWith("anthropic-compatible"))&&c){let b=d?(0,j.RF)(d):null;a=(0,i.fO)(a,c,b)}return a}(z,s,r?.accessToken||r?.apiKey||null,x)),"claude"===s){let a=r?.accessToken||r?.apiKey||null;if(a?.includes("sk-ant-oat")){let{body:a,toolNameMap:b}=(0,i.Az)(z);z=a,b?.size>0&&(z._toolNameMap=b)}}return z}function v(a,b,c,e){if(t(),b===a)return[c];let f=[c],g=null;if(a!==d.h.OPENAI){let b=q.get(`${a}:${d.h.OPENAI}`);if(b){f=[];let a=b(c,e);a&&(g=f=Array.isArray(a)?a:[a])}}if(b!==d.h.OPENAI){let a=q.get(`${d.h.OPENAI}:${b}`);if(a){let b=[];for(let c of f){let d=a(c,e);d&&b.push(...Array.isArray(d)?d:[d])}f=b}}return g&&b!==d.h.OPENAI&&a!==d.h.OPENAI&&(f._openaiIntermediate=g),f}function w(a,b){return a!==b}function x(a){let b={messageId:null,model:null,textBlockStarted:!1,thinkingBlockStarted:!1,inThinkingBlock:!1,currentBlockIndex:null,toolCalls:new Map,finishReason:null,finishReasonSent:!1,usage:null,contentBlockIndex:-1};return a===d.h.OPENAI_RESPONSES?{...b,seq:0,responseId:`resp_${Date.now()}`,created:Math.floor(Date.now()/1e3),started:!1,msgTextBuf:{},msgItemAdded:{},msgContentAdded:{},msgItemDone:{},reasoningId:"",reasoningIndex:-1,reasoningBuf:"",reasoningPartAdded:!1,reasoningDone:!1,reasoningSeq:0,inThinking:!1,funcArgsBuf:{},funcNames:{},funcCallIds:{},funcArgsDone:{},funcItemDone:{},completedSent:!1,nextOutputIndex:0,msgOutputIndex:{},funcOutputIndex:{},outputItems:[]}:b}function y(){t()}},47593:(a,b,c)=>{c.d(b,{KZ:()=>i,S6:()=>f,Yr:()=>m,f6:()=>j,fc:()=>e,kU:()=>g,pT:()=>h,w_:()=>k});let d=["minLength","maxLength","exclusiveMinimum","exclusiveMaximum","minItems","maxItems","format","default","examples","$schema","$defs","definitions","const","$ref","$comment","additionalProperties","propertyNames","patternProperties","enumDescriptions","anyOf","oneOf","allOf","not","dependencies","dependentSchemas","dependentRequired","title","if","then","else","contentMediaType","contentEncoding","cornerRadius","fillColor","fontFamily","fontSize","fontWeight","gap","padding","strokeColor","strokeThickness","textColor"],e=[{category:"HARM_CATEGORY_HATE_SPEECH",threshold:"OFF"},{category:"HARM_CATEGORY_DANGEROUS_CONTENT",threshold:"OFF"},{category:"HARM_CATEGORY_SEXUALLY_EXPLICIT",threshold:"OFF"},{category:"HARM_CATEGORY_HARASSMENT",threshold:"OFF"},{category:"HARM_CATEGORY_CIVIC_INTEGRITY",threshold:"OFF"}];function f(a){let b=[];if("string"==typeof a)b.push({text:a});else if(Array.isArray(a)){for(let c of a)if("text"===c.type)b.push({text:c.text});else if("image_url"===c.type&&c.image_url?.url?.startsWith("data:")){let a=c.image_url.url,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d),e=a.substring(d+1),f=c.split(";")[0];b.push({inlineData:{mime_type:f,data:e}})}}else if("image_url"===c.type&&c.image_url?.url&&(c.image_url.url.startsWith("http://")||c.image_url.url.startsWith("https://")))b.push({fileData:{fileUri:c.image_url.url,mimeType:"image/*"}});else if("input_audio"===c.type&&c.input_audio?.data){let a=c.input_audio.format||"wav",d="mp3"===a?"audio/mpeg":`audio/${a}`;b.push({inlineData:{mime_type:d,data:c.input_audio.data}})}else if("audio_url"===c.type&&c.audio_url?.url?.startsWith("data:")){let a=c.audio_url.url,d=a.indexOf(",");if(-1!==d){let c=a.substring(5,d),e=a.substring(d+1),f=c.split(";")[0];b.push({inlineData:{mime_type:f,data:e}})}}}return b}function g(a){return"string"==typeof a?a:Array.isArray(a)?a.filter(a=>"text"===a.type).map(a=>a.text).join(""):""}function h(a){if("string"!=typeof a)return a;try{return JSON.parse(a)}catch{return null}}function i(){return`agent-${crypto.randomUUID()}`}function j(){return crypto.randomUUID()+Date.now().toString()}function k(){let a=["useful","bright","swift","calm","bold"],b=["fuze","wave","spark","flow","core"],c=a[Math.floor(Math.random()*a.length)],d=b[Math.floor(Math.random()*b.length)];return`${c}-${d}-${crypto.randomUUID().slice(0,5)}`}function l(a){let b=0,c=-1;for(let d=0;d<a.length;d++){let e=a[d],f=0,g=e.type;"object"===g||e.properties?f=3:"array"===g||e.items?f=2:g&&"null"!==g&&(f=1),f>c&&(c=f,b=d)}return b}function m(a){return a&&"object"==typeof a&&(!function a(b){if(b&&"object"==typeof b)for(let c of(void 0===b.const||b.enum||(b.enum=[b.const],delete b.const),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b){if(b&&"object"==typeof b)for(let c of(b.enum&&Array.isArray(b.enum)&&(b.enum=b.enum.map(a=>String(a)),b.type||(b.type="string")),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b){if(b&&"object"==typeof b){if(b.allOf&&Array.isArray(b.allOf)){let a={};for(let c of b.allOf)if(c.properties&&(a.properties||(a.properties={}),Object.assign(a.properties,c.properties)),c.required&&Array.isArray(c.required))for(let b of(a.required||(a.required=[]),c.required))a.required.includes(b)||a.required.push(b);delete b.allOf,a.properties&&(b.properties={...b.properties,...a.properties}),a.required&&(b.required=[...b.required||[],...a.required])}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b){if(b.anyOf&&Array.isArray(b.anyOf)&&b.anyOf.length>0){let a=b.anyOf.filter(a=>a&&"null"!==a.type);if(a.length>0){let c=l(a),d=a[c];delete b.anyOf,Object.assign(b,d)}}if(b.oneOf&&Array.isArray(b.oneOf)&&b.oneOf.length>0){let a=b.oneOf.filter(a=>a&&"null"!==a.type);if(a.length>0){let c=l(a),d=a[c];delete b.oneOf,Object.assign(b,d)}}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b){if(b.type&&Array.isArray(b.type)){let a=b.type.filter(a=>"null"!==a);b.type=a.length>0?a[0]:"string"}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b)for(let c of(b.properties&&!b.type&&(b.type="object"),Object.values(b)))c&&"object"==typeof c&&a(c)}(a),!function a(b,c){if(b&&"object"==typeof b){if(Array.isArray(b)){for(let d of b)a(d,c);return}for(let d of Object.keys(b)){if(c.includes(d)||d.startsWith("x-")){delete b[d];continue}let e=b[d];e&&"object"==typeof e&&a(e,c)}}}(a,d),!function a(b){if(b&&"object"==typeof b){if(b.required&&Array.isArray(b.required)&&b.properties){let a=b.required.filter(a=>Object.prototype.hasOwnProperty.call(b.properties,a));0===a.length?delete b.required:b.required=a}for(let c of Object.values(b))c&&"object"==typeof c&&a(c)}}(a),!function a(b){if(b&&"object"==typeof b)for(let c of("object"!==b.type||b.properties&&0!==Object.keys(b.properties).length||(b.properties={reason:{type:"string",description:"Brief explanation of why you are calling this tool"}},b.required=["reason"]),Object.values(b)))c&&"object"==typeof c&&a(c)}(a)),a}},47723:(a,b,c)=>{c.r(b),c.d(b,{convertCommandCodeToOpenAI:()=>h});var d=c(46992),e=c(14170);function f(a,b,c=null){return{id:a.responseId,object:"chat.completion.chunk",created:a.created,model:a.model,choices:[{index:0,delta:b,finish_reason:c}]}}function g(a){switch(a){case"stop":case"error":return"stop";case"length":return"length";case"tool-calls":case"tool_use":return"tool_calls";case"content-filter":return"content_filter";default:return a||"stop"}}function h(a,b){var c;if(!a)return null;if(a&&"object"==typeof a&&"chat.completion.chunk"===a.object)return a;let d=a;if("string"==typeof a){let b=a.trim();if(!b)return null;let c=b.startsWith("data:")?b.slice(5).trim():b;if(!c||"[DONE]"===c)return null;try{d=JSON.parse(c)}catch{return null}}if(!d||"object"!=typeof d||!d.type)return null;c=d.model,b.responseId||(b.responseId=`chatcmpl-${Date.now()}`,b.created=Math.floor(Date.now()/1e3),b.model=b.model||c||"commandcode",b.chunkIndex=0,b.toolIndex=0,b.toolIndexById=new Map,b.openTools=new Set,b.openText=!1,b.finishReason=null,b.usage=null);let e=[];switch(d.type){case"text-delta":{let a=d.text||d.delta||"";if(!a)break;let c=0===b.chunkIndex?{role:"assistant",content:a}:{content:a};b.chunkIndex++,b.openText=!0,e.push(f(b,c));break}case"reasoning-delta":{let a=d.text||"";if(!a)break;let c=0===b.chunkIndex?{role:"assistant",reasoning_content:a}:{reasoning_content:a};b.chunkIndex++,e.push(f(b,c));break}case"tool-input-start":{let a=d.id||d.toolCallId||`call_${Date.now()}_${b.toolIndex}`,c=b.toolIndexById.get(a);null==c&&(c=b.toolIndex++,b.toolIndexById.set(a,c)),b.openTools.add(a);let g={...0===b.chunkIndex?{role:"assistant"}:{},tool_calls:[{index:c,id:a,type:"function",function:{name:d.toolName||"",arguments:""}}]};b.chunkIndex++,e.push(f(b,g));break}case"tool-input-delta":{let a=d.id||d.toolCallId,c=b.toolIndexById.get(a);if(null==c)break;let g={tool_calls:[{index:c,function:{arguments:d.delta||d.inputTextDelta||""}}]};e.push(f(b,g));break}case"tool-call":{let a=d.toolCallId;if(b.toolIndexById.has(a))break;let c=b.toolIndex++;b.toolIndexById.set(a,c);let g="string"==typeof d.input?d.input:JSON.stringify(d.input??{}),h={...0===b.chunkIndex?{role:"assistant"}:{},tool_calls:[{index:c,id:a,type:"function",function:{name:d.toolName||"",arguments:g}}]};b.chunkIndex++,e.push(f(b,h));break}case"finish-step":b.finishReason=g(d.finishReason),d.usage&&(b.usage=d.usage);break;case"finish":{let a=b.finishReason||g(d.finishReason||"stop"),c=f(b,{},a),h=d.totalUsage||b.usage;h&&(c.usage={prompt_tokens:h.inputTokens??0,completion_tokens:h.outputTokens??0,total_tokens:h.totalTokens??(h.inputTokens??0)+(h.outputTokens??0)}),e.push(c);break}case"error":{b.finishReason="stop";let a=d.error??d.message??"unknown",c="string"==typeof a?a:JSON.stringify(a);e.push(f(b,{content:`
|
|
63
63
|
|
|
64
64
|
[CommandCode error: ${c}]`})),e.push(f(b,{},"stop"))}}return e.length?e:null}(0,d.kz)(e.h.COMMANDCODE,e.h.OPENAI,null,h)},52638:(a,b,c)=>{c.r(b),c.d(b,{geminiToOpenAIRequest:()=>g});var d=c(46992),e=c(14170),f=c(3156);function g(a,b,c){let d={model:a,messages:[],stream:c};if(b.generationConfig){let a=b.generationConfig;if(a.maxOutputTokens){let c={max_tokens:a.maxOutputTokens,tools:b.tools};d.max_tokens=(0,f.M)(c)}void 0!==a.temperature&&(d.temperature=a.temperature),void 0!==a.topP&&(d.top_p=a.topP)}if(b.systemInstruction){var e;let a="string"==typeof(e=b.systemInstruction)?e:e.parts&&Array.isArray(e.parts)?e.parts.map(a=>a.text||"").join(""):"";a&&d.messages.push({role:"system",content:a})}if(b.contents&&Array.isArray(b.contents))for(let a of b.contents){let b=function(a){let b="user"===a.role?"user":"assistant";if(!a.parts||!Array.isArray(a.parts))return null;let c=[],d=[];for(let b of a.parts)if(void 0!==b.text&&c.push({type:"text",text:b.text}),b.inlineData&&c.push({type:"image_url",image_url:{url:`data:${b.inlineData.mimeType};base64,${b.inlineData.data}`}}),b.functionCall&&d.push({id:`call_${Date.now()}_${Math.random().toString(36).slice(2,8)}`,type:"function",function:{name:b.functionCall.name,arguments:JSON.stringify(b.functionCall.args||{})}}),b.functionResponse)return{role:"tool",tool_call_id:b.functionResponse.id||b.functionResponse.name,content:JSON.stringify(b.functionResponse.response?.result||b.functionResponse.response||{})};if(d.length>0){let a={role:"assistant"};return c.length>0&&(a.content=1===c.length?c[0].text:c),a.tool_calls=d,a}return c.length>0?{role:b,content:1===c.length&&"text"===c[0].type?c[0].text:c}:null}(a);b&&d.messages.push(b)}if(b.tools&&Array.isArray(b.tools)){for(let a of(d.tools=[],b.tools))if(a.functionDeclarations)for(let b of a.functionDeclarations)d.tools.push({type:"function",function:{name:b.name,description:b.description||"",parameters:b.parameters||{type:"object",properties:{}}}})}return d}(0,d.kz)(e.h.GEMINI,e.h.OPENAI,g,null),(0,d.kz)(e.h.GEMINI_CLI,e.h.OPENAI,g,null)},52830:(a,b,c)=>{c.r(b),c.d(b,{convertKiroToOpenAI:()=>f});var d=c(46992),e=c(14170);function f(a,b){if(!a)return null;if("chat.completion.chunk"===a.object&&a.choices)return a;let c=a;if("string"==typeof a){let b=a.split("\n"),d="",e="";for(let a of b)a.startsWith("event:")?d=a.slice(6).trim():a.startsWith(":event-type:")?d=a.slice(12).trim():a.startsWith("data:")?e=a.slice(5).trim():a.startsWith(":content-type:")||a.trim()&&!a.startsWith(":")&&(e=a.trim());if(!e)return null;try{(c=JSON.parse(e))._eventType=d}catch{c={text:e,_eventType:d}}}b.responseId||(b.responseId=`chatcmpl-${Date.now()}`,b.created=Math.floor(Date.now()/1e3),b.chunkIndex=0);let d=c._eventType||c.event||"";if("assistantResponseEvent"===d||c.assistantResponseEvent){let a=c.assistantResponseEvent?.content||c.content||"";if(!a)return null;let d={id:b.responseId,object:"chat.completion.chunk",created:b.created,model:b.model||"kiro",choices:[{index:0,delta:{...0===b.chunkIndex?{role:"assistant"}:{},content:a},finish_reason:null}]};return b.chunkIndex++,d}if("reasoningContentEvent"===d||c.reasoningContentEvent){let a=c.reasoningContentEvent||c,d="string"==typeof a?a:a.text||a.content||c.content||"";if(!d)return null;let e={id:b.responseId,object:"chat.completion.chunk",created:b.created,model:b.model||"kiro",choices:[{index:0,delta:{...0===b.chunkIndex?{role:"assistant"}:{},reasoning_content:d},finish_reason:null}]};return b.chunkIndex++,e}if("toolUseEvent"===d||c.toolUseEvent){let a=c.toolUseEvent||c,d=a.toolUseId||`call_${Date.now()}`,e=a.name||"",f=a.input||{},g={id:b.responseId,object:"chat.completion.chunk",created:b.created,model:b.model||"kiro",choices:[{index:0,delta:{...0===b.chunkIndex?{role:"assistant"}:{},tool_calls:[{index:0,id:d,type:"function",function:{name:e,arguments:JSON.stringify(f)}}]},finish_reason:null}]};return b.chunkIndex++,g}if("messageStopEvent"===d||"done"===d||c.messageStopEvent){b.finishReason="stop";let a={id:b.responseId,object:"chat.completion.chunk",created:b.created,model:b.model||"kiro",choices:[{index:0,delta:{},finish_reason:"stop"}]};return b.usage&&"object"==typeof b.usage&&(a.usage=b.usage),a}if("usageEvent"===d||c.usageEvent){let a=c.usageEvent||c;a&&"object"==typeof a&&(b.usage={prompt_tokens:a.inputTokens||0,completion_tokens:a.outputTokens||0,total_tokens:(a.inputTokens||0)+(a.outputTokens||0)})}return null}(0,d.kz)(e.h.KIRO,e.h.OPENAI,null,f)},54817:(a,b,c)=>{c.r(b),c.d(b,{antigravityToOpenAIRequest:()=>g});var d=c(46992),e=c(14170),f=c(3156);function g(a,b,c){let d=b.request||b,e={model:a,messages:[],stream:c};if(d.generationConfig){let a=d.generationConfig;if(a.maxOutputTokens){let b={max_tokens:a.maxOutputTokens,tools:d.tools};e.max_tokens=(0,f.M)(b)}if(void 0!==a.temperature&&(e.temperature=a.temperature),void 0!==a.topP&&(e.top_p=a.topP),void 0!==a.topK&&(e.top_k=a.topK),a.thinkingConfig){let b=a.thinkingConfig.thinkingBudget||0;b>0&&(b<=2048?e.reasoning_effort="low":b<=16384?e.reasoning_effort="medium":e.reasoning_effort="high")}}if(d.systemInstruction){var g;let a="string"==typeof(g=d.systemInstruction)?g:g.parts&&Array.isArray(g.parts)?g.parts.map(a=>a.text||"").join(""):"";a&&e.messages.push({role:"system",content:a})}if(d.contents&&Array.isArray(d.contents))for(let a of d.contents){let b=function(a){let b="model"===a.role?"assistant":"user"===a.role?"user":a.role;if(!a.parts||!Array.isArray(a.parts))return null;let c=[],d=[],e=[],f="";for(let b of a.parts){if(!0===b.thought&&b.text){f+=b.text;continue}if(b.thoughtSignature&&void 0!==b.text){c.push({type:"text",text:b.text});continue}void 0!==b.text&&c.push({type:"text",text:b.text}),b.inlineData&&c.push({type:"image_url",image_url:{url:`data:${b.inlineData.mimeType};base64,${b.inlineData.data}`}}),b.functionCall&&d.push({id:b.functionCall.id||`call_${Date.now()}_${Math.random().toString(36).slice(2,8)}`,type:"function",function:{name:b.functionCall.name,arguments:JSON.stringify(b.functionCall.args||{})}}),b.functionResponse&&e.push({role:"tool",tool_call_id:b.functionResponse.id||b.functionResponse.name,content:JSON.stringify(b.functionResponse.response?.result||b.functionResponse.response||{})})}if(e.length>0)return e;if(d.length>0){let a={role:"assistant"};return c.length>0&&(a.content=1===c.length&&"text"===c[0].type?c[0].text:c),f&&(a.reasoning_content=f),a.tool_calls=d,a}if(c.length>0||f){let a={role:b};return c.length>0&&(a.content=1===c.length&&"text"===c[0].type?c[0].text:c),f&&(a.reasoning_content=f),a}return null}(a);b&&(Array.isArray(b)?e.messages.push(...b):e.messages.push(b))}if(d.tools&&Array.isArray(d.tools)){for(let a of(e.tools=[],d.tools))if(a.functionDeclarations)for(let b of a.functionDeclarations)e.tools.push({type:"function",function:{name:b.name,description:b.description||"",parameters:function a(b){if(!b||"object"!=typeof b)return b;let c=Array.isArray(b)?[...b]:{...b};if("string"==typeof c.type&&(c.type=c.type.toLowerCase()),delete c.enumDescriptions,c.properties){let b={};for(let[d,e]of Object.entries(c.properties))b[d]=a(e);c.properties=b}return c.items&&(c.items=a(c.items)),c}(b.parameters)||{type:"object",properties:{}}}})}return e}(0,d.kz)(e.h.ANTIGRAVITY,e.h.OPENAI,g,null)},55399:(a,b,c)=>{c.d(b,{Az:()=>h,fO:()=>k,kR:()=>i});var d=c(55511),e=c(75924);function f(a,b,c){return(0,d.createHash)("sha256").update(`${b}:${a}`).digest("hex").slice(0,c)}function g(a,b){let c=(0,d.createHash)("sha256").update(`${b}:${a}`).digest("hex");return`${c.slice(0,8)}-${c.slice(8,12)}-${c.slice(12,16)}-${c.slice(16,20)}-${c.slice(20,32)}`}function h(a){let b=a.tools;if(!b||0===b.length)return{body:a,toolNameMap:null};let c=new Map,d=[];for(let a of b){let b=`${a.name}${e.uR}`;c.set(b,a.name),d.push({...a,name:b})}let f=[...d,...j],g=a.messages?.map(a=>{if(!Array.isArray(a.content))return a;let b=a.content.map(a=>"tool_use"===a.type?{...a,name:`${a.name}${e.uR}`}:a);return{...a,content:b}});return{body:{...a,tools:f,messages:g||a.messages},toolNameMap:c.size>0?c:null}}function i(a,b){if(!b?.size||!Array.isArray(a?.content))return a;let c=a.content.map(a=>a?.type==="tool_use"&&b.has(a.name)?{...a,name:b.get(a.name)}:a);return{...a,content:c}}let j=[{name:"Task",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"TaskOutput",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"TaskStop",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"TaskCreate",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"TaskGet",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"TaskUpdate",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"TaskList",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"Bash",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"Glob",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"Grep",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"Read",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"Edit",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"Write",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"NotebookEdit",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"WebFetch",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"WebSearch",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"AskUserQuestion",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"Skill",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"EnterPlanMode",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}},{name:"ExitPlanMode",description:"This tool is currently unavailable.",input_schema:{type:"object",properties:{}}}];function k(a,b,c){let e,h,i,j,k;if(!b||!b.includes("sk-ant-oat"))return a;let l={...a},m=c||"claude-cloak-default",n={type:"text",text:(e=f(m,"cch",5),h=f(m,"build",3),`x-anthropic-billing-header: cc_version=2.1.92.${h}; cc_entrypoint=sdk-cli; cch=${e};`)};return Array.isArray(l.system)?l.system[0]?.text?.startsWith("x-anthropic-billing-header:")||(l.system=[n,...l.system]):"string"==typeof l.system?l.system=[n,{type:"text",text:l.system}]:l.system=[n],l.metadata?.user_id||(l.metadata={...l.metadata,user_id:(i=(0,d.createHash)("sha256").update(`device:${m}`).digest("hex"),j=g(m,"account"),k=c||g(m,"session"),`{"device_id":"${i}","account_uuid":"${j}","session_id":"${k}"}`)}),l}},57647:(a,b,c)=>{c.d(b,{SZ:()=>j,Tz:()=>h,jJ:()=>i});var d=c(35024);c(15626);function e(a){return"string"==typeof a&&a.startsWith("openai-compatible-")}function f(a){return"string"==typeof a&&a.startsWith("anthropic-compatible-")}function g(a){return e(a)&&a.includes("responses")?"responses":"chat"}function h(a){if(a.input&&(Array.isArray(a.input)||"string"==typeof a.input)&&!a.messages)return"openai-responses";if(a.request?.contents&&"antigravity"===a.userAgent)return"antigravity";if(a.contents&&Array.isArray(a.contents))return"gemini";if(a.stream_options||a.response_format||void 0!==a.logprobs||void 0!==a.top_logprobs||void 0!==a.n||void 0!==a.presence_penalty||void 0!==a.frequency_penalty||a.logit_bias||a.user)return"openai";if(a.messages&&Array.isArray(a.messages)){let b=a.messages[0];if(b?.content&&Array.isArray(b.content)){let c=b.content[0];if(c?.type==="text"&&!a.model?.includes("/")){if(a.system||a.anthropic_version)return"claude";let c=b.content.some(a=>"image"===a.type&&a.source?.type==="base64"),d=b.content.some(a=>"image_url"===a.type&&a.image_url?.url);if(c)return"claude";if(d)return"openai";if(b.content.some(a=>"tool_use"===a.type||"tool_result"===a.type))return"claude"}}if(void 0!==a.system||a.anthropic_version)return"claude"}return"openai"}function i(a){return e(a)?"responses"===g(a)?"openai-responses":"openai":f(a)?"claude":function(a){if(e(a)){let b=g(a);return{...d.xq.openai,format:"responses"===b?"openai-responses":"openai",baseUrl:"https://api.openai.com/v1"}}return f(a)?{...d.xq.anthropic,format:"claude",baseUrl:"https://api.anthropic.com/v1"}:d.xq[a]||d.xq.openai}(a).format||"openai"}function j(a){return!function(a){let b=a.messages||a.contents;if(!b?.length)return!0;let c=b[b.length-1];return c?.role==="user"}(a)&&(delete a.reasoning_effort,delete a.thinking),a}},59611:(a,b,c)=>{c.r(b),c.d(b,{openaiToVertexRequest:()=>h});var d=c(46992),e=c(14170),f=c(97102),g=c(96281);function h(a,b,c,d){var e=(0,f.openaiToGeminiRequest)(a,b,c,d);if(!e?.contents)return e;for(let a of e.contents)if(Array.isArray(a.parts))for(let b of a.parts)void 0!==b.thoughtSignature&&(b.thoughtSignature=g.n6),b.functionCall&&"id"in b.functionCall&&delete b.functionCall.id,b.functionResponse&&"id"in b.functionResponse&&delete b.functionResponse.id;return e}(0,d.kz)(e.h.OPENAI,e.h.VERTEX,h,null)},60983:(a,b,c)=>{c.r(b),c.d(b,{claudeToOpenAIRequest:()=>l});var d=c(46992),e=c(14170),f=c(3156);function g(a){return null!==a&&"object"==typeof a&&!Array.isArray(a)}function h(a,b){g(b)&&(a.chat_template_kwargs={...g(a.chat_template_kwargs)?a.chat_template_kwargs:{},...b})}let i=new Set(["enabled","on","true","adaptive","auto"]);function j(a,b){h(a,{enable_thinking:b})}function k(a,b,c,d=c){Object.prototype.hasOwnProperty.call(b||{},c)&&void 0!==b[c]&&(a[d]=b[c])}function l(a,b,c){let d={model:a,messages:[],stream:c};if(b.max_tokens&&(d.max_tokens=(0,f.M)(b)),void 0!==b.temperature&&(d.temperature=b.temperature),b.system){let a=Array.isArray(b.system)?b.system.map(a=>a.text||"").join("\n"):b.system;a&&d.messages.push({role:"system",content:a})}if(b.messages&&Array.isArray(b.messages))for(let a=0;a<b.messages.length;a++){let c=function(a){let b="user"===a.role||"tool"===a.role?"user":"assistant";if("string"==typeof a.content)return{role:b,content:a.content};if(Array.isArray(a.content)){let c=[],d=[],e=[];for(let b of a.content)switch(b.type){case"text":c.push({type:"text",text:b.text});break;case"image":b.source?.type==="base64"&&c.push({type:"image_url",image_url:{url:`data:${b.source.media_type};base64,${b.source.data}`}});break;case"tool_use":d.push({id:b.id,type:"function",function:{name:b.name,arguments:JSON.stringify(b.input||{})}});break;case"tool_result":let a="";"string"==typeof b.content?a=b.content:Array.isArray(b.content)?a=b.content.filter(a=>"text"===a.type).map(a=>a.text).join("\n")||JSON.stringify(b.content):b.content&&(a=JSON.stringify(b.content)),e.push({role:"tool",tool_call_id:b.tool_use_id,content:a})}if(e.length>0)return c.length>0?[...e,{role:"user",content:1===c.length&&"text"===c[0].type?c[0].text:c}]:e;if(d.length>0){let a={role:"assistant"};return c.length>0&&(a.content=1===c.length&&"text"===c[0].type?c[0].text:c),a.tool_calls=d,a}if(c.length>0)return{role:b,content:1===c.length&&"text"===c[0].type?c[0].text:c};if(0===a.content.length)return{role:b,content:""}}return null}(b.messages[a]);c&&(Array.isArray(c)?d.messages.push(...c):d.messages.push(c))}return!function(a){var b;if(!a||!Array.isArray(a.messages)||0===a.messages.length)return;let c=a.messages[a.messages.length-1];if(!c||"assistant"!==c.role||c.tool_calls)return;let d="string"==typeof(b=c.content)?b:Array.isArray(b)?b.map(a=>"string"==typeof a?a:a?.type==="text"&&"string"==typeof a.text?a.text:"").filter(Boolean).join("\n"):"";a.messages.pop(),function(a,b){let c="string"==typeof b?b.trim():"";if(!c)return;let d=["Claude trailing assistant prefill moved from the final message:",c,"\nInstruction: Treat the moved content as context for the next assistant response. Do not repeat it unless the user explicitly asks."].join("\n"),e=a.find(a=>"system"===a.role&&"string"==typeof a.content);if(e){e.content=`${e.content}
|
|
65
65
|
|