@techysy/10router 1.2.0 → 1.2.1
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 +4 -3
- package/app/.next-cli-build/build-manifest.json +2 -2
- package/app/.next-cli-build/prerender-manifest.json +2 -2
- package/app/.next-cli-build/routes-manifest.json +6 -0
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/experimental/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/experimental/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/experimental/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error/page.js +2 -2
- package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error.html +1 -1
- package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_not-found/page.js +1 -1
- package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_not-found.html +1 -1
- package/app/.next-cli-build/server/app/_not-found.rsc +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/_not-found/__PAGE__.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/reset-password/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/reset-password/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/acs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/acs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js +2 -2
- package/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/start/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/saml/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/verify-password/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/verify-password/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
- package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/extras/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/headroom/stop/route.js +1 -1
- package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/health/route.js +1 -1
- package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/init/route.js +1 -1
- package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/rotate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/rotate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
- package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +2 -2
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/caps/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/caps/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/bulk/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/bulk/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
- package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/models/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/network/egress-region/route.js +1 -1
- package/app/.next-cli-build/server/app/api/network/egress-region/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/checkin/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/checkin/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/export/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/export/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/qoder/checkin/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/qoder/checkin/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/qoder-cn/checkin/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/qoder-cn/checkin/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/transfer/export/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/transfer/export/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/transfer/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/transfer/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/api-key/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/api-key/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route.js +2 -2
- package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
- package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/health/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/install/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/start/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/security/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/security/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/import-usage/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/import-usage/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
- package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tags/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
- package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/dashboard/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/dashboard/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/quotas/route.js +1 -0
- package/app/.next-cli-build/server/app/api/usage/quotas/route.js.nft.json +1 -0
- package/app/.next-cli-build/server/app/api/usage/quotas/route_client-reference-manifest.js +1 -0
- package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stream/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +2 -2
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/version/shutdown/route.js +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.js +1 -1
- package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/callback.html +1 -1
- package/app/.next-cli-build/server/app/callback.rsc +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/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +6 -6
- 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 +8 -8
- 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/_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 +8 -8
- 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/_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 +8 -8
- 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/_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 +8 -8
- 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/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/experimental.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/experimental.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/experimental.segments/!KGRhc2hib2FyZCk/dashboard/experimental/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/experimental.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/experimental.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 +8 -8
- 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/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/mitm.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/mitm.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 +8 -8
- 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/_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 +8 -8
- 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/_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 +8 -8
- 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/_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 +8 -8
- 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/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
- 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 +9 -9
- 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/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +6 -6
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.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/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +6 -6
- 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 +8 -8
- 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/_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 +8 -8
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +8 -8
- 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 +8 -8
- 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/_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 +8 -8
- 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/_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 +8 -8
- package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
- package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/index.html +1 -1
- package/app/.next-cli-build/server/app/index.rsc +6 -6
- package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/index.segments/_full.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.js +1 -1
- package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/landing.html +1 -1
- package/app/.next-cli-build/server/app/landing.rsc +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/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/login/page.js +1 -1
- package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/login.html +1 -1
- package/app/.next-cli-build/server/app/login.rsc +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/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
- package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/page.js +1 -1
- package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app-paths-manifest.json +4 -3
- package/app/.next-cli-build/server/chunks/112.js +1 -1
- package/app/.next-cli-build/server/chunks/1219.js +4 -0
- package/app/.next-cli-build/server/chunks/1261.js +1 -0
- package/app/.next-cli-build/server/chunks/1330.js +1 -1
- package/app/.next-cli-build/server/chunks/1710.js +6 -0
- package/app/.next-cli-build/server/chunks/2132.js +1 -1
- package/app/.next-cli-build/server/chunks/2182.js +9 -0
- package/app/.next-cli-build/server/chunks/241.js +1 -1
- package/app/.next-cli-build/server/chunks/2926.js +1 -0
- package/app/.next-cli-build/server/chunks/3245.js +1 -0
- package/app/.next-cli-build/server/chunks/3256.js +1 -0
- package/app/.next-cli-build/server/chunks/3433.js +120 -0
- package/app/.next-cli-build/server/chunks/3792.js +1 -0
- package/app/.next-cli-build/server/chunks/3885.js +1 -0
- package/app/.next-cli-build/server/chunks/3943.js +1 -1
- package/app/.next-cli-build/server/chunks/4123.js +1 -1
- package/app/.next-cli-build/server/chunks/4125.js +1 -1
- package/app/.next-cli-build/server/chunks/4177.js +1 -0
- package/app/.next-cli-build/server/chunks/4282.js +1 -0
- package/app/.next-cli-build/server/chunks/4293.js +1 -1
- package/app/.next-cli-build/server/chunks/4575.js +1 -0
- package/app/.next-cli-build/server/chunks/4746.js +1 -0
- package/app/.next-cli-build/server/chunks/4803.js +9 -0
- package/app/.next-cli-build/server/chunks/4927.js +85 -0
- package/app/.next-cli-build/server/chunks/4990.js +1 -1
- package/app/.next-cli-build/server/chunks/5182.js +1 -1
- package/app/.next-cli-build/server/chunks/5210.js +304 -0
- package/app/.next-cli-build/server/chunks/5330.js +2 -2
- package/app/.next-cli-build/server/chunks/539.js +1 -0
- package/app/.next-cli-build/server/chunks/5433.js +1 -1
- package/app/.next-cli-build/server/chunks/5485.js +1 -1
- package/app/.next-cli-build/server/chunks/5615.js +1 -1
- package/app/.next-cli-build/server/chunks/5692.js +5 -0
- package/app/.next-cli-build/server/chunks/5781.js +1 -1
- package/app/.next-cli-build/server/chunks/595.js +1 -1
- package/app/.next-cli-build/server/chunks/6103.js +1 -0
- package/app/.next-cli-build/server/chunks/6133.js +6 -0
- package/app/.next-cli-build/server/chunks/6252.js +9 -0
- package/app/.next-cli-build/server/chunks/6326.js +1 -1
- package/app/.next-cli-build/server/chunks/6457.js +1 -4
- package/app/.next-cli-build/server/chunks/6492.js +1 -0
- package/app/.next-cli-build/server/chunks/653.js +1 -1
- package/app/.next-cli-build/server/chunks/6756.js +1 -1
- package/app/.next-cli-build/server/chunks/6763.js +1 -1
- package/app/.next-cli-build/server/chunks/6875.js +1 -0
- package/app/.next-cli-build/server/chunks/6947.js +1 -0
- package/app/.next-cli-build/server/chunks/6956.js +1 -0
- package/app/.next-cli-build/server/chunks/6960.js +1 -1
- package/app/.next-cli-build/server/chunks/6982.js +1 -1
- package/app/.next-cli-build/server/chunks/7067.js +1 -1
- package/app/.next-cli-build/server/chunks/7122.js +1 -1
- package/app/.next-cli-build/server/chunks/7247.js +1 -1
- package/app/.next-cli-build/server/chunks/7274.js +12 -5
- package/app/.next-cli-build/server/chunks/7568.js +1 -0
- package/app/.next-cli-build/server/chunks/7726.js +1 -0
- package/app/.next-cli-build/server/chunks/7753.js +1 -0
- package/app/.next-cli-build/server/chunks/7775.js +1 -0
- package/app/.next-cli-build/server/chunks/8062.js +9 -0
- package/app/.next-cli-build/server/chunks/8172.js +1 -0
- package/app/.next-cli-build/server/chunks/8410.js +1 -1
- package/app/.next-cli-build/server/chunks/8469.js +9 -0
- package/app/.next-cli-build/server/chunks/8595.js +1 -0
- package/app/.next-cli-build/server/chunks/8658.js +1 -0
- package/app/.next-cli-build/server/chunks/8672.js +1 -0
- package/app/.next-cli-build/server/chunks/8689.js +1 -0
- package/app/.next-cli-build/server/chunks/869.js +1 -1
- package/app/.next-cli-build/server/chunks/8749.js +44 -0
- package/app/.next-cli-build/server/chunks/8838.js +1 -1
- package/app/.next-cli-build/server/chunks/8920.js +1 -1
- package/app/.next-cli-build/server/chunks/9046.js +1 -0
- package/app/.next-cli-build/server/chunks/9154.js +1 -0
- package/app/.next-cli-build/server/chunks/9489.js +7 -0
- package/app/.next-cli-build/server/chunks/9539.js +1 -1
- package/app/.next-cli-build/server/chunks/9609.js +1 -1
- package/app/.next-cli-build/server/chunks/9628.js +1 -0
- package/app/.next-cli-build/server/instrumentation.js +1 -1
- package/app/.next-cli-build/server/instrumentation.js.nft.json +1 -1
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/middleware.js +8 -8
- package/app/.next-cli-build/server/middleware.js.nft.json +1 -1
- package/app/.next-cli-build/server/pages/404.html +1 -1
- package/app/.next-cli-build/server/pages/500.html +1 -1
- package/app/.next-cli-build/static/Qmgbf1CsCnKFbpB4QvL8M/_buildManifest.js +1 -0
- package/app/.next-cli-build/static/chunks/{1321-23084daf91733d47.js → 1321-502b5305b875636f.js} +1 -1
- package/app/.next-cli-build/static/chunks/{5497-d050b53817def025.js → 5497-10ab12f860a6a157.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-93f4c31ccd56a895.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-18da0e8d40af56ac.js → page-d3edcb35175434d5.js} +4 -4
- package/app/.next-cli-build/static/chunks/app/_global-error/page-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/login/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/saml/acs/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/saml/metadata/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/saml/start/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/saml/test/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/verify-password/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/devin-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/health/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/init/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/rotate/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/locale/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/caps/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/custom/bulk/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/network/egress-region/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/checkin/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/export/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/qoder/checkin/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/qoder-cn/checkin/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/transfer/export/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/transfer/import/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/xiaomi-mimo/api-key/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/xiaomi-mimo/auto-import/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/security/status/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/database/import-usage/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tags/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/dashboard/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/quotas/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/login/page-38ed66b1e6930f46.js +1 -0
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/app/page-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-72924bfdaa66606d.js +1 -0
- package/app/.next-cli-build/static/css/ab87cc8491e8d0fb.css +1 -0
- package/app/package.json +1 -1
- package/app/public/i18n/changelog/en.md +72 -46
- package/app/public/i18n/changelog/zh-CN.md +72 -46
- package/app/public/i18n/changelog/zh-TW.md +72 -46
- package/app/public/i18n/literals/zh-CN.json +22 -0
- package/app/public/i18n/literals/zh-TW.json +25 -0
- package/cli.js +9 -1
- package/package.json +1 -1
- package/src/cli/api/client.js +9 -2
- package/src/cli/menus/settings.js +1 -1
- package/app/.next-cli-build/server/chunks/1260.js +0 -1
- package/app/.next-cli-build/server/chunks/1281.js +0 -1
- package/app/.next-cli-build/server/chunks/2179.js +0 -1
- package/app/.next-cli-build/server/chunks/3662.js +0 -1
- package/app/.next-cli-build/server/chunks/3962.js +0 -1
- package/app/.next-cli-build/server/chunks/4037.js +0 -1
- package/app/.next-cli-build/server/chunks/4126.js +0 -1
- package/app/.next-cli-build/server/chunks/6051.js +0 -1
- package/app/.next-cli-build/server/chunks/6212.js +0 -1
- package/app/.next-cli-build/server/chunks/6520.js +0 -1
- package/app/.next-cli-build/server/chunks/6871.js +0 -1
- package/app/.next-cli-build/server/chunks/7180.js +0 -6
- package/app/.next-cli-build/server/chunks/7365.js +0 -1
- package/app/.next-cli-build/server/chunks/75.js +0 -1
- package/app/.next-cli-build/server/chunks/8145.js +0 -1
- package/app/.next-cli-build/server/chunks/8546.js +0 -1
- package/app/.next-cli-build/server/chunks/8635.js +0 -7
- package/app/.next-cli-build/server/chunks/9713.js +0 -1
- package/app/.next-cli-build/server/chunks/9896.js +0 -1
- package/app/.next-cli-build/server/chunks/9927.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-48878e82a437e813.js +0 -1
- package/app/.next-cli-build/static/chunks/app/_global-error/page-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/login/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/saml/acs/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/saml/metadata/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/saml/start/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/saml/test/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/verify-password/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/devin-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/grok-build-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/start/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/status/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/health/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/init/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/rotate/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/locale/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/caps/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/custom/bulk/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/network/egress-region/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/checkin/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/export/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/api-key/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import-cli-proxy/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/qoder/checkin/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/qoder-cn/checkin/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/transfer/export/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/transfer/import/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/xiaomi-mimo/api-key/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/xiaomi-mimo/auto-import/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/logs/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/security/status/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/database/import-usage/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tags/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/codex-reset-credits/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/dashboard/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/logs/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/[id]/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/edits/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/extensions/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/videos/generations/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/login/page-f1945d5fab85c48f.js +0 -1
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/app/page-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-45a30f9960975021.js +0 -1
- package/app/.next-cli-build/static/css/6e249fe05f9d7227.css +0 -1
- package/app/.next-cli-build/static/mzc6AVdJokpIsYjtjKON0/_buildManifest.js +0 -1
- /package/app/.next-cli-build/static/{mzc6AVdJokpIsYjtjKON0 → Qmgbf1CsCnKFbpB4QvL8M}/_ssgManifest.js +0 -0
|
@@ -3,4 +3,4 @@
|
|
|
3
3
|
ON CONFLICT(id) DO UPDATE SET
|
|
4
4
|
provider=excluded.provider, authType=excluded.authType, name=excluded.name,
|
|
5
5
|
email=excluded.email, priority=excluded.priority, isActive=excluded.isActive,
|
|
6
|
-
data=excluded.data, updatedAt=excluded.updatedAt`,[c.id,c.provider,c.authType,c.name,c.email,c.priority,c.isActive,c.data,c.createdAt,c.updatedAt])}async function l(a={}){let b=await (0,e.cK)(),c=[],d=[];a.provider&&(c.push("provider = ?"),d.push(a.provider)),void 0!==a.isActive&&(c.push("isActive = ?"),d.push(+!!a.isActive));let f=`SELECT * FROM providerConnections${c.length?` WHERE ${c.join(" AND ")}`:""}`,g=b.all(f,d).map(j);return g.sort((a,b)=>(a.priority||999)-(b.priority||999)),g}async function m(a){return j((await (0,e.cK)()).get("SELECT * FROM providerConnections WHERE id = ?",[a]))}function n(a,b){let c=a.all("SELECT * FROM providerConnections WHERE provider = ?",[b]).map(j);c.sort((a,b)=>{let c=(a.priority||0)-(b.priority||0);return 0!==c?c:new Date(b.updatedAt||0)-new Date(a.updatedAt||0)}),c.forEach((b,c)=>{a.run("UPDATE providerConnections SET priority = ? WHERE id = ?",[c+1,b.id])})}async function o(a){let b,f=await (0,e.cK)(),h=new Date().toISOString(),l=!1;if(f.transaction(()=>{var c;let e=f.all("SELECT * FROM providerConnections WHERE provider = ?",[a.provider]).map(j);l=0===e.length;let g=null;if("oauth"===a.authType&&a.email){let b=a.providerSpecificData?.username,c=a.providerSpecificData?.chatgptAccountId;g=e.find(d=>{if("oauth"!==d.authType||d.email!==a.email)return!1;if("codex"===a.provider){let a=d.providerSpecificData?.chatgptAccountId;return!!c&&!!a&&c===a}let e=d.providerSpecificData?.chatgptAccountId;if(c&&e)return c===e;if(c&&!e||!c&&e)return!1;let f=d.providerSpecificData?.username;return b&&f?b===f:!b&&!f})}else"apikey"===a.authType&&a.name&&(g=e.find(b=>"apikey"===b.authType&&b.name===a.name));if(g){let c={...g,...a,updatedAt:h};for(let b of["lastError","lastErrorAt","errorCode"])void 0===a[b]&&(c[b]=null);void 0===a.testStatus&&"unavailable"===c.testStatus&&(c.testStatus="active"),k(f,c),b=c;return}let m=a.name||null;m||"oauth"!==a.authType&&"access_token"!==a.authType||(c=a.email||`Account ${e.length+1}`,m="github"===a.provider&&(a.providerSpecificData?.githubLogin||a.providerSpecificData?.githubEmail||a.email||a.providerSpecificData?.githubName)||c);let o=a.priority;o||(o=e.reduce((a,b)=>Math.max(a,b.priority||0),0)+1);let p={id:(0,d.A)(),provider:a.provider,authType:a.authType||"oauth",name:m,priority:o,isActive:void 0===a.isActive||a.isActive,createdAt:h,updatedAt:h};for(let b of i)void 0!==a[b]&&null!==a[b]&&(p[b]=a[b]);a.providerSpecificData&&Object.keys(a.providerSpecificData).length>0&&(p.providerSpecificData=a.providerSpecificData),void 0!==a.email&&(p.email=a.email),k(f,p),n(f,a.provider),b=p}),l&&b)try{let{PROVIDER_MODELS:b,PROVIDER_ID_TO_ALIAS:d}=await Promise.all([c.e(1330),c.e(6070),c.e(8546)]).then(c.bind(c,57247)),e=d[a.provider]||a.provider,f=(b[e]||[]).filter(a=>!a.kind||"llm"===a.kind).map(a=>a.id);if(f.length>0){let a=await (0,g.jw)(e);0===a.length&&await (0,g.tm)(e,f)}}catch(a){console.log("Default-disable init skipped:",a?.message||a)}return b}async function p(a,b){let c,d=await (0,e.cK)();return d.transaction(()=>{let e=d.get("SELECT * FROM providerConnections WHERE id = ?",[a]);if(!e){c=null;return}let f=j(e),g={...f,...b,updatedAt:new Date().toISOString()};if("resetErrorState"in g){let a=!0===g.resetErrorState;if(delete g.resetErrorState,a){let a={lastError:null,lastErrorAt:null,errorCode:null,testStatus:null};for(let c of Object.keys(a))void 0!==b[c]&&delete a[c];Object.assign(g,a)}}k(d,g),void 0!==b.priority&&n(d,f.provider),c=g}),c}async function q(a){let b=await (0,e.cK)(),c=!1;return b.transaction(()=>{let d=b.get("SELECT provider FROM providerConnections WHERE id = ?",[a]);d&&(b.run("DELETE FROM providerConnections WHERE id = ?",[a]),n(b,d.provider),c=!0)}),c}async function r(a){let b=await (0,e.cK)(),c=b.get("SELECT COUNT(*) AS n FROM providerConnections WHERE provider = ?",[a]);return b.run("DELETE FROM providerConnections WHERE provider = ?",[a]),c?.n||0}async function s(a){let b=await (0,e.cK)();b.transaction(()=>n(b,a))}async function t(){let a=await (0,e.cK)(),b=["displayName","email","globalPriority","defaultModel","accessToken","refreshToken","expiresAt","tokenType","scope","projectId","apiKey","testStatus","lastTested","lastError","lastErrorAt","rateLimitedUntil","expiresIn","consecutiveUseCount"],c=0;return a.transaction(()=>{for(let d of a.all("SELECT * FROM providerConnections")){let e=j(d),f=!1;for(let a of b)(null===e[a]||void 0===e[a])&&a in e&&(delete e[a],c++,f=!0);e.providerSpecificData&&0===Object.keys(e.providerSpecificData).length&&(delete e.providerSpecificData,c++,f=!0),f&&k(a,e)}}),c}},29424:(a,b,c)=>{c.d(b,{jw:()=>k,oF:()=>p,qi:()=>h,tm:()=>o,vF:()=>j});var d=c(36366),e=c(644);let f="disabledModels",g=null;async function h(){if(g)return g;let a=new Map,b=new Map;try{let d=await Promise.all([c.e(1330),c.e(3662)]).then(c.bind(c,31330));for(let c of d.default||d.REGISTRY||[]){let d=c.uiAlias||c.alias||c.id;if(!d)continue;let e=new Set([c.id,c.alias,c.uiAlias,...Array.isArray(c.aliases)?c.aliases:[]].filter(Boolean)),f=b.get(d)||new Set;for(let b of e)a.set(b,d),f.add(b);b.set(d,f)}}catch(a){console.log("Disabled-model key map unavailable:",a?.message||a)}return g={toCanonical:a,byCanonical:b}}async function i(a){let{toCanonical:b,byCanonical:c}=await h(),d=b.get(a)||a,e=c.get(d),f=new Set(e?[...e]:[]);return f.add(a),f.add(d),{canonical:d,keys:[...f]}}async function j(){let a=(await (0,d.cK)()).all("SELECT key, value FROM kv WHERE scope = ?",[f]),{toCanonical:b,byCanonical:c}=await h(),g=new Map;for(let c of a){let a=b.get(c.key)||c.key,d=g.get(a);d||(d={own:null,union:new Set},g.set(a,d));let f=(0,e.q)(c.value,[])||[];for(let b of(c.key===a&&(d.own=new Set(f)),f))d.union.add(b)}let i={};for(let[a,b]of g){let d=[...b.own||b.union];i[a]=d;let e=c.get(a);if(e)for(let a of e)i[a]=d}return i}async function k(a){return a&&(await j())[a]||[]}let l="INSERT INTO kv(scope, key, value) VALUES(?, ?, ?) ON CONFLICT(scope, key) DO UPDATE SET value = excluded.value",m="DELETE FROM kv WHERE scope = ? AND key = ?";function n(a,b,c){let d=null,g=new Set;for(let h of b){let b=a.get("SELECT value FROM kv WHERE scope = ? AND key = ?",[f,h]);if(!b)continue;let i=(0,e.q)(b.value,[])||[];for(let a of(h===c&&(d=i),i))g.add(a)}return null!==d?d:[...g]}async function o(a,b){if(!a||!Array.isArray(b))return;let c=await (0,d.cK)(),{canonical:g,keys:h}=await i(a);c.transaction(()=>{let a=[...new Set([...n(c,h,g),...b])];for(let b of(c.run(l,[f,g,(0,e.s)(a)]),h))b!==g&&c.run(m,[f,b])})}async function p(a,b){if(!a)return;let c=await (0,d.cK)(),{canonical:g,keys:h}=await i(a),j=!Array.isArray(b)||0===b.length;c.transaction(()=>{let a=[];if(!j){let d=new Set(b);a=n(c,h,g).filter(a=>!d.has(a))}if(0===a.length){for(let a of h)c.run(m,[f,a]);return}for(let b of(c.run(l,[f,g,(0,e.s)(a)]),h))b!==g&&c.run(m,[f,b])})}},36366:(a,b,c)=>{c.d(b,{cK:()=>n});var d=c(76760),e=c.n(d),f=c(95658);global._dbAdapter||(global._dbAdapter={instance:null,initPromise:null,logged:!1,lastDriverError:null});let g=global._dbAdapter;async function h(){try{let{createRequire:a}=await Promise.resolve().then(c.t.bind(c,98995,23)),b=a(e().join(f.Rf,"_noop.js"))("better-sqlite3");return b?.default??b}catch{}try{let a=await Promise.resolve().then(c.t.bind(c,87550,23));return a?.default??a}catch{return null}}async function i(){if(!process.versions.bun)return null;try{let{createBunSqliteAdapter:a}=await c.e(4739).then(c.bind(c,24739));return await a(f.AL)}catch(a){return g.lastDriverError=`bun:sqlite: ${a.message}`,console.warn(`[DB] bun:sqlite unavailable: ${a.message}`),null}}async function j(){if(process.versions.bun)return null;let[a]=process.versions.node.split(".").map(Number);if(a>=24)return null;try{let a=await h();if(!a)throw Error("not installed (runtime copy and bare specifier both missing)");let{createBetterSqliteAdapter:b}=await c.e(5258).then(c.bind(c,25258));return b(f.AL,a)}catch(a){return g.lastDriverError=`better-sqlite3: ${a.message}`,console.warn(`[DB] better-sqlite3 unavailable: ${a.message}`),null}}async function k(){if(process.versions.bun)return null;let[a,b]=process.versions.node.split(".").map(Number);if(a<22||22===a&&b<5)return null;try{let{createNodeSqliteAdapter:a}=await c.e(8520).then(c.bind(c,88520));return await a(f.AL)}catch(a){return g.lastDriverError=`node:sqlite: ${a.message}`,console.warn(`[DB] node:sqlite unavailable: ${a.message}`),null}}async function l(){try{let{createSqlJsAdapter:a}=await c.e(3593).then(c.bind(c,53593));return await a(f.AL)}catch(a){return g.lastDriverError=`sql.js: ${a.message}`,console.warn(`[DB] sql.js unavailable: ${a.message}`),null}}async function m(){(0,f.Jh)();let a=await i();if(a||(a=await j()),a||(a=await k()),a||(a=await l()),!a)throw Error("[DB] No SQLite driver available (bun/better/node/sql.js all failed)");g.logged||(console.log(`[DB] Driver: ${a.driver} | file: ${f.AL}`),g.logged=!0);let{runMigrationOnce:b}=await c.e(9539).then(c.bind(c,79539));return await b(a),a}async function n(){return g.instance?g.instance:(g.initPromise||(g.initPromise=m().then(a=>(g.instance=a,a))),g.initPromise)}},49120:(a,b,c)=>{c.d(b,{jL:()=>l,nJ:()=>p,ok:()=>o});var d=c(73024),e=c.n(d),f=c(33873),g=c.n(f),h=c(21820),i=c.n(h);let j="10router",k="9router",l={main:"db.json",usage:"usage.json",disabled:"disabledModels.json",details:"request-details.json"};function m(){return"win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),k):g().join(i().homedir(),`.${k}`)}function n(){return"win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),j):g().join(i().homedir(),`.${j}`)}function o(){let a=process.env.DATA_DIR;if(!a)return!function(){try{let a=m(),b=n();if(!e().existsSync(a)||e().existsSync(g().join(b,"db","data.sqlite"))||Object.values(l).some(a=>e().existsSync(g().join(b,a))))return;e().cpSync(a,b,{recursive:!0,force:!1}),console.log(`[migration] copied legacy data dir ${a} → ${b}`)}catch(a){console.warn(`[migration] failed to migrate ${m()} → ${n()}: ${a?.message}`)}}(),n();if("win32"===process.platform&&/^\//.test(a))return console.warn(`[DATA_DIR] '${a}' is a Unix path on Windows → fallback to default`),n();try{return e().mkdirSync(a,{recursive:!0}),a}catch(b){if(b?.code==="EACCES"||b?.code==="EPERM")return console.warn(`[DATA_DIR] '${a}' not writable → fallback ~/.${j}`),n();throw b}}let p=o()},72082:(a,b,c)=>{c.r(b),c.d(b,{CONNECTION_SECRET_FIELDS:()=>n,CredentialCryptoError:()=>q,UNREADABLE_CREDENTIALS_KEY:()=>z,connectionDataHasPlaintextSecrets:()=>D,decryptConnectionData:()=>B,decryptSecret:()=>v,encryptConnectionData:()=>y,encryptSecret:()=>u,getCredentialKey:()=>s,hasUnreadableCredentials:()=>A,isEncrypted:()=>r,resetCredentialKeyCache:()=>t,restoreUnreadableCredentials:()=>C});var d=c(77598),e=c.n(d),f=c(73024),g=c.n(f),h=c(76760),i=c.n(h),j=c(49120),k=c(77134);let l="enc:v1:",m="aes-256-gcm",n=["accessToken","refreshToken","idToken","apiKey"],o=/(token|secret|password|cookie|credential|api[-_]?key|proxyurl)/i,p=null;class q extends Error{constructor(a){super(a),this.name="CredentialCryptoError"}}function r(a){return"string"==typeof a&&a.startsWith(l)}function s(){if(p)return p;let a=process.env.CREDENTIAL_SECRET;if("string"==typeof a&&a.trim())return p=e().createHash("sha256").update(a.trim()).digest();let b=i().join(j.nJ,"credential-key");try{let a=g().readFileSync(b,"utf8").trim();if(a)return p=e().createHash("sha256").update(a).digest()}catch{}g().mkdirSync(j.nJ,{recursive:!0});let c=e().randomBytes(32).toString("hex");return g().writeFileSync(b,c,{mode:384}),(0,k.E)(b),p=e().createHash("sha256").update(c).digest()}function t(){p=null}function u(a){if("string"!=typeof a||""===a||r(a))return a;let b=e().randomBytes(12),c=e().createCipheriv(m,s(),b),d=Buffer.concat([c.update(a,"utf8"),c.final()]);return`${l}${b.toString("base64url")}:${c.getAuthTag().toString("base64url")}:${d.toString("base64url")}`}function v(a){if("string"!=typeof a||!r(a))return a;let b=a.slice(l.length).split(":");if(3!==b.length)throw new q("stored credential is malformed");let[c,d,f]=b;try{let a=e().createDecipheriv(m,s(),Buffer.from(c,"base64url"));return a.setAuthTag(Buffer.from(d,"base64url")),Buffer.concat([a.update(Buffer.from(f,"base64url")),a.final()]).toString("utf8")}catch{throw new q("stored credential cannot be decrypted with the current key")}}function w(a){return a&&"object"==typeof a?Object.keys(a).filter(b=>o.test(b)&&"string"==typeof a[b]):[]}function x(a){return w(a).filter(b=>""!==a[b])}function y(a){if(!a||"object"!=typeof a)return a;let b={...a};for(let a of n)"string"==typeof b[a]&&(b[a]=u(b[a]));let c=w(b.providerSpecificData);if(c.length){let a={...b.providerSpecificData};for(let b of c)a[b]=u(a[b]);b.providerSpecificData=a}return b}let z="__unreadableCredentials";function A(a){return!!(a&&"object"==typeof a&&a[z])}function B(a){if(!a||"object"!=typeof a)return{data:a,error:null,unreadable:null};let b={...a},c=null,d=null,e=(a,b,c)=>{d||(d={}),d[a]||(d[a]={}),d[a][b]=c};for(let a of n)if(r(b[a]))try{b[a]=v(b[a])}catch(d){e("fields",a,b[a]),delete b[a],c=d.message}let f=x(b.providerSpecificData).filter(a=>r(b.providerSpecificData[a]));if(f.length){let a={...b.providerSpecificData};for(let b of f)try{a[b]=v(a[b])}catch(d){e("providerSpecificData",b,a[b]),delete a[b],c=d.message}b.providerSpecificData=a}return{data:b,error:c,unreadable:d}}function C(a){if(!a||"object"!=typeof a||!a[z])return a;let{[z]:b,...c}=a,d=a=>null==a||""===a;for(let[a,e]of Object.entries(b.fields||{}))d(c[a])&&(c[a]=e);let e=b.providerSpecificData||{};if(Object.keys(e).length){let a={...c.providerSpecificData||{}};for(let[b,c]of Object.entries(e))d(a[b])&&(a[b]=c);c.providerSpecificData=a}let f=b.synthesized;return f&&(c.testStatus===f.testStatus&&delete c.testStatus,c.lastError===f.lastError&&delete c.lastError),c}function D(a){if(!a||"object"!=typeof a)return!1;for(let b of n)if("string"==typeof a[b]&&""!==a[b]&&!r(a[b]))return!0;return x(a.providerSpecificData).some(b=>!r(a.providerSpecificData[b]))}},77134:(a,b,c)=>{c.d(b,{E:()=>i});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(31421);function i(a){if(a){if("win32"===process.platform){try{let b=[process.env.USERDOMAIN,process.env.USERNAME].filter(Boolean).join("\\")||g().userInfo().username;(0,h.execFileSync)("icacls",[a,"/inheritance:r","/grant:r",`${b}:(F)`],{stdio:"ignore",windowsHide:!0})}catch(b){console.warn(`⚠️ Could not restrict ACLs on ${a}: ${b.message}`)}return}try{e().chmodSync(a,384)}catch(b){console.warn(`⚠️ Could not restrict permissions on ${a}: ${b.message}`)}}}},95658:(a,b,c)=>{c.d(b,{AL:()=>j,HG:()=>i,Jh:()=>n,KQ:()=>k,Or:()=>m,Rf:()=>l});var d=c(76760),e=c.n(d),f=c(73024),g=c.n(f),h=c(49120);let i=e().join(h.nJ,"db"),j=e().join(i,"data.sqlite"),k=e().join(i,"backups"),l=e().join(h.nJ,"runtime"),m=Object.fromEntries(Object.entries(h.jL).map(([a,b])=>[a,e().join(h.nJ,b)]));function n(){for(let a of[h.nJ,i,k])g().existsSync(a)||g().mkdirSync(a,{recursive:!0})}}};
|
|
6
|
+
data=excluded.data, updatedAt=excluded.updatedAt`,[c.id,c.provider,c.authType,c.name,c.email,c.priority,c.isActive,c.data,c.createdAt,c.updatedAt])}async function l(a={}){let b=await (0,e.cK)(),c=[],d=[];a.provider&&(c.push("provider = ?"),d.push(a.provider)),void 0!==a.isActive&&(c.push("isActive = ?"),d.push(+!!a.isActive));let f=`SELECT * FROM providerConnections${c.length?` WHERE ${c.join(" AND ")}`:""}`,g=b.all(f,d).map(j);return g.sort((a,b)=>(a.priority||999)-(b.priority||999)),g}async function m(a){return j((await (0,e.cK)()).get("SELECT * FROM providerConnections WHERE id = ?",[a]))}function n(a,b){let c=a.all("SELECT * FROM providerConnections WHERE provider = ?",[b]).map(j);c.sort((a,b)=>{let c=(a.priority||0)-(b.priority||0);return 0!==c?c:new Date(b.updatedAt||0)-new Date(a.updatedAt||0)}),c.forEach((b,c)=>{a.run("UPDATE providerConnections SET priority = ? WHERE id = ?",[c+1,b.id])})}async function o(a){let b,f=await (0,e.cK)(),h=new Date().toISOString(),l=!1;if(f.transaction(()=>{var c;let e=f.all("SELECT * FROM providerConnections WHERE provider = ?",[a.provider]).map(j);l=0===e.length;let g=null;if("oauth"===a.authType&&a.email){let b=a.providerSpecificData?.username,c=a.providerSpecificData?.chatgptAccountId;g=e.find(d=>{if("oauth"!==d.authType||d.email!==a.email)return!1;if("codex"===a.provider){let a=d.providerSpecificData?.chatgptAccountId;return!!c&&!!a&&c===a}let e=d.providerSpecificData?.chatgptAccountId;if(c&&e)return c===e;if(c&&!e||!c&&e)return!1;let f=d.providerSpecificData?.username;return b&&f?b===f:!b&&!f})}else"apikey"===a.authType&&a.name&&(g=e.find(b=>"apikey"===b.authType&&b.name===a.name));if(g){let c={...g,...a,updatedAt:h};for(let b of["lastError","lastErrorAt","errorCode"])void 0===a[b]&&(c[b]=null);void 0===a.testStatus&&"unavailable"===c.testStatus&&(c.testStatus="active"),k(f,c),b=c;return}let m=a.name||null;m||"oauth"!==a.authType&&"access_token"!==a.authType||(c=a.email||`Account ${e.length+1}`,m="github"===a.provider&&(a.providerSpecificData?.githubLogin||a.providerSpecificData?.githubEmail||a.email||a.providerSpecificData?.githubName)||c);let o=a.priority;o||(o=e.reduce((a,b)=>Math.max(a,b.priority||0),0)+1);let p={id:(0,d.A)(),provider:a.provider,authType:a.authType||"oauth",name:m,priority:o,isActive:void 0===a.isActive||a.isActive,createdAt:h,updatedAt:h};for(let b of i)void 0!==a[b]&&null!==a[b]&&(p[b]=a[b]);a.providerSpecificData&&Object.keys(a.providerSpecificData).length>0&&(p.providerSpecificData=a.providerSpecificData),void 0!==a.email&&(p.email=a.email),k(f,p),n(f,a.provider),b=p}),l&&b)try{let{PROVIDER_MODELS:b,PROVIDER_ID_TO_ALIAS:d}=await Promise.all([c.e(1330),c.e(6070),c.e(7247)]).then(c.bind(c,57247)),e=d[a.provider]||a.provider,f=(b[e]||[]).filter(a=>!a.kind||"llm"===a.kind).map(a=>a.id);if(f.length>0){let a=await (0,g.jw)(e);0===a.length&&await (0,g.tm)(e,f)}}catch(a){console.log("Default-disable init skipped:",a?.message||a)}return b}async function p(a,b){let c,d=await (0,e.cK)();return d.transaction(()=>{let e=d.get("SELECT * FROM providerConnections WHERE id = ?",[a]);if(!e){c=null;return}let f=j(e),g={...f,...b,updatedAt:new Date().toISOString()};if("resetErrorState"in g){let a=!0===g.resetErrorState;if(delete g.resetErrorState,a){let a={lastError:null,lastErrorAt:null,errorCode:null,testStatus:null};for(let c of Object.keys(a))void 0!==b[c]&&delete a[c];Object.assign(g,a)}}k(d,g),void 0!==b.priority&&n(d,f.provider),c=g}),c}async function q(a){let b=await (0,e.cK)(),c=!1;return b.transaction(()=>{let d=b.get("SELECT provider FROM providerConnections WHERE id = ?",[a]);d&&(b.run("DELETE FROM providerConnections WHERE id = ?",[a]),n(b,d.provider),c=!0)}),c}async function r(a){let b=await (0,e.cK)(),c=b.get("SELECT COUNT(*) AS n FROM providerConnections WHERE provider = ?",[a]);return b.run("DELETE FROM providerConnections WHERE provider = ?",[a]),c?.n||0}async function s(a){let b=await (0,e.cK)();b.transaction(()=>n(b,a))}async function t(){let a=await (0,e.cK)(),b=["displayName","email","globalPriority","defaultModel","accessToken","refreshToken","expiresAt","tokenType","scope","projectId","apiKey","testStatus","lastTested","lastError","lastErrorAt","rateLimitedUntil","expiresIn","consecutiveUseCount"],c=0;return a.transaction(()=>{for(let d of a.all("SELECT * FROM providerConnections")){let e=j(d),f=!1;for(let a of b)(null===e[a]||void 0===e[a])&&a in e&&(delete e[a],c++,f=!0);e.providerSpecificData&&0===Object.keys(e.providerSpecificData).length&&(delete e.providerSpecificData,c++,f=!0),f&&k(a,e)}}),c}},29424:(a,b,c)=>{c.d(b,{jw:()=>k,oF:()=>p,qi:()=>h,tm:()=>o,vF:()=>j});var d=c(36366),e=c(644);let f="disabledModels",g=null;async function h(){if(g)return g;let a=new Map,b=new Map;try{let d=await c.e(1330).then(c.bind(c,31330));for(let c of d.default||d.REGISTRY||[]){let d=c.uiAlias||c.alias||c.id;if(!d)continue;let e=new Set([c.id,c.alias,c.uiAlias,...Array.isArray(c.aliases)?c.aliases:[]].filter(Boolean)),f=b.get(d)||new Set;for(let b of e)a.set(b,d),f.add(b);b.set(d,f)}}catch(a){console.log("Disabled-model key map unavailable:",a?.message||a)}return g={toCanonical:a,byCanonical:b}}async function i(a){let{toCanonical:b,byCanonical:c}=await h(),d=b.get(a)||a,e=c.get(d),f=new Set(e?[...e]:[]);return f.add(a),f.add(d),{canonical:d,keys:[...f]}}async function j(){let a=(await (0,d.cK)()).all("SELECT key, value FROM kv WHERE scope = ?",[f]),{toCanonical:b,byCanonical:c}=await h(),g=new Map;for(let c of a){let a=b.get(c.key)||c.key,d=g.get(a);d||(d={own:null,union:new Set},g.set(a,d));let f=(0,e.q)(c.value,[])||[];for(let b of(c.key===a&&(d.own=new Set(f)),f))d.union.add(b)}let i={};for(let[a,b]of g){let d=[...b.own||b.union];i[a]=d;let e=c.get(a);if(e)for(let a of e)i[a]=d}return i}async function k(a){return a&&(await j())[a]||[]}let l="INSERT INTO kv(scope, key, value) VALUES(?, ?, ?) ON CONFLICT(scope, key) DO UPDATE SET value = excluded.value",m="DELETE FROM kv WHERE scope = ? AND key = ?";function n(a,b,c){let d=null,g=new Set;for(let h of b){let b=a.get("SELECT value FROM kv WHERE scope = ? AND key = ?",[f,h]);if(!b)continue;let i=(0,e.q)(b.value,[])||[];for(let a of(h===c&&(d=i),i))g.add(a)}return null!==d?d:[...g]}async function o(a,b){if(!a||!Array.isArray(b))return;let c=await (0,d.cK)(),{canonical:g,keys:h}=await i(a);c.transaction(()=>{let a=[...new Set([...n(c,h,g),...b])];for(let b of(c.run(l,[f,g,(0,e.s)(a)]),h))b!==g&&c.run(m,[f,b])})}async function p(a,b){if(!a)return;let c=await (0,d.cK)(),{canonical:g,keys:h}=await i(a),j=!Array.isArray(b)||0===b.length;c.transaction(()=>{let a=[];if(!j){let d=new Set(b);a=n(c,h,g).filter(a=>!d.has(a))}if(0===a.length){for(let a of h)c.run(m,[f,a]);return}for(let b of(c.run(l,[f,g,(0,e.s)(a)]),h))b!==g&&c.run(m,[f,b])})}},36366:(a,b,c)=>{c.d(b,{cK:()=>n});var d=c(76760),e=c.n(d),f=c(95658);global._dbAdapter||(global._dbAdapter={instance:null,initPromise:null,logged:!1,lastDriverError:null});let g=global._dbAdapter;async function h(){try{let{createRequire:a}=await Promise.resolve().then(c.t.bind(c,98995,23)),b=a(e().join(f.Rf,"_noop.js"))("better-sqlite3");return b?.default??b}catch{}try{let a=await Promise.resolve().then(c.t.bind(c,87550,23));return a?.default??a}catch{return null}}async function i(){if(!process.versions.bun)return null;try{let{createBunSqliteAdapter:a}=await c.e(4739).then(c.bind(c,24739));return await a(f.AL)}catch(a){return g.lastDriverError=`bun:sqlite: ${a.message}`,console.warn(`[DB] bun:sqlite unavailable: ${a.message}`),null}}async function j(){if(process.versions.bun)return null;let[a]=process.versions.node.split(".").map(Number);if(a>=24)return null;try{let a=await h();if(!a)throw Error("not installed (runtime copy and bare specifier both missing)");let{createBetterSqliteAdapter:b}=await c.e(5258).then(c.bind(c,25258));return b(f.AL,a)}catch(a){return g.lastDriverError=`better-sqlite3: ${a.message}`,console.warn(`[DB] better-sqlite3 unavailable: ${a.message}`),null}}async function k(){if(process.versions.bun)return null;let[a,b]=process.versions.node.split(".").map(Number);if(a<22||22===a&&b<5)return null;try{let{createNodeSqliteAdapter:a}=await c.e(8520).then(c.bind(c,88520));return await a(f.AL)}catch(a){return g.lastDriverError=`node:sqlite: ${a.message}`,console.warn(`[DB] node:sqlite unavailable: ${a.message}`),null}}async function l(){try{let{createSqlJsAdapter:a}=await c.e(3593).then(c.bind(c,53593));return await a(f.AL)}catch(a){return g.lastDriverError=`sql.js: ${a.message}`,console.warn(`[DB] sql.js unavailable: ${a.message}`),null}}async function m(){(0,f.Jh)();let a=await i();if(a||(a=await j()),a||(a=await k()),a||(a=await l()),!a)throw Error("[DB] No SQLite driver available (bun/better/node/sql.js all failed)");g.logged||(console.log(`[DB] Driver: ${a.driver} | file: ${f.AL}`),g.logged=!0);let{runMigrationOnce:b}=await c.e(9539).then(c.bind(c,79539));return await b(a),a}async function n(){return g.instance?g.instance:(g.initPromise||(g.initPromise=m().then(a=>(g.instance=a,a))),g.initPromise)}},49120:(a,b,c)=>{c.d(b,{jL:()=>l,nJ:()=>p,ok:()=>o});var d=c(73024),e=c.n(d),f=c(33873),g=c.n(f),h=c(21820),i=c.n(h);let j="10router",k="9router",l={main:"db.json",usage:"usage.json",disabled:"disabledModels.json",details:"request-details.json"};function m(){return"win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),k):g().join(i().homedir(),`.${k}`)}function n(){return"win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),j):g().join(i().homedir(),`.${j}`)}function o(){let a=process.env.DATA_DIR;if(!a)return!function(){try{let a=m(),b=n();if(!e().existsSync(a)||e().existsSync(g().join(b,"db","data.sqlite"))||Object.values(l).some(a=>e().existsSync(g().join(b,a))))return;e().cpSync(a,b,{recursive:!0,force:!1}),console.log(`[migration] copied legacy data dir ${a} → ${b}`)}catch(a){console.warn(`[migration] failed to migrate ${m()} → ${n()}: ${a?.message}`)}}(),n();if("win32"===process.platform&&/^\//.test(a))return console.warn(`[DATA_DIR] '${a}' is a Unix path on Windows → fallback to default`),n();try{return e().mkdirSync(a,{recursive:!0}),a}catch(b){if(b?.code==="EACCES"||b?.code==="EPERM")return console.warn(`[DATA_DIR] '${a}' not writable → fallback ~/.${j}`),n();throw b}}let p=o()},72082:(a,b,c)=>{c.r(b),c.d(b,{CONNECTION_SECRET_FIELDS:()=>n,CredentialCryptoError:()=>q,UNREADABLE_CREDENTIALS_KEY:()=>z,connectionDataHasPlaintextSecrets:()=>D,decryptConnectionData:()=>B,decryptSecret:()=>v,encryptConnectionData:()=>y,encryptSecret:()=>u,getCredentialKey:()=>s,hasUnreadableCredentials:()=>A,isEncrypted:()=>r,resetCredentialKeyCache:()=>t,restoreUnreadableCredentials:()=>C});var d=c(77598),e=c.n(d),f=c(73024),g=c.n(f),h=c(76760),i=c.n(h),j=c(49120),k=c(77134);let l="enc:v1:",m="aes-256-gcm",n=["accessToken","refreshToken","idToken","apiKey"],o=/(token|secret|password|cookie|credential|api[-_]?key|proxyurl)/i,p=null;class q extends Error{constructor(a){super(a),this.name="CredentialCryptoError"}}function r(a){return"string"==typeof a&&a.startsWith(l)}function s(){if(p)return p;let a=process.env.CREDENTIAL_SECRET;if("string"==typeof a&&a.trim())return p=e().createHash("sha256").update(a.trim()).digest();let b=i().join(j.nJ,"credential-key");try{let a=g().readFileSync(b,"utf8").trim();if(a)return p=e().createHash("sha256").update(a).digest()}catch{}g().mkdirSync(j.nJ,{recursive:!0});let c=e().randomBytes(32).toString("hex");return g().writeFileSync(b,c,{mode:384}),(0,k.E)(b),p=e().createHash("sha256").update(c).digest()}function t(){p=null}function u(a){if("string"!=typeof a||""===a||r(a))return a;let b=e().randomBytes(12),c=e().createCipheriv(m,s(),b),d=Buffer.concat([c.update(a,"utf8"),c.final()]);return`${l}${b.toString("base64url")}:${c.getAuthTag().toString("base64url")}:${d.toString("base64url")}`}function v(a){if("string"!=typeof a||!r(a))return a;let b=a.slice(l.length).split(":");if(3!==b.length)throw new q("stored credential is malformed");let[c,d,f]=b;try{let a=e().createDecipheriv(m,s(),Buffer.from(c,"base64url"));return a.setAuthTag(Buffer.from(d,"base64url")),Buffer.concat([a.update(Buffer.from(f,"base64url")),a.final()]).toString("utf8")}catch{throw new q("stored credential cannot be decrypted with the current key")}}function w(a){return a&&"object"==typeof a?Object.keys(a).filter(b=>o.test(b)&&"string"==typeof a[b]):[]}function x(a){return w(a).filter(b=>""!==a[b])}function y(a){if(!a||"object"!=typeof a)return a;let b={...a};for(let a of n)"string"==typeof b[a]&&(b[a]=u(b[a]));let c=w(b.providerSpecificData);if(c.length){let a={...b.providerSpecificData};for(let b of c)a[b]=u(a[b]);b.providerSpecificData=a}return b}let z="__unreadableCredentials";function A(a){return!!(a&&"object"==typeof a&&a[z])}function B(a){if(!a||"object"!=typeof a)return{data:a,error:null,unreadable:null};let b={...a},c=null,d=null,e=(a,b,c)=>{d||(d={}),d[a]||(d[a]={}),d[a][b]=c};for(let a of n)if(r(b[a]))try{b[a]=v(b[a])}catch(d){e("fields",a,b[a]),delete b[a],c=d.message}let f=x(b.providerSpecificData).filter(a=>r(b.providerSpecificData[a]));if(f.length){let a={...b.providerSpecificData};for(let b of f)try{a[b]=v(a[b])}catch(d){e("providerSpecificData",b,a[b]),delete a[b],c=d.message}b.providerSpecificData=a}return{data:b,error:c,unreadable:d}}function C(a){if(!a||"object"!=typeof a||!a[z])return a;let{[z]:b,...c}=a,d=a=>null==a||""===a;for(let[a,e]of Object.entries(b.fields||{}))d(c[a])&&(c[a]=e);let e=b.providerSpecificData||{};if(Object.keys(e).length){let a={...c.providerSpecificData||{}};for(let[b,c]of Object.entries(e))d(a[b])&&(a[b]=c);c.providerSpecificData=a}let f=b.synthesized;return f&&(c.testStatus===f.testStatus&&delete c.testStatus,c.lastError===f.lastError&&delete c.lastError),c}function D(a){if(!a||"object"!=typeof a)return!1;for(let b of n)if("string"==typeof a[b]&&""!==a[b]&&!r(a[b]))return!0;return x(a.providerSpecificData).some(b=>!r(a.providerSpecificData[b]))}},77134:(a,b,c)=>{c.d(b,{E:()=>i});var d=c(73024),e=c.n(d),f=c(48161),g=c.n(f),h=c(31421);function i(a){if(a){if("win32"===process.platform){try{let b=[process.env.USERDOMAIN,process.env.USERNAME].filter(Boolean).join("\\")||g().userInfo().username;(0,h.execFileSync)("icacls",[a,"/inheritance:r","/grant:r",`${b}:(F)`],{stdio:"ignore",windowsHide:!0})}catch(b){console.warn(`⚠️ Could not restrict ACLs on ${a}: ${b.message}`)}return}try{e().chmodSync(a,384)}catch(b){console.warn(`⚠️ Could not restrict permissions on ${a}: ${b.message}`)}}}},95658:(a,b,c)=>{c.d(b,{AL:()=>j,HG:()=>i,Jh:()=>n,KQ:()=>k,Or:()=>m,Rf:()=>l});var d=c(76760),e=c.n(d),f=c(73024),g=c.n(f),h=c(49120);let i=e().join(h.nJ,"db"),j=e().join(i,"data.sqlite"),k=e().join(i,"backups"),l=e().join(h.nJ,"runtime"),m=Object.fromEntries(Object.entries(h.jL).map(([a,b])=>[a,e().join(h.nJ,b)]));function n(){for(let a of[h.nJ,i,k])g().existsSync(a)||g().mkdirSync(a,{recursive:!0})}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
exports.id=595,exports.ids=[595,4755,9713],exports.modules={19713:function(a,b,c){a.exports=function(a,b){var d=[function(a,b,c){a.exports=c(34)},function(a,b,c){var d=c(29)("wks"),e=c(33),f=c(2).Symbol,g="function"==typeof f;(a.exports=function(a){return d[a]||(d[a]=g&&f[a]||(g?f:e)("Symbol."+a))}).store=d},function(a,b){var c=a.exports="u">typeof window&&window.Math==Math?window:"u">typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=c)},function(a,b,c){var d=c(9);a.exports=function(a){if(!d(a))throw TypeError(a+" is not an object!");return a}},function(a,b,c){a.exports=!c(24)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(a,b,c){var d=c(12),e=c(17);a.exports=c(4)?function(a,b,c){return d.f(a,b,e(1,c))}:function(a,b,c){return a[b]=c,a}},function(a,b){var c=a.exports={version:"2.4.0"};"number"==typeof __e&&(__e=c)},function(a,b,c){var d=c(14);a.exports=function(a,b,c){if(d(a),void 0===b)return a;switch(c){case 1:return function(c){return a.call(b,c)};case 2:return function(c,d){return a.call(b,c,d)};case 3:return function(c,d,e){return a.call(b,c,d,e)}}return function(){return a.apply(b,arguments)}}},function(a,b){var c={}.hasOwnProperty;a.exports=function(a,b){return c.call(a,b)}},function(a,b){a.exports=function(a){return"object"==typeof a?null!==a:"function"==typeof a}},function(a,b){a.exports={}},function(a,b){var c={}.toString;a.exports=function(a){return c.call(a).slice(8,-1)}},function(a,b,c){var d=c(3),e=c(26),f=c(32),g=Object.defineProperty;b.f=c(4)?Object.defineProperty:function(a,b,c){if(d(a),b=f(b,!0),d(c),e)try{return g(a,b,c)}catch(a){}if("get"in c||"set"in c)throw TypeError("Accessors not supported!");return"value"in c&&(a[b]=c.value),a}},function(a,b,c){var d=c(42),e=c(15);a.exports=function(a){return d(e(a))}},function(a,b){a.exports=function(a){if("function"!=typeof a)throw TypeError(a+" is not a function!");return a}},function(a,b){a.exports=function(a){if(void 0==a)throw TypeError("Can't call method on "+a);return a}},function(a,b,c){var d=c(9),e=c(2).document,f=d(e)&&d(e.createElement);a.exports=function(a){return f?e.createElement(a):{}}},function(a,b){a.exports=function(a,b){return{enumerable:!(1&a),configurable:!(2&a),writable:!(4&a),value:b}}},function(a,b,c){var d=c(12).f,e=c(8),f=c(1)("toStringTag");a.exports=function(a,b,c){a&&!e(a=c?a:a.prototype,f)&&d(a,f,{configurable:!0,value:b})}},function(a,b,c){var d=c(29)("keys"),e=c(33);a.exports=function(a){return d[a]||(d[a]=e(a))}},function(a,b){var c=Math.ceil,d=Math.floor;a.exports=function(a){return isNaN(a*=1)?0:(a>0?d:c)(a)}},function(a,b,c){var d=c(11),e=c(1)("toStringTag"),f="Arguments"==d(function(){return arguments}()),g=function(a,b){try{return a[b]}catch(a){}};a.exports=function(a){var b,c,h;return void 0===a?"Undefined":null===a?"Null":"string"==typeof(c=g(b=Object(a),e))?c:f?d(b):"Object"==(h=d(b))&&"function"==typeof b.callee?"Arguments":h}},function(a,b){a.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(a,b,c){var d=c(2),e=c(6),f=c(7),g=c(5),h="prototype",i=function(a,b,c){var j,k,l,m=a&i.F,n=a&i.G,o=a&i.S,p=a&i.P,q=a&i.B,r=a&i.W,s=n?e:e[b]||(e[b]={}),t=s[h],u=n?d:o?d[b]:(d[b]||{})[h];for(j in n&&(c=b),c)(k=!m&&u&&void 0!==u[j])&&j in s||(l=k?u[j]:c[j],s[j]=n&&"function"!=typeof u[j]?c[j]:q&&k?f(l,d):r&&u[j]==l?function(a){var b=function(b,c,d){if(this instanceof a){switch(arguments.length){case 0:return new a;case 1:return new a(b);case 2:return new a(b,c)}return new a(b,c,d)}return a.apply(this,arguments)};return b[h]=a[h],b}(l):p&&"function"==typeof l?f(Function.call,l):l,p&&((s.virtual||(s.virtual={}))[j]=l,a&i.R&&t&&!t[j]&&g(t,j,l)))};i.F=1,i.G=2,i.S=4,i.P=8,i.B=16,i.W=32,i.U=64,i.R=128,a.exports=i},function(a,b){a.exports=function(a){try{return!!a()}catch(a){return!0}}},function(a,b,c){a.exports=c(2).document&&document.documentElement},function(a,b,c){a.exports=!c(4)&&!c(24)(function(){return 7!=Object.defineProperty(c(16)("div"),"a",{get:function(){return 7}}).a})},function(a,b,c){"use strict";var d=c(28),e=c(23),f=c(57),g=c(5),h=c(8),i=c(10),j=c(45),k=c(18),l=c(52),m=c(1)("iterator"),n=!([].keys&&"next"in[].keys()),o="keys",p="values",q=function(){return this};a.exports=function(a,b,c,r,s,t,u){j(c,b,r);var v,w,x,y=function(a){if(!n&&a in C)return C[a];switch(a){case o:case p:return function(){return new c(this,a)}}return function(){return new c(this,a)}},z=b+" Iterator",A=s==p,B=!1,C=a.prototype,D=C[m]||C["@@iterator"]||s&&C[s],E=D||y(s),F=s?A?y("entries"):E:void 0,G="Array"==b&&C.entries||D;if(G&&(x=l(G.call(new a)))!==Object.prototype&&(k(x,z,!0),d||h(x,m)||g(x,m,q)),A&&D&&D.name!==p&&(B=!0,E=function(){return D.call(this)}),(!d||u)&&(n||B||!C[m])&&g(C,m,E),i[b]=E,i[z]=q,s)if(v={values:A?E:y(p),keys:t?E:y(o),entries:F},u)for(w in v)w in C||f(C,w,v[w]);else e(e.P+e.F*(n||B),b,v);return v}},function(a,b){a.exports=!0},function(a,b,c){var d=c(2),e="__core-js_shared__",f=d[e]||(d[e]={});a.exports=function(a){return f[a]||(f[a]={})}},function(a,b,c){var d,e,f,g=c(7),h=c(41),i=c(25),j=c(16),k=c(2),l=k.process,m=k.setImmediate,n=k.clearImmediate,o=k.MessageChannel,p=0,q={},r="onreadystatechange",s=function(){var a=+this;if(q.hasOwnProperty(a)){var b=q[a];delete q[a],b()}},t=function(a){s.call(a.data)};m&&n||(m=function(a){for(var b=[],c=1;arguments.length>c;)b.push(arguments[c++]);return q[++p]=function(){h("function"==typeof a?a:Function(a),b)},d(p),p},n=function(a){delete q[a]},"process"==c(11)(l)?d=function(a){l.nextTick(g(s,a,1))}:o?(f=(e=new o).port2,e.port1.onmessage=t,d=g(f.postMessage,f,1)):k.addEventListener&&"function"==typeof postMessage&&!k.importScripts?(d=function(a){k.postMessage(a+"","*")},k.addEventListener("message",t,!1)):d=r in j("script")?function(a){i.appendChild(j("script"))[r]=function(){i.removeChild(this),s.call(a)}}:function(a){setTimeout(g(s,a,1),0)}),a.exports={set:m,clear:n}},function(a,b,c){var d=c(20),e=Math.min;a.exports=function(a){return a>0?e(d(a),0x1fffffffffffff):0}},function(a,b,c){var d=c(9);a.exports=function(a,b){var c,e;if(!d(a))return a;if(b&&"function"==typeof(c=a.toString)&&!d(e=c.call(a))||"function"==typeof(c=a.valueOf)&&!d(e=c.call(a))||!b&&"function"==typeof(c=a.toString)&&!d(e=c.call(a)))return e;throw TypeError("Can't convert object to primitive value")}},function(a,b){var c=0,d=Math.random();a.exports=function(a){return"Symbol(".concat(void 0===a?"":a,")_",(++c+d).toString(36))}},function(a,b,c){"use strict";function d(a){return(0,i.createHash)("sha256").update(a).digest("hex")}function e(a){switch(j){case"darwin":return a.split("IOPlatformUUID")[1].split("\n")[0].replace(/\=|\s+|\"/gi,"").toLowerCase();case"win32":return a.toString().split("REG_SZ")[1].replace(/\r+|\n+|\s+/gi,"").toLowerCase();case"linux":case"freebsd":return a.toString().replace(/\r+|\n+|\s+/gi,"").toLowerCase();default:throw Error("Unsupported platform: "+process.platform)}}Object.defineProperty(b,"__esModule",{value:!0});var f,g=(f=c(35))&&f.__esModule?f:{default:f};b.machineIdSync=function(a){var b=e((0,h.execSync)(k[j]).toString());return a?b:d(b)},b.machineId=function(a){return new g.default(function(b,c){return(0,h.exec)(k[j],{},function(f,g,h){if(f)return c(Error("Error while obtaining machine id: "+f.stack));var i=e(g.toString());return b(a?i:d(i))})})};var h=c(70),i=c(71),j=process.platform,k={darwin:"ioreg -rd1 -c IOPlatformExpertDevice",win32:{native:"%windir%\\System32",mixed:"%windir%\\sysnative\\cmd.exe /c %windir%\\System32"}["win32"!==process.platform?"":"ia32"===process.arch&&process.env.hasOwnProperty("PROCESSOR_ARCHITEW6432")?"mixed":"native"]+"\\REG.exe QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid",linux:"( cat /var/lib/dbus/machine-id /etc/machine-id 2> /dev/null || hostname ) | head -n 1 || :",freebsd:"kenv -q smbios.system.uuid || sysctl -n kern.hostuuid"}},function(a,b,c){a.exports={default:c(36),__esModule:!0}},function(a,b,c){c(66),c(68),c(69),c(67),a.exports=c(6).Promise},function(a,b){a.exports=function(){}},function(a,b){a.exports=function(a,b,c,d){if(!(a instanceof b)||void 0!==d&&d in a)throw TypeError(c+": incorrect invocation!");return a}},function(a,b,c){var d=c(13),e=c(31),f=c(62);a.exports=function(a){return function(b,c,g){var h,i=d(b),j=e(i.length),k=f(g,j);if(a&&c!=c){for(;j>k;)if((h=i[k++])!=h)return!0}else for(;j>k;k++)if((a||k in i)&&i[k]===c)return a||k||0;return!a&&-1}}},function(a,b,c){var d=c(7),e=c(44),f=c(43),g=c(3),h=c(31),i=c(64),j={},k={},b=a.exports=function(a,b,c,l,m){var n,o,p,q,r=m?function(){return a}:i(a),s=d(c,l,b?2:1),t=0;if("function"!=typeof r)throw TypeError(a+" is not iterable!");if(f(r)){for(n=h(a.length);n>t;t++)if((q=b?s(g(o=a[t])[0],o[1]):s(a[t]))===j||q===k)return q}else for(p=r.call(a);!(o=p.next()).done;)if((q=e(p,s,o.value,b))===j||q===k)return q};b.BREAK=j,b.RETURN=k},function(a,b){a.exports=function(a,b,c){var d=void 0===c;switch(b.length){case 0:return d?a():a.call(c);case 1:return d?a(b[0]):a.call(c,b[0]);case 2:return d?a(b[0],b[1]):a.call(c,b[0],b[1]);case 3:return d?a(b[0],b[1],b[2]):a.call(c,b[0],b[1],b[2]);case 4:return d?a(b[0],b[1],b[2],b[3]):a.call(c,b[0],b[1],b[2],b[3])}return a.apply(c,b)}},function(a,b,c){var d=c(11);a.exports=Object("z").propertyIsEnumerable(0)?Object:function(a){return"String"==d(a)?a.split(""):Object(a)}},function(a,b,c){var d=c(10),e=c(1)("iterator"),f=Array.prototype;a.exports=function(a){return void 0!==a&&(d.Array===a||f[e]===a)}},function(a,b,c){var d=c(3);a.exports=function(a,b,c,e){try{return e?b(d(c)[0],c[1]):b(c)}catch(b){var f=a.return;throw void 0!==f&&d(f.call(a)),b}}},function(a,b,c){"use strict";var d=c(49),e=c(17),f=c(18),g={};c(5)(g,c(1)("iterator"),function(){return this}),a.exports=function(a,b,c){a.prototype=d(g,{next:e(1,c)}),f(a,b+" Iterator")}},function(a,b,c){var d=c(1)("iterator"),e=!1;try{var f=[7][d]();f.return=function(){e=!0},Array.from(f,function(){throw 2})}catch(a){}a.exports=function(a,b){if(!b&&!e)return!1;var c=!1;try{var f=[7],g=f[d]();g.next=function(){return{done:c=!0}},f[d]=function(){return g},a(f)}catch(a){}return c}},function(a,b){a.exports=function(a,b){return{value:b,done:!!a}}},function(a,b,c){var d=c(2),e=c(30).set,f=d.MutationObserver||d.WebKitMutationObserver,g=d.process,h=d.Promise,i="process"==c(11)(g);a.exports=function(){var a,b,c,j=function(){var d,e;for(i&&(d=g.domain)&&d.exit();a;){e=a.fn,a=a.next;try{e()}catch(d){throw a?c():b=void 0,d}}b=void 0,d&&d.enter()};if(i)c=function(){g.nextTick(j)};else if(f){var k=!0,l=document.createTextNode("");new f(j).observe(l,{characterData:!0}),c=function(){l.data=k=!k}}else if(h&&h.resolve){var m=h.resolve();c=function(){m.then(j)}}else c=function(){e.call(d,j)};return function(d){var e={fn:d,next:void 0};b&&(b.next=e),a||(a=e,c()),b=e}}},function(a,b,c){var d=c(3),e=c(50),f=c(22),g=c(19)("IE_PROTO"),h=function(){},i="prototype",j=function(){var a,b=c(16)("iframe"),d=f.length;for(b.style.display="none",c(25).appendChild(b),b.src="javascript:",(a=b.contentWindow.document).open(),a.write("<script>document.F=Object<\/script>"),a.close(),j=a.F;d--;)delete j[i][f[d]];return j()};a.exports=Object.create||function(a,b){var c;return null!==a?(h[i]=d(a),c=new h,h[i]=null,c[g]=a):c=j(),void 0===b?c:e(c,b)}},function(a,b,c){var d=c(12),e=c(3),f=c(54);a.exports=c(4)?Object.defineProperties:function(a,b){e(a);for(var c,g=f(b),h=g.length,i=0;h>i;)d.f(a,c=g[i++],b[c]);return a}},function(a,b,c){var d=c(55),e=c(17),f=c(13),g=c(32),h=c(8),i=c(26),j=Object.getOwnPropertyDescriptor;b.f=c(4)?j:function(a,b){if(a=f(a),b=g(b,!0),i)try{return j(a,b)}catch(a){}if(h(a,b))return e(!d.f.call(a,b),a[b])}},function(a,b,c){var d=c(8),e=c(63),f=c(19)("IE_PROTO"),g=Object.prototype;a.exports=Object.getPrototypeOf||function(a){return d(a=e(a),f)?a[f]:"function"==typeof a.constructor&&a instanceof a.constructor?a.constructor.prototype:a instanceof Object?g:null}},function(a,b,c){var d=c(8),e=c(13),f=c(39)(!1),g=c(19)("IE_PROTO");a.exports=function(a,b){var c,h=e(a),i=0,j=[];for(c in h)c!=g&&d(h,c)&&j.push(c);for(;b.length>i;)d(h,c=b[i++])&&(~f(j,c)||j.push(c));return j}},function(a,b,c){var d=c(53),e=c(22);a.exports=Object.keys||function(a){return d(a,e)}},function(a,b){b.f=({}).propertyIsEnumerable},function(a,b,c){var d=c(5);a.exports=function(a,b,c){for(var e in b)c&&a[e]?a[e]=b[e]:d(a,e,b[e]);return a}},function(a,b,c){a.exports=c(5)},function(a,b,c){var d=c(9),e=c(3),f=function(a,b){if(e(a),!d(b)&&null!==b)throw TypeError(b+": can't set as prototype!")};a.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(a,b,d){try{(d=c(7)(Function.call,c(51).f(Object.prototype,"__proto__").set,2))(a,[]),b=!(a instanceof Array)}catch(a){b=!0}return function(a,c){return f(a,c),b?a.__proto__=c:d(a,c),a}}({},!1):void 0),check:f}},function(a,b,c){"use strict";var d=c(2),e=c(6),f=c(12),g=c(4),h=c(1)("species");a.exports=function(a){var b="function"==typeof e[a]?e[a]:d[a];g&&b&&!b[h]&&f.f(b,h,{configurable:!0,get:function(){return this}})}},function(a,b,c){var d=c(3),e=c(14),f=c(1)("species");a.exports=function(a,b){var c,g=d(a).constructor;return void 0===g||void 0==(c=d(g)[f])?b:e(c)}},function(a,b,c){var d=c(20),e=c(15);a.exports=function(a){return function(b,c){var f,g,h=String(e(b)),i=d(c),j=h.length;return i<0||i>=j?a?"":void 0:(f=h.charCodeAt(i))<55296||f>56319||i+1===j||(g=h.charCodeAt(i+1))<56320||g>57343?a?h.charAt(i):f:a?h.slice(i,i+2):(f-55296<<10)+(g-56320)+65536}}},function(a,b,c){var d=c(20),e=Math.max,f=Math.min;a.exports=function(a,b){return(a=d(a))<0?e(a+b,0):f(a,b)}},function(a,b,c){var d=c(15);a.exports=function(a){return Object(d(a))}},function(a,b,c){var d=c(21),e=c(1)("iterator"),f=c(10);a.exports=c(6).getIteratorMethod=function(a){if(void 0!=a)return a[e]||a["@@iterator"]||f[d(a)]}},function(a,b,c){"use strict";var d=c(37),e=c(47),f=c(10),g=c(13);a.exports=c(27)(Array,"Array",function(a,b){this._t=g(a),this._i=0,this._k=b},function(){var a=this._t,b=this._k,c=this._i++;return!a||c>=a.length?(this._t=void 0,e(1)):"keys"==b?e(0,c):"values"==b?e(0,a[c]):e(0,[c,a[c]])},"values"),f.Arguments=f.Array,d("keys"),d("values"),d("entries")},function(a,b){},function(a,b,c){"use strict";var d,e,f,g=c(28),h=c(2),i=c(7),j=c(21),k=c(23),l=c(9),m=(c(3),c(14)),n=c(38),o=c(40),p=(c(58).set,c(60)),q=c(30).set,r=c(48)(),s="Promise",t=h.TypeError,u=h.process,v=h[s],u=h.process,w="process"==j(u),x=function(){},y=!!function(){try{var a=v.resolve(1),b=(a.constructor={})[c(1)("species")]=function(a){a(x,x)};return(w||"function"==typeof PromiseRejectionEvent)&&a.then(x)instanceof b}catch(a){}}(),z=function(a,b){return a===b||a===v&&b===f},A=function(a){var b;return!(!l(a)||"function"!=typeof(b=a.then))&&b},B=function(a){return z(v,a)?new C(a):new e(a)},C=e=function(a){var b,c;this.promise=new a(function(a,d){if(void 0!==b||void 0!==c)throw t("Bad Promise constructor");b=a,c=d}),this.resolve=m(b),this.reject=m(c)},D=function(a){try{a()}catch(a){return{error:a}}},E=function(a,b){if(!a._n){a._n=!0;var c=a._c;r(function(){for(var d=a._v,e=1==a._s,f=0;c.length>f;)!function(b){var c,f,g=e?b.ok:b.fail,h=b.resolve,i=b.reject,j=b.domain;try{g?(e||(2==a._h&&H(a),a._h=1),!0===g?c=d:(j&&j.enter(),c=g(d),j&&j.exit()),c===b.promise?i(t("Promise-chain cycle")):(f=A(c))?f.call(c,h,i):h(c)):i(d)}catch(a){i(a)}}(c[f++]);a._c=[],a._n=!1,b&&!a._h&&F(a)})}},F=function(a){q.call(h,function(){var b,c,d,e=a._v;if(G(a)&&(b=D(function(){w?u.emit("unhandledRejection",e,a):(c=h.onunhandledrejection)?c({promise:a,reason:e}):(d=h.console)&&d.error&&d.error("Unhandled promise rejection",e)}),a._h=w||G(a)?2:1),a._a=void 0,b)throw b.error})},G=function(a){if(1==a._h)return!1;for(var b,c=a._a||a._c,d=0;c.length>d;)if((b=c[d++]).fail||!G(b.promise))return!1;return!0},H=function(a){q.call(h,function(){var b;w?u.emit("rejectionHandled",a):(b=h.onrejectionhandled)&&b({promise:a,reason:a._v})})},I=function(a){var b=this;b._d||(b._d=!0,(b=b._w||b)._v=a,b._s=2,b._a||(b._a=b._c.slice()),E(b,!0))},J=function(a){var b,c=this;if(!c._d){c._d=!0,c=c._w||c;try{if(c===a)throw t("Promise can't be resolved itself");(b=A(a))?r(function(){var d={_w:c,_d:!1};try{b.call(a,i(J,d,1),i(I,d,1))}catch(a){I.call(d,a)}}):(c._v=a,c._s=1,E(c,!1))}catch(a){I.call({_w:c,_d:!1},a)}}};y||(v=function(a){n(this,v,s,"_h"),m(a),d.call(this);try{a(i(J,this,1),i(I,this,1))}catch(a){I.call(this,a)}},(d=function(a){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=c(56)(v.prototype,{then:function(a,b){var c=B(p(this,v));return c.ok="function"!=typeof a||a,c.fail="function"==typeof b&&b,c.domain=w?u.domain:void 0,this._c.push(c),this._a&&this._a.push(c),this._s&&E(this,!1),c.promise},catch:function(a){return this.then(void 0,a)}}),C=function(){var a=new d;this.promise=a,this.resolve=i(J,a,1),this.reject=i(I,a,1)}),k(k.G+k.W+!y*k.F,{Promise:v}),c(18)(v,s),c(59)(s),f=c(6)[s],k(k.S+!y*k.F,s,{reject:function(a){var b=B(this);return(0,b.reject)(a),b.promise}}),k(k.S+k.F*(g||!y),s,{resolve:function(a){if(a instanceof v&&z(a.constructor,this))return a;var b=B(this);return(0,b.resolve)(a),b.promise}}),k(k.S+!(y&&c(46)(function(a){v.all(a).catch(x)}))*k.F,s,{all:function(a){var b=this,c=B(b),d=c.resolve,e=c.reject,f=D(function(){var c=[],f=0,g=1;o(a,!1,function(a){var h=f++,i=!1;c.push(void 0),g++,b.resolve(a).then(function(a){i||(i=!0,c[h]=a,--g||d(c))},e)}),--g||d(c)});return f&&e(f.error),c.promise},race:function(a){var b=this,c=B(b),d=c.reject,e=D(function(){o(a,!1,function(a){b.resolve(a).then(c.resolve,d)})});return e&&d(e.error),c.promise}})},function(a,b,c){"use strict";var d=c(61)(!0);c(27)(String,"String",function(a){this._t=String(a),this._i=0},function(){var a,b=this._t,c=this._i;return c>=b.length?{value:void 0,done:!0}:(a=d(b,c),this._i+=a.length,{value:a,done:!1})})},function(a,b,c){c(65);for(var d=c(2),e=c(5),f=c(10),g=c(1)("toStringTag"),h=["NodeList","DOMTokenList","MediaList","StyleSheetList","CSSRuleList"],i=0;i<5;i++){var j=h[i],k=d[j],l=k&&k.prototype;l&&!l[g]&&e(l,g,j),f[j]=f.Array}},function(a,b){a.exports=c(79646)},function(a,b){a.exports=c(55511)}];function e(a){if(f[a])return f[a].exports;var b=f[a]={exports:{},id:a,loaded:!1};return d[a].call(b.exports,b,b.exports,e),b.loaded=!0,b.exports}var f={};return e.m=d,e.c=f,e.p="",e(0)}(c(79646),c(55511))},50122:(a,b,c)=>{"use strict";c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},94755:(a,b,c)=>{"use strict";c.d(b,{A:()=>i});var d=c(77598);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length;var h=c(50122);let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();var i=a,j=c;let k=(i=i||{}).random??i.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(k.length<16)throw Error("Random bytes length must be >= 16");if(k[6]=15&k[6]|64,k[8]=63&k[8]|128,b){if((j=j||0)<0||j+16>b.length)throw RangeError(`UUID byte range ${j}:${j+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[j+a]=k[a];return b}return(0,h.k)(k)}}};
|
|
1
|
+
exports.id=595,exports.ids=[595,4755],exports.modules={19713:function(a,b,c){a.exports=function(a,b){var d=[function(a,b,c){a.exports=c(34)},function(a,b,c){var d=c(29)("wks"),e=c(33),f=c(2).Symbol,g="function"==typeof f;(a.exports=function(a){return d[a]||(d[a]=g&&f[a]||(g?f:e)("Symbol."+a))}).store=d},function(a,b){var c=a.exports="u">typeof window&&window.Math==Math?window:"u">typeof self&&self.Math==Math?self:Function("return this")();"number"==typeof __g&&(__g=c)},function(a,b,c){var d=c(9);a.exports=function(a){if(!d(a))throw TypeError(a+" is not an object!");return a}},function(a,b,c){a.exports=!c(24)(function(){return 7!=Object.defineProperty({},"a",{get:function(){return 7}}).a})},function(a,b,c){var d=c(12),e=c(17);a.exports=c(4)?function(a,b,c){return d.f(a,b,e(1,c))}:function(a,b,c){return a[b]=c,a}},function(a,b){var c=a.exports={version:"2.4.0"};"number"==typeof __e&&(__e=c)},function(a,b,c){var d=c(14);a.exports=function(a,b,c){if(d(a),void 0===b)return a;switch(c){case 1:return function(c){return a.call(b,c)};case 2:return function(c,d){return a.call(b,c,d)};case 3:return function(c,d,e){return a.call(b,c,d,e)}}return function(){return a.apply(b,arguments)}}},function(a,b){var c={}.hasOwnProperty;a.exports=function(a,b){return c.call(a,b)}},function(a,b){a.exports=function(a){return"object"==typeof a?null!==a:"function"==typeof a}},function(a,b){a.exports={}},function(a,b){var c={}.toString;a.exports=function(a){return c.call(a).slice(8,-1)}},function(a,b,c){var d=c(3),e=c(26),f=c(32),g=Object.defineProperty;b.f=c(4)?Object.defineProperty:function(a,b,c){if(d(a),b=f(b,!0),d(c),e)try{return g(a,b,c)}catch(a){}if("get"in c||"set"in c)throw TypeError("Accessors not supported!");return"value"in c&&(a[b]=c.value),a}},function(a,b,c){var d=c(42),e=c(15);a.exports=function(a){return d(e(a))}},function(a,b){a.exports=function(a){if("function"!=typeof a)throw TypeError(a+" is not a function!");return a}},function(a,b){a.exports=function(a){if(void 0==a)throw TypeError("Can't call method on "+a);return a}},function(a,b,c){var d=c(9),e=c(2).document,f=d(e)&&d(e.createElement);a.exports=function(a){return f?e.createElement(a):{}}},function(a,b){a.exports=function(a,b){return{enumerable:!(1&a),configurable:!(2&a),writable:!(4&a),value:b}}},function(a,b,c){var d=c(12).f,e=c(8),f=c(1)("toStringTag");a.exports=function(a,b,c){a&&!e(a=c?a:a.prototype,f)&&d(a,f,{configurable:!0,value:b})}},function(a,b,c){var d=c(29)("keys"),e=c(33);a.exports=function(a){return d[a]||(d[a]=e(a))}},function(a,b){var c=Math.ceil,d=Math.floor;a.exports=function(a){return isNaN(a*=1)?0:(a>0?d:c)(a)}},function(a,b,c){var d=c(11),e=c(1)("toStringTag"),f="Arguments"==d(function(){return arguments}()),g=function(a,b){try{return a[b]}catch(a){}};a.exports=function(a){var b,c,h;return void 0===a?"Undefined":null===a?"Null":"string"==typeof(c=g(b=Object(a),e))?c:f?d(b):"Object"==(h=d(b))&&"function"==typeof b.callee?"Arguments":h}},function(a,b){a.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(a,b,c){var d=c(2),e=c(6),f=c(7),g=c(5),h="prototype",i=function(a,b,c){var j,k,l,m=a&i.F,n=a&i.G,o=a&i.S,p=a&i.P,q=a&i.B,r=a&i.W,s=n?e:e[b]||(e[b]={}),t=s[h],u=n?d:o?d[b]:(d[b]||{})[h];for(j in n&&(c=b),c)(k=!m&&u&&void 0!==u[j])&&j in s||(l=k?u[j]:c[j],s[j]=n&&"function"!=typeof u[j]?c[j]:q&&k?f(l,d):r&&u[j]==l?function(a){var b=function(b,c,d){if(this instanceof a){switch(arguments.length){case 0:return new a;case 1:return new a(b);case 2:return new a(b,c)}return new a(b,c,d)}return a.apply(this,arguments)};return b[h]=a[h],b}(l):p&&"function"==typeof l?f(Function.call,l):l,p&&((s.virtual||(s.virtual={}))[j]=l,a&i.R&&t&&!t[j]&&g(t,j,l)))};i.F=1,i.G=2,i.S=4,i.P=8,i.B=16,i.W=32,i.U=64,i.R=128,a.exports=i},function(a,b){a.exports=function(a){try{return!!a()}catch(a){return!0}}},function(a,b,c){a.exports=c(2).document&&document.documentElement},function(a,b,c){a.exports=!c(4)&&!c(24)(function(){return 7!=Object.defineProperty(c(16)("div"),"a",{get:function(){return 7}}).a})},function(a,b,c){"use strict";var d=c(28),e=c(23),f=c(57),g=c(5),h=c(8),i=c(10),j=c(45),k=c(18),l=c(52),m=c(1)("iterator"),n=!([].keys&&"next"in[].keys()),o="keys",p="values",q=function(){return this};a.exports=function(a,b,c,r,s,t,u){j(c,b,r);var v,w,x,y=function(a){if(!n&&a in C)return C[a];switch(a){case o:case p:return function(){return new c(this,a)}}return function(){return new c(this,a)}},z=b+" Iterator",A=s==p,B=!1,C=a.prototype,D=C[m]||C["@@iterator"]||s&&C[s],E=D||y(s),F=s?A?y("entries"):E:void 0,G="Array"==b&&C.entries||D;if(G&&(x=l(G.call(new a)))!==Object.prototype&&(k(x,z,!0),d||h(x,m)||g(x,m,q)),A&&D&&D.name!==p&&(B=!0,E=function(){return D.call(this)}),(!d||u)&&(n||B||!C[m])&&g(C,m,E),i[b]=E,i[z]=q,s)if(v={values:A?E:y(p),keys:t?E:y(o),entries:F},u)for(w in v)w in C||f(C,w,v[w]);else e(e.P+e.F*(n||B),b,v);return v}},function(a,b){a.exports=!0},function(a,b,c){var d=c(2),e="__core-js_shared__",f=d[e]||(d[e]={});a.exports=function(a){return f[a]||(f[a]={})}},function(a,b,c){var d,e,f,g=c(7),h=c(41),i=c(25),j=c(16),k=c(2),l=k.process,m=k.setImmediate,n=k.clearImmediate,o=k.MessageChannel,p=0,q={},r="onreadystatechange",s=function(){var a=+this;if(q.hasOwnProperty(a)){var b=q[a];delete q[a],b()}},t=function(a){s.call(a.data)};m&&n||(m=function(a){for(var b=[],c=1;arguments.length>c;)b.push(arguments[c++]);return q[++p]=function(){h("function"==typeof a?a:Function(a),b)},d(p),p},n=function(a){delete q[a]},"process"==c(11)(l)?d=function(a){l.nextTick(g(s,a,1))}:o?(f=(e=new o).port2,e.port1.onmessage=t,d=g(f.postMessage,f,1)):k.addEventListener&&"function"==typeof postMessage&&!k.importScripts?(d=function(a){k.postMessage(a+"","*")},k.addEventListener("message",t,!1)):d=r in j("script")?function(a){i.appendChild(j("script"))[r]=function(){i.removeChild(this),s.call(a)}}:function(a){setTimeout(g(s,a,1),0)}),a.exports={set:m,clear:n}},function(a,b,c){var d=c(20),e=Math.min;a.exports=function(a){return a>0?e(d(a),0x1fffffffffffff):0}},function(a,b,c){var d=c(9);a.exports=function(a,b){var c,e;if(!d(a))return a;if(b&&"function"==typeof(c=a.toString)&&!d(e=c.call(a))||"function"==typeof(c=a.valueOf)&&!d(e=c.call(a))||!b&&"function"==typeof(c=a.toString)&&!d(e=c.call(a)))return e;throw TypeError("Can't convert object to primitive value")}},function(a,b){var c=0,d=Math.random();a.exports=function(a){return"Symbol(".concat(void 0===a?"":a,")_",(++c+d).toString(36))}},function(a,b,c){"use strict";function d(a){return(0,i.createHash)("sha256").update(a).digest("hex")}function e(a){switch(j){case"darwin":return a.split("IOPlatformUUID")[1].split("\n")[0].replace(/\=|\s+|\"/gi,"").toLowerCase();case"win32":return a.toString().split("REG_SZ")[1].replace(/\r+|\n+|\s+/gi,"").toLowerCase();case"linux":case"freebsd":return a.toString().replace(/\r+|\n+|\s+/gi,"").toLowerCase();default:throw Error("Unsupported platform: "+process.platform)}}Object.defineProperty(b,"__esModule",{value:!0});var f,g=(f=c(35))&&f.__esModule?f:{default:f};b.machineIdSync=function(a){var b=e((0,h.execSync)(k[j]).toString());return a?b:d(b)},b.machineId=function(a){return new g.default(function(b,c){return(0,h.exec)(k[j],{},function(f,g,h){if(f)return c(Error("Error while obtaining machine id: "+f.stack));var i=e(g.toString());return b(a?i:d(i))})})};var h=c(70),i=c(71),j=process.platform,k={darwin:"ioreg -rd1 -c IOPlatformExpertDevice",win32:{native:"%windir%\\System32",mixed:"%windir%\\sysnative\\cmd.exe /c %windir%\\System32"}["win32"!==process.platform?"":"ia32"===process.arch&&process.env.hasOwnProperty("PROCESSOR_ARCHITEW6432")?"mixed":"native"]+"\\REG.exe QUERY HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Cryptography /v MachineGuid",linux:"( cat /var/lib/dbus/machine-id /etc/machine-id 2> /dev/null || hostname ) | head -n 1 || :",freebsd:"kenv -q smbios.system.uuid || sysctl -n kern.hostuuid"}},function(a,b,c){a.exports={default:c(36),__esModule:!0}},function(a,b,c){c(66),c(68),c(69),c(67),a.exports=c(6).Promise},function(a,b){a.exports=function(){}},function(a,b){a.exports=function(a,b,c,d){if(!(a instanceof b)||void 0!==d&&d in a)throw TypeError(c+": incorrect invocation!");return a}},function(a,b,c){var d=c(13),e=c(31),f=c(62);a.exports=function(a){return function(b,c,g){var h,i=d(b),j=e(i.length),k=f(g,j);if(a&&c!=c){for(;j>k;)if((h=i[k++])!=h)return!0}else for(;j>k;k++)if((a||k in i)&&i[k]===c)return a||k||0;return!a&&-1}}},function(a,b,c){var d=c(7),e=c(44),f=c(43),g=c(3),h=c(31),i=c(64),j={},k={},b=a.exports=function(a,b,c,l,m){var n,o,p,q,r=m?function(){return a}:i(a),s=d(c,l,b?2:1),t=0;if("function"!=typeof r)throw TypeError(a+" is not iterable!");if(f(r)){for(n=h(a.length);n>t;t++)if((q=b?s(g(o=a[t])[0],o[1]):s(a[t]))===j||q===k)return q}else for(p=r.call(a);!(o=p.next()).done;)if((q=e(p,s,o.value,b))===j||q===k)return q};b.BREAK=j,b.RETURN=k},function(a,b){a.exports=function(a,b,c){var d=void 0===c;switch(b.length){case 0:return d?a():a.call(c);case 1:return d?a(b[0]):a.call(c,b[0]);case 2:return d?a(b[0],b[1]):a.call(c,b[0],b[1]);case 3:return d?a(b[0],b[1],b[2]):a.call(c,b[0],b[1],b[2]);case 4:return d?a(b[0],b[1],b[2],b[3]):a.call(c,b[0],b[1],b[2],b[3])}return a.apply(c,b)}},function(a,b,c){var d=c(11);a.exports=Object("z").propertyIsEnumerable(0)?Object:function(a){return"String"==d(a)?a.split(""):Object(a)}},function(a,b,c){var d=c(10),e=c(1)("iterator"),f=Array.prototype;a.exports=function(a){return void 0!==a&&(d.Array===a||f[e]===a)}},function(a,b,c){var d=c(3);a.exports=function(a,b,c,e){try{return e?b(d(c)[0],c[1]):b(c)}catch(b){var f=a.return;throw void 0!==f&&d(f.call(a)),b}}},function(a,b,c){"use strict";var d=c(49),e=c(17),f=c(18),g={};c(5)(g,c(1)("iterator"),function(){return this}),a.exports=function(a,b,c){a.prototype=d(g,{next:e(1,c)}),f(a,b+" Iterator")}},function(a,b,c){var d=c(1)("iterator"),e=!1;try{var f=[7][d]();f.return=function(){e=!0},Array.from(f,function(){throw 2})}catch(a){}a.exports=function(a,b){if(!b&&!e)return!1;var c=!1;try{var f=[7],g=f[d]();g.next=function(){return{done:c=!0}},f[d]=function(){return g},a(f)}catch(a){}return c}},function(a,b){a.exports=function(a,b){return{value:b,done:!!a}}},function(a,b,c){var d=c(2),e=c(30).set,f=d.MutationObserver||d.WebKitMutationObserver,g=d.process,h=d.Promise,i="process"==c(11)(g);a.exports=function(){var a,b,c,j=function(){var d,e;for(i&&(d=g.domain)&&d.exit();a;){e=a.fn,a=a.next;try{e()}catch(d){throw a?c():b=void 0,d}}b=void 0,d&&d.enter()};if(i)c=function(){g.nextTick(j)};else if(f){var k=!0,l=document.createTextNode("");new f(j).observe(l,{characterData:!0}),c=function(){l.data=k=!k}}else if(h&&h.resolve){var m=h.resolve();c=function(){m.then(j)}}else c=function(){e.call(d,j)};return function(d){var e={fn:d,next:void 0};b&&(b.next=e),a||(a=e,c()),b=e}}},function(a,b,c){var d=c(3),e=c(50),f=c(22),g=c(19)("IE_PROTO"),h=function(){},i="prototype",j=function(){var a,b=c(16)("iframe"),d=f.length;for(b.style.display="none",c(25).appendChild(b),b.src="javascript:",(a=b.contentWindow.document).open(),a.write("<script>document.F=Object<\/script>"),a.close(),j=a.F;d--;)delete j[i][f[d]];return j()};a.exports=Object.create||function(a,b){var c;return null!==a?(h[i]=d(a),c=new h,h[i]=null,c[g]=a):c=j(),void 0===b?c:e(c,b)}},function(a,b,c){var d=c(12),e=c(3),f=c(54);a.exports=c(4)?Object.defineProperties:function(a,b){e(a);for(var c,g=f(b),h=g.length,i=0;h>i;)d.f(a,c=g[i++],b[c]);return a}},function(a,b,c){var d=c(55),e=c(17),f=c(13),g=c(32),h=c(8),i=c(26),j=Object.getOwnPropertyDescriptor;b.f=c(4)?j:function(a,b){if(a=f(a),b=g(b,!0),i)try{return j(a,b)}catch(a){}if(h(a,b))return e(!d.f.call(a,b),a[b])}},function(a,b,c){var d=c(8),e=c(63),f=c(19)("IE_PROTO"),g=Object.prototype;a.exports=Object.getPrototypeOf||function(a){return d(a=e(a),f)?a[f]:"function"==typeof a.constructor&&a instanceof a.constructor?a.constructor.prototype:a instanceof Object?g:null}},function(a,b,c){var d=c(8),e=c(13),f=c(39)(!1),g=c(19)("IE_PROTO");a.exports=function(a,b){var c,h=e(a),i=0,j=[];for(c in h)c!=g&&d(h,c)&&j.push(c);for(;b.length>i;)d(h,c=b[i++])&&(~f(j,c)||j.push(c));return j}},function(a,b,c){var d=c(53),e=c(22);a.exports=Object.keys||function(a){return d(a,e)}},function(a,b){b.f=({}).propertyIsEnumerable},function(a,b,c){var d=c(5);a.exports=function(a,b,c){for(var e in b)c&&a[e]?a[e]=b[e]:d(a,e,b[e]);return a}},function(a,b,c){a.exports=c(5)},function(a,b,c){var d=c(9),e=c(3),f=function(a,b){if(e(a),!d(b)&&null!==b)throw TypeError(b+": can't set as prototype!")};a.exports={set:Object.setPrototypeOf||("__proto__"in{}?function(a,b,d){try{(d=c(7)(Function.call,c(51).f(Object.prototype,"__proto__").set,2))(a,[]),b=!(a instanceof Array)}catch(a){b=!0}return function(a,c){return f(a,c),b?a.__proto__=c:d(a,c),a}}({},!1):void 0),check:f}},function(a,b,c){"use strict";var d=c(2),e=c(6),f=c(12),g=c(4),h=c(1)("species");a.exports=function(a){var b="function"==typeof e[a]?e[a]:d[a];g&&b&&!b[h]&&f.f(b,h,{configurable:!0,get:function(){return this}})}},function(a,b,c){var d=c(3),e=c(14),f=c(1)("species");a.exports=function(a,b){var c,g=d(a).constructor;return void 0===g||void 0==(c=d(g)[f])?b:e(c)}},function(a,b,c){var d=c(20),e=c(15);a.exports=function(a){return function(b,c){var f,g,h=String(e(b)),i=d(c),j=h.length;return i<0||i>=j?a?"":void 0:(f=h.charCodeAt(i))<55296||f>56319||i+1===j||(g=h.charCodeAt(i+1))<56320||g>57343?a?h.charAt(i):f:a?h.slice(i,i+2):(f-55296<<10)+(g-56320)+65536}}},function(a,b,c){var d=c(20),e=Math.max,f=Math.min;a.exports=function(a,b){return(a=d(a))<0?e(a+b,0):f(a,b)}},function(a,b,c){var d=c(15);a.exports=function(a){return Object(d(a))}},function(a,b,c){var d=c(21),e=c(1)("iterator"),f=c(10);a.exports=c(6).getIteratorMethod=function(a){if(void 0!=a)return a[e]||a["@@iterator"]||f[d(a)]}},function(a,b,c){"use strict";var d=c(37),e=c(47),f=c(10),g=c(13);a.exports=c(27)(Array,"Array",function(a,b){this._t=g(a),this._i=0,this._k=b},function(){var a=this._t,b=this._k,c=this._i++;return!a||c>=a.length?(this._t=void 0,e(1)):"keys"==b?e(0,c):"values"==b?e(0,a[c]):e(0,[c,a[c]])},"values"),f.Arguments=f.Array,d("keys"),d("values"),d("entries")},function(a,b){},function(a,b,c){"use strict";var d,e,f,g=c(28),h=c(2),i=c(7),j=c(21),k=c(23),l=c(9),m=(c(3),c(14)),n=c(38),o=c(40),p=(c(58).set,c(60)),q=c(30).set,r=c(48)(),s="Promise",t=h.TypeError,u=h.process,v=h[s],u=h.process,w="process"==j(u),x=function(){},y=!!function(){try{var a=v.resolve(1),b=(a.constructor={})[c(1)("species")]=function(a){a(x,x)};return(w||"function"==typeof PromiseRejectionEvent)&&a.then(x)instanceof b}catch(a){}}(),z=function(a,b){return a===b||a===v&&b===f},A=function(a){var b;return!(!l(a)||"function"!=typeof(b=a.then))&&b},B=function(a){return z(v,a)?new C(a):new e(a)},C=e=function(a){var b,c;this.promise=new a(function(a,d){if(void 0!==b||void 0!==c)throw t("Bad Promise constructor");b=a,c=d}),this.resolve=m(b),this.reject=m(c)},D=function(a){try{a()}catch(a){return{error:a}}},E=function(a,b){if(!a._n){a._n=!0;var c=a._c;r(function(){for(var d=a._v,e=1==a._s,f=0;c.length>f;)!function(b){var c,f,g=e?b.ok:b.fail,h=b.resolve,i=b.reject,j=b.domain;try{g?(e||(2==a._h&&H(a),a._h=1),!0===g?c=d:(j&&j.enter(),c=g(d),j&&j.exit()),c===b.promise?i(t("Promise-chain cycle")):(f=A(c))?f.call(c,h,i):h(c)):i(d)}catch(a){i(a)}}(c[f++]);a._c=[],a._n=!1,b&&!a._h&&F(a)})}},F=function(a){q.call(h,function(){var b,c,d,e=a._v;if(G(a)&&(b=D(function(){w?u.emit("unhandledRejection",e,a):(c=h.onunhandledrejection)?c({promise:a,reason:e}):(d=h.console)&&d.error&&d.error("Unhandled promise rejection",e)}),a._h=w||G(a)?2:1),a._a=void 0,b)throw b.error})},G=function(a){if(1==a._h)return!1;for(var b,c=a._a||a._c,d=0;c.length>d;)if((b=c[d++]).fail||!G(b.promise))return!1;return!0},H=function(a){q.call(h,function(){var b;w?u.emit("rejectionHandled",a):(b=h.onrejectionhandled)&&b({promise:a,reason:a._v})})},I=function(a){var b=this;b._d||(b._d=!0,(b=b._w||b)._v=a,b._s=2,b._a||(b._a=b._c.slice()),E(b,!0))},J=function(a){var b,c=this;if(!c._d){c._d=!0,c=c._w||c;try{if(c===a)throw t("Promise can't be resolved itself");(b=A(a))?r(function(){var d={_w:c,_d:!1};try{b.call(a,i(J,d,1),i(I,d,1))}catch(a){I.call(d,a)}}):(c._v=a,c._s=1,E(c,!1))}catch(a){I.call({_w:c,_d:!1},a)}}};y||(v=function(a){n(this,v,s,"_h"),m(a),d.call(this);try{a(i(J,this,1),i(I,this,1))}catch(a){I.call(this,a)}},(d=function(a){this._c=[],this._a=void 0,this._s=0,this._d=!1,this._v=void 0,this._h=0,this._n=!1}).prototype=c(56)(v.prototype,{then:function(a,b){var c=B(p(this,v));return c.ok="function"!=typeof a||a,c.fail="function"==typeof b&&b,c.domain=w?u.domain:void 0,this._c.push(c),this._a&&this._a.push(c),this._s&&E(this,!1),c.promise},catch:function(a){return this.then(void 0,a)}}),C=function(){var a=new d;this.promise=a,this.resolve=i(J,a,1),this.reject=i(I,a,1)}),k(k.G+k.W+!y*k.F,{Promise:v}),c(18)(v,s),c(59)(s),f=c(6)[s],k(k.S+!y*k.F,s,{reject:function(a){var b=B(this);return(0,b.reject)(a),b.promise}}),k(k.S+k.F*(g||!y),s,{resolve:function(a){if(a instanceof v&&z(a.constructor,this))return a;var b=B(this);return(0,b.resolve)(a),b.promise}}),k(k.S+!(y&&c(46)(function(a){v.all(a).catch(x)}))*k.F,s,{all:function(a){var b=this,c=B(b),d=c.resolve,e=c.reject,f=D(function(){var c=[],f=0,g=1;o(a,!1,function(a){var h=f++,i=!1;c.push(void 0),g++,b.resolve(a).then(function(a){i||(i=!0,c[h]=a,--g||d(c))},e)}),--g||d(c)});return f&&e(f.error),c.promise},race:function(a){var b=this,c=B(b),d=c.reject,e=D(function(){o(a,!1,function(a){b.resolve(a).then(c.resolve,d)})});return e&&d(e.error),c.promise}})},function(a,b,c){"use strict";var d=c(61)(!0);c(27)(String,"String",function(a){this._t=String(a),this._i=0},function(){var a,b=this._t,c=this._i;return c>=b.length?{value:void 0,done:!0}:(a=d(b,c),this._i+=a.length,{value:a,done:!1})})},function(a,b,c){c(65);for(var d=c(2),e=c(5),f=c(10),g=c(1)("toStringTag"),h=["NodeList","DOMTokenList","MediaList","StyleSheetList","CSSRuleList"],i=0;i<5;i++){var j=h[i],k=d[j],l=k&&k.prototype;l&&!l[g]&&e(l,g,j),f[j]=f.Array}},function(a,b){a.exports=c(79646)},function(a,b){a.exports=c(55511)}];function e(a){if(f[a])return f[a].exports;var b=f[a]={exports:{},id:a,loaded:!1};return d[a].call(b.exports,b,b.exports,e),b.loaded=!0,b.exports}var f={};return e.m=d,e.c=f,e.p="",e(0)}(c(79646),c(55511))},50122:(a,b,c)=>{"use strict";c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},94755:(a,b,c)=>{"use strict";c.d(b,{A:()=>i});var d=c(77598);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length;var h=c(50122);let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();var i=a,j=c;let k=(i=i||{}).random??i.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(k.length<16)throw Error("Random bytes length must be >= 16");if(k[6]=15&k[6]|64,k[8]=63&k[8]|128,b){if((j=j||0)<0||j+16>b.length)throw RangeError(`UUID byte range ${j}:${j+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[j+a]=k[a];return b}return(0,h.k)(k)}}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=6103,exports.ids=[6103],exports.modules={86103:(a,b,c)=>{c.d(b,{generateApiKeyWithMachine:()=>p});var d=c(55511),e=c.n(d),f=c(73024),g=c.n(f),h=c(76760),i=c.n(h),j=c(53859),k=c(74215);let l=null;async function m(){if(process.env.API_KEY_SECRET)return!1;if("true"===process.env.API_KEY_ROTATION)return!0;try{let a=await (0,k.mt)();return a?.apiKeyRotation===!0}catch{return!1}}async function n(){let a=process.env.API_KEY_SECRET;if(a)return a;if(await m()){if(l)return l;let a=i().join(j.nJ,"api-key-secret");try{return l=g().readFileSync(a,"utf8").trim()}catch{}return g().mkdirSync(j.nJ,{recursive:!0}),l=e().randomBytes(32).toString("hex"),g().writeFileSync(a,l,{mode:384}),l}return process.env.API_KEY_ROTATION||n._warned||(n._warned=!0,console.warn("[auth] API_KEY_SECRET is unset — falling back to a well-known built-in secret. Set API_KEY_SECRET, or enable key rotation in Endpoint settings (experimental; existing API keys will need to be re-issued after enabling).")),"endpoint-proxy-api-key-secret"}async function o(a,b){let c=await n();return e().createHmac("sha256",c).update(a+b).digest("hex").slice(0,8)}async function p(a){let b=function(){let a="abcdefghijklmnopqrstuvwxyz0123456789",b=e().randomBytes(6),c="";for(let d=0;d<6;d++)c+=a.charAt(b[d]%a.length);return c}(),c=await o(a,b);return{key:`sk-${a}-${b}-${c}`,keyId:b}}}};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
"use strict";exports.id=6133,exports.ids=[6133],exports.modules={36133:(a,b,c)=>{c.r(b),c.d(b,{buildQoderHeaders:()=>r,checkinOneQoder:()=>t,getQoderOpenApiBase:()=>p,isEligibleQoderConnection:()=>q,msUntilNextTick:()=>i,runQoderCheckinTick:()=>u,startQoderCheckin:()=>x,stopQoderCheckin:()=>y});var d=c(87886),e=c(95339);let f=!1,g=null,h=null;function i(a=Date.now(),b=Math.random){return Math.max(72e5+Math.floor(6e5*b()),1e3)}async function j(){try{let{getSettings:a}=await Promise.resolve().then(c.bind(c,70321));return await a()||{}}catch{return{}}}async function k(){if(h)return h;let a=await j(),b=a?.qoderDailyDone;return h=b&&"object"==typeof b&&!Array.isArray(b)?{...b}:{}}function l(a=Date.now()){let b=new Date(a),c=a=>String(a).padStart(2,"0");return`${b.getFullYear()}-${c(b.getMonth()+1)}-${c(b.getDate())}`}function m(a){let b="qoder-cn"===a.provider?"Qoder CN":"Qoder",c=a.name||a.displayName||a.email||`${String(a.id||"?").slice(0,8)}…`;return`${b}: ${c}`}function n(a){let b=Math.max(0,Math.round(a/1e3));if(b<60)return`${b}s`;let c=Math.round(b/60);return c<60?`${c}m`:`${Math.floor(c/60)}h${String(c%60).padStart(2,"0")}m`}async function o(){if(!h)return;let a=l(),b={};for(let[c,d]of Object.entries(h))d===a&&(b[c]=d);try{let{updateSettings:a}=await Promise.resolve().then(c.bind(c,70321));for(let c of(await a({qoderDailyDone:b}),Object.keys(h)))delete h[c];Object.assign(h,b)}catch(a){d.warn("QODER_CHECKIN",`Persist daily-done map failed: ${a?.message??String(a)}`)}}function p(a){return"qoder-cn"===a?e.jJ:e.L7}function q(a){if(!a||!1===a.isActive||"qoder"!==a.provider&&"qoder-cn"!==a.provider)return!1;let b=a.accessToken||a.apiKey;return"string"==typeof b&&b.trim().length>0}function r(a){return{Authorization:`Bearer ${a}`,"Cosy-ClientType":"10","Cosy-Version":"0.3.3","Cosy-MachineOS":"win32"===process.platform?"windows":"darwin"===process.platform?"macos":"linux","User-Agent":"Qoder",Accept:"application/json"}}async function s(a){let b=a.accessToken||a.apiKey;if("string"!=typeof b)return null;if((b=b.trim()).startsWith("pt-"))try{let{exchangePatToJobToken:d}=await Promise.all([c.e(5692),c.e(4575)]).then(c.bind(c,75692)),e="qoder-cn"===a.provider;b=await d(b,e)}catch(b){return d.warn("QODER_CHECKIN","PAT exchange failed",{connectionId:a.id,error:b.message}),null}return b}async function t(a,b={}){let c=b.fetch||fetch,e=p(a.provider),f=await s(a);if(!f)return{connectionId:a.id,account:a.name||a.email||a.id,provider:a.provider,status:"failed",error:"Token unavailable"};let g=r(f),h=`${e}/sash/api/v1/me/campaigns?clientType=10`;try{let b=await c(h,{method:"GET",headers:g,signal:AbortSignal.timeout(15e3)});if(401===b.status||403===b.status)return{connectionId:a.id,account:a.name||a.email||a.id,provider:a.provider,status:"failed",error:`Authentication failed (${b.status})`};if(!b.ok)return{connectionId:a.id,account:a.name||a.email||a.id,provider:a.provider,status:"failed",error:`HTTP ${b.status}`};let f=await b.json(),i=Array.isArray(f?.campaigns)?f.campaigns:[],j=i.filter(a=>"CLAIM_BENEFIT"===a.actionType&&"CLAIMABLE"===a.claimStatus);if(0===j.length){let b=i.filter(a=>"CLAIM_BENEFIT"===a.actionType);if(0===b.length)return{connectionId:a.id,account:a.name||a.email||a.id,provider:a.provider,status:"no-activity",message:"当前无可领取的活动",claimedAmount:0};return{connectionId:a.id,account:a.name||a.email||a.id,provider:a.provider,status:"already",message:"今日已领或无待领活动",claimedAmount:0}}let k=0,l=[];for(let a of j)try{let b=`${e}/sash/api/v1/me/campaigns/${encodeURIComponent(a.campaignId)}/claim`,d=await c(b,{method:"POST",headers:g,signal:AbortSignal.timeout(15e3)});if(d.ok){let b=await d.json().catch(()=>({})),c=b.benefit?.amount||a.benefit?.amount||0;k+=c,l.push({campaignId:a.campaignId,campaignKey:a.campaignKey,amount:c,status:"claimed"})}}catch(b){d.warn("QODER_CHECKIN",`Failed to claim campaign ${a.campaignId}`,{error:b.message})}if(l.length>0)return{connectionId:a.id,account:a.name||a.email||a.id,provider:a.provider,status:"checked-in",claimedAmount:k,campaigns:l};return{connectionId:a.id,account:a.name||a.email||a.id,provider:a.provider,status:"failed",error:"All claims failed"}}catch(b){return{connectionId:a.id,account:a.name||a.email||a.id,provider:a.provider,status:"failed",error:b.message||"Network error"}}}async function u(a={}){let{getProviderConnections:b}=await Promise.resolve().then(c.bind(c,70321)),e=(await b()).filter(b=>q(b)&&(!a.provider||b.provider===a.provider));if(0===e.length)return d.debug("QODER_CHECKIN","Tick: no eligible Qoder connections"),[];d.debug("QODER_CHECKIN",`领取轮次开始:${e.map(a=>m(a)).join("、")}`);let f=a.doneMap||await k(),g=l(a.nowMs),h=[];for(let b of e)try{if(a.skipIfCheckedToday&&f[b.id]===g){d.debug("QODER_CHECKIN",`${m(b)}:今日已确认完成,跳过`),h.push({connectionId:b.id,account:b.name||b.email||b.id,provider:b.provider,status:"already",memoized:!0});continue}let c=a.checkinConnection||t,e=await c(b,{...a,doneMap:f});h.push(e),"checked-in"===e.status?(f[b.id]=g,d.info("QODER_CHECKIN",`${m(b)} 领取成功 +${e.claimedAmount} Credits`)):"already"===e.status?(f[b.id]=g,d.debug("QODER_CHECKIN",`${m(b)}:${e.message||"今日已领或无待领活动"}`)):"no-activity"===e.status?d.debug("QODER_CHECKIN",`${m(b)}:${e.message||"当前无可领取的活动"}`):d.warn("QODER_CHECKIN",`${m(b)} 领取失败:${e.error||e.status}`)}catch(a){h.push({connectionId:b.id,account:b.name||b.id,provider:b.provider,status:"failed",error:a?.message||String(a)}),d.warn("QODER_CHECKIN",`${m(b)} 领取异常:${a?.message||a}`)}let i=h.filter(a=>"checked-in"===a.status),j=h.filter(a=>"failed"===a.status),n=h.filter(a=>"no-activity"===a.status),p=h.length-i.length-j.length-n.length,r=i.reduce((a,b)=>a+(b.claimedAmount||0),0),s=`领取汇总:成功 ${i.length}(+${r} Credits)、已领 ${p}、无活动 ${n.length}、失败 ${j.length}`;return i.length>0||j.length>0?d.info("QODER_CHECKIN",s):d.debug("QODER_CHECKIN",s),await o(),h}async function v(a){try{let b=await j();if(!0!==b.qoderCheckin)return void d.debug("QODER_CHECKIN",`Scheduled ${a}: setting off, skipping`);let c=await k();await u({skipIfCheckedToday:!0,doneMap:c}),await o()}catch(b){d.warn("QODER_CHECKIN",`定时领取(${a})失败:${b?.message??String(b)}`)}}function w(){g&&(clearTimeout(g),g=null)}function x(a={}){let b;if(f)return!1;if("phase-production-build"===(b=process.env.NEXT_PHASE||"")||"phase-export"===b||"phase-static"===b)return d.debug("QODER_CHECKIN","Skip start outside long-running server runtime"),!1;f=!0,!0!==a.skipBoot&&v("boot");let c=function a(){if(!f)return 0;let b=i();return w(),(g=setTimeout(()=>{v("tick").finally(()=>a())},b))&&"function"==typeof g.unref&&g.unref(),d.debug("QODER_CHECKIN",`下次领取约 ${n(b)} 后`),b}();return d.info("QODER_CHECKIN",`自动领取调度已启动(全天轮询)— 下次约 ${n(c)} 后`),!0}function y(){w(),f&&(f=!1,d.info("QODER_CHECKIN","Scheduler stopped"))}},87886:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>o,error:()=>r,errorLine:()=>l,fmtThink:()=>m,info:()=>p,line:()=>k,maskKey:()=>v,nextTag:()=>i,request:()=>s,response:()=>t,stream:()=>u,tagForSession:()=>j,warn:()=>q});let d={DEBUG:0,INFO:1,WARN:2,ERROR:3},e=d[process.env.LOG_LEVEL?.toUpperCase?.()]??d.INFO;function f(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}let g=["\uD83D\uDFE2","\uD83D\uDD35","\uD83D\uDFE3","\uD83D\uDFE1","\uD83D\uDFE0","\uD83D\uDD34","⚪","\uD83D\uDFE4"],h=0;function i(){let a=g[h%g.length];return h++,a}function j(a){if(!a)return i();let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)|0;return g[Math.abs(b)%g.length]}function k(a,b,c){e>d.INFO||console.log(`[${f()}] ${a} ${b} ${c}`)}function l(a,b,c){console.log(`[${f()}] ${a} ${b} ${c}`)}function m(a){return a&&a.mode?"none"===a.mode?"off":"auto"===a.mode?"auto":"budget"===a.mode?a.budget>=1e3?`${Math.round(a.budget/1e3)}k`:`${a.budget}`:"level"===a.mode?a.level:null:null}function n(a){if(!a)return"";if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}function o(a,b,c){if(e<=d.DEBUG){let d=c?` ${n(c)}`:"";console.log(`[${f()}] 🔍 [${a}] ${b}${d}`)}}function p(a,b,c){if(e<=d.INFO){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ℹ️ [${a}] ${b}${d}`)}}function q(a,b,c){if(e<=d.WARN){let d=c?` ${n(c)}`:"";console.warn(`[${f()}] ⚠️ [${a}] ${b}${d}`)}}function r(a,b,c){if(e<=d.ERROR){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ❌ [${a}] ${b}${d}`)}}function s(a,b,c){let d=c?` ${n(c)}`:"";console.log(`\x1b[36m[${f()}] 📥 ${a} ${b}${d}\x1b[0m`)}function t(a,b,c){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ${a<400?"\uD83D\uDCE4":"\uD83D\uDCA5"} ${a} (${b}ms)${d}`)}function u(a,b){let c=b?` ${n(b)}`:"";console.log(`[${f()}] 🌊 [STREAM] ${a}${c}`)}function v(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}},95339:(a,b,c)=>{c.d(b,{F8:()=>s,KC:()=>u,L7:()=>d,OQ:()=>j,R$:()=>k,RB:()=>B,Ty:()=>x,UJ:()=>p,_G:()=>i,bR:()=>r,bg:()=>h,cT:()=>w,cn:()=>o,h3:()=>n,ii:()=>m,j9:()=>f,jJ:()=>l,li:()=>q,pM:()=>A,pr:()=>C,qk:()=>y,rf:()=>g,t6:()=>v,xG:()=>z});let d="https://openapi.qoder.sh",e="https://api3.qoder.sh",f="https://api2.qoder.sh",g="https://qoder.com/device/selectAccounts",h=`${d}/api/v1/deviceToken/poll`,i=`${d}/api/v1/userinfo`,j=`${d}/api/v1/jobToken/exchange`,k="https://gateway.qoder.com.cn",l="https://openapi.qoder.com.cn",m="https://qoder.cn/device/selectAccounts",n=`${l}/api/v1/deviceToken/poll`,o=`${l}/api/v1/userinfo`,p=`${l}/api/v1/jobToken/exchange`,q=k,r=`${k}/algo/api/v2/model/list`,s="/api/v2/service/pro/sse/agent_chat_generation",t=`${e}/algo${s}?FetchKeys=llm_model_result&AgentId=agent_common`,u=`${t}&Encode=1`,v=`${e}/algo/api/v2/model/list`,w="1.0.0",x="5",y="disagree",z="v2",A="x86_64_windows",B="5",C=`-----BEGIN PUBLIC KEY-----
|
|
2
|
+
MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDA8iMH5c02LilrsERw9t6Pv5Nc
|
|
3
|
+
4k6Pz1EaDicBMpdpxKduSZu5OANqUq8er4GM95omAGIOPOh+Nx0spthYA2BqGz+l
|
|
4
|
+
6HRkPJ7S236FZz73In/KVuLnwI8JJ2CbuJap8kvheCCZpmAWpb/cPx/3Vr/J6I17
|
|
5
|
+
XcW+ML9FoCI6AOvOzwIDAQAB
|
|
6
|
+
-----END PUBLIC KEY-----`}};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
"use strict";exports.id=6252,exports.ids=[6252],exports.modules={34050:(a,b,c)=>{c.d(b,{CG:()=>f,f$:()=>d,oG:()=>e,zE:()=>g});let d=1,e=`
|
|
2
|
+
PRAGMA journal_mode = WAL;
|
|
3
|
+
PRAGMA synchronous = NORMAL;
|
|
4
|
+
PRAGMA temp_store = MEMORY;
|
|
5
|
+
PRAGMA mmap_size = 30000000;
|
|
6
|
+
PRAGMA cache_size = -64000;
|
|
7
|
+
PRAGMA foreign_keys = ON;
|
|
8
|
+
PRAGMA busy_timeout = 5000;
|
|
9
|
+
`,f={_meta:{columns:{key:"TEXT PRIMARY KEY",value:"TEXT NOT NULL"}},settings:{columns:{id:"INTEGER PRIMARY KEY CHECK (id = 1)",data:"TEXT NOT NULL"}},providerConnections:{columns:{id:"TEXT PRIMARY KEY",provider:"TEXT NOT NULL",authType:"TEXT NOT NULL",name:"TEXT",email:"TEXT",priority:"INTEGER",isActive:"INTEGER DEFAULT 1",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pc_provider ON providerConnections(provider)","CREATE INDEX IF NOT EXISTS idx_pc_provider_active ON providerConnections(provider, isActive)","CREATE INDEX IF NOT EXISTS idx_pc_priority ON providerConnections(provider, priority)"]},providerNodes:{columns:{id:"TEXT PRIMARY KEY",type:"TEXT",name:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pn_type ON providerNodes(type)"]},proxyPools:{columns:{id:"TEXT PRIMARY KEY",isActive:"INTEGER DEFAULT 1",testStatus:"TEXT",data:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_pp_active ON proxyPools(isActive)","CREATE INDEX IF NOT EXISTS idx_pp_status ON proxyPools(testStatus)"]},apiKeys:{columns:{id:"TEXT PRIMARY KEY",key:"TEXT UNIQUE NOT NULL",name:"TEXT",machineId:"TEXT",isActive:"INTEGER DEFAULT 1",createdAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_ak_key ON apiKeys(key)"]},combos:{columns:{id:"TEXT PRIMARY KEY",name:"TEXT UNIQUE NOT NULL",kind:"TEXT",models:"TEXT NOT NULL",createdAt:"TEXT NOT NULL",updatedAt:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_combo_name ON combos(name)"]},kv:{columns:{scope:"TEXT NOT NULL",key:"TEXT NOT NULL",value:"TEXT NOT NULL"},primaryKey:"PRIMARY KEY (scope, key)",indexes:["CREATE INDEX IF NOT EXISTS idx_kv_scope ON kv(scope)"]},usageHistory:{columns:{id:"INTEGER PRIMARY KEY AUTOINCREMENT",timestamp:"TEXT NOT NULL",provider:"TEXT",model:"TEXT",connectionId:"TEXT",apiKey:"TEXT",apiKeyHash:"TEXT",endpoint:"TEXT",promptTokens:"INTEGER DEFAULT 0",completionTokens:"INTEGER DEFAULT 0",cost:"REAL DEFAULT 0",status:"TEXT",tokens:"TEXT",meta:"TEXT"},indexes:["CREATE INDEX IF NOT EXISTS idx_uh_ts ON usageHistory(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_uh_provider ON usageHistory(provider)","CREATE INDEX IF NOT EXISTS idx_uh_model ON usageHistory(model)","CREATE INDEX IF NOT EXISTS idx_uh_conn ON usageHistory(connectionId)","CREATE INDEX IF NOT EXISTS idx_uh_apikey_hash ON usageHistory(apiKeyHash)"]},usageDaily:{columns:{dateKey:"TEXT PRIMARY KEY",data:"TEXT NOT NULL"}},requestDetails:{columns:{id:"TEXT PRIMARY KEY",timestamp:"TEXT NOT NULL",provider:"TEXT",model:"TEXT",connectionId:"TEXT",status:"TEXT",data:"TEXT NOT NULL"},indexes:["CREATE INDEX IF NOT EXISTS idx_rd_ts ON requestDetails(timestamp DESC)","CREATE INDEX IF NOT EXISTS idx_rd_provider ON requestDetails(provider)","CREATE INDEX IF NOT EXISTS idx_rd_model ON requestDetails(model)","CREATE INDEX IF NOT EXISTS idx_rd_conn ON requestDetails(connectionId)"]}};function g(a,b){let c=Object.entries(b.columns).map(([a,b])=>`${a} ${b}`);return b.primaryKey&&c.push(b.primaryKey),`CREATE TABLE IF NOT EXISTS ${a} (${c.join(", ")})`}},66252:(a,b,c)=>{c.d(b,{createSqlJsAdapter:()=>k});var d=c(73024),e=c.n(d),f=c(46293),g=c.n(f),h=c(34050);let i=null;async function j(){return i||(i=await g()())}async function k(a){let b=await j(),c=e().existsSync(a)?e().readFileSync(a):null,d=new b.Database(c);d.exec(h.oG);let f=!1,g=null;function i(){let b=d.export();e().writeFileSync(a,Buffer.from(b)),f=!1}function k(){f=!0,g&&clearTimeout(g),g=setTimeout(()=>{if(g=null,f)try{i()}catch(a){console.error("[sqljs] save failed:",a)}},100)}function l(a){if(!(!a||Array.isArray(a)&&0===a.length))return a}let m=()=>{if(f)try{i()}catch{}};return process.on("beforeExit",m),process.on("SIGINT",m),process.on("SIGTERM",m),{driver:"sql.js",run:function(a,b=[]){let c=d.prepare(a);try{c.bind(l(b)),c.step();let a=d.getRowsModified(),e=d.exec("SELECT last_insert_rowid() as id")[0]?.values?.[0]?.[0]??null;return k(),{changes:a,lastInsertRowid:e}}finally{c.free()}},get:function(a,b=[]){let c=d.prepare(a);try{if(c.bind(l(b)),c.step())return c.getAsObject();return}finally{c.free()}},all:function(a,b=[]){let c=d.prepare(a);try{c.bind(l(b));let a=[];for(;c.step();)a.push(c.getAsObject());return a}finally{c.free()}},exec:function(a){d.exec(a),k()},transaction:function(a){let b=`sp_${Math.random().toString(36).slice(2)}`;d.exec(`SAVEPOINT ${b}`);try{let c=a();return d.exec(`RELEASE ${b}`),k(),c}catch(a){try{d.exec(`ROLLBACK TO ${b}`),d.exec(`RELEASE ${b}`)}catch{}throw a}},close:function(){g&&clearTimeout(g),f&&i(),d.close()},raw:d}}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";exports.id=6326,exports.ids=[6326],exports.modules={7803:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>o,error:()=>r,errorLine:()=>l,fmtThink:()=>m,info:()=>p,line:()=>k,maskKey:()=>v,nextTag:()=>i,request:()=>s,response:()=>t,stream:()=>u,tagForSession:()=>j,warn:()=>q});let d={DEBUG:0,INFO:1,WARN:2,ERROR:3},e=d[process.env.LOG_LEVEL?.toUpperCase?.()]??d.INFO;function f(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}let g=["\uD83D\uDFE2","\uD83D\uDD35","\uD83D\uDFE3","\uD83D\uDFE1","\uD83D\uDFE0","\uD83D\uDD34","⚪","\uD83D\uDFE4"],h=0;function i(){let a=g[h%g.length];return h++,a}function j(a){if(!a)return i();let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)|0;return g[Math.abs(b)%g.length]}function k(a,b,c){e>d.INFO||console.log(`[${f()}] ${a} ${b} ${c}`)}function l(a,b,c){console.log(`[${f()}] ${a} ${b} ${c}`)}function m(a){return a&&a.mode?"none"===a.mode?"off":"auto"===a.mode?"auto":"budget"===a.mode?a.budget>=1e3?`${Math.round(a.budget/1e3)}k`:`${a.budget}`:"level"===a.mode?a.level:null:null}function n(a){if(!a)return"";if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}function o(a,b,c){if(e<=d.DEBUG){let d=c?` ${n(c)}`:"";console.log(`[${f()}] 🔍 [${a}] ${b}${d}`)}}function p(a,b,c){if(e<=d.INFO){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ℹ️ [${a}] ${b}${d}`)}}function q(a,b,c){if(e<=d.WARN){let d=c?` ${n(c)}`:"";console.warn(`[${f()}] ⚠️ [${a}] ${b}${d}`)}}function r(a,b,c){if(e<=d.ERROR){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ❌ [${a}] ${b}${d}`)}}function s(a,b,c){let d=c?` ${n(c)}`:"";console.log(`\x1b[36m[${f()}] 📥 ${a} ${b}${d}\x1b[0m`)}function t(a,b,c){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ${a<400?"\uD83D\uDCE4":"\uD83D\uDCA5"} ${a} (${b}ms)${d}`)}function u(a,b){let c=b?` ${n(b)}`:"";console.log(`[${f()}] 🌊 [STREAM] ${a}${c}`)}function v(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}},46326:(a,b,c)=>{c.r(b),c.d(b,{__internals:()=>N,isEligibleCbIntlConnection:()=>r,isEligibleCbcnConnection:()=>q,mapDailyCheckinStatus:()=>t,msUntilNextTick:()=>u,runCodebuddyCheckinTick:()=>H,runCodebuddyIntlSessionTick:()=>I,startCodebuddyCheckin:()=>L,stopCodebuddyCheckin:()=>M});var d=c(7803);let e="https://www.codebuddy.cn/v2/billing/meter/daily-checkin",f="https://www.codebuddy.cn/v2/billing/meter/checkin-activity-status",g="https://www.codebuddy.ai/v2/chat/completions",h="hy4-preview",i=!1,j=null,k=null;async function l(){if(k)return k;let a=await x(),b=a?.codeBuddyDailyDone;return k=b&&"object"==typeof b&&!Array.isArray(b)?{...b}:{}}async function m(){if(!k)return;let a=p(),b={};for(let[c,d]of Object.entries(k))d===a&&(b[c]=d);try{let{updateSettings:a}=await Promise.all([c.e(5781),c.e(7274),c.e(8838)]).then(c.bind(c,89718));for(let c of(await a({codeBuddyDailyDone:b}),Object.keys(k)))delete k[c];Object.assign(k,b)}catch(a){d.warn("CB_CN_CHECKIN","Persist daily-done map failed (swallowed)",{error:a?.message??String(a)})}}function n(a){try{let b=String(a).split(".")[1].replace(/-/g,"+").replace(/_/g,"/"),c=b+"=".repeat((4-b.length%4)%4);return JSON.parse(Buffer.from(c,"base64").toString("utf8"))}catch{return null}}function o(a){return"string"==typeof a&&(a.includes("codebuddy.cn")||a.includes("copilot.tencent.com"))}function p(a=Date.now()){let b=new Date(a),c=a=>String(a).padStart(2,"0");return`${b.getFullYear()}-${c(b.getMonth()+1)}-${c(b.getDate())}`}function q(a){return!!a&&!!a.accessToken&&"codebuddy-cn"===a.provider&&!1!==a.isActive&&o((n(a.accessToken)||{}).iss||"")}function r(a){var b;return!!a&&!!a.accessToken&&"codebuddy-intl"===a.provider&&!1!==a.isActive&&"string"==typeof(b=(n(a.accessToken)||{}).iss||"")&&b.includes("codebuddy")}function s(a){return"string"==typeof a&&/已签到|签到过|重复签到|already|repeat/i.test(a)}function t({httpStatus:a,code:b,msg:c}={}){return a>=200&&a<300?"checked-in":400===a&&(10001===b||"10001"===b||s(c))?"already":"failed"}function u(a=Date.now(),b=Math.random){return Math.max(72e5+Math.floor(6e5*b()),1e3)}async function v(){let{getProviderConnections:a}=await Promise.all([c.e(5781),c.e(4755)]).then(c.bind(c,5781));return a({provider:"codebuddy-cn"})}async function w(){let{getProviderConnections:a}=await Promise.all([c.e(5781),c.e(4755)]).then(c.bind(c,5781));return a({provider:"codebuddy-intl"})}async function x(){try{let{getSettings:a}=await Promise.all([c.e(5781),c.e(7274),c.e(8838)]).then(c.bind(c,89718));return await a()}catch{return{}}}async function y(a,b){let{checkAndRefreshToken:d}=await Promise.all([c.e(5781),c.e(7274),c.e(1330),c.e(6070),c.e(436),c.e(3943),c.e(7828),c.e(2179)]).then(c.bind(c,67828)),e=await d(a,b,{force:!0});return e?.accessToken?e:null}function z(a){return a?.proxyOptions||{enabled:a?.connectionProxyEnabled,url:a?.connectionProxyUrl,noProxy:a?.connectionNoProxy}}function A(a,b){return{Authorization:`Bearer ${a}`,"X-User-Id":String(b),"Content-Type":"application/json",Accept:"application/json"}}async function B(a,b,d){let{proxyAwareFetch:f}=await c.e(9609).then(c.bind(c,39609)),g=await f(e,{method:"POST",headers:A(a,b),body:"{}"},d),h=await g.text(),i=null;try{i=h?JSON.parse(h):null}catch{i=null}return{httpStatus:g.status,code:i?.code??i?.error_code,msg:i?.msg??i?.message,rawBody:i}}async function C(a,b,d){let{proxyAwareFetch:e}=await c.e(9609).then(c.bind(c,39609)),g=await e(f,{method:"POST",headers:A(a,b),body:"{}"},d),h=await g.text(),i=null;try{i=h?JSON.parse(h):null}catch{i=null}return{httpStatus:g.status,body:i}}async function D(a,b){let c=b?.refreshConnection||(a=>y("codebuddy-cn",a)),e=a.accessToken,f=(n(e)||{}).sub||a.id,g=z(a);for(let b=0;b<2;b++)try{let h=await B(e,f,g),i=t(h);if("failed"!==i)return{status:i};if(401===h.httpStatus&&0===b){d.info("CB_CN_CHECKIN","401 on daily-check-in, refreshing token once",{id:a.id});let b=await c(a);if(!b?.accessToken)return{status:"failed",error:"refresh_failed"};e=b.accessToken;continue}return{status:i,error:h.msg||`http_${h.httpStatus}`}}catch(a){return{status:"failed",error:a?.message||String(a)}}return{status:"failed",error:"unexpected"}}async function E(a,b){let c=z(a),d=(n(a.accessToken)||{}).sub||a.id;try{var e;let b;if(e=await C(a.accessToken,d,c),b=e?.body?.data||{},200===e.httpStatus&&(!0===b.today_checked_in||!0===b.checked_in))return{status:"already"}}catch{}return D(a,b)}async function F(a,b){let c=b?.refreshConnection||(a=>y("codebuddy-intl",a)),e=a.accessToken,f=z(a);for(let b=0;b<2;b++)try{let g=await G(e,f);if(g.httpStatus>=200&&g.httpStatus<300)return{status:"session-ok"};if(401===g.httpStatus&&0===b){d.info("CB_INTL_SESSION","401 on active-session probe, refreshing token once",{id:a.id});let b=await c(a);if(!b?.accessToken)return{status:"failed",error:"refresh_failed"};e=b.accessToken;continue}return{status:"failed",error:g.msg||`http_${g.httpStatus}`}}catch(a){return{status:"failed",error:a?.message||String(a)}}return{status:"failed",error:"unexpected"}}async function G(a,b){let{proxyAwareFetch:d}=await c.e(9609).then(c.bind(c,39609)),{default:e}=await c.e(939).then(c.bind(c,30939)),f={...e?.transport?.headers||{},Authorization:`Bearer ${a}`,"Content-Type":"application/json",Accept:"text/event-stream"},i=JSON.stringify({model:h,stream:!0,max_tokens:16,messages:[{role:"system",content:"You are CodeBuddy Code."},{role:"user",content:[{type:"text",text:"hi"}]}]}),j=await d(g,{method:"POST",headers:f,body:i},b),k="";if(j.ok&&j.body)try{await j.text()}catch{}else try{k=(await j.text()||"").slice(0,200)}catch{}return{httpStatus:j.status,msg:k}}async function H(a={}){let b=[],c=a.loadConnections||v,e=[];try{e=await c()}catch(a){return d.warn("CB_CN_CHECKIN","Tick: failed to load codebuddy-cn connections (swallowed)",{error:a?.message??String(a)}),b}let f=(Array.isArray(e)?e:[]).filter(q);if(0===f.length)return d.debug("CB_CN_CHECKIN","Tick: no eligible codebuddy-cn connections",{total:Array.isArray(e)?e.length:0}),b;d.info("CB_CN_CHECKIN","Daily check-in pass started",{eligible:f.length,ids:f.map(a=>a.id).filter(Boolean)});let g=a.memo||null,h=p(),i=a.checkinConnection||(a.skipIfCheckedToday?E:D);for(let c of f)try{if(g&&g[c.id]===h){d.debug("CB_CN_CHECKIN",`${c.name||c.id}: 已确认今日完成,跳过`,{id:c.id});continue}let e=await i(c,a);g&&("checked-in"===e.status||"already"===e.status)&&(g[c.id]=h),b.push({id:c.id,name:c.name||c.id,status:e.status,...e.error?{error:e.error}:{}});let f="checked-in"===e.status?"签到成功":"already"===e.status?"今日已签到":`失败${e.error?`(${e.error})`:""}`;d.info("CB_CN_CHECKIN",`${c.name||c.id}: ${f}`,{id:c.id})}catch(a){b.push({id:c.id,name:c.name||c.id,status:"failed"}),d.warn("CB_CN_CHECKIN","Connection check-in failed (swallowed)",{id:c?.id,error:a?.message??String(a)})}return b}async function I(a={}){let b=[],c=a.loadConnections||w,e=[];try{e=await c()}catch(a){return d.warn("CB_INTL_SESSION","Tick: failed to load codebuddy-intl connections (swallowed)",{error:a?.message??String(a)}),b}let f=(Array.isArray(e)?e:[]).filter(r);if(0===f.length)return d.debug("CB_INTL_SESSION","Tick: no eligible codebuddy-intl connections",{total:Array.isArray(e)?e.length:0}),b;d.info("CB_INTL_SESSION","Daily active-session pass started",{eligible:f.length,ids:f.map(a=>a.id).filter(Boolean)});let g=a.memo||null,h=p();for(let c of f)try{if(g&&g[c.id]===h){d.debug("CB_INTL_SESSION",`${c.name||c.id}: 已确认今日完成,跳过`,{id:c.id});continue}let e=a.probeConnection?await a.probeConnection(c):await F(c,a);g&&"session-ok"===e.status&&(g[c.id]=h),b.push({id:c.id,name:c.name||c.id,status:e.status,...e.error?{error:e.error}:{}}),d.info("CB_INTL_SESSION",`${c.name||c.id}: ${"session-ok"===e.status?"活跃会话完成":`失败(${e.error||e.status})`}`,{id:c.id})}catch(a){b.push({id:c.id,name:c.name||c.id,status:"failed"}),d.warn("CB_INTL_SESSION","Connection probe failed (swallowed)",{id:c?.id,error:a?.message??String(a)})}return b}async function J(a){try{let b=await x(),c=await l();!0===b.codeBuddyCheckin?(await H({skipIfCheckedToday:!0,memo:c}),await m()):d.debug("CB_CN_CHECKIN",`Scheduled ${a}: setting off, skipping`),!0===b.codeBuddyIntlSession?(await I({memo:c}),await m()):d.debug("CB_INTL_SESSION",`Scheduled ${a}: setting off, skipping`)}catch(b){d.warn("CB_CN_CHECKIN",`Scheduled ${a} rejected (swallowed)`,{error:b?.message??String(b)})}}function K(){j&&(clearTimeout(j),j=null)}function L(a={}){let b;return!i&&("phase-production-build"===(b=process.env.NEXT_PHASE||"")||"phase-export"===b||"phase-static"===b?(d.debug("CB_CN_CHECKIN","Skip start outside long-running server runtime"),!1):(i=!0,!0!==a.skipBoot&&J("boot"),!function a(){if(!i)return;let b=u();K(),(j=setTimeout(()=>{J("tick").finally(()=>a())},b)).unref&&j.unref(),d.info("CB_CN_CHECKIN","Next all-day check-in tick scheduled",{delayMs:Math.round(b/1e3)})}(),d.info("CB_CN_CHECKIN","Scheduler started (all-day cadence)"),!0))}function M(){K(),i&&(i=!1,d.info("CB_CN_CHECKIN","Scheduler stopped"))}let N={decodeJwt:n,isCodeBuddyCnRealm:o,isIdempotentAlready:s,DAILY_CHECKIN_URL:e,STATUS_URL:f,INTL_CHAT_URL:g,INTL_PROBE_MODEL:h,dayKey:p,msUntilNextTick:u,getDoneMap:l,persistDoneMap:m,isEligibleCbIntlConnection:r}}};
|
|
1
|
+
"use strict";exports.id=6326,exports.ids=[6326],exports.modules={7803:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>o,error:()=>r,errorLine:()=>l,fmtThink:()=>m,info:()=>p,line:()=>k,maskKey:()=>v,nextTag:()=>i,request:()=>s,response:()=>t,stream:()=>u,tagForSession:()=>j,warn:()=>q});let d={DEBUG:0,INFO:1,WARN:2,ERROR:3},e=d[process.env.LOG_LEVEL?.toUpperCase?.()]??d.INFO;function f(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}let g=["\uD83D\uDFE2","\uD83D\uDD35","\uD83D\uDFE3","\uD83D\uDFE1","\uD83D\uDFE0","\uD83D\uDD34","⚪","\uD83D\uDFE4"],h=0;function i(){let a=g[h%g.length];return h++,a}function j(a){if(!a)return i();let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)|0;return g[Math.abs(b)%g.length]}function k(a,b,c){e>d.INFO||console.log(`[${f()}] ${a} ${b} ${c}`)}function l(a,b,c){console.log(`[${f()}] ${a} ${b} ${c}`)}function m(a){return a&&a.mode?"none"===a.mode?"off":"auto"===a.mode?"auto":"budget"===a.mode?a.budget>=1e3?`${Math.round(a.budget/1e3)}k`:`${a.budget}`:"level"===a.mode?a.level:null:null}function n(a){if(!a)return"";if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}function o(a,b,c){if(e<=d.DEBUG){let d=c?` ${n(c)}`:"";console.log(`[${f()}] 🔍 [${a}] ${b}${d}`)}}function p(a,b,c){if(e<=d.INFO){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ℹ️ [${a}] ${b}${d}`)}}function q(a,b,c){if(e<=d.WARN){let d=c?` ${n(c)}`:"";console.warn(`[${f()}] ⚠️ [${a}] ${b}${d}`)}}function r(a,b,c){if(e<=d.ERROR){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ❌ [${a}] ${b}${d}`)}}function s(a,b,c){let d=c?` ${n(c)}`:"";console.log(`\x1b[36m[${f()}] 📥 ${a} ${b}${d}\x1b[0m`)}function t(a,b,c){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ${a<400?"\uD83D\uDCE4":"\uD83D\uDCA5"} ${a} (${b}ms)${d}`)}function u(a,b){let c=b?` ${n(b)}`:"";console.log(`[${f()}] 🌊 [STREAM] ${a}${c}`)}function v(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}},46326:(a,b,c)=>{c.r(b),c.d(b,{__internals:()=>N,isEligibleCbIntlConnection:()=>r,isEligibleCbcnConnection:()=>q,mapDailyCheckinStatus:()=>t,msUntilNextTick:()=>u,runCodebuddyCheckinTick:()=>H,runCodebuddyIntlSessionTick:()=>I,startCodebuddyCheckin:()=>L,stopCodebuddyCheckin:()=>M});var d=c(7803);let e="https://www.codebuddy.cn/v2/billing/meter/daily-checkin",f="https://www.codebuddy.cn/v2/billing/meter/checkin-activity-status",g="https://www.codebuddy.ai/v2/chat/completions",h="hy4-preview",i=!1,j=null,k=null;async function l(){if(k)return k;let a=await x(),b=a?.codeBuddyDailyDone;return k=b&&"object"==typeof b&&!Array.isArray(b)?{...b}:{}}async function m(){if(!k)return;let a=p(),b={};for(let[c,d]of Object.entries(k))d===a&&(b[c]=d);try{let{updateSettings:a}=await Promise.all([c.e(1330),c.e(6070),c.e(869),c.e(5781),c.e(7274),c.e(8838)]).then(c.bind(c,89718));for(let c of(await a({codeBuddyDailyDone:b}),Object.keys(k)))delete k[c];Object.assign(k,b)}catch(a){d.warn("CB_CN_CHECKIN","Persist daily-done map failed (swallowed)",{error:a?.message??String(a)})}}function n(a){try{let b=String(a).split(".")[1].replace(/-/g,"+").replace(/_/g,"/"),c=b+"=".repeat((4-b.length%4)%4);return JSON.parse(Buffer.from(c,"base64").toString("utf8"))}catch{return null}}function o(a){return"string"==typeof a&&(a.includes("codebuddy.cn")||a.includes("copilot.tencent.com"))}function p(a=Date.now()){let b=new Date(a),c=a=>String(a).padStart(2,"0");return`${b.getFullYear()}-${c(b.getMonth()+1)}-${c(b.getDate())}`}function q(a){return!!a&&!!a.accessToken&&"codebuddy-cn"===a.provider&&!1!==a.isActive&&o((n(a.accessToken)||{}).iss||"")}function r(a){var b;return!!a&&!!a.accessToken&&"codebuddy-intl"===a.provider&&!1!==a.isActive&&"string"==typeof(b=(n(a.accessToken)||{}).iss||"")&&b.includes("codebuddy")}function s(a){return"string"==typeof a&&/已签到|签到过|重复签到|already|repeat/i.test(a)}function t({httpStatus:a,code:b,msg:c}={}){return a>=200&&a<300?"checked-in":400===a&&(10001===b||"10001"===b||s(c))?"already":"failed"}function u(a=Date.now(),b=Math.random){return Math.max(72e5+Math.floor(6e5*b()),1e3)}async function v(){let{getProviderConnections:a}=await Promise.all([c.e(5781),c.e(4755)]).then(c.bind(c,5781));return a({provider:"codebuddy-cn"})}async function w(){let{getProviderConnections:a}=await Promise.all([c.e(5781),c.e(4755)]).then(c.bind(c,5781));return a({provider:"codebuddy-intl"})}async function x(){try{let{getSettings:a}=await Promise.all([c.e(1330),c.e(6070),c.e(869),c.e(5781),c.e(7274),c.e(8838)]).then(c.bind(c,89718));return await a()}catch{return{}}}async function y(a,b){let{checkAndRefreshToken:d}=await Promise.all([c.e(1330),c.e(6070),c.e(869),c.e(5781),c.e(7274),c.e(436),c.e(3943),c.e(7828),c.e(6457)]).then(c.bind(c,67828)),e=await d(a,b,{force:!0});return e?.accessToken?e:null}function z(a){return a?.proxyOptions||{enabled:a?.connectionProxyEnabled,url:a?.connectionProxyUrl,noProxy:a?.connectionNoProxy}}function A(a,b){return{Authorization:`Bearer ${a}`,"X-User-Id":String(b),"Content-Type":"application/json",Accept:"application/json"}}async function B(a,b,d){let{proxyAwareFetch:f}=await c.e(9609).then(c.bind(c,39609)),g=await f(e,{method:"POST",headers:A(a,b),body:"{}"},d),h=await g.text(),i=null;try{i=h?JSON.parse(h):null}catch{i=null}return{httpStatus:g.status,code:i?.code??i?.error_code,msg:i?.msg??i?.message,rawBody:i}}async function C(a,b,d){let{proxyAwareFetch:e}=await c.e(9609).then(c.bind(c,39609)),g=await e(f,{method:"POST",headers:A(a,b),body:"{}"},d),h=await g.text(),i=null;try{i=h?JSON.parse(h):null}catch{i=null}return{httpStatus:g.status,body:i}}async function D(a,b){let c=b?.refreshConnection||(a=>y("codebuddy-cn",a)),e=a.accessToken,f=(n(e)||{}).sub||a.id,g=z(a);for(let b=0;b<2;b++)try{let h=await B(e,f,g),i=t(h);if("failed"!==i)return{status:i};if(401===h.httpStatus&&0===b){d.info("CB_CN_CHECKIN","401 on daily-check-in, refreshing token once",{id:a.id});let b=await c(a);if(!b?.accessToken)return{status:"failed",error:"refresh_failed"};e=b.accessToken;continue}return{status:i,error:h.msg||`http_${h.httpStatus}`}}catch(a){return{status:"failed",error:a?.message||String(a)}}return{status:"failed",error:"unexpected"}}async function E(a,b){let c=z(a),d=(n(a.accessToken)||{}).sub||a.id;try{var e;let b;if(e=await C(a.accessToken,d,c),b=e?.body?.data||{},200===e.httpStatus&&(!0===b.today_checked_in||!0===b.checked_in))return{status:"already"}}catch{}return D(a,b)}async function F(a,b){let c=b?.refreshConnection||(a=>y("codebuddy-intl",a)),e=a.accessToken,f=z(a);for(let b=0;b<2;b++)try{let g=await G(e,f);if(g.httpStatus>=200&&g.httpStatus<300)return{status:"session-ok"};if(401===g.httpStatus&&0===b){d.info("CB_INTL_SESSION","401 on active-session probe, refreshing token once",{id:a.id});let b=await c(a);if(!b?.accessToken)return{status:"failed",error:"refresh_failed"};e=b.accessToken;continue}return{status:"failed",error:g.msg||`http_${g.httpStatus}`}}catch(a){return{status:"failed",error:a?.message||String(a)}}return{status:"failed",error:"unexpected"}}async function G(a,b){let{proxyAwareFetch:d}=await c.e(9609).then(c.bind(c,39609)),{default:e}=await c.e(939).then(c.bind(c,30939)),f={...e?.transport?.headers||{},Authorization:`Bearer ${a}`,"Content-Type":"application/json",Accept:"text/event-stream"},i=JSON.stringify({model:h,stream:!0,max_tokens:16,messages:[{role:"system",content:"You are CodeBuddy Code."},{role:"user",content:[{type:"text",text:"hi"}]}]}),j=await d(g,{method:"POST",headers:f,body:i},b),k="";if(j.ok&&j.body)try{await j.text()}catch{}else try{k=(await j.text()||"").slice(0,200)}catch{}return{httpStatus:j.status,msg:k}}async function H(a={}){let b=[],c=a.loadConnections||v,e=[];try{e=await c()}catch(a){return d.warn("CB_CN_CHECKIN","Tick: failed to load codebuddy-cn connections (swallowed)",{error:a?.message??String(a)}),b}let f=(Array.isArray(e)?e:[]).filter(q);if(0===f.length)return d.debug("CB_CN_CHECKIN","Tick: no eligible codebuddy-cn connections",{total:Array.isArray(e)?e.length:0}),b;d.info("CB_CN_CHECKIN","Daily check-in pass started",{eligible:f.length,ids:f.map(a=>a.id).filter(Boolean)});let g=a.memo||null,h=p(),i=a.checkinConnection||(a.skipIfCheckedToday?E:D);for(let c of f)try{if(g&&g[c.id]===h){d.debug("CB_CN_CHECKIN",`${c.name||c.id}: 已确认今日完成,跳过`,{id:c.id});continue}let e=await i(c,a);g&&("checked-in"===e.status||"already"===e.status)&&(g[c.id]=h),b.push({id:c.id,name:c.name||c.id,status:e.status,...e.error?{error:e.error}:{}});let f="checked-in"===e.status?"签到成功":"already"===e.status?"今日已签到":`失败${e.error?`(${e.error})`:""}`;d.info("CB_CN_CHECKIN",`${c.name||c.id}: ${f}`,{id:c.id})}catch(a){b.push({id:c.id,name:c.name||c.id,status:"failed"}),d.warn("CB_CN_CHECKIN","Connection check-in failed (swallowed)",{id:c?.id,error:a?.message??String(a)})}return b}async function I(a={}){let b=[],c=a.loadConnections||w,e=[];try{e=await c()}catch(a){return d.warn("CB_INTL_SESSION","Tick: failed to load codebuddy-intl connections (swallowed)",{error:a?.message??String(a)}),b}let f=(Array.isArray(e)?e:[]).filter(r);if(0===f.length)return d.debug("CB_INTL_SESSION","Tick: no eligible codebuddy-intl connections",{total:Array.isArray(e)?e.length:0}),b;d.info("CB_INTL_SESSION","Daily active-session pass started",{eligible:f.length,ids:f.map(a=>a.id).filter(Boolean)});let g=a.memo||null,h=p();for(let c of f)try{if(g&&g[c.id]===h){d.debug("CB_INTL_SESSION",`${c.name||c.id}: 已确认今日完成,跳过`,{id:c.id});continue}let e=a.probeConnection?await a.probeConnection(c):await F(c,a);g&&"session-ok"===e.status&&(g[c.id]=h),b.push({id:c.id,name:c.name||c.id,status:e.status,...e.error?{error:e.error}:{}}),d.info("CB_INTL_SESSION",`${c.name||c.id}: ${"session-ok"===e.status?"活跃会话完成":`失败(${e.error||e.status})`}`,{id:c.id})}catch(a){b.push({id:c.id,name:c.name||c.id,status:"failed"}),d.warn("CB_INTL_SESSION","Connection probe failed (swallowed)",{id:c?.id,error:a?.message??String(a)})}return b}async function J(a){try{let b=await x(),c=await l();!0===b.codeBuddyCheckin?(await H({skipIfCheckedToday:!0,memo:c}),await m()):d.debug("CB_CN_CHECKIN",`Scheduled ${a}: setting off, skipping`),!0===b.codeBuddyIntlSession?(await I({memo:c}),await m()):d.debug("CB_INTL_SESSION",`Scheduled ${a}: setting off, skipping`)}catch(b){d.warn("CB_CN_CHECKIN",`Scheduled ${a} rejected (swallowed)`,{error:b?.message??String(b)})}}function K(){j&&(clearTimeout(j),j=null)}function L(a={}){let b;return!i&&("phase-production-build"===(b=process.env.NEXT_PHASE||"")||"phase-export"===b||"phase-static"===b?(d.debug("CB_CN_CHECKIN","Skip start outside long-running server runtime"),!1):(i=!0,!0!==a.skipBoot&&J("boot"),!function a(){if(!i)return;let b=u();K(),(j=setTimeout(()=>{J("tick").finally(()=>a())},b)).unref&&j.unref(),d.info("CB_CN_CHECKIN","Next all-day check-in tick scheduled",{delayMs:Math.round(b/1e3)})}(),d.info("CB_CN_CHECKIN","Scheduler started (all-day cadence)"),!0))}function M(){K(),i&&(i=!1,d.info("CB_CN_CHECKIN","Scheduler stopped"))}let N={decodeJwt:n,isCodeBuddyCnRealm:o,isIdempotentAlready:s,DAILY_CHECKIN_URL:e,STATUS_URL:f,INTL_CHAT_URL:g,INTL_PROBE_MODEL:h,dayKey:p,msUntilNextTick:u,getDoneMap:l,persistDoneMap:m,isEligibleCbIntlConnection:r}}};
|
|
@@ -1,4 +1 @@
|
|
|
1
|
-
"use strict";exports.id=6457,exports.ids=[6457],exports.modules={66457:(a,b,c)=>{c.d(b,{rI:()=>bd,cw:()=>bb,Lh:()=>ba,Z2:()=>aq,Lx:()=>be,DA:()=>bc,u7:()=>a9,rH:()=>a5,Rg:()=>ae,mh:()=>a4,cb:()=>ad,Al:()=>J,jd:()=>o,Dd:()=>H,SF:()=>aB,oN:()=>a2,H4:()=>a6,Qn:()=>$,Jv:()=>af,A1:()=>aM,nN:()=>Q,si:()=>aT,D:()=>aJ,xh:()=>aC,a$:()=>aG,Kp:()=>aH,hp:()=>aI,ss:()=>P,C7:()=>m,X$:()=>aa,LC:()=>aX});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(49120);let i=g().join(h.nJ,"tunnel"),j=g().join(i,"state.json"),k="abcdefghijklmnpqrstuvwxyz23456789";function l(){e().existsSync(i)||e().mkdirSync(i,{recursive:!0})}function m(){try{if(e().existsSync(j))return JSON.parse(e().readFileSync(j,"utf8"))}catch{}return null}function n(a){l(),e().writeFileSync(j,JSON.stringify(a,null,2))}function o(){let a="";for(let b=0;b<6;b++)a+=k.charAt(Math.floor(Math.random()*k.length));return a}var p=c(55591),q=c.n(p),r=c(21820),s=c.n(r),t=c(79646);let u=g().join(i,"cloudflared.pid");function v(){try{if(e().existsSync(u))return parseInt(e().readFileSync(u,"utf8"))}catch{}return null}function w(a=null){try{if(!e().existsSync(u)||null!==a&&v()!==a)return!1;return e().unlinkSync(u),!0}catch{}return!1}let x=g().join(h.nJ,"bin"),y="cloudflared",z="win32"===s().platform(),A=z?`${y}.exe`:y,B=g().join(x,A),C="http2",D=new Set(["http2","quic","auto"]),E={darwin:{x64:"cloudflared-darwin-amd64.tgz",arm64:"cloudflared-darwin-arm64.tgz"},win32:{x64:"cloudflared-windows-amd64.exe",ia32:"cloudflared-windows-386.exe",arm64:"cloudflared-windows-386.exe"},linux:{x64:"cloudflared-linux-amd64",arm64:"cloudflared-linux-arm64"}},F={darwin:"cloudflared-darwin-amd64.tgz",win32:"cloudflared-windows-386.exe",linux:"cloudflared-linux-amd64"},G={downloading:!1,progress:0};function H(){return{downloading:G.downloading,progress:G.progress}}let I=null;async function J(){return I||(I=K().finally(()=>{I=null}))}async function K(){e().existsSync(x)||e().mkdirSync(x,{recursive:!0});let a=`${B}.tmp`;if(e().existsSync(a))try{e().unlinkSync(a)}catch{}if(e().existsSync(B))if(function(a){try{if(e().statSync(a).size<1048576)return!1;let b=e().openSync(a,"r"),c=Buffer.alloc(4);e().readSync(b,c,0,4,0),e().closeSync(b);let d=c.toString("hex");if(z)return d.startsWith("4d5a");if("darwin"===s().platform())return d.startsWith("cffaedfe")||d.startsWith("cefaedfe");return d.startsWith("7f454c46")}catch{return!1}}(B))return z||e().chmodSync(B,"755"),B;else console.log("[cloudflared] Invalid binary detected, re-downloading..."),e().unlinkSync(B);let b=function(){let a=s().platform(),b=s().arch(),c=E[a];if(!c)throw Error(`Unsupported platform: ${a}`);let d=c[b]||F[a];return`https://github.com/cloudflare/cloudflared/releases/latest/download/${d}`}(),c=b.endsWith(".tgz"),d=c?g().join(x,"cloudflared.tgz.tmp"):a;return await function a(b,c){return new Promise((d,f)=>{let g=e().createWriteStream(c);q().get(b,b=>{if([301,302,303,307,308].includes(b.statusCode)){g.close(),e().unlinkSync(c),a(b.headers.location,c).then(d).catch(f);return}if(200!==b.statusCode){g.close(),e().unlinkSync(c),f(Error(`Download failed with status ${b.statusCode}`));return}let h=parseInt(b.headers["content-length"],10)||0,i=0;G.downloading=!0,G.progress=0,b.on("data",a=>{i+=a.length,h>0&&(G.progress=Math.round(i/h*100))}),b.pipe(g),g.on("finish",()=>{G.downloading=!1,G.progress=100,g.close(()=>d(c))}),g.on("error",a=>{G.downloading=!1,G.progress=0,g.close(),e().unlinkSync(c),f(a)})}).on("error",a=>{G.downloading=!1,G.progress=0,g.close(),e().existsSync(c)&&e().unlinkSync(c),f(a)})})}(b,d),c?((0,t.execSync)(`tar -xzf "${d}" -C "${x}"`,{stdio:"pipe",windowsHide:!0}),e().unlinkSync(d)):e().renameSync(d,B),z||e().chmodSync(B,"755"),B}let L=null,M=null,N=!1;async function O(a,b){var c;let d=await J(),f=e().mkdtempSync(g().join(s().tmpdir(),"cloudflared-quick-")),h=g().join(f,"config.yml");e().writeFileSync(h,"# quick-tunnel config placeholder\n","utf8");let i=!1,j=()=>{if(!i){i=!0;try{e().rmSync(f,{recursive:!0,force:!0})}catch(a){}}},k=String(process.env.TUNNEL_TRANSPORT_PROTOCOL||process.env.CLOUDFLARED_PROTOCOL||C).trim().toLowerCase(),m=D.has(k)?k:C,n=(0,t.spawn)(d,["tunnel","--url",`http://127.0.0.1:${a}`,"--config",h,"--no-autoupdate","--retries","99"],{detached:!1,windowsHide:!0,cwd:s().tmpdir(),env:{...process.env,TUNNEL_TRANSPORT_PROTOCOL:m},stdio:["ignore","pipe","pipe"]});return L=n,c=n.pid,l(),e().writeFileSync(u,c.toString()),new Promise((c,d)=>{let e=!1,f="",g=setTimeout(()=>{e||(e=!0,j(),d(Error(`Quick tunnel timed out. Last log: ${f.slice(-800)||"(empty)"}`)))},9e4),h=null,i=a=>{let d=a.toString();f=(f+d).slice(-4e3);let i=function(a){let b=[];for(let c of a.matchAll(/https:\/\/([a-z0-9-]+)\.trycloudflare\.com/gi)){let a=c[1];"api"!==a&&b.push(`https://${a}.trycloudflare.com`)}return b.length?b[b.length-1]:null}(d);if(i){if(!e){e=!0,h=i,clearTimeout(g),j(),console.log(`[Tunnel] cloudflared URL: ${i}`),c({child:n,tunnelUrl:i});return}i!==h&&(console.log(`[Tunnel] cloudflared URL changed: ${i}`),h=i,b&&b(i))}};n.stdout.on("data",i),n.stderr.on("data",i),n.on("error",a=>{e||(e=!0,clearTimeout(g),j(),d(a))}),n.on("exit",(b,c)=>{if(L===n&&(L=null),w(n.pid),N){N=!1,clearTimeout(g),j(),e||(e=!0,d(Error("cloudflared killed")));return}if(console.log(`[Tunnel] cloudflared exit code=${b} signal=${c}`),!e){e=!0,clearTimeout(g),j();let c=f.slice(-600).trim()||"(empty)";1===b?d(Error(`cloudflared quick tunnel exited (code 1). Common causes: (1) outbound port 7844 (TCP/UDP) blocked, (2) TryCloudflare service issue, (3) cannot reach 127.0.0.1:${a}, (4) protocol (http2/quic) blocked by network. Last log: ${c}`)):2===b?d(Error(`cloudflared exited (code 2). Bad arguments. Last log: ${c}`)):d(Error(`cloudflared exited (code ${b}). Last log: ${c}`));return}M&&M(),j()})})}function P(a){if(N=!0,L){try{L.kill()}catch(a){}L=null}let b=v();if(b){try{process.kill(b)}catch(a){}w()}if(a)try{if(z){let b=`Get-CimInstance Win32_Process -Filter \\"Name='cloudflared.exe'\\" | Where-Object { $_.CommandLine -match ':${a}(\\D|$)' } | ForEach-Object { Stop-Process -Id $_.ProcessId -Force }`;(0,t.execSync)(`powershell -NoProfile -NonInteractive -WindowStyle Hidden -Command "${b}"`,{stdio:"ignore",windowsHide:!0})}else(0,t.execSync)(`pkill -f "cloudflared.*:${a}([^0-9]|$)" 2>/dev/null || true`,{stdio:"ignore",windowsHide:!0})}catch(a){}}function Q(){let a=v();if(!a)return!1;try{return process.kill(a,0),!0}catch(a){return!1}}var R=c(14985),S=c.n(R);let T=new(S()).promises.Resolver;async function U(a,b){let c=a=>Promise.race([a(),new Promise((a,c)=>setTimeout(()=>c(Error("dns timeout")),b))]).then(()=>!0).catch(()=>!1);return!!await c(()=>T.resolve4(a))||c(()=>S().promises.resolve4(a))}T.setServers(["1.1.1.1","1.0.0.1","8.8.8.8"]);let V=process.env.TUNNEL_WORKER_URL||"https://abc-tunnel.us";async function W(a){let b;if(!a)return!1;try{b=new URL(a).hostname}catch{return!1}if(!await U(b,2e3))return!1;try{return(await fetch(`${a}/api/health`,{signal:AbortSignal.timeout(5e3)})).ok}catch{return!1}}async function X(a,b={cancelled:!1}){let c=Date.now();for(;Date.now()-c<6e4;){if(b.cancelled)throw Error("cancelled");if(await W(a))return!0;await new Promise(a=>setTimeout(a,2e3))}throw Error("Health check timeout after 60000ms")}var Y=c(89718);let Z={cancelToken:{cancelled:!1},spawnInProgress:!1,lastRestartAt:0,activeLocalPort:null};function $(){return Z}let _=null;function aa(a){_=a}async function ab(a,b){await fetch(`${V}/api/tunnel/register`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({shortId:a,tunnelUrl:b})})}function ac(a){if(a.cancelled)throw Error("tunnel cancelled")}async function ad(a=20128){console.log(`[Tunnel] enable start (port=${a})`),Z.cancelToken={cancelled:!1},Z.activeLocalPort=a,Z.spawnInProgress=!0;let b=Z.cancelToken;try{if(Q()){let a=m();if(a?.tunnelUrl&&a?.shortId){let b=`https://r${a.shortId}.abc-tunnel.us`,[c,d]=await Promise.all([W(a.tunnelUrl),W(b)]);if(c&&d)return console.log(`[Tunnel] already running, reuse: ${a.tunnelUrl}`),{success:!0,tunnelUrl:a.tunnelUrl,shortId:a.shortId,publicUrl:b,alreadyRunning:!0};console.log(`[Tunnel] stale (direct=${c} public=${d}), respawn`)}}P(a),console.log("[Tunnel] killed existing cloudflared"),ac(b);let c=m(),d=c?.shortId||o(),e=async a=>{b.cancelled||(console.log(`[Tunnel] url updated: ${a}`),await ab(d,a),n({shortId:d,tunnelUrl:a}),await (0,Y.updateSettings)({tunnelEnabled:!0,tunnelUrl:a}))};M=()=>{console.warn("[Tunnel] cloudflared exited unexpectedly, scheduling respawn"),_&&_()};let{tunnelUrl:f}=await O(a,e);console.log(`[Tunnel] spawned: ${f}`),ac(b);let g=`https://r${d}.abc-tunnel.us`;return await ab(d,f),n({shortId:d,tunnelUrl:f}),await (0,Y.updateSettings)({tunnelEnabled:!0,tunnelUrl:f}),console.log(`[Tunnel] registered shortId=${d} publicUrl=${g}`),await X(g,b),console.log("[Tunnel] public URL healthy"),await W(f)?console.log("[Tunnel] direct URL healthy"):console.warn("[Tunnel] direct URL not reachable yet, continuing via publicUrl"),console.log("[Tunnel] enable success"),{success:!0,tunnelUrl:f,shortId:d,publicUrl:g}}catch(a){throw/cloudflared killed|tunnel cancelled/.test(a.message)||console.error(`[Tunnel] enable error: ${a.message}`),a}finally{Z.spawnInProgress=!1}}async function ae(){console.log("[Tunnel] disable"),Z.cancelToken.cancelled=!0,M=null;try{P(Z.activeLocalPort)}catch(a){console.warn(`[Tunnel] kill warn: ${a.message}`)}w();let a=m();return a&&n({shortId:a.shortId,tunnelUrl:null}),await (0,Y.updateSettings)({tunnelEnabled:!1,tunnelUrl:""}),Z.spawnInProgress=!1,Z.activeLocalPort=null,{success:!0}}async function af(){let a=!0===(await (0,Y.getSettings)()).tunnelEnabled,b=m(),c=b?.shortId||"",d=c?`https://r${c}.abc-tunnel.us`:"",e=b?.tunnelUrl||"",f=!!a&&Q();return{enabled:a&&f,settingsEnabled:a,tunnelUrl:e,shortId:c,publicUrl:d,running:f}}var ag=c(55511),ah=c.n(ag),ai=c(28354),aj=c(66936);let ak=(0,ai.promisify)(t.exec),al=g().join(h.nJ,"bin"),am="darwin"===s().platform();s().platform();let an="win32"===s().platform(),ao=g().join(al,an?"tailscale.exe":"tailscale"),ap=g().join(h.nJ,"tailscale"),aq=g().join(ap,"tailscaled.sock"),ar=an?[]:["--socket",aq],as=an?null:"/var/run/tailscale/tailscaled.sock",at=as?["--socket",as]:[],au="C:\\Program Files\\Tailscale\\tailscale.exe",av=["/usr/local/bin/tailscale","/opt/homebrew/bin/tailscale","/usr/sbin/tailscale","/usr/bin/tailscale","/snap/bin/tailscale"],aw={value:void 0,fetchedAt:0,refreshing:!1},ax={value:!1,fetchedAt:0,refreshing:!1},ay={value:!1,fetchedAt:0,refreshing:!1},az={value:null,port:null,fetchedAt:0,refreshing:!1};function aA(){return e().existsSync(ao)?ao:an&&e().existsSync(au)?au:!an&&av.find(a=>e().existsSync(a))||null}function aB(){return Date.now()-aw.fetchedAt>1e4&&(aw.refreshing||(aw.refreshing=!0,ak(an?"where tailscale 2>nul":"which tailscale 2>/dev/null",{windowsHide:!0,timeout:1500,env:{...process.env,PATH:aN}}).then(({stdout:a})=>{aw.value=a.trim()||aA()}).catch(()=>{aw.value=aA()}).finally(()=>{aw.fetchedAt=Date.now(),aw.refreshing=!1}))),void 0===aw.value&&(e().existsSync(ao)?aw.value=ao:an&&e().existsSync(au)?aw.value=au:an?aw.value=null:aw.value=av.find(a=>e().existsSync(a))||null),aw.value}function aC(){return null!==aB()}function aD(...a){return[...ar,...a]}async function aE(){let a=aB();if(!a)return!1;try{let{stdout:b}=await ak(`"${a}" ${ar.join(" ")} status --json`,{windowsHide:!0,env:{...process.env,PATH:aN},timeout:5e3}),c=JSON.parse(b),d="Running"===c.BackendState&&c.Self?.Online===!0;return ay.value=d,ay.fetchedAt=Date.now(),d}catch{return!1}}async function aF(a){for(let b of[ar,at])try{let{stdout:c}=await ak(`"${a}" ${b.join(" ")} status --json`,{windowsHide:!0,env:{...process.env,PATH:aN},timeout:1500});return JSON.parse(c)}catch{}return null}function aG(){return Date.now()-ay.fetchedAt>1e4&&function(){if(ay.refreshing)return;let a=aB();if(!a){ay.value=!1,ay.fetchedAt=Date.now();return}ay.refreshing=!0,aF(a).then(a=>{ay.value=!!a&&"Running"===a.BackendState&&a.Self?.Online===!0}).catch(()=>{ay.value=!1}).finally(()=>{ay.fetchedAt=Date.now(),ay.refreshing=!1})}(),ay.value}function aH(){return Date.now()-ax.fetchedAt>1e4&&function(){if(ax.refreshing)return;let a=aB();if(!a){ax.value=!1,ax.fetchedAt=Date.now();return}ax.refreshing=!0,ak(`"${a}" ${ar.join(" ")} funnel status --json`,{windowsHide:!0,timeout:1500}).then(({stdout:a})=>{try{let b=JSON.parse(a);ax.value=Object.keys(b.AllowFunnel||{}).length>0}catch{ax.value=!1}}).catch(()=>{ax.value=!1}).finally(()=>{ax.fetchedAt=Date.now(),ax.refreshing=!1})}(),ax.value}async function aI(){let a=aB();if(!a)return!1;try{let{stdout:b}=await ak(`"${a}" ${ar.join(" ")} funnel status --json`,{windowsHide:!0,timeout:1500}),c=JSON.parse(b),d=Object.keys(c.AllowFunnel||{}).length>0;return ax.value=d,ax.fetchedAt=Date.now(),d}catch{return!1}}function aJ(){if(an||!as||!e().existsSync(as))return!1;let a=aB();if(!a)return!1;try{let b=(0,t.execSync)(`"${a}" ${at.join(" ")} status --json`,{encoding:"utf8",windowsHide:!0,env:{...process.env,PATH:aN},timeout:1500});return"Running"===JSON.parse(b).BackendState}catch{return!1}}function aK(){let a=aB();if(!a)return null;try{let b=(0,t.execSync)(`"${a}" ${ar.join(" ")} status --json`,{encoding:"utf8",windowsHide:!0,env:{...process.env,PATH:aN},timeout:5e3}),c=JSON.parse(b),d=c.Self?.DNSName?.replace(/\.$/,"");return d?`https://${d}`:null}catch{return null}}function aL(a){return(Date.now()-az.fetchedAt>1e4||az.port!==a)&&function(a){if(az.refreshing)return;let b=aB();b&&(az.refreshing=!0,ak(`"${b}" ${ar.join(" ")} status --json`,{windowsHide:!0,timeout:1500}).then(({stdout:a})=>{try{let b=JSON.parse(a),c=b.Self?.DNSName?.replace(/\.$/,"");az.value=c?`https://${c}`:null}catch{}}).catch(()=>{}).finally(()=>{az.port=a,az.fetchedAt=Date.now(),az.refreshing=!1}))}(a),az.value}async function aM(a,b,c){let d=c||(()=>{});return an?(await aQ(d),{success:!0}):(am?await aO(a,d):await aP(a,d),d("Starting daemon..."),await aU(a),d("Logging in..."),aW(b))}let aN=`/usr/local/bin:/opt/homebrew/bin:/usr/sbin:/usr/bin:/bin:/snap/bin:${process.env.PATH||""}`;async function aO(a,b){if(function(){try{return(0,t.execSync)("which brew",{stdio:"ignore",windowsHide:!0,env:{...process.env,PATH:aN}}),!0}catch{return!1}}()){b("Installing via Homebrew..."),await new Promise((a,c)=>{let d=(0,t.spawn)("brew",["install","tailscale"],{stdio:["ignore","pipe","pipe"],windowsHide:!0,env:{...process.env,PATH:aN}});d.stdout.on("data",a=>{let c=a.toString().trim();c&&b(c)}),d.stderr.on("data",a=>{let c=a.toString().trim();c&&b(c)}),d.on("close",b=>{0===b?a():c(Error(`brew install failed (code ${b})`))}),d.on("error",c)});return}let c=g().join(s().tmpdir(),"tailscale.pkg");b("Downloading Tailscale package..."),await new Promise((a,d)=>{let e=(0,t.spawn)("curl",["-fL","--progress-bar","https://pkgs.tailscale.com/stable/tailscale-latest.pkg","-o",c],{stdio:["ignore","pipe","pipe"],windowsHide:!0});e.stderr.on("data",a=>{let c=a.toString().trim();c&&b(c)}),e.on("close",b=>{0===b?a():d(Error("Download failed"))}),e.on("error",d)}),b("Installing package..."),await new Promise((d,e)=>{let f=(0,t.spawn)("sudo",["-S","installer","-pkg",c,"-target","/"],{stdio:["pipe","pipe","pipe"],windowsHide:!0}),g="";f.stderr.on("data",a=>{g+=a.toString()}),f.stdout.on("data",a=>{let c=a.toString().trim();c&&b(c)}),f.on("close",a=>{try{(0,t.execSync)(`rm -f ${c}`,{stdio:"ignore",windowsHide:!0})}catch{}0===a?d():e(Error(g.includes("incorrect password")||g.includes("Sorry")?"Wrong sudo password":g||`Exit code ${a}`))}),f.on("error",e),f.stdin.write(`${a}
|
|
2
|
-
`),f.stdin.end()})}async function aP(a,b){if("string"!=typeof a||a.includes("\n"))throw Error("Invalid sudo password");return b("Downloading install script..."),new Promise((c,d)=>{let f=(0,t.spawn)("curl",["-fsSL","https://tailscale.com/install.sh"],{stdio:["ignore","pipe","pipe"],windowsHide:!0}),h="",i="";f.stdout.on("data",a=>{h+=a.toString()}),f.stderr.on("data",a=>{i+=a.toString()}),f.on("exit",f=>{if(0!==f)return d(Error(`Failed to download install script: ${i}`));b("Running install script...");let j=g().join(s().tmpdir(),`tailscale-install-${ah().randomBytes(8).toString("hex")}.sh`);try{e().writeFileSync(j,h,{mode:448})}catch(a){return d(Error(`Failed to write install script: ${a.message}`))}let k=()=>{try{e().unlinkSync(j)}catch{}},l=(0,t.spawn)("sudo",["-S","sh",j],{stdio:["pipe","pipe","pipe"],windowsHide:!0}),m="";l.stdout.on("data",a=>{let c=a.toString().trim();c&&b(c)}),l.stderr.on("data",a=>{m+=a.toString()}),l.on("close",a=>{k(),0===a?c():d(Error(m.includes("incorrect password")||m.includes("Sorry")?"Wrong sudo password":m||`Exit code ${a}`))}),l.on("error",a=>{k(),d(a)}),l.stdin.write(`${a}
|
|
3
|
-
`),l.stdin.end()}),f.on("error",d)})}async function aQ(a){let b=g().join(s().tmpdir(),"tailscale-setup.msi");a("Downloading Tailscale installer..."),await new Promise((c,d)=>{let e=(0,t.spawn)("curl.exe",["-L","-#","-o",b,"https://pkgs.tailscale.com/stable/tailscale-setup-latest-amd64.msi"],{stdio:["ignore","pipe","pipe"],windowsHide:!0}),f="";e.stderr.on("data",b=>{let c=b.toString().match(/(\d+\.\d)%/);c&&c[1]!==f&&(f=c[1],a(`Downloading... ${f}%`))}),e.on("close",a=>0===a?c():d(Error("Download failed"))),e.on("error",d)}),a("Installing Tailscale (UAC prompt may appear)..."),await new Promise((c,d)=>{let f=`'/i','${b}','TS_NOLAUNCH=true','/quiet','/norestart'`,g=(0,t.spawn)("powershell",["-NoProfile","-NonInteractive","-Command",`Start-Process msiexec -ArgumentList ${f} -Verb RunAs -Wait`],{stdio:["ignore","pipe","pipe"],windowsHide:!0});g.stderr.on("data",b=>{let c=b.toString().trim();c&&a(c)}),g.on("close",a=>{try{e().unlinkSync(b)}catch{}0===a?c():d(Error(`msiexec failed (code ${a})`))}),g.on("error",d)}),a("Verifying installation...");let c=Date.now();for(;Date.now()-c<1e4;){if(e().existsSync(au))return void a("Installation complete.");await new Promise(a=>setTimeout(a,1e3))}throw Error("Installation finished but tailscale.exe not found")}async function aR(a){try{if(!e().existsSync(a))return void e().mkdirSync(a,{recursive:!0});let b=process.getuid(),c=process.getgid();if(!(()=>{let c=[a];for(;c.length;){let a=c.pop();try{let d=e().statSync(a);if(d.uid!==b)return!0;if(d.isDirectory())for(let b of e().readdirSync(a))c.push(g().join(a,b))}catch{}}return!1})())return;try{(0,t.execSync)(`chown -R ${b}:${c} "${a}"`,{stdio:"ignore",timeout:3e3})}catch{try{(0,t.execSync)(`sudo -n chown -R ${b}:${c} "${a}"`,{stdio:"ignore",timeout:3e3})}catch{}}}catch{}}function aS(){try{let a=(0,t.execSync)(`pgrep -af "tailscaled.*${aq}"`,{encoding:"utf8",timeout:2e3}).trim();if(!a)return null;return!a.includes("--tun=userspace-networking")}catch{return null}}function aT(){return null!==aS()}async function aU(a){if(an){let a=aB();console.log("[Tailscale] win: net start Tailscale");try{(0,t.execSync)("net start Tailscale",{stdio:"ignore",windowsHide:!0,timeout:1e4})}catch{}if(!a)return;for(let b=0;b<20;b++){try{let c=(0,t.execSync)(`"${a}" status --json`,{encoding:"utf8",windowsHide:!0,timeout:2e3}),d=JSON.parse(c);if(d.BackendState&&"NoState"!==d.BackendState)return void console.log(`[Tailscale] win: BackendState=${d.BackendState} after ${500*b}ms`)}catch{}await new Promise(a=>setTimeout(a,500))}console.log("[Tailscale] win: BackendState still NoState after poll");return}let b=aS(),c=!!a||!0===b;if(null!==b&&b===c)try{let a=aB()||"tailscale";(0,t.execSync)(`"${a}" ${ar.join(" ")} status --json`,{stdio:"ignore",windowsHide:!0,env:{...process.env,PATH:aN},timeout:3e3});return}catch{}try{(0,t.execSync)(`pkill -9 -f "tailscaled.*${aq}"`,{stdio:"ignore",timeout:3e3})}catch{}if(a)try{await (0,aj.execWithPassword)(`pkill -9 -f "tailscaled.*${aq}"`,a)}catch{}else try{(0,t.execSync)(`sudo -n pkill -9 -f "tailscaled.*${aq}"`,{stdio:"ignore",timeout:3e3})}catch{}await new Promise(a=>setTimeout(a,1500)),await aR(ap);let d=am?"/usr/local/bin/tailscaled":"tailscaled",e=[`--socket=${aq}`,`--statedir=${ap}`];if(c||e.push("--tun=userspace-networking"),c){let b=(0,t.spawn)("sudo",["-S",d,...e],{detached:!0,stdio:["pipe","ignore","ignore"],cwd:s().tmpdir(),env:{...process.env,PATH:aN}});b.stdin.write(`${a}
|
|
4
|
-
`),b.stdin.end(),b.unref()}else(0,t.spawn)(d,e,{detached:!0,stdio:"ignore",cwd:s().tmpdir(),env:{...process.env,PATH:aN}}).unref();await new Promise(a=>setTimeout(a,3e3))}function aV(){let a=aB();if(!a)return null;try{let b=(0,t.execSync)(`"${a}" ${ar.join(" ")} status --json`,{encoding:"utf8",windowsHide:!0,timeout:2e3}),c=JSON.parse(b);if(c.AuthURL)return c.AuthURL;return null}catch{return null}}function aW(a){let b=aB();return b?new Promise((c,d)=>{if(aU("").catch(()=>{}),aG())return void c({alreadyLoggedIn:!0});let e=aD("up","--accept-routes");a&&e.push(`--hostname=${a}`);let f=(0,t.spawn)(b,e,{stdio:["ignore","pipe","pipe"],detached:!0,windowsHide:!0}),g=!1,h="",i=a=>{let b=a.match(/https:\/\/login\.tailscale\.com\/a\/[a-zA-Z0-9]+/);return b?b[0]:null},j=(a,b)=>{g||(g=!0,clearTimeout(l),clearInterval(k),console.log(`[Tailscale] login authUrl detected (${b})`),f.unref(),c({authUrl:a}))},k=setInterval(()=>{if(g)return;let a=aV();a&&j(a,"status")},500),l=setTimeout(()=>{if(g)return;g=!0,clearInterval(k),f.unref();let a=i(h)||aV();a?c({authUrl:a}):d(Error("tailscale up timed out without auth URL"))},15e3),m=a=>{let b=i(h+=a.toString());b&&j(b,"stdout")};f.stdout.on("data",m),f.stderr.on("data",m),f.on("error",a=>{g||(g=!0,clearTimeout(l),clearInterval(k),console.error(`[Tailscale] login spawn error: ${a.message}`),d(a))}),f.on("exit",a=>{if(g)return;console.log(`[Tailscale] login exit code=${a}`);let b=i(h)||aV();if(b)return void j(b,"exit");if(aG()){g=!0,clearTimeout(l),clearInterval(k),c({alreadyLoggedIn:!0});return}})}):Promise.reject(Error("Tailscale not installed"))}async function aX(a){let b=aB();if(!b)throw Error("Tailscale not installed");try{(0,t.execSync)(`"${b}" ${ar.join(" ")} funnel --bg reset`,{stdio:"ignore",windowsHide:!0})}catch(a){}return new Promise((c,d)=>{let e=(0,t.spawn)(b,aD("funnel","--bg",`${a}`),{stdio:["ignore","pipe","pipe"],windowsHide:!0}),f=!1,g="",h=setTimeout(()=>{if(f)return;f=!0;let b=aK()||aL(a);b?c({tunnelUrl:b}):d(Error(`Tailscale funnel timed out: ${g.trim()||"no output"}`))},3e4),i=!1,j=a=>{if((g+=a.toString()).includes("Funnel is not enabled")&&(i=!0),i&&!f){let a=g.match(/https:\/\/login\.tailscale\.com\/[^\s]+/);if(a){f=!0,clearTimeout(h),e.kill(),c({funnelNotEnabled:!0,enableUrl:a[0]});return}}let b=aK();b&&!f&&(f=!0,clearTimeout(h),c({tunnelUrl:b}))};e.stdout.on("data",j),e.stderr.on("data",j),e.on("exit",b=>{if(f)return;f=!0,clearTimeout(h),console.log(`[Tailscale] funnel exit code=${b} output="${g.trim().slice(0,200)}"`);let e=aK()||aL(a);e?c({tunnelUrl:e}):d(Error(`tailscale funnel failed (code ${b}): ${g.trim()}`))}),e.on("error",a=>{f||(f=!0,clearTimeout(h),d(a))})})}async function aY(a){let b=aB();if(!b||!a)return;let c=g().join(ap,"certs");e().mkdirSync(c,{recursive:!0});let d=g().join(c,`${a}.crt`),f=g().join(c,`${a}.key`);try{await ak(`"${b}" ${ar.join(" ")} cert --cert-file "${d}" --key-file "${f}" "${a}"`,{windowsHide:!0,env:{...process.env,PATH:aN},timeout:3e4}),console.log(`[Tailscale] cert provisioned for ${a}`)}catch(a){console.warn(`[Tailscale] cert provision failed (non-fatal): ${a.message}`)}}function aZ(){let a=aB();if(a)try{(0,t.execSync)(`"${a}" ${ar.join(" ")} funnel --bg reset`,{stdio:"ignore",windowsHide:!0})}catch(a){}}async function a$(a){let b;if(!a)return!1;try{b=new URL(a).hostname}catch{return!1}if(!await U(b,3e3))return!1;try{return(await fetch(`${a}/api/health`,{signal:AbortSignal.timeout(8e3)})).ok}catch{return!1}}async function a_(a,b={cancelled:!1}){let c=Date.now();for(;Date.now()-c<18e4;){if(b.cancelled)throw Error("cancelled");if(await a$(a))return!0;await new Promise(a=>setTimeout(a,2e3))}throw Error("Health check timeout after 180000ms")}var a0=c(96182);(0,a0.initDbHooks)(Y.getSettings,Y.updateSettings);let a1={cancelToken:{cancelled:!1},spawnInProgress:!1,lastRestartAt:0,activeLocalPort:null};function a2(){return a1}function a3(a){if(a.cancelled)throw Error("tailscale cancelled")}async function a4(a=20128){console.log(`[Tailscale] enable start (port=${a})`),a1.cancelToken={cancelled:!1},a1.activeLocalPort=a,a1.spawnInProgress=!0;let b=a1.cancelToken;try{let c,d=(0,a0.getCachedPassword)()||await (0,a0.loadEncryptedPassword)()||"";await aU(d),console.log("[Tailscale] daemon ready"),a3(b);let e=m(),f=e?.shortId||o(),g=await aE();if(console.log(`[Tailscale] loggedIn=${g}`),!g){let a=await aW(f);if(a.authUrl)return console.log(`[Tailscale] needs login, authUrl=${a.authUrl}`),{success:!1,needsLogin:!0,authUrl:a.authUrl};console.log("[Tailscale] login resolved alreadyLoggedIn")}a3(b),aZ();try{console.log("[Tailscale] starting funnel"),c=await aX(a)}catch(a){if(console.error(`[Tailscale] funnel error: ${a.message}`),/NoState|unexpected state|not logged in|Logged ?out|NeedsLogin/i.test(a.message||"")){console.log("[Tailscale] retry via startLogin");let a=await aW(f);if(a.authUrl)return{success:!1,needsLogin:!0,authUrl:a.authUrl}}throw a}if(a3(b),c.funnelNotEnabled)return console.log(`[Tailscale] funnel not enabled, enableUrl=${c.enableUrl}`),{success:!1,funnelNotEnabled:!0,enableUrl:c.enableUrl};if(!await aE()||!await aI())return console.error("[Tailscale] strict probe failed (device removed?)"),aZ(),{success:!1,error:"Tailscale not connected. Device may have been removed. Please re-login."};await (0,Y.updateSettings)({tailscaleEnabled:!0,tailscaleUrl:c.tunnelUrl}),console.log(`[Tailscale] funnel up: ${c.tunnelUrl}`);let h=new URL(c.tunnelUrl).hostname;await aY(h);let i=!1;try{await a_(c.tunnelUrl,b),i=!0}catch(a){if(!a.message.startsWith("Health check timeout"))throw a;console.warn("[Tailscale] health check timed out, will retry via watchdog")}return console.log(`[Tailscale] enable success (reachable=${i})`),{success:!0,tunnelUrl:c.tunnelUrl}}catch(a){throw console.error(`[Tailscale] enable error: ${a.message}`),a}finally{a1.spawnInProgress=!1}}async function a5(){return console.log("[Tailscale] disable"),a1.cancelToken.cancelled=!0,aZ(),await (0,Y.updateSettings)({tailscaleEnabled:!1,tailscaleUrl:""}),{success:!0}}async function a6(){let a=await (0,Y.getSettings)(),b=!0===a.tailscaleEnabled,c=a.tailscaleUrl||"",d=!!b&&aG(),e=!!d&&aH();return{enabled:b&&e,settingsEnabled:b,tunnelUrl:c,running:e,loggedIn:d}}var a7=c(91645),a8=c.n(a7);function a9(){return new Promise(a=>{let b=new(a8()).Socket,c=!1,d=d=>{if(!c){c=!0;try{b.destroy()}catch{}a(d)}};b.setTimeout(3e3),b.once("connect",()=>d(!0)),b.once("timeout",()=>d(!1)),b.once("error",()=>d(!1));try{b.connect(443,"1.1.1.1")}catch{d(!1)}})}let ba=12e4,bb=2500,bc=6e4,bd=5e3,be=/^(utun|awdl|llw|anpi|bridge|gif|stf|ipsec|ap|tun|tap|vmnet|veth|docker)/i}};
|
|
1
|
+
"use strict";exports.id=6457,exports.ids=[4755,6457,8838],exports.modules={50122:(a,b,c)=>{c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},89718:(a,b,c)=>{c.d(b,{Bf:()=>d.Bf,CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,K1:()=>d.K1,KJ:()=>d.KJ,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,OM:()=>d.OM,PX:()=>d.PX,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Um:()=>d.Um,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Yd:()=>d.Yd,ZO:()=>d.ZO,bI:()=>d.bI,c:()=>d.c,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,getSettings:()=>d.mt,h1:()=>d.h1,hj:()=>d.hj,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,r4:()=>d.r4,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,updateSettings:()=>d.Xx,uv:()=>d.uv,yF:()=>d.yF,yg:()=>d.yg,zP:()=>d.zP});var d=c(27274)},94755:(a,b,c)=>{c.d(b,{A:()=>i});var d=c(77598);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length;var h=c(50122);let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();var i=a,j=c;let k=(i=i||{}).random??i.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(k.length<16)throw Error("Random bytes length must be >= 16");if(k[6]=15&k[6]|64,k[8]=63&k[8]|128,b){if((j=j||0)<0||j+16>b.length)throw RangeError(`UUID byte range ${j}:${j+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[j+a]=k[a];return b}return(0,h.k)(k)}}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";exports.id=6492,exports.ids=[6492],exports.modules={1100:(a,b,c)=>{function d(a,b){let c,d=String(a||"").trim();if(!d)throw Error(`xai discovery ${b} is empty`);try{c=new URL(d)}catch(a){throw Error(`xai discovery ${b} is invalid: ${a.message}`)}if("https:"!==c.protocol)throw Error(`xai discovery ${b} must use https: ${d}`);let e=c.hostname.toLowerCase().trim();if("x.ai"!==e&&!e.endsWith(".x.ai"))throw Error(`xai discovery ${b} host ${e} is not on x.ai`);return d}function e(a){if(!a||"string"!=typeof a)return;let b=a.split(".");if(3===b.length)try{let a=b[1].replace(/-/g,"+").replace(/_/g,"/"),c=(4-a.length%4)%4,d=Buffer.from(a+"=".repeat(c),"base64").toString("utf8"),e=JSON.parse(d);return e.email||e.preferred_username||e.sub||void 0}catch{return}}function f(a){try{if(!a||"string"!=typeof a)return null;let b=a.split(".");if(3!==b.length)return null;let c=b[1].replace(/-/g,"+").replace(/_/g,"/"),d=(4-c.length%4)%4,e=c+"=".repeat(d);return JSON.parse(Buffer.from(e,"base64").toString("utf8"))}catch{return null}}function g(a){let b=f(a);if(b)return b.email||b.preferred_username||b.sub||void 0}async function h(a){if(!a)return null;try{let b=await fetch("https://codewhisperer.us-east-1.amazonaws.com/ListAvailableProfiles",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:`Bearer ${a}`},body:JSON.stringify({maxResults:10})});if(!b.ok)return null;let c=await b.json();return c.profiles?.find(a=>a.arn?.trim())?.arn?.trim()||null}catch{return null}}function i(a){let b=f(a);if(!b)return{};let c=b["https://api.openai.com/auth"]||{};return{email:b.email,chatgptAccountId:c.chatgpt_account_id||b.account_id,chatgptPlanType:c.chatgpt_plan_type||b.plan_type}}c.d(b,{J_:()=>g,YR:()=>i,gR:()=>h,js:()=>d,pG:()=>e})},6454:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(13073),e=c(32185);let f={config:{...d.hF,loginUrl:e.ii,deviceTokenUrl:e.h3,userInfoUrl:e.cn},flowType:"device_code",requestDeviceCode:async()=>{let{QoderService:a}=await c.e(7726).then(c.bind(c,37726)),b=new a({deviceTokenUrl:e.h3,loginUrl:e.ii,userInfoUrl:e.cn}).initiateDeviceFlow();return{device_code:b.nonce,user_code:b.nonce.slice(0,8).toUpperCase(),verification_uri:e.ii,verification_uri_complete:b.verificationUriComplete,expires_in:300,interval:2,codeVerifier:b.codeVerifier,_qoderNonce:b.nonce,_qoderMachineId:b.machineId}},pollToken:async(a,b,d,f)=>{let g,{QoderService:h}=await c.e(7726).then(c.bind(c,37726)),i=new h({deviceTokenUrl:e.h3,loginUrl:e.ii,userInfoUrl:e.cn}),j=b||f?._qoderNonce,k=d||f?._qoderVerifier;if(!j||!k)return{ok:!1,data:{error:"invalid_request",error_description:"Missing nonce/verifier"}};try{g=await i.pollDeviceToken({nonce:j,codeVerifier:k})}catch(a){return{ok:!1,data:{error:"poll_failed",error_description:a.message}}}if("pending"===g.status)return{ok:!1,data:{error:"authorization_pending"}};let l=await i.fetchUserInfo(g.accessToken),m=Math.max(86400,Math.floor((g.expireTime-Date.now())/1e3));return{ok:!0,data:{access_token:g.accessToken,refresh_token:g.refresh_token||"",expires_in:m,_qoderUserId:g.userId,_qoderMachineId:f?._qoderMachineId||"",_qoderName:l.name,_qoderEmail:l.email,_qoderOrganizationId:l.organizationId}}},mapTokens:a=>{let b=(a._qoderEmail||"").trim(),c=(a._qoderName||"").trim()||null,d=a._qoderUserId||"",e=b||c||(d?`qoder-cn-user-${d}`:null);return{accessToken:a.access_token,refreshToken:a.refresh_token||null,expiresIn:a.expires_in,email:e,displayName:c||b||(d?`qoder-cn-user-${d}`:null),providerSpecificData:{authMethod:"device",userId:d,machineId:a._qoderMachineId||"",organizationId:a._qoderOrganizationId||""}}}}},9001:(a,b,c)=>{c.d(b,{A:()=>d});let d={config:c(13073).OV,flowType:"authorization_code_pkce",buildAuthUrl:(a,b,c,d)=>{let e=new URLSearchParams({code:"true",client_id:a.clientId,response_type:"code",redirect_uri:b,scope:a.scopes.join(" "),code_challenge:d,code_challenge_method:a.codeChallengeMethod,state:c});return`${a.authorizeUrl}?${e.toString()}`},exchangeToken:async(a,b,c,d,e)=>{let f=b,g="";if(f.includes("#")){let a=f.split("#");f=a[0],g=a[1]||""}let h=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({code:f,state:g||e,grant_type:"authorization_code",client_id:a.clientId,redirect_uri:c,code_verifier:d})});if(!h.ok){let a=await h.text();throw Error(`Token exchange failed: ${a}`)}return await h.json()},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope})}},13622:(a,b,c)=>{c.d(b,{A:()=>d});let d={config:c(13073).Td,flowType:"browser_token",buildAuthUrl:(a,b,c)=>{let d=(a.webAppUrl||"https://app.kimchi.dev").replace(/\/+$/,""),e=new URLSearchParams({callback:b,state:c});return`${d}/cli-auth?${e.toString()}`},exchangeToken:async(a,b)=>{let c=String(b||"").trim();if(!c)throw Error("Missing Kimchi token");let d=a.validationUrl||"https://api.cast.ai/v1/llm/openai/supported-providers",e=await fetch(d,{method:"GET",headers:{Accept:"application/json",Authorization:`Bearer ${c}`}});if(!e.ok)throw Error(`Kimchi token validation failed: ${e.status}`);let f={};if(a.userInfoUrl)try{let b=await fetch(a.userInfoUrl,{method:"GET",headers:{Accept:"application/json",Authorization:`Bearer ${c}`}});b.ok&&(f=await b.json())}catch{f={}}return{access_token:c,token_type:"Bearer",_kimchiUser:f}},mapTokens:a=>{let b=a._kimchiUser||{},c=b.id?String(b.id):"",d=b.username||"",e=b.email||(c?`kimchi-user-${c}`:null);return{accessToken:a.access_token,refreshToken:null,email:e,displayName:b.name||d||null,providerSpecificData:{authMethod:"browser_token",userId:c,username:d}}}}},14596:(a,b,c)=>{c.d(b,{A:()=>d});let d={config:c(13073).DV,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(`${a.stateUrl}?platform=${a.platform}`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"www.codebuddy.ai","X-No-Authorization":"true","X-No-User-Id":"true","X-Product":"SaaS"},body:"{}"});if(!b.ok)throw Error(`CodeBuddy Intl state request failed: ${await b.text()}`);let c=await b.json();if(0!==c.code||!c.data?.state||!c.data?.authUrl)throw Error(`CodeBuddy Intl state error: ${c.msg||"missing state/authUrl"}`);return{device_code:c.data.state,verification_uri:c.data.authUrl,user_code:"",interval:a.pollInterval/1e3,_isCodeBuddy:!0}},pollToken:async(a,b)=>{let c=await fetch(`${a.tokenUrl}?state=${encodeURIComponent(b)}`,{method:"GET",headers:{Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"www.codebuddy.ai","X-No-Authorization":"true","X-No-User-Id":"true","X-No-Enterprise-Id":"true","X-No-Department-Info":"true","X-Product":"SaaS"}});if(!c.ok)return{ok:!1,data:{error:"request_failed"}};let d=await c.json();return 0===d.code&&d.data?.accessToken?{ok:!0,data:{access_token:d.data.accessToken,refresh_token:d.data.refreshToken||"",token_type:d.data.tokenType||"Bearer",expires_in:d.data.expiresIn}}:11217===d.code?{ok:!0,data:{error:"authorization_pending"}}:{ok:!1,data:{error:d.msg||"unknown_error"}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in||86400,providerSpecificData:{}})}},21956:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(13073),e=c(1100);let f={config:d.DI,flowType:"authorization_code_pkce",fixedPort:d.DI.fixedPort,callbackPath:d.DI.callbackPath,buildAuthUrl:(a,b,c,d)=>{let e=Object.entries({response_type:"code",client_id:a.clientId,redirect_uri:b,scope:a.scope,code_challenge:d,code_challenge_method:a.codeChallengeMethod,...a.extraParams,state:c}).map(([a,b])=>`${a}=${encodeURIComponent(b)}`).join("&");return`${a.authorizeUrl}?${e}`},exchangeToken:async(a,b,c,d)=>{let e=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,code:b,redirect_uri:c,code_verifier:d})});if(!e.ok){let a=await e.text();throw Error(`Token exchange failed: ${a}`)}return await e.json()},mapTokens:a=>{let b=(0,e.YR)(a.id_token),c={accessToken:a.access_token,refreshToken:a.refresh_token,idToken:a.id_token,expiresIn:a.expires_in,lastRefreshAt:new Date().toISOString()},d=b.email||(0,e.J_)(a.access_token);return d&&(c.email=d),(b.chatgptAccountId||b.chatgptPlanType)&&(c.providerSpecificData={chatgptAccountId:b.chatgptAccountId,chatgptPlanType:b.chatgptPlanType}),c}}},25627:(a,b,c)=>{c.d(b,{A:()=>j});var d=c(55511),e=c.n(d),f=c(25482),g=c(1100);let h=null;async function i(){if(h)return h;try{let a=await fetch(f.oT.discoveryUrl,{headers:{Accept:"application/json"}});if(a.ok){let b=await a.json();return h={authorizeUrl:(0,g.js)(b.authorization_endpoint,"authorization_endpoint"),tokenUrl:(0,g.js)(b.token_endpoint,"token_endpoint")}}}catch{}return h={authorizeUrl:f.oT.authorizeUrl,tokenUrl:f.oT.tokenUrl}}let j={config:f.oT,flowType:"authorization_code_pkce",fixedPort:f.oT.loopbackPort,callbackPath:f.oT.callbackPath,pkceVerifierBytes:f.Ue,prepareConfig:async a=>{let b=await i();return{...a,authorizeUrl:b.authorizeUrl,tokenUrl:b.tokenUrl}},buildAuthUrl:(a,b,c,d)=>{let f=e().randomBytes(16).toString("hex"),g=Object.entries({response_type:"code",client_id:a.clientId,redirect_uri:b,scope:a.scope,code_challenge:d,code_challenge_method:a.codeChallengeMethod,state:c,nonce:f,plan:"generic",referrer:"cli-proxy-api"}).map(([a,b])=>`${a}=${encodeURIComponent(b)}`).join("&");return`${a.authorizeUrl}?${g}`},exchangeToken:async(a,b,c,d)=>{let e=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,code:b,redirect_uri:c,code_verifier:d})});if(!e.ok){let a=await e.text();throw Error(`xAI token exchange failed: ${a}`)}return await e.json()},mapTokens:a=>{let b={accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope},c=(0,g.pG)(a.id_token);return c&&(b.email=c),a.id_token&&(b.providerSpecificData={idToken:a.id_token}),b}}},32185:(a,b,c)=>{c.d(b,{_G:()=>d._G,bg:()=>d.bg,cn:()=>d.cn,h3:()=>d.h3,ii:()=>d.ii,rf:()=>d.rf});var d=c(95339)},41783:(a,b,c)=>{c.d(b,{A:()=>e});var d=c(13073);let e={config:d.LT,flowType:"authorization_code",buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({client_id:a.clientId,response_type:"code",redirect_uri:b,scope:a.scopes.join(" "),state:c,access_type:"offline",prompt:"consent"});return`${a.authorizeUrl}?${d.toString()}`},exchangeToken:async(a,b,c)=>{let d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,client_secret:a.clientSecret,code:b,redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`Token exchange failed: ${a}`)}return await d.json()},postExchange:async a=>{let b=await fetch(`${d.LT.userInfoUrl}?alt=json`,{headers:{Authorization:`Bearer ${a.access_token}`}}),c=b.ok?await b.json():{},e="";try{let b=await fetch("https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",{method:"POST",headers:{Authorization:`Bearer ${a.access_token}`,"Content-Type":"application/json"},body:JSON.stringify({metadata:(0,d.cD)(),mode:1})});if(b.ok){let a=await b.json();e=a.cloudaicompanionProject?.id||a.cloudaicompanionProject||""}}catch(a){console.log("Failed to fetch project ID:",a)}return{userInfo:c,projectId:e}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope,email:b?.userInfo?.email,projectId:b?.projectId})}},43521:(a,b,c)=>{c.d(b,{A:()=>i});var d=c(13073),e=c(44265);async function f(a,b,c){let e=`${a.replace(/\/$/,"")}${b}`,f=await fetch(e,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json","User-Agent":d.eD.userAgent},body:JSON.stringify(c)}),g=await f.text();if(!f.ok)throw Error(`Windsurf ${b} HTTP ${f.status}: ${g.slice(0,200)}`);try{return JSON.parse(g)}catch{throw Error(`Windsurf ${b} invalid JSON`)}}async function g(a){let b=await f(d.eD.registerApiBaseUrl,d.eD.registerPath,{firebase_id_token:a}),c=(0,e.j)(b,[["apiKey"],["api_key"]]);if(!c)throw Error("Windsurf RegisterUser missing apiKey");return{apiKey:c,apiServerUrl:(0,e.j)(b,[["apiServerUrl"],["api_server_url"]])||d.eD.defaultApiServerUrl,name:(0,e.j)(b,[["name"]])}}async function h(a,b){try{let c=await f(a,d.eD.oneTimeAuthPath,{firebaseIdToken:b}),g=(0,e.j)(c,[["authToken"],["auth_token"]]);if(!g)return{email:null,name:null};let h=await f(a,d.eD.currentUserPath,{authToken:g,includeSubscription:!0}),i=h.user||h;return{email:(0,e.j)(i,[["email"]]),name:(0,e.j)(i,[["name"]])}}catch{return{email:null,name:null}}}let i={config:d.eD,flowType:"authorization_code",callbackPath:d.eD.callbackPath,buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({response_type:"token",client_id:a.clientId,redirect_uri:b,state:c,prompt:"login",redirect_parameters_type:"query",workflow:"onboarding"});return`${a.authBaseUrl}${a.signInPath}?${d.toString()}`},exchangeToken:async(a,b,c,d,e)=>{let f=String(b||"").trim();if(!(f.includes("?")||f.includes("access_token="))){let b=f.replace(/^Bearer\s+/i,"");if(b.startsWith("sk-ws-"))return{accessToken:b,refreshToken:null,expiresIn:null,apiServerUrl:a.defaultApiServerUrl,firebaseIdToken:null,_authMethod:"imported"};let c=await g(b);return{accessToken:c.apiKey,refreshToken:null,expiresIn:null,apiServerUrl:c.apiServerUrl,firebaseIdToken:b,_authMethod:"imported"}}let{firebaseIdToken:h}=function(a,b){let c=String(a||"").trim(),d=c;c.includes("?")&&(d=c.slice(c.indexOf("?")+1)),c.startsWith("#")&&(d=c.slice(1));let e=Object.fromEntries(new URLSearchParams(d)),f=a=>{for(let b of a){let a=e[b];if(a&&String(a).trim())return String(a).trim()}return null},g=f(["error"]);if(g){let a=f(["error_description"]);throw Error(a?`Windsurf auth failed: ${g} (${a})`:`Windsurf auth failed: ${g}`)}let h=f(["access_token","token"]);if(!h)throw Error("Windsurf callback missing access_token");let i=f(["state"]);if(b&&i&&i!==b)throw Error("Windsurf callback state mismatch");return{firebaseIdToken:h}}(f,e),i=await g(h);return{accessToken:i.apiKey,refreshToken:null,expiresIn:null,apiServerUrl:i.apiServerUrl,firebaseIdToken:h,_authMethod:"oauth"}},postExchange:async a=>a.firebaseIdToken?{userInfo:await h(a.apiServerUrl,a.firebaseIdToken)}:{userInfo:{email:null,name:null}},mapTokens:(a,b)=>({accessToken:a.accessToken,refreshToken:null,expiresIn:null,email:b?.userInfo?.email||void 0,displayName:b?.userInfo?.name||void 0,providerSpecificData:{authMethod:a._authMethod||"oauth",apiServerUrl:a.apiServerUrl,firebaseIdToken:a.firebaseIdToken}})}},44265:(a,b,c)=>{c.d(b,{j:()=>d});function d(a,b){for(let c of b){let b=a;for(let a of c){if(null==b||"object"!=typeof b){b=void 0;break}b=b[a]}if("string"==typeof b&&b.trim())return b.trim();if("number"==typeof b)return String(b)}return null}},44442:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(13073),e=c(1100);let f={config:d.Tx,flowType:"device_code",requestDeviceCode:async(a,b,c={})=>{let e=("string"==typeof c.region?c.region.trim():"")||"us-east-1";(0,d.S6)(e);let f=("string"==typeof c.startUrl?c.startUrl.trim():"")||a.startUrl,g="idc"===c.authMethod?"idc":"builder-id",h=`https://oidc.${e}.amazonaws.com/client/register`,i=`https://oidc.${e}.amazonaws.com/device_authorization`,j=await fetch(h,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientName:a.clientName,clientType:a.clientType,scopes:a.scopes,grantTypes:a.grantTypes,issuerUrl:a.issuerUrl})});if(!j.ok){let a=await j.text();throw Error(`Client registration failed: ${a}`)}let k=await j.json(),l=await fetch(i,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:k.clientId,clientSecret:k.clientSecret,startUrl:f})});if(!l.ok){let a=await l.text();throw Error(`Device authorization failed: ${a}`)}let m=await l.json();return{device_code:m.deviceCode,user_code:m.userCode,verification_uri:m.verificationUri,verification_uri_complete:m.verificationUriComplete,expires_in:m.expiresIn,interval:m.interval||5,_clientId:k.clientId,_clientSecret:k.clientSecret,_region:e,_authMethod:g,_startUrl:f}},pollToken:async(a,b,c,e)=>{let f,g=e?._region||"us-east-1";(0,d.S6)(g);let h=`https://oidc.${g}.amazonaws.com/token`,i=await fetch(h,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:e?._clientId,clientSecret:e?._clientSecret,deviceCode:b,grantType:"urn:ietf:params:oauth:grant-type:device_code"})});try{f=await i.json()}catch(a){f={error:"invalid_response",error_description:await i.text()}}return f.accessToken?{ok:!0,data:{access_token:f.accessToken,refresh_token:f.refreshToken,expires_in:f.expiresIn,profile_arn:f?.profileArn||null,_clientId:e?._clientId,_clientSecret:e?._clientSecret,_region:e?._region,_authMethod:e?._authMethod,_startUrl:e?._startUrl}}:{ok:!1,data:{error:f.error||"authorization_pending",error_description:f.error_description||f.message}}},mapTokens:a=>{let b=(0,e.J_)(a.access_token);return{accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,email:b,providerSpecificData:{profileArn:a?.profile_arn||null,clientId:a._clientId,clientSecret:a._clientSecret,region:a._region||"us-east-1",authMethod:a._authMethod||"builder-id",startUrl:a._startUrl||d.Tx.startUrl}}}}},44712:(a,b,c)=>{c.d(b,{A:()=>e});var d=c(13073);let e={config:d.ZL,flowType:"authorization_code",buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({loginMethod:a.extraParams.loginMethod,type:a.extraParams.type,redirect:b,state:c,client_id:a.clientId});return`${a.authorizeUrl}?${d.toString()}`},exchangeToken:async(a,b,c)=>{let d=Buffer.from(`${a.clientId}:${a.clientSecret}`).toString("base64"),e=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",Authorization:`Basic ${d}`},body:new URLSearchParams({grant_type:"authorization_code",code:b,redirect_uri:c,client_id:a.clientId,client_secret:a.clientSecret})});if(!e.ok){let a=await e.text();throw Error(`Token exchange failed: ${a}`)}return await e.json()},postExchange:async a=>{let b=await fetch(`${d.ZL.userInfoUrl}?accessToken=${encodeURIComponent(a.access_token)}`,{headers:{Accept:"application/json"}});if(!b.ok){let a=await b.text();throw Error(`Failed to fetch user info: ${a}`)}let c=await b.json();if(!c.success)throw Error(`User info request failed: ${c.message||"Unknown error"}`);let e=c.data||{};if(!e.apiKey||""===e.apiKey.trim())throw Error("Empty API key returned from iFlow");if(!(e.email?.trim()||e.phone?.trim()))throw Error("Missing account email/phone in user info");return{userInfo:e}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,apiKey:b?.userInfo?.apiKey,email:b?.userInfo?.email||b?.userInfo?.phone,displayName:b?.userInfo?.nickname||b?.userInfo?.name})}},46392:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(13073),e=c(98151);let f={config:d.RY,flowType:"authorization_code",callbackPath:"/",prepareConfig:async(a,b)=>{let c=Number(b?.nativeAppPort)||d.RY.defaultNativeAppPort,f=(0,e.le)(a,{nativeAppPort:c});return{...a,...f}},buildAuthUrl:(a,b,c)=>a.authUrl,exchangeToken:async(a,b,c,d,f)=>{let{userId:g,encryptedAccessToken:h}=(0,e.Q_)(b);return{accessToken:(0,e.Wc)(h,d),userId:g,systemId:a.systemId}},postExchange:async a=>{let b={accessToken:a.accessToken,providerSpecificData:{userId:a.userId,systemId:a.systemId}},c=null;try{c=await (0,e.qJ)(b,{config:d.RY})}catch{}let f=(0,e.k9)(b,c);return{userInfo:c,organizationId:f,email:c?.email||null,name:c?.name||c?.display_name||null}},mapTokens:(a,b)=>({accessToken:a.accessToken,refreshToken:null,expiresIn:null,email:b?.email||void 0,displayName:b?.name||void 0,providerSpecificData:{authMethod:"oauth",userId:a.userId,systemId:a.systemId,organizationId:b?.organizationId||""}})}},46492:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{exchangeTokens:()=>e.Gj,fetchKiroProfileArn:()=>e.gR});var e=c(64753),f=a([e]);e=(f.then?(await f)():f)[0],d()}catch(a){d(a)}})},52825:(a,b,c)=>{c.d(b,{A:()=>d});let d={config:c(13073).WN,flowType:"import_token",mapTokens:a=>({accessToken:a.accessToken,refreshToken:null,expiresIn:a.expiresIn||86400,providerSpecificData:{machineId:a.machineId,authMethod:"imported"}})}},58618:(a,b,c)=>{c.d(b,{A:()=>d});let d={config:c(13073).Nl,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(`${a.stateUrl}?platform=${a.platform}`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-No-Authorization":"true","X-No-User-Id":"true","X-Product":"SaaS"},body:"{}"});if(!b.ok)throw Error(`CodeBuddy state request failed: ${await b.text()}`);let c=await b.json();if(0!==c.code||!c.data?.state||!c.data?.authUrl)throw Error(`CodeBuddy state error: ${c.msg||"missing state/authUrl"}`);return{device_code:c.data.state,verification_uri:c.data.authUrl,user_code:"",interval:a.pollInterval/1e3,_isCodeBuddy:!0}},pollToken:async(a,b)=>{let c=await fetch(`${a.tokenUrl}?state=${encodeURIComponent(b)}`,{method:"GET",headers:{Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-No-Authorization":"true","X-No-User-Id":"true","X-No-Enterprise-Id":"true","X-No-Department-Info":"true","X-Product":"SaaS"}});if(!c.ok)return{ok:!1,data:{error:"request_failed"}};let d=await c.json();return 0===d.code&&d.data?.accessToken?{ok:!0,data:{access_token:d.data.accessToken,refresh_token:d.data.refreshToken||"",token_type:d.data.tokenType||"Bearer",expires_in:d.data.expiresIn}}:11217===d.code?{ok:!0,data:{error:"authorization_pending"}}:{ok:!1,data:{error:d.msg||"unknown_error"}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in||86400,providerSpecificData:{}})}},59271:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(13073),e=c(1100);let f={config:d.qp,flowType:"device_code",requestDeviceCode:async a=>{let b=new URLSearchParams({client_id:a.clientId,scope:a.scope});a.referrer&&b.set("referrer",a.referrer);let c=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json","User-Agent":"grok-pager/0.2.93 grok-shell/0.2.93 (linux; x86_64)"},body:b});if(!c.ok){let a=await c.text();throw Error(`Grok CLI device code request failed: ${a}`)}return await c.json()},pollToken:async(a,b)=>{let c,d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json","User-Agent":"grok-pager/0.2.93 grok-shell/0.2.93 (linux; x86_64)"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:device_code",device_code:b,client_id:a.clientId})});try{c=await d.json()}catch{c={error:"invalid_response",error_description:await d.text()}}let e=c?.error==="authorization_pending"||c?.error==="slow_down";return{ok:d.ok||e,data:c}},postExchange:async a=>{try{let b=await fetch("https://cli-chat-proxy.grok.com/v1/user",{headers:{Authorization:`Bearer ${a.access_token}`,Accept:"application/json","User-Agent":"grok-pager/0.2.93 grok-shell/0.2.93 (linux; x86_64)","x-xai-token-auth":"xai-grok-cli","x-grok-client-version":"0.2.93"}});if(b.ok)return{user:await b.json()}}catch{}return{user:null}},mapTokens:(a,b)=>{let c=(0,e.pG)(a.id_token)||(0,e.J_)(a.access_token)||b?.user?.email||null,d=b?.user?.userId||b?.user?.principalId||null,f=[b?.user?.firstName,b?.user?.lastName].filter(Boolean).join(" ").trim()||null,g=a.expires_in?new Date(Date.now()+1e3*a.expires_in).toISOString():null;return{accessToken:a.access_token,refreshToken:a.refresh_token||null,expiresIn:a.expires_in,expiresAt:g,scope:a.scope,email:c||void 0,displayName:f||void 0,providerSpecificData:{authMethod:"device_code",idToken:a.id_token||null,email:c||null,userId:d,hasGrokCodeAccess:b?.user?.hasGrokCodeAccess??null,subscriptionTier:b?.user?.subscriptionTier??null}}}}},63062:(a,b,c)=>{c.d(b,{A:()=>d});let d={config:c(13073).f7,flowType:"authorization_code_pkce",buildAuthUrl:(a,b,c,d,e={})=>{let f=e.baseUrl||a.defaultBaseUrl,g=new URLSearchParams({client_id:e.clientId||"",redirect_uri:b,response_type:"code",state:c,scope:a.scope,code_challenge:d,code_challenge_method:a.codeChallengeMethod});return`${f}${a.authorizeUrlPath}?${g.toString()}`},exchangeToken:async(a,b,c,d,e,f={})=>{let g=f.baseUrl||a.defaultBaseUrl,h=f.clientId||"",i=f.clientSecret||"",j=new URLSearchParams({client_id:h,grant_type:"authorization_code",code:b,redirect_uri:c,code_verifier:d});i&&j.set("client_secret",i);let k=await fetch(`${g}${a.tokenUrlPath}`,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:j.toString()});if(!k.ok)throw Error(`GitLab token exchange failed: ${await k.text()}`);let l=await k.json(),m=await fetch(`${g}${a.userInfoUrlPath}`,{headers:{Authorization:`Bearer ${l.access_token}`}}),n=m.ok?await m.json():{};return{...l,_user:n,_baseUrl:g,_clientId:h}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope,providerSpecificData:{username:a._user?.username||"",email:a._user?.email||a._user?.public_email||"",name:a._user?.name||"",baseUrl:a._baseUrl,clientId:a._clientId,authKind:"oauth"}})}},64753:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{Gj:()=>E,gR:()=>f.gR});var e=c(5210);c(25467);var f=c(1100),g=c(9001),h=c(21956),i=c(25627),j=c(59271),k=c(41783),l=c(93695),m=c(44712),n=c(67580),o=c(6454),p=c(98558),q=c(44442),r=c(52825),s=c(88913),t=c(73403),u=c(88376),v=c(70235),w=c(63062),x=c(58618),y=c(14596),z=c(13622),A=c(81755),B=c(43521),C=c(46392),D=a([e]);e=(D.then?(await D)():D)[0];let F={claude:g.A,codex:h.A,xai:i.A,"grok-cli":j.A,"gemini-cli":k.A,antigravity:l.A,iflow:m.A,qoder:n.A,"qoder-cn":o.A,github:p.A,kiro:q.A,cursor:r.A,kimi:s.A,kilocode:t.A,cline:u.A,clinepass:v.A,gitlab:w.A,"codebuddy-cn":x.A,"codebuddy-intl":y.A,kimchi:z.A,trae:A.A,windsurf:B.A,zed:C.A};async function E(a,b,c,d,e,f){let g=function(a){let b=F["kimi-coding"===a?"kimi":a];if(!b)throw Error(`Unknown provider: ${a}`);return b}(a),h=g.prepareConfig?await g.prepareConfig(g.config,f||{}):g.config,i=await g.exchangeToken(h,b,c,d,e,f||{}),j=null;return g.postExchange&&(j=await g.postExchange(i)),g.mapTokens(i,j)}d()}catch(a){d(a)}})},67580:(a,b,c)=>{c.d(b,{A:()=>d});let d={config:c(13073).hF,flowType:"device_code",requestDeviceCode:async a=>{let{QoderService:b}=await c.e(7726).then(c.bind(c,37726)),d=new b().initiateDeviceFlow();return{device_code:d.nonce,user_code:d.nonce.slice(0,8).toUpperCase(),verification_uri:a.loginUrl,verification_uri_complete:d.verificationUriComplete,expires_in:300,interval:2,codeVerifier:d.codeVerifier,_qoderNonce:d.nonce,_qoderMachineId:d.machineId}},pollToken:async(a,b,d,e)=>{let f,{QoderService:g}=await c.e(7726).then(c.bind(c,37726)),h=new g,i=b||e?._qoderNonce,j=d||e?._qoderVerifier;if(!i||!j)return{ok:!1,data:{error:"invalid_request",error_description:"Missing nonce/verifier"}};try{f=await h.pollDeviceToken({nonce:i,codeVerifier:j})}catch(a){return{ok:!1,data:{error:"poll_failed",error_description:a.message}}}if("pending"===f.status)return{ok:!1,data:{error:"authorization_pending"}};let k=await h.fetchUserInfo(f.accessToken),l=Math.max(86400,Math.floor((f.expireTime-Date.now())/1e3));return{ok:!0,data:{access_token:f.accessToken,refresh_token:f.refreshToken,expires_in:l,_qoderUserId:f.userId,_qoderMachineId:e?._qoderMachineId||"",_qoderName:k.name,_qoderEmail:k.email,_qoderOrganizationId:k.organizationId}}},mapTokens:a=>{let b=(a._qoderEmail||"").trim(),c=(a._qoderName||"").trim()||null,d=a._qoderUserId||"",e=b||(d?`qoder-user-${d}`:null);return{accessToken:a.access_token,refreshToken:a.refresh_token||null,expiresIn:a.expires_in,email:e,displayName:c,providerSpecificData:{authMethod:"device",userId:d,machineId:a._qoderMachineId||"",organizationId:a._qoderOrganizationId||""}}}}},70235:(a,b,c)=>{c.d(b,{A:()=>d});let d={config:c(13073).w1,flowType:"authorization_code",buildAuthUrl:(a,b)=>{let c=new URLSearchParams({client_type:"extension",callback_url:b,redirect_uri:b});return`${a.authorizeUrl}?${c.toString()}`},exchangeToken:async(a,b,c)=>{try{let a=b,c=4-a.length%4;4!==c&&(a+="=".repeat(c));let d=Buffer.from(a,"base64").toString("utf-8"),e=d.lastIndexOf("}");if(-1===e)throw Error("No JSON found in decoded code");let f=JSON.parse(d.substring(0,e+1));return{access_token:f.accessToken,refresh_token:f.refreshToken,email:f.email,firstName:f.firstName,lastName:f.lastName,expires_at:f.expiresAt}}catch(f){let d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"authorization_code",code:b,client_type:"extension",redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`ClinePass token exchange failed: ${a}`)}let e=await d.json();return{access_token:e.data?.accessToken||e.accessToken,refresh_token:e.data?.refreshToken||e.refreshToken,email:e.data?.userInfo?.email||"",expires_at:e.data?.expiresAt||e.expiresAt}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_at?Math.floor((new Date(a.expires_at).getTime()-Date.now())/1e3):3600,email:a.email,providerSpecificData:{firstName:a.firstName,lastName:a.lastName}})}},73403:(a,b,c)=>{c.d(b,{A:()=>d});let d={config:c(13073).MZ,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(a.initiateUrl,{method:"POST",headers:{"Content-Type":"application/json"}});if(!b.ok){if(429===b.status)throw Error("Too many pending authorization requests. Please try again later.");let a=await b.text();throw Error(`Device auth initiation failed: ${a}`)}let c=await b.json();return{device_code:c.code,user_code:c.code,verification_uri:c.verificationUrl,verification_uri_complete:c.verificationUrl,expires_in:c.expiresIn||300,interval:3}},pollToken:async(a,b)=>{let c=await fetch(`${a.pollUrlBase}/${b}`);if(202===c.status)return{ok:!1,data:{error:"authorization_pending"}};if(403===c.status)return{ok:!1,data:{error:"access_denied",error_description:"Authorization denied by user"}};if(410===c.status)return{ok:!1,data:{error:"expired_token",error_description:"Authorization code expired"}};if(!c.ok)return{ok:!1,data:{error:"poll_failed",error_description:`Poll failed: ${c.status}`}};let d=await c.json();if("approved"===d.status&&d.token){let b=null;try{let c=await fetch(`${a.apiBaseUrl}/api/profile`,{headers:{Authorization:`Bearer ${d.token}`}});if(c.ok){let a=await c.json();b=a.organizations?.[0]?.id||null}}catch{}return{ok:!0,data:{access_token:d.token,_userEmail:d.userEmail,_orgId:b}}}return{ok:!1,data:{error:"authorization_pending"}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:null,expiresIn:null,email:a._userEmail,...a._orgId?{providerSpecificData:{orgId:a._orgId}}:{}})}},81755:(a,b,c)=>{c.d(b,{A:()=>l});var d=c(55511),e=c.n(d),f=c(13073),g=c(44265);async function h(a){let b=JSON.stringify({loginTraceID:a,login_trace_id:a}),c="no successful response";for(let a of f.SK.loginGuidanceUrls)try{let d=await fetch(a,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json","User-Agent":f.SK.userAgent},body:b});if(!d.ok){c=`${a} HTTP ${d.status}`;continue}let e=await d.json(),h=(0,g.j)(e,[["Result","LoginHost"],["Result","loginHost"],["Result","LoginURL"],["result","loginHost"],["data","Result","LoginHost"],["data","loginHost"],["LoginHost"],["loginHost"]]);if(h)return h;c=`${a} missing LoginHost`}catch(b){c=`${a} ${b.message}`}throw Error(`Trae GetLoginGuidance failed: ${c}`)}function i(){return[...f.SK.apiOrigins]}async function j(a,b){let c=JSON.stringify({ClientID:f.SK.clientId,RefreshToken:a,ClientSecret:f.SK.clientSecret,UserID:""}),d="no successful response";for(let e of i()){let h=`${e.replace(/\/$/,"")}${f.SK.exchangeTokenPath}`;try{let e,i={Accept:"application/json","Content-Type":"application/json","User-Agent":f.SK.userAgent};b&&(i["x-cloudide-token"]=b);let j=await fetch(h,{method:"POST",headers:i,body:c}),k=await j.text();if(!j.ok){d=`${h} HTTP ${j.status}`;continue}try{e=JSON.parse(k)}catch{d=`${h} invalid JSON`;continue}let l=(0,g.j)(e,[["Result","AccessToken"],["Result","accessToken"],["result","access_token"],["accessToken"]]);if(!l){let a=(0,g.j)(e,[["message"],["msg"],["error"],["Result","Message"]])||"missing AccessToken";d=`${h} ${a}`;continue}return{accessToken:l,refreshToken:(0,g.j)(e,[["Result","RefreshToken"],["result","refresh_token"],["refreshToken"]])||a,expiresIn:null,expiresAt:(0,g.j)(e,[["Result","ExpiresAt"],["Result","expiresAt"],["result","expires_at"],["expiresAt"]])}}catch(a){d=`${h} ${a.message}`}}throw Error(`Trae ExchangeToken failed: ${d}`)}async function k(a){for(let b of i()){let c=`${b.replace(/\/$/,"")}${f.SK.getUserInfoPath}`;try{let b=await fetch(c,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json","User-Agent":f.SK.userAgent,"x-cloudide-token":a},body:JSON.stringify({})});if(!b.ok)continue;let d=await b.json();return{email:(0,g.j)(d,[["Result","NonPlainTextEmail"],["Result","Email"],["Result","email"],["email"],["data","email"]]),name:(0,g.j)(d,[["Result","ScreenName"],["Result","Nickname"],["Result","Name"],["result","nickname"],["nickname"],["name"]]),aiRegion:(0,g.j)(d,[["Result","AIRegion"],["Result","aiRegion"],["aiRegion"]]),region:(0,g.j)(d,[["Result","Region"],["Result","region"],["region"]]),tenant:(0,g.j)(d,[["Result","TenantID"],["Result","tenantId"],["tenantId"]]),userId:(0,g.j)(d,[["Result","UserID"],["Result","userId"],["userId"]])}}catch{}}return{email:null,name:null}}let l={config:f.SK,flowType:"authorization_code",callbackPath:f.SK.callbackPath,prepareConfig:async a=>{let b=e().randomUUID(),c=await h(b);return{...a,loginTraceID:b,loginHost:c}},buildAuthUrl:(a,b,c)=>{var d;let g,h,i={plugin_version:f.SK.defaultPluginVersion,machine_id:e().randomUUID(),device_id:f.SK.defaultDeviceId,x_device_brand:"unknown",x_device_type:"unknown",x_os_version:"unknown",x_env:"",x_app_version:f.SK.defaultAppVersion,x_app_type:f.SK.defaultAppType},j=a.loginTraceID||c;return d=a.loginHost,(g=new URL(d.startsWith("http")?d:`https://${d.replace(/^\/+/,"")}`)).pathname=f.SK.authorizationPath,(h=new URLSearchParams).set("login_version","1"),h.set("auth_from","trae"),h.set("login_channel","native_ide"),h.set("plugin_version",i.plugin_version),h.set("auth_type","local"),h.set("client_id",f.SK.clientId),h.set("redirect","0"),h.set("login_trace_id",j),h.set("auth_callback_url",b),h.set("machine_id",i.machine_id),h.set("device_id",i.device_id),h.set("x_device_id",i.device_id),h.set("x_machine_id",i.machine_id),h.set("x_device_brand",i.x_device_brand),h.set("x_device_type",i.x_device_type),h.set("x_os_version",i.x_os_version),h.set("x_env",i.x_env),h.set("x_app_version",i.x_app_version),h.set("x_app_type",i.x_app_type),g.search=h.toString(),g.toString()},exchangeToken:async(a,b)=>{let c=String(b||"").trim();if(!(/[?=&]/.test(c)&&(c.includes("refreshToken")||c.includes("refresh_token"))))return{accessToken:c.replace(/^(Cloud-IDE-JWT|Bearer)\s+/i,""),refreshToken:null,expiresIn:24*f.SK.tokenLifetimeDays*3600,_authMethod:"imported"};let{refreshToken:d,cloudideToken:e}=function(a){let b=String(a||"").trim(),c=b;b.includes("?")&&(c=b.slice(b.indexOf("?")+1)),b.startsWith("#")&&(c=b.slice(1));let d=Object.fromEntries(new URLSearchParams(c)),e=a=>{for(let b of a){let a=d[b];if(a&&String(a).trim())return String(a).trim()}return null},f=e(["error","error_code","errorCode"]);if(f){let a=e(["error_description","error_desc","message"]);throw Error(a?`Trae auth failed: ${f} (${a})`:`Trae auth failed: ${f}`)}let g=e(["refreshToken","refresh_token","RefreshToken"]);if(!g)throw Error("Trae callback missing refreshToken");let h=e(["loginHost","login_host","LoginHost","host","consoleHost"]);if(!h)throw Error("Trae callback missing loginHost");return{refreshToken:g,loginHost:h,cloudideToken:e(["x-cloudide-token","xCloudideToken","accessToken","access_token","token"])}}(c);return{...await j(d,e),_authMethod:"oauth"}},postExchange:async a=>({userInfo:await k(a.accessToken)}),mapTokens:(a,b)=>{let c,d=a.expiresIn||(a.expiresAt?Math.max(60,Number(a.expiresAt)-Math.floor(Date.now()/1e3)):24*f.SK.tokenLifetimeDays*3600),e=b?.userInfo||{},g=e.aiRegion||"US-East";return{accessToken:a.accessToken,refreshToken:a.refreshToken,expiresIn:d,email:e.email||void 0,displayName:e.name||void 0,providerSpecificData:{authMethod:a._authMethod||"oauth",aiRegion:g,region:e.region||g,tenant:e.tenant||"marscode",userId:e.userId||"",scope:"sg"===(c=(g||"").toLowerCase())||c.includes("singapore")?"marscode-sg":"cn"===c||c.includes("cn")||c.includes("china")?"marscode-cn":"marscode-us",webId:"",bizUserId:"",userUniqueId:"",appLanguage:"en",appVersion:f.SK.defaultAppVersion,userRegion:"SG"===g?"SG":"US",userIdentity:"Free"}}}}},88376:(a,b,c)=>{c.d(b,{A:()=>d});let d={config:c(13073).lB,flowType:"authorization_code",buildAuthUrl:(a,b)=>{let c=new URLSearchParams({client_type:"extension",callback_url:b,redirect_uri:b});return`${a.authorizeUrl}?${c.toString()}`},exchangeToken:async(a,b,c)=>{try{let a=b,c=4-a.length%4;4!==c&&(a+="=".repeat(c));let d=Buffer.from(a,"base64").toString("utf-8"),e=d.lastIndexOf("}");if(-1===e)throw Error("No JSON found in decoded code");let f=JSON.parse(d.substring(0,e+1));return{access_token:f.accessToken,refresh_token:f.refreshToken,email:f.email,firstName:f.firstName,lastName:f.lastName,expires_at:f.expiresAt}}catch(f){let d=await fetch(a.tokenExchangeUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"authorization_code",code:b,client_type:"extension",redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`Cline token exchange failed: ${a}`)}let e=await d.json();return{access_token:e.data?.accessToken||e.accessToken,refresh_token:e.data?.refreshToken||e.refreshToken,email:e.data?.userInfo?.email||"",expires_at:e.data?.expiresAt||e.expiresAt}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_at?Math.floor((new Date(a.expires_at).getTime()-Date.now())/1e3):3600,email:a.email,providerSpecificData:{firstName:a.firstName,lastName:a.lastName}})}},88913:(a,b,c)=>{c.d(b,{A:()=>f});var d=c(55511),e=c.n(d);let f={config:c(13073).aV,flowType:"device_code",requestDeviceCode:async a=>{let{buildKimiHeaders:b}=await Promise.resolve().then(c.bind(c,48991)),d=e().randomUUID(),f={"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",...b(d)},g=await fetch(a.deviceCodeUrl,{method:"POST",headers:f,body:new URLSearchParams({client_id:a.clientId})});if(!g.ok){let a=await g.text();throw Error(`Device code request failed: ${a}`)}let h=await g.json(),i=a.authorizeDeviceUrl||"https://www.kimi.com/code/authorize_device";return{device_code:h.device_code,user_code:h.user_code,verification_uri:h.verification_uri||i,verification_uri_complete:h.verification_uri_complete||`${i}?user_code=${h.user_code}`,expires_in:h.expires_in,interval:h.interval||5,_kimiDeviceId:d}},pollToken:async(a,b,d,e)=>{let f,{buildKimiHeaders:g}=await Promise.resolve().then(c.bind(c,48991)),h=e?._kimiDeviceId,i={"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",...g(h)},j=await fetch(a.tokenUrl,{method:"POST",headers:i,body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:device_code",client_id:a.clientId,device_code:b})});try{f=await j.json()}catch{f={error:"invalid_response",error_description:"non-json token response"}}return"authorization_pending"===f.error||"slow_down"===f.error?{ok:!0,data:f}:(f.access_token&&h&&(f._kimiDeviceId=h),{ok:j.ok||!!f.access_token||!!f.error,data:f})},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,providerSpecificData:{authMethod:"device_code",...a._kimiDeviceId?{deviceId:a._kimiDeviceId}:{}}})}},93695:(a,b,c)=>{c.d(b,{A:()=>e});var d=c(13073);let e={config:d.YT,flowType:"authorization_code",buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({client_id:a.clientId,response_type:"code",redirect_uri:b,scope:a.scopes.join(" "),state:c,access_type:"offline",prompt:"consent"});return`${a.authorizeUrl}?${d.toString()}`},exchangeToken:async(a,b,c)=>{let d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,client_secret:a.clientSecret,code:b,redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`Token exchange failed: ${a}`)}return await d.json()},postExchange:async a=>{let b={Authorization:`Bearer ${a.access_token}`,"Content-Type":"application/json","User-Agent":d.YT.loadCodeAssistUserAgent,"x-request-source":"local"},c=(0,d.cD)(),e=await fetch(`${d.YT.userInfoUrl}?alt=json`,{headers:{Authorization:`Bearer ${a.access_token}`,"x-request-source":"local"}}),f=e.ok?await e.json():{},g="",h="legacy-tier";try{let a=await fetch(d.YT.loadCodeAssistEndpoint,{method:"POST",headers:b,body:JSON.stringify({metadata:c})});if(a.ok){let b=await a.json();if(g=b.cloudaicompanionProject?.id||b.cloudaicompanionProject||"",Array.isArray(b.allowedTiers)){for(let a of b.allowedTiers)if(a.isDefault&&a.id){h=a.id.trim();break}}}}catch(a){console.log("Failed to load code assist:",a)}return g&&(async()=>{for(let a=0;a<10;a++){try{let a=await fetch(d.YT.onboardUserEndpoint,{method:"POST",headers:b,body:JSON.stringify({tierId:h,metadata:c})});if(a.ok){let b=await a.json();if(!0===b.done)break}}catch(a){break}await new Promise(a=>setTimeout(a,5e3))}})().catch(()=>{}),{userInfo:f,projectId:g}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope,email:b?.userInfo?.email,projectId:b?.projectId})}},98558:(a,b,c)=>{c.d(b,{A:()=>e});var d=c(13073);let e={config:d.Nu,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId,scope:a.scopes})});if(!b.ok){let a=await b.text();throw Error(`Device code request failed: ${a}`)}return await b.json()},pollToken:async(a,b)=>{let c,d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId,device_code:b,grant_type:"urn:ietf:params:oauth:grant-type:device_code"})});try{c=await d.json()}catch(a){c={error:"invalid_response",error_description:await d.text()}}return{ok:d.ok,data:c}},postExchange:async a=>{let b=await fetch(d.Nu.copilotTokenUrl,{headers:{Authorization:`Bearer ${a.access_token}`,Accept:"application/json","X-GitHub-Api-Version":d.Nu.apiVersion,"User-Agent":d.Nu.userAgent}}),c=b.ok?await b.json():{},e=await fetch(d.Nu.userInfoUrl,{headers:{Authorization:`Bearer ${a.access_token}`,Accept:"application/json","X-GitHub-Api-Version":d.Nu.apiVersion,"User-Agent":d.Nu.userAgent}});return{copilotToken:c,userInfo:e.ok?await e.json():{}}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,name:b?.userInfo?.login||b?.userInfo?.name,displayName:b?.userInfo?.name||b?.userInfo?.login,email:b?.userInfo?.email||null,providerSpecificData:{copilotToken:b?.copilotToken?.token,copilotTokenExpiresAt:b?.copilotToken?.expires_at,githubUserId:b?.userInfo?.id,githubLogin:b?.userInfo?.login,githubName:b?.userInfo?.name,githubEmail:b?.userInfo?.email}})}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
exports.id=653,exports.ids=[653],exports.modules={30906:(a,b,c)=>{"use strict";let d;c.d(b,{gR:()=>F,hT:()=>E,Pf:()=>D,GY:()=>C,sP:()=>G,Ir:()=>B,Mj:()=>A,iw:()=>y,EJ:()=>z,Ui:()=>J,Rj:()=>K,HO:()=>H,x8:()=>I});var e=c(77598),f=c.n(e),g=c(99129),h=c(88783),i=c(80700),j=c(19035),k=c(20055);async function l(a,b,c){let d=a.get(b)||a.set(b,{}).get(b),{alg:e}=c;if(void 0===d[e]){let a=await (0,h.x)(c,{...b,alg:e,ext:!0});if("public"!==a.type)throw new g.Dm("JSON Web Key Set members must be public keys");d[e]=a}return d[e]}function m(a){let b;try{b=structuredClone(a)}catch{}if(!(0,j.fV)(b))throw new g.Dm("JSON Web Key Set malformed");let c=new WeakMap;return Object.defineProperty(async(a,d)=>{let{alg:e,kid:f}={...a,...d?.header},h="string"==typeof e?i.p[e]:void 0;if(!h||h.secret)throw new g.T0('Unsupported "alg" value for a JSON Web Key Set');let j=b.keys.filter(a=>(function(a,b,c,d){let{kty:e,key_ops:f,ext:g,kid:h,alg:i,use:j,crv:l}=(0,k.Z)(a),m=Array.isArray(f)?[...f]:f;return(void 0===g||"boolean"==typeof g)&&(void 0===m||Array.isArray(m)&&m.every((a,b)=>"string"==typeof a&&m.indexOf(a)===b)&&m.includes("verify"))&&b.kty.includes(e)&&(void 0===d||"string"==typeof d&&d===h)&&(void 0===i?"AKP"!==e:c===i)&&(void 0===j||"sig"===j)&&(!b.crv||l===b.crv)})(a,h,e,f)),{0:m,length:n}=j;if(!n)throw new g.BT;if(1!==n){let a=new g.$4;throw a[Symbol.asyncIterator]=async function*(){for(let a of j)try{yield await l(c,a,h)}catch{}},a}return l(c,m,h)},"jwks",{value:()=>structuredClone(b)})}("u"<typeof navigator||!navigator.userAgent?.startsWith?.("Mozilla/5.0 "))&&(d="jose/v6.2.10");let n=Symbol();async function o(a,b,c,d=fetch){let e=await d(a,{method:"GET",signal:c,redirect:"manual",headers:b}).catch(a=>{if("TimeoutError"===a.name)throw new g.xb;throw a});if(200!==e.status)throw new g.i4("Expected 200 OK from the JSON Web Key Set HTTP response");try{return await e.json()}catch{throw new g.i4("Failed to parse the JSON Web Key Set HTTP response as JSON")}}let p=Symbol();function q(a,b){return Number.isFinite(a)&&Date.now()<a+b}function r(a,b,c){if(Number.isNaN(a))throw TypeError(`"${c}" option must not be NaN`);return"number"==typeof a?a:b}var s=c(17509),t=c(89718);let u="openid profile email",v="Sign in with OIDC";function w(a){return(a||"").trim().replace(/\/+$/,"")}function x(a){return(a||u).trim()||u}function y(a){let b=process.env.BASE_URL||process.env.NEXT_PUBLIC_BASE_URL||"";if(b)return w(b);let c=a?.headers?.get?.("x-forwarded-proto")||"",d=a?.headers?.get?.("x-forwarded-host")||a?.headers?.get?.("host")||"";if(d){let b=(c||new URL(a.url).protocol||"http:").replace(/:$/,"");return`${b}://${d}`.replace(/\/+$/,"")}return w(new URL(a.url).origin)}function z(a){return!!(w(a?.oidcIssuerUrl)&&(a?.oidcClientId||"").trim()&&(a?.oidcClientSecret||"").trim())}async function A(){let a=await (0,t.getSettings)();return["oidc","both"].includes(a.authMode)&&z(a)?{issuerUrl:w(a.oidcIssuerUrl),clientId:a.oidcClientId.trim(),clientSecret:a.oidcClientSecret.trim(),scopes:x(a.oidcScopes),loginLabel:(a.oidcLoginLabel||v).trim()||v}:null}async function B(a){let b=`${w(a)}/.well-known/openid-configuration`,c=await fetch(b,{cache:"no-store"});if(!c.ok)throw Error(`Failed to load OIDC discovery document from ${b}`);return await c.json()}function C(){let a=f().randomBytes(32).toString("base64url"),b=f().createHash("sha256").update(a).digest("base64url");return{verifier:a,challenge:b}}function D(){return f().randomBytes(16).toString("base64url")}function E(){return f().randomBytes(16).toString("base64url")}function F({authorizationEndpoint:a,clientId:b,redirectUri:c,scopes:d=u,state:e,nonce:f,codeChallenge:g}){let h=new URL(a);return h.searchParams.set("response_type","code"),h.searchParams.set("client_id",b),h.searchParams.set("redirect_uri",c),h.searchParams.set("scope",x(d)),h.searchParams.set("state",e),h.searchParams.set("nonce",f),h.searchParams.set("code_challenge",g),h.searchParams.set("code_challenge_method","S256"),h.toString()}async function G({tokenEndpoint:a,clientId:b,clientSecret:c,code:d,redirectUri:e,codeVerifier:f}){let g=new URLSearchParams({grant_type:"authorization_code",client_id:b,code:d,redirect_uri:e,code_verifier:f});c&&g.set("client_secret",c);let h=await fetch(a,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:g}),i=await h.json().catch(()=>({}));if(!h.ok)throw Error(i?.error_description||i?.error||`OIDC token exchange failed (${h.status})`);return i}async function H({tokenEndpoint:a,clientId:b,clientSecret:c,redirectUri:d}){if(!c)return{tested:!1,valid:null,message:"No client secret was provided, so secret validation was skipped."};let e=new URLSearchParams({grant_type:"authorization_code",client_id:b,client_secret:c,code:"__oidc_test_invalid_code__",redirect_uri:d,code_verifier:"__oidc_test_invalid_verifier__"}),f=await fetch(a,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:e}),g=await f.json().catch(()=>({})),h=(g?.error||"").toLowerCase(),i=g?.error_description||g?.error||"";return f.ok?{tested:!0,valid:!0,message:"Client secret was accepted by the token endpoint.",raw:g}:"invalid_client"===h||"unauthorized_client"===h||/client.*(invalid|failed|mismatch)/i.test(i)?{tested:!0,valid:!1,message:i||"Client secret is not valid.",raw:g}:"invalid_grant"===h||"invalid_code"===h||/grant|code/i.test(i)?{tested:!0,valid:!0,message:"Client secret was accepted; the token exchange failed only because the test authorization code is invalid.",raw:g}:{tested:!0,valid:null,message:i||`Token endpoint responded with ${f.status}`,raw:g}}async function I({idToken:a,issuer:b,audience:c,jwksUri:e,nonce:f}){let h=function(a){let b,c,e;if(!(a instanceof URL))throw TypeError("url must be an instance of URL");let f=new URL(a.href).href,h=(void 0)??{},i=h.timeoutDuration;if("number"==typeof i&&(!Number.isInteger(i)||i<0))throw TypeError('"timeoutDuration" option must be a non-negative integer');let k="number"==typeof i?i:5e3,l=r(h.cooldownDuration,3e4,"cooldownDuration"),s=r(h.cacheMaxAge,6e5,"cacheMaxAge"),t=new Headers(h.headers);d&&!t.has("User-Agent")&&t.set("User-Agent",d),t.has("accept")||t.set("accept","application/json, application/jwk-set+json");let u=h[n],v=h[p],w=0,x=0;if(v&&"object"==typeof v){let{uat:a,jwks:c}=v;q(a,s)&&(0,j.fV)(c)&&(b=a,e=m(c))}let y=async()=>{if(c&&("u">typeof WebSocketPair||"u">typeof navigator&&"Cloudflare-Workers"===navigator.userAgent||"u">typeof EdgeRuntime&&"vercel"===EdgeRuntime)&&(c=void 0),!c){let a=++w,d=c=o(f,t,AbortSignal.timeout(k),u).then(c=>{let d=m(c);if(a<=x)return;e=d;let f=Date.now();v&&(v.uat=f,v.jwks=c),b=f,x=a}).finally(()=>{c===d&&(c=void 0)})}await c};return Object.defineProperties(async(a,c)=>{e&&q(b,s)||await y();try{return await e(a,c)}catch(d){if(d instanceof g.BT&&!q(b,l))return await y(),e(a,c);throw d}},{coolingDown:{get:()=>q(b,l),enumerable:!0},fresh:{get:()=>q(b,s),enumerable:!0},reload:{value:y,enumerable:!0},reloading:{get:()=>!!c,enumerable:!0},jwks:{value:()=>e?.jwks(),enumerable:!0}})}(new URL(e)),{payload:i}=await (0,s.V)(a,h,{issuer:b,audience:c,nonce:f});return i}function J(a={}){return a.preferred_username||a.email||a.name||a.given_name||a.sub||"OIDC user"}function K(a={}){return a.email||""}},33792:(a,b,c)=>{"use strict";c.d(b,{Dc:()=>v,XH:()=>q,YK:()=>t,dY:()=>w,mx:()=>y,nz:()=>z,tm:()=>x});var d=c(8292),e=c(17509),f=c(34013),g=c(73024),h=c.n(g),i=c(76760),j=c.n(i),k=c(77598),l=c.n(k),m=c(49120),n=c(89718),o=c(77134);function p(){let a=process.env.INITIAL_PASSWORD;return"string"==typeof a?a.trim():""}function q(a){return!!(a?.password||p()||String(a?.oidcIssuerUrl||"").trim()&&String(a?.oidcClientId||"").trim()&&String(a?.oidcClientSecret||"").trim())||!!(a?.samlEntryPoint&&a?.samlCert)}let r=new Set(["change-me-to-a-long-random-secret","10router-default-secret-change-me","change-me-to-a-random-string","change-me"]),s=new TextEncoder().encode(function(){let a=process.env.JWT_SECRET;if(a){if(!r.has(a))return a;console.warn("[auth] JWT_SECRET is a known placeholder value — ignoring it. Leave JWT_SECRET unset (a random secret is generated to "+j().join(m.nJ,"jwt-secret")+") or set a long random value.")}let b=j().join(m.nJ,"jwt-secret");try{return h().readFileSync(b,"utf8").trim()}catch{}h().mkdirSync(m.nJ,{recursive:!0});let c=l().randomBytes(32).toString("hex");return h().writeFileSync(b,c,{mode:384}),(0,o.E)(b),c}());function t(a){let b="true"===process.env.AUTH_COOKIE_SECURE,c=String(a?.headers?.get?.("x-forwarded-proto")||"").split(",")[0].trim().toLowerCase();return b||"https"===c}async function u(a={}){let b=Math.floor(Date.now()/1e3);return new d.P({authenticated:!0,origIat:b,...a}).setProtectedHeader({alg:"HS256"}).setIssuedAt().setExpirationTime("7200s").sign(s)}async function v(a){if(!a)return!1;try{return await (0,e.V)(a,s),!0}catch{return!1}}async function w(a){if(!a)return null;try{let{payload:b}=await (0,e.V)(a,s);return b}catch{return null}}async function x(a,b,c={}){let d=await u(c);a.set("auth_token",d,{httpOnly:!0,secure:t(b),sameSite:"lax",path:"/",maxAge:7200})}async function y(a,b,c){try{let d,e,f="number"==typeof c?.iat?1e3*c.iat:0;if(!f)return!1;let g=(d="number"==typeof c?.origIat?c.origIat:null,e="number"==typeof c?.iat?c.iat:null,d??e);if(g&&Math.floor(Date.now()/1e3)-g>=2592e3||Date.now()-f<36e5)return!1;return await x(a,b,{...g?{origIat:g}:{},...c?.oidcName?{oidcName:c.oidcName}:{},...c?.oidcEmail?{oidcEmail:c.oidcEmail}:{},...c?.samlName?{samlName:c.samlName}:{},...c?.samlEmail?{samlEmail:c.samlEmail}:{},...c?.oidc?{oidc:!0}:{},...c?.saml?{saml:!0}:{}}),!0}catch{return!1}}async function z(a){if("string"!=typeof a||!a)return!1;let b=await (0,n.getSettings)(),c=b?.password;if(c)return f.Ay.compare(a,c);let d=p();return!!d&&a===d}},78335:()=>{},89718:(a,b,c)=>{"use strict";c.d(b,{Bf:()=>d.Bf,CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,K1:()=>d.K1,KJ:()=>d.KJ,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,OM:()=>d.OM,PX:()=>d.PX,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Um:()=>d.Um,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Yd:()=>d.Yd,ZO:()=>d.ZO,bI:()=>d.bI,c:()=>d.c,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,getSettings:()=>d.mt,h1:()=>d.h1,hj:()=>d.hj,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,r4:()=>d.r4,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,updateSettings:()=>d.Xx,uv:()=>d.uv,yF:()=>d.yF,yg:()=>d.yg,zP:()=>d.zP});var d=c(27274)},96487:()=>{}};
|
|
1
|
+
exports.id=653,exports.ids=[653],exports.modules={30906:(a,b,c)=>{"use strict";let d;c.d(b,{gR:()=>F,hT:()=>E,Pf:()=>D,GY:()=>C,sP:()=>G,Ir:()=>B,Mj:()=>A,iw:()=>y,EJ:()=>z,Ui:()=>J,Rj:()=>K,HO:()=>H,x8:()=>I});var e=c(77598),f=c.n(e),g=c(99129),h=c(88783),i=c(80700),j=c(19035),k=c(20055);async function l(a,b,c){let d=a.get(b)||a.set(b,{}).get(b),{alg:e}=c;if(void 0===d[e]){let a=await (0,h.x)(c,{...b,alg:e,ext:!0});if("public"!==a.type)throw new g.Dm("JSON Web Key Set members must be public keys");d[e]=a}return d[e]}function m(a){let b;try{b=structuredClone(a)}catch{}if(!(0,j.fV)(b))throw new g.Dm("JSON Web Key Set malformed");let c=new WeakMap;return Object.defineProperty(async(a,d)=>{let{alg:e,kid:f}={...a,...d?.header},h="string"==typeof e?i.p[e]:void 0;if(!h||h.secret)throw new g.T0('Unsupported "alg" value for a JSON Web Key Set');let j=b.keys.filter(a=>(function(a,b,c,d){let{kty:e,key_ops:f,ext:g,kid:h,alg:i,use:j,crv:l}=(0,k.Z)(a),m=Array.isArray(f)?[...f]:f;return(void 0===g||"boolean"==typeof g)&&(void 0===m||Array.isArray(m)&&m.every((a,b)=>"string"==typeof a&&m.indexOf(a)===b)&&m.includes("verify"))&&b.kty.includes(e)&&(void 0===d||"string"==typeof d&&d===h)&&(void 0===i?"AKP"!==e:c===i)&&(void 0===j||"sig"===j)&&(!b.crv||l===b.crv)})(a,h,e,f)),{0:m,length:n}=j;if(!n)throw new g.BT;if(1!==n){let a=new g.$4;throw a[Symbol.asyncIterator]=async function*(){for(let a of j)try{yield await l(c,a,h)}catch{}},a}return l(c,m,h)},"jwks",{value:()=>structuredClone(b)})}("u"<typeof navigator||!navigator.userAgent?.startsWith?.("Mozilla/5.0 "))&&(d="jose/v6.2.10");let n=Symbol();async function o(a,b,c,d=fetch){let e=await d(a,{method:"GET",signal:c,redirect:"manual",headers:b}).catch(a=>{if("TimeoutError"===a.name)throw new g.xb;throw a});if(200!==e.status)throw new g.i4("Expected 200 OK from the JSON Web Key Set HTTP response");try{return await e.json()}catch{throw new g.i4("Failed to parse the JSON Web Key Set HTTP response as JSON")}}let p=Symbol();function q(a,b){return Number.isFinite(a)&&Date.now()<a+b}function r(a,b,c){if(Number.isNaN(a))throw TypeError(`"${c}" option must not be NaN`);return"number"==typeof a?a:b}var s=c(17509),t=c(89718);let u="openid profile email",v="Sign in with OIDC";function w(a){return(a||"").trim().replace(/\/+$/,"")}function x(a){return(a||u).trim()||u}function y(a){let b=process.env.BASE_URL||process.env.NEXT_PUBLIC_BASE_URL||"";if(b)return w(b);let c=a?.headers?.get?.("x-forwarded-proto")||"",d=a?.headers?.get?.("x-forwarded-host")||a?.headers?.get?.("host")||"";if(d){let b=(c||new URL(a.url).protocol||"http:").replace(/:$/,"");return`${b}://${d}`.replace(/\/+$/,"")}return w(new URL(a.url).origin)}function z(a){return!!(w(a?.oidcIssuerUrl)&&(a?.oidcClientId||"").trim()&&(a?.oidcClientSecret||"").trim())}async function A(){let a=await (0,t.getSettings)();return["oidc","both"].includes(a.authMode)&&z(a)?{issuerUrl:w(a.oidcIssuerUrl),clientId:a.oidcClientId.trim(),clientSecret:a.oidcClientSecret.trim(),scopes:x(a.oidcScopes),loginLabel:(a.oidcLoginLabel||v).trim()||v}:null}async function B(a){let b=`${w(a)}/.well-known/openid-configuration`,c=await fetch(b,{cache:"no-store"});if(!c.ok)throw Error(`Failed to load OIDC discovery document from ${b}`);return await c.json()}function C(){let a=f().randomBytes(32).toString("base64url"),b=f().createHash("sha256").update(a).digest("base64url");return{verifier:a,challenge:b}}function D(){return f().randomBytes(16).toString("base64url")}function E(){return f().randomBytes(16).toString("base64url")}function F({authorizationEndpoint:a,clientId:b,redirectUri:c,scopes:d=u,state:e,nonce:f,codeChallenge:g}){let h=new URL(a);return h.searchParams.set("response_type","code"),h.searchParams.set("client_id",b),h.searchParams.set("redirect_uri",c),h.searchParams.set("scope",x(d)),h.searchParams.set("state",e),h.searchParams.set("nonce",f),h.searchParams.set("code_challenge",g),h.searchParams.set("code_challenge_method","S256"),h.toString()}async function G({tokenEndpoint:a,clientId:b,clientSecret:c,code:d,redirectUri:e,codeVerifier:f}){let g=new URLSearchParams({grant_type:"authorization_code",client_id:b,code:d,redirect_uri:e,code_verifier:f});c&&g.set("client_secret",c);let h=await fetch(a,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:g}),i=await h.json().catch(()=>({}));if(!h.ok)throw Error(i?.error_description||i?.error||`OIDC token exchange failed (${h.status})`);return i}async function H({tokenEndpoint:a,clientId:b,clientSecret:c,redirectUri:d}){if(!c)return{tested:!1,valid:null,message:"No client secret was provided, so secret validation was skipped."};let e=new URLSearchParams({grant_type:"authorization_code",client_id:b,client_secret:c,code:"__oidc_test_invalid_code__",redirect_uri:d,code_verifier:"__oidc_test_invalid_verifier__"}),f=await fetch(a,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:e}),g=await f.json().catch(()=>({})),h=(g?.error||"").toLowerCase(),i=g?.error_description||g?.error||"";return f.ok?{tested:!0,valid:!0,message:"Client secret was accepted by the token endpoint.",raw:g}:"invalid_client"===h||"unauthorized_client"===h||/client.*(invalid|failed|mismatch)/i.test(i)?{tested:!0,valid:!1,message:i||"Client secret is not valid.",raw:g}:"invalid_grant"===h||"invalid_code"===h||/grant|code/i.test(i)?{tested:!0,valid:!0,message:"Client secret was accepted; the token exchange failed only because the test authorization code is invalid.",raw:g}:{tested:!0,valid:null,message:i||`Token endpoint responded with ${f.status}`,raw:g}}async function I({idToken:a,issuer:b,audience:c,jwksUri:e,nonce:f}){let h=function(a){let b,c,e;if(!(a instanceof URL))throw TypeError("url must be an instance of URL");let f=new URL(a.href).href,h=(void 0)??{},i=h.timeoutDuration;if("number"==typeof i&&(!Number.isInteger(i)||i<0))throw TypeError('"timeoutDuration" option must be a non-negative integer');let k="number"==typeof i?i:5e3,l=r(h.cooldownDuration,3e4,"cooldownDuration"),s=r(h.cacheMaxAge,6e5,"cacheMaxAge"),t=new Headers(h.headers);d&&!t.has("User-Agent")&&t.set("User-Agent",d),t.has("accept")||t.set("accept","application/json, application/jwk-set+json");let u=h[n],v=h[p],w=0,x=0;if(v&&"object"==typeof v){let{uat:a,jwks:c}=v;q(a,s)&&(0,j.fV)(c)&&(b=a,e=m(c))}let y=async()=>{if(c&&("u">typeof WebSocketPair||"u">typeof navigator&&"Cloudflare-Workers"===navigator.userAgent||"u">typeof EdgeRuntime&&"vercel"===EdgeRuntime)&&(c=void 0),!c){let a=++w,d=c=o(f,t,AbortSignal.timeout(k),u).then(c=>{let d=m(c);if(a<=x)return;e=d;let f=Date.now();v&&(v.uat=f,v.jwks=c),b=f,x=a}).finally(()=>{c===d&&(c=void 0)})}await c};return Object.defineProperties(async(a,c)=>{e&&q(b,s)||await y();try{return await e(a,c)}catch(d){if(d instanceof g.BT&&!q(b,l))return await y(),e(a,c);throw d}},{coolingDown:{get:()=>q(b,l),enumerable:!0},fresh:{get:()=>q(b,s),enumerable:!0},reload:{value:y,enumerable:!0},reloading:{get:()=>!!c,enumerable:!0},jwks:{value:()=>e?.jwks(),enumerable:!0}})}(new URL(e)),{payload:i}=await (0,s.V)(a,h,{issuer:b,audience:c,nonce:f});return i}function J(a={}){return a.preferred_username||a.email||a.name||a.given_name||a.sub||"OIDC user"}function K(a={}){return a.email||""}},33792:(a,b,c)=>{"use strict";c.d(b,{Dc:()=>w,I_:()=>r,XH:()=>q,YK:()=>u,dY:()=>x,mx:()=>z,nz:()=>A,tm:()=>y});var d=c(8292),e=c(17509),f=c(34013),g=c(73024),h=c.n(g),i=c(76760),j=c.n(i),k=c(77598),l=c.n(k),m=c(49120),n=c(89718),o=c(77134);function p(){let a=process.env.INITIAL_PASSWORD;return"string"==typeof a?a.trim():""}function q(a){return!!p()||r(a)}function r(a){return!!(a?.password||String(a?.oidcIssuerUrl||"").trim()&&String(a?.oidcClientId||"").trim()&&String(a?.oidcClientSecret||"").trim())||!!(a?.samlEntryPoint&&a?.samlCert)}let s=new Set(["change-me-to-a-long-random-secret","10router-default-secret-change-me","change-me-to-a-random-string","change-me"]),t=new TextEncoder().encode(function(){let a=process.env.JWT_SECRET;if(a){if(!s.has(a))return a;console.warn("[auth] JWT_SECRET is a known placeholder value — ignoring it. Leave JWT_SECRET unset (a random secret is generated to "+j().join(m.nJ,"jwt-secret")+") or set a long random value.")}let b=j().join(m.nJ,"jwt-secret");try{return h().readFileSync(b,"utf8").trim()}catch{}h().mkdirSync(m.nJ,{recursive:!0});let c=l().randomBytes(32).toString("hex");return h().writeFileSync(b,c,{mode:384}),(0,o.E)(b),c}());function u(a){let b="true"===process.env.AUTH_COOKIE_SECURE,c=String(a?.headers?.get?.("x-forwarded-proto")||"").split(",")[0].trim().toLowerCase();return b||"https"===c}async function v(a={}){let b=Math.floor(Date.now()/1e3);return new d.P({authenticated:!0,origIat:b,...a}).setProtectedHeader({alg:"HS256"}).setIssuedAt().setExpirationTime("7200s").sign(t)}async function w(a){if(!a)return!1;try{return await (0,e.V)(a,t),!0}catch{return!1}}async function x(a){if(!a)return null;try{let{payload:b}=await (0,e.V)(a,t);return b}catch{return null}}async function y(a,b,c={}){let d=await v(c);a.set("auth_token",d,{httpOnly:!0,secure:u(b),sameSite:"lax",path:"/",maxAge:7200})}async function z(a,b,c){try{let d,e,f="number"==typeof c?.iat?1e3*c.iat:0;if(!f)return!1;let g=(d="number"==typeof c?.origIat?c.origIat:null,e="number"==typeof c?.iat?c.iat:null,d??e);if(g&&Math.floor(Date.now()/1e3)-g>=2592e3||Date.now()-f<36e5)return!1;return await y(a,b,{...g?{origIat:g}:{},...c?.oidcName?{oidcName:c.oidcName}:{},...c?.oidcEmail?{oidcEmail:c.oidcEmail}:{},...c?.samlName?{samlName:c.samlName}:{},...c?.samlEmail?{samlEmail:c.samlEmail}:{},...c?.oidc?{oidc:!0}:{},...c?.saml?{saml:!0}:{}}),!0}catch{return!1}}async function A(a){if("string"!=typeof a||!a)return!1;let b=await (0,n.getSettings)(),c=b?.password;if(c)return f.Ay.compare(a,c);let d=p();return!!d&&a===d}},78335:()=>{},89718:(a,b,c)=>{"use strict";c.d(b,{Bf:()=>d.Bf,CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,K1:()=>d.K1,KJ:()=>d.KJ,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,OM:()=>d.OM,PX:()=>d.PX,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Um:()=>d.Um,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Yd:()=>d.Yd,ZO:()=>d.ZO,bI:()=>d.bI,c:()=>d.c,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,getSettings:()=>d.mt,h1:()=>d.h1,hj:()=>d.hj,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,r4:()=>d.r4,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,updateSettings:()=>d.Xx,uv:()=>d.uv,yF:()=>d.yF,yg:()=>d.yg,zP:()=>d.zP});var d=c(27274)},96487:()=>{}};
|