@jheavenknows/bluerouter 5.3.61 → 5.3.62
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 +12 -11
- package/app/.next-cli-build/build-manifest.json +2 -2
- package/app/.next-cli-build/prerender-manifest.json +28 -0
- package/app/.next-cli-build/routes-manifest.json +6 -0
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/ai-power-index/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/ai-power-index/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/ai-power-index/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/api-keys/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/api-keys/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/api-keys/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/audit-proxy/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/audit-proxy/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/audit-proxy/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.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 +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/model-profiles/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/model-profiles/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/model-profiles/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cluster/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cluster/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/cluster/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.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/local-ai-report/page.js +2 -2
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/local-ai-report/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/local-ai-report/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personal/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personal/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personal/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovider/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovider/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovider/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovidermonitor/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovidermonitor/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalcloudprovidermonitor/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalquota/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalquota/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/personalquota/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.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/prompt-logs/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/prompt-logs/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/prompt-logs/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/provider-health/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +1 -1
- 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/providers/stt/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/stt/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/stt/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/tts/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/tts/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/tts/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/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/resource-monitor/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/resource-monitor/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/resource-monitor/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/routing-topology/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/routing-topology/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/routing-topology/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/pricing/page.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/pricing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.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 +1 -1
- package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/_global-error.html +1 -1
- package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/_global-error.segments/_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 +5 -5
- package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/api/audit-proxy/ca/route.js +1 -1
- package/app/.next-cli-build/server/app/api/audit-proxy/ca/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/audit-proxy/route.js +2 -2
- package/app/.next-cli-build/server/app/api/audit-proxy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/ldap/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/ldap/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/ldap/users/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/ldap/users/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/auth/login/route.js +2 -2
- 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/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/view-mode/route.js +1 -1
- package/app/.next-cli-build/server/app/api/auth/view-mode/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/branding/[asset]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/branding/[asset]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/branding/route.js +1 -1
- package/app/.next-cli-build/server/app/api/branding/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/branding/upload/route.js +1 -1
- package/app/.next-cli-build/server/app/api/branding/upload/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-model-profiles/cloud-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-model-profiles/cloud-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-model-profiles/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-model-profiles/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +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/autostart/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/autostart/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/prompt-log-db/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/prompt-log-db/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/root-ca/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/root-ca/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 +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +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 +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
- 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/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/hermes-settings/route.js +2 -2
- 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 +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cli-tools/qwen-settings/route.js +2 -2
- package/app/.next-cli-build/server/app/api/cli-tools/qwen-settings/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/config/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/config/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/heartbeat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/heartbeat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/[id]/command/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/[id]/command/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/peers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/snapshot/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/snapshot/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/sync/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/sync/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/cluster/test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/cluster/test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/combos/[id]/route.js +2 -2
- 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/dashboard/ai-power-index/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/ai-power-index/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/ai-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/ai-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/analyze/route.js +2 -2
- package/app/.next-cli-build/server/app/api/dashboard/analytics/analyze/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/analytics/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/combos/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/combos/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/endpoint/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/endpoint/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/local-ai-report/route.js +2 -2
- package/app/.next-cli-build/server/app/api/dashboard/local-ai-report/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/options/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/options/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/prompt-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/routing-topology/config/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/routing-topology/config/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/routing-topology/live/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/routing-topology/live/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/routing-topology/route.js +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/routing-topology/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/dashboard/token-saver/route.js +2 -2
- package/app/.next-cli-build/server/app/api/dashboard/token-saver/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/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]/caveman-test/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/caveman-test/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/keys/route.js +2 -2
- 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 +1 -1
- package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +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 +2 -2
- 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/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/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/codex/import-token/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/grok-cli/device-code/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/grok-cli/device-code/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/grok-cli/poll/route.js +1 -1
- package/app/.next-cli-build/server/app/api/oauth/grok-cli/poll/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +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/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/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/personal-cloud-providers/[id]/api-key-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/api-key-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/import-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/import-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/models/[...routeModel]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/models/[...routeModel]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/move/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/move/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/usage/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/[id]/usage/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/client/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/client/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/monitor/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/monitor/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/permissions/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/permissions/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/routing/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/routing/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/shares/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/shares/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/visibility/route.js +1 -1
- package/app/.next-cli-build/server/app/api/personal-cloud-providers/visibility/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pricing/catalog/route.js +2 -2
- package/app/.next-cli-build/server/app/api/pricing/catalog/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pricing/recalculate/route.js +1 -1
- package/app/.next-cli-build/server/app/api/pricing/recalculate/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
- package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-health/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-health/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/openai-compatible/manage/route.js +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/openai-compatible/manage/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/provider-nodes/route.js +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 +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +1 -1
- package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/[id]/route.js +2 -2
- package/app/.next-cli-build/server/app/api/resource-monitor/[id]/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/ai-models/route.js +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/ai-models/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/analyze/route.js +2 -2
- package/app/.next-cli-build/server/app/api/resource-monitor/analyze/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/history/route.js +2 -2
- package/app/.next-cli-build/server/app/api/resource-monitor/history/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/resource-monitor/route.js +3 -3
- package/app/.next-cli-build/server/app/api/resource-monitor/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/settings/database/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 +2 -2
- 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 +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-login/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-login/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-start-daemon/route.js +1 -1
- package/app/.next-cli-build/server/app/api/tunnel/tailscale-start-daemon/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/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/providers/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/usage/stream/route.js +1 -1
- package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/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 +1 -1
- package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/api/v1/messages/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/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/restart/route.js +1 -1
- package/app/.next-cli-build/server/app/api/version/restart/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 +5 -5
- package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/!KGRhc2hib2FyZCk/dashboard/ai-power-index/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/ai-power-index.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/api-keys.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/api-keys.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/!KGRhc2hib2FyZCk/dashboard/api-keys/__PAGE__.segment.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_full.segment.rsc +10 -10
- package/app/.next-cli-build/server/app/dashboard/api-keys.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +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/model-profiles.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/model-profiles/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/cli-tools/model-profiles.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +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/cluster.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/cluster.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/!KGRhc2hib2FyZCk/dashboard/cluster/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/cluster.segments/_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/local-ai-report.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/local-ai-report.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/local-ai-report.segments/!KGRhc2hib2FyZCk/dashboard/local-ai-report/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/local-ai-report.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/local-ai-report.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/logs.html +1 -0
- package/app/.next-cli-build/server/app/dashboard/logs.meta +36 -0
- package/app/.next-cli-build/server/app/dashboard/logs.rsc +26 -0
- package/app/.next-cli-build/server/app/dashboard/logs.segments/_full.segment.rsc +26 -0
- package/app/.next-cli-build/server/app/dashboard/logs.segments/_tree.segment.rsc +4 -0
- 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/personal.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/personal.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/personal.segments/!KGRhc2hib2FyZCk/dashboard/personal/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/personal.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/personal.segments/_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/prompt-logs.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/!KGRhc2hib2FyZCk/dashboard/prompt-logs/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/prompt-logs.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/provider-health.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/provider-health.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/!KGRhc2hib2FyZCk/dashboard/provider-health/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/provider-health.segments/_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/stt.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/stt.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers/stt.segments/!KGRhc2hib2FyZCk/dashboard/providers/stt/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers/stt.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers/stt.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/providers/tts.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/providers/tts.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers/tts.segments/!KGRhc2hib2FyZCk/dashboard/providers/tts/__PAGE__.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers/tts.segments/_full.segment.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/providers/tts.segments/_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/quota.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/quota.rsc +9 -9
- package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +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/resource-monitor.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/!KGRhc2hib2FyZCk/dashboard/resource-monitor/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/resource-monitor.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/routing-topology.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/routing-topology.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/routing-topology.segments/!KGRhc2hib2FyZCk/dashboard/routing-topology/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/routing-topology.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/routing-topology.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
- package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
- package/app/.next-cli-build/server/app/dashboard/skills.rsc +8 -8
- package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +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 +7 -7
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +7 -7
- package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_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 +5 -5
- package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing/page.js +1 -1
- package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
- package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
- package/app/.next-cli-build/server/app/landing.html +1 -1
- package/app/.next-cli-build/server/app/landing.rsc +5 -5
- package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +5 -5
- package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +5 -5
- 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 +6 -6
- package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +6 -6
- package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
- package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +6 -6
- 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 +12 -11
- package/app/.next-cli-build/server/chunks/3958.js +3 -3
- package/app/.next-cli-build/server/chunks/4594.js +1 -0
- package/app/.next-cli-build/server/chunks/4746.js +1 -1
- package/app/.next-cli-build/server/chunks/4790.js +2 -2
- package/app/.next-cli-build/server/chunks/5210.js +9 -9
- package/app/.next-cli-build/server/chunks/6328.js +1 -1
- package/app/.next-cli-build/server/chunks/6811.js +1 -1
- package/app/.next-cli-build/server/chunks/6992.js +1 -1
- package/app/.next-cli-build/server/chunks/7142.js +1 -0
- package/app/.next-cli-build/server/chunks/7639.js +1 -1
- package/app/.next-cli-build/server/chunks/8352.js +1 -1
- package/app/.next-cli-build/server/chunks/8640.js +1 -1
- package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
- package/app/.next-cli-build/server/pages/404.html +1 -1
- package/app/.next-cli-build/server/pages/500.html +1 -1
- package/app/.next-cli-build/server/prefetch-hints.json +24 -0
- package/app/.next-cli-build/static/OvJK_UdNOS0vJSr9JO4J4/_buildManifest.js +1 -0
- package/app/.next-cli-build/static/chunks/{5263-b499ff68622ea287.js → 5263-5edbd7b3aa9dfb9e.js} +1 -1
- package/app/.next-cli-build/static/chunks/{5497-01cab2b16982f47b.js → 5497-a3cadef0038fbc54.js} +2 -2
- package/app/.next-cli-build/static/chunks/{5478-b8434ac09db5465f.js → 9705-9912c0535c058c02.js} +1 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-20db329e00f2d625.js +1 -0
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/prompt-logs/page-a3741fba3051df50.js +1 -0
- package/app/.next-cli-build/static/chunks/app/_global-error/page-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/audit-proxy/ca/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/audit-proxy/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/ldap/test/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/ldap/users/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/login/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/auth/view-mode/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/branding/[asset]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/branding/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/branding/upload/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-model-profiles/cloud-models/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-model-profiles/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/autostart/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/prompt-log-db/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/root-ca/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/qwen-settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/config/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/heartbeat/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/peers/[id]/command/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/peers/[id]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/peers/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/snapshot/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/sync/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/cluster/test/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/combos/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/ai-power-index/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/ai-models/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/analyze/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/combos/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/endpoint/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/local-ai-report/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/[id]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/options/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/routing-topology/config/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/routing-topology/live/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/routing-topology/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/dashboard/token-saver/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/health/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/init/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/caveman-test/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/rotate/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/keys/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/locale/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/device-code/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/poll/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/api-key-models/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/import-models/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/models/[...routeModel]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/move/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/usage/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/client/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/monitor/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/permissions/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/routing/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/shares/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/visibility/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pricing/catalog/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pricing/recalculate/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-health/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/openai-compatible/manage/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/[id]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/ai-models/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/analyze/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/history/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/settings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tags/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-login/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-start-daemon/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/restart/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/app/page-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-a48c4c9356e97886.js +1 -0
- package/app/.next-cli-build/static/css/{a242477e315442ed.css → d235ea8456abe03c.css} +1 -1
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/{upgrade-5.3.57-to-5.3.58-5.3.58-20260823-092724 → upgrade-5.3.59-to-5.3.60-5.3.60-20260823-094446}/data.sqlite +0 -0
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/backups/upgrade-5.3.59-to-5.3.60-5.3.60-20260823-094447/data.sqlite +0 -0
- package/app/cli/.build-home/AppData/Roaming/bluerouter/db/data.sqlite +0 -0
- package/app/package.json +1 -1
- package/package.json +1 -1
- package/app/.next-cli-build/server/chunks/7859.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-29077eb857ddaa6b.js +0 -1
- package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/prompt-logs/page-6b922c193b4831e7.js +0 -1
- package/app/.next-cli-build/static/chunks/app/_global-error/page-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/audit-proxy/ca/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/audit-proxy/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/ldap/test/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/ldap/users/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/login/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/status/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/auth/view-mode/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/branding/[asset]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/branding/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/branding/upload/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-model-profiles/cloud-models/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-model-profiles/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/autostart/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/prompt-log-db/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/root-ca/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cli-tools/qwen-settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/config/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/heartbeat/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/peers/[id]/command/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/peers/[id]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/peers/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/snapshot/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/sync/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/cluster/test/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/combos/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/ai-power-index/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/ai-models/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/analyze/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/analytics/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/combos/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/endpoint/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/local-ai-report/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/[id]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/options/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/prompt-logs/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/routing-topology/config/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/routing-topology/live/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/routing-topology/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/dashboard/token-saver/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/health/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/init/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/caveman-test/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/rotate/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/keys/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/locale/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/alias/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/availability/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/custom/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/models/test/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/device-code/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/poll/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/api-key-models/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/import-models/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/models/[...routeModel]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/move/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/[id]/usage/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/client/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/monitor/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/permissions/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/routing/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/shares/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/personal-cloud-providers/visibility/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pricing/catalog/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pricing/recalculate/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/pricing/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-health/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/openai-compatible/manage/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/client/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/[id]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/ai-models/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/analyze/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/history/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/resource-monitor/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/database/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/settings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/shutdown/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tags/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/load/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/save/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/send/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-login/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-start-daemon/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/history/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/models/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/search/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/restart/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/api/version/update/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/app/page-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-61d53eae35c05114.js +0 -1
- package/app/.next-cli-build/static/iuOIGTLoCuoWiJFqIZcvJ/_buildManifest.js +0 -1
- /package/app/.next-cli-build/static/{iuOIGTLoCuoWiJFqIZcvJ → OvJK_UdNOS0vJSr9JO4J4}/_ssgManifest.js +0 -0
|
@@ -36,4 +36,4 @@ wire_api = "responses"
|
|
|
36
36
|
[profiles.fast]
|
|
37
37
|
model = "${c||d||"programmer-fast"}"
|
|
38
38
|
model_provider = "bluerouter"`}({baseUrl:bM,codingModel:bZ.codingModel,fastModel:bZ.fastModel}):"",b_=bj?['npm install -g @openai/codex\ncodex --version\nmkdir $env:USERPROFILE\\.codex -Force\n$utf8NoBom = New-Object System.Text.UTF8Encoding $false\n[System.IO.File]::WriteAllText("$env:USERPROFILE\\.codex\\config.toml", @\'',b$,"'@, $utf8NoBom)",`$env:OPENAI_API_KEY = "${bj.key}"`,`setx OPENAI_API_KEY "${bj.key}"`,"cd D:\\path\\to\\your-project\ncodex"].join("\n"):"",b0=bl?l(bl,bO):{codingModel:bO||"YOUR_MODEL",fastModel:bO||"YOUR_MODEL"},b1=bl?function({baseUrl:a,apiKey:b,codingModel:c,fastModel:d}){let e=c||"programmer",f=d||e||"programmer-fast",g=a||"https://models-gateway.example.com/v1";return JSON.stringify({env:{OPENAI_API_KEY:b||"sk-xxxxx"},security:{auth:{selectedType:"openai"}},model:{name:e},modelProviders:{openai:[{id:e,name:e,envKey:"OPENAI_API_KEY",baseUrl:g,generationConfig:{timeout:12e4,maxRetries:2,contextWindowSize:12e4,samplingParams:{temperature:.2}}},{id:f,name:f,envKey:"OPENAI_API_KEY",baseUrl:g,generationConfig:{timeout:6e4,maxRetries:2,reasoning:!1,contextWindowSize:12e4,samplingParams:{temperature:.2,max_tokens:4096}}}]}},null,2)}({baseUrl:bL,apiKey:bl.key,codingModel:b0.codingModel,fastModel:b0.fastModel}):"",b2=bl?['npm install -g @qwen-code/qwen-code\nqwen --version\nmkdir $env:USERPROFILE\\.qwen -Force\n$utf8NoBom = New-Object System.Text.UTF8Encoding $false\n[System.IO.File]::WriteAllText("$env:USERPROFILE\\.qwen\\settings.json", @\'',b1,"'@, $utf8NoBom)",`$env:OPENAI_API_KEY = "${bl.key}"`,`$env:OPENAI_BASE_URL = "${bL}"`,`$env:OPENAI_MODEL = "${b0.codingModel}"`,`setx OPENAI_API_KEY "${bl.key}"`,`setx OPENAI_BASE_URL "${bL}"`,`setx OPENAI_MODEL "${b0.codingModel}"`,"cd D:\\path\\to\\your-project\nqwen"].join("\n"):"",b3=(0,e.useMemo)(()=>{let a=new Map;for(let b of R){let c=j(b.username||b.email||b.userPrincipalName||b.sAMAccountName);c&&a.set(c,{id:c,label:`${b.displayName||b.username||c}${b.email?` \xb7 ${b.email}`:""}`})}for(let b of o){let c=j(b.ownerUser||b.createdByUser);c&&!a.has(c)&&a.set(c,{id:c,label:c})}return bE&&!a.has(bE)&&a.set(bE,{id:bE,label:`${bE} (t\xf4i)`}),[...a.values()].sort((a,b)=>a.label.localeCompare(b.label))},[R,o,bE]),b4=(c=k(_),m=k(Z),!(c.length===m.length&&c.every((a,b)=>a===m[b]))),b5=X||!F.trim()||0===Z.length||bK,b6=!!bp||"all"!==br,b7=async()=>{z(!0),C("");try{let a=new URLSearchParams;a.set("page",String(bt)),a.set("pageSize",String(bv)),bp&&a.set("q",bp),"all"!==br&&a.set("status",br);let b=await fetch(`/api/keys?${a.toString()}`,{cache:"no-store"}),c=await b.json().catch(()=>({}));if(!b.ok)throw Error(c.error||"Kh\xf4ng tải được danh s\xe1ch API keys");let d=c.keys||[],e=c.pagination||{page:bt,pageSize:bv,total:d.length,totalAll:d.length,totalPages:1,search:bp,status:br};if(0===d.length&&Number(e.total||0)>0&&bt>1)return void bu(Math.max(1,Number(e.totalPages||1)));let f=k(c.apiKeyDefaultModels||(c.apiKeyDefaultModel?[c.apiKeyDefaultModel]:[]));p(d),by(e),aY(c.apiKeyTotal??e.totalAll??e.total??d.length);let g=r(c.apiKeyDefaultPolicy||i,i);$(f),aa(f),ae(g),ag(g),aU(c.apiKeyLimit??5),aW(c.apiKeyCount??e.totalAll??d.length),"number"==typeof c.globalApiKeyLimit&&c.globalApiKeyLimit>0&&(a$(c.globalApiKeyLimit),a0(String(c.globalApiKeyLimit))),c.apiKeyLimitOverrides&&"object"==typeof c.apiKeyLimitOverrides&&a4(c.apiKeyLimitOverrides),aQ(!0===c.globalCavemanEnabled),aS(c.globalCavemanLevel||"full")}catch(a){C(a.message||"Kh\xf4ng tải được danh s\xe1ch API keys")}finally{z(!1)}},b8=async()=>{if(!ar&&!at){au(!0);try{let[a,b,c]=await Promise.allSettled([bF?fetch("/api/providers",{cache:"no-store"}):Promise.resolve(null),fetch("/api/personal-cloud-providers",{cache:"no-store"}),fetch("/api/models/alias",{cache:"no-store"})]),d=[],e=[];if("fulfilled"===a.status&&a.value?.ok){let b=await a.value.json().catch(()=>({}));d.push(...b.connections||[])}if("fulfilled"===b.status&&b.value.ok){let a=await b.value.json().catch(()=>({}));e.push(...a.connections||[])}if(ao(bF?[...d,...e]:e),"fulfilled"===c.status&&c.value.ok){let a=await c.value.json().catch(()=>({}));aq(a.aliases||{})}as(!0)}catch{}finally{au(!1)}}},b9=async(a=T)=>{if(bF){W(!0);try{let b=await fetch(`/api/auth/ldap/users?q=${encodeURIComponent(a||"")}`,{cache:"no-store"}),c=await b.json().catch(()=>({}));b.ok&&S(c.users||[])}catch{}finally{W(!1)}}},ca=async()=>{if(bF&&0!==_.length){ac(!0),C("");try{let a=await fetch("/api/keys",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiKeyDefaultModels:_})}),b=await a.json().catch(()=>({}));if(!a.ok)throw Error(b.error||"Kh\xf4ng lưu được default models");let c=k(b.apiKeyDefaultModels||(b.apiKeyDefaultModel?[b.apiKeyDefaultModel]:[])),d=r(b.apiKeyDefaultPolicy||i,i);$(c),aa(c),ae(d),ag(d)}catch(a){C(a.message||"Kh\xf4ng lưu được default models")}finally{ac(!1)}}},cb=a=>{"number"==typeof a?.globalApiKeyLimit&&a.globalApiKeyLimit>0&&(a$(a.globalApiKeyLimit),a0(String(a.globalApiKeyLimit))),a?.apiKeyLimitOverrides&&"object"==typeof a.apiKeyLimitOverrides&&a4(a.apiKeyLimitOverrides)},cc=async()=>{if(!bF)return;let a=Number.parseInt(a_,10);if(!Number.isFinite(a)||a<=0)return void C("Giới hạn global phải l\xe0 số nguy\xean dương.");a2(!0),C("");try{let b=await fetch("/api/keys",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({userApiKeyLimit:a})}),c=await b.json().catch(()=>({}));if(!b.ok)throw Error(c.error||"Kh\xf4ng lưu được global API key limit");cb(c)}catch(a){C(a.message||"Kh\xf4ng lưu được global API key limit")}finally{a2(!1)}},cd=async a=>{if(!bF)return!1;ba(!0),C("");try{let b=await fetch("/api/keys",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({userApiKeyLimitOverrides:a})}),c=await b.json().catch(()=>({}));if(!b.ok)throw Error(c.error||"Kh\xf4ng lưu được per-user override");return cb(c),!0}catch(a){return C(a.message||"Kh\xf4ng lưu được per-user override"),!1}finally{ba(!1)}},ce=async()=>{let a=j(a5),b=Number.parseInt(a7,10);if(!a)return void C("Nhập username/email cần override.");if(!Number.isFinite(b)||b<=0)return void C("Giới hạn per-user phải l\xe0 số nguy\xean dương.");let c={...a3,[a]:b};await cd(c)&&(a6(""),a8(""))},cf=async a=>{let b={...a3};delete b[a],await cd(b)},cg=async a=>{if(!bF)return;let b=r(a,i);ai(!0),C("");try{let a=await fetch("/api/keys",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({apiKeyDefaultPolicy:b})}),c=await a.json().catch(()=>({}));if(!a.ok)throw Error(c.error||"Kh\xf4ng lưu được default policy");let d=r(c.apiKeyDefaultPolicy||b,i);ae(d),ag(d),ak(!1)}catch(a){C(a.message||"Kh\xf4ng lưu được default policy")}finally{ai(!1)}},ch=async()=>{if(F.trim()){if(0===Z.length)return void C("Admin cần cấu h\xecnh default models trước khi tạo API key.");if(bK)return void C(`Mỗi user chỉ được tạo tối đa ${bG} API keys.
|
|
39
|
-
C\xf3 thể d\xf9ng n\xfat Đổi key để xoay sang key mới m\xe0 kh\xf4ng cần x\xf3a/tạo lại.`);Y(!0),C("");try{let a=bF?j(K||H||bE):void 0,b=await fetch("/api/keys",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:F.trim(),ownerUser:a})}),c=await b.json().catch(()=>({}));if(!b.ok)throw Error(c.error||"Kh\xf4ng tạo được API key");O(c.key),G(""),M(""),E(!1),bu(1),await b7()}catch(a){C(a.message||"Kh\xf4ng tạo được API key")}finally{Y(!1)}}},ci=async(a,b)=>{let c=await fetch(`/api/keys/${a}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)}),d=await c.json().catch(()=>({}));return c.ok?(await b7(),!0):(C(d.error||"Kh\xf4ng cập nhật được API key"),!1)},cj=async()=>{if(!av)return;let a=k(ax);if(0===a.length)return void C("H\xe3y chọn \xedt nhất một model trước khi lưu quyền truy cập API key.");aA(!0),C("");try{await ci(av.id,{allowedModels:a})&&(aw(null),ay([]))}finally{aA(!1)}},ck=async a=>{if(aB){aG(!0),C("");try{await ci(aB.id,{limits:r(a)})&&(aC(null),aE(i))}finally{aG(!1)}}},cl=async()=>{if(aB){aG(!0),C("");try{await ci(aB.id,{limits:{}})&&(aC(null),aE(i))}finally{aG(!1)}}},cm=async a=>{if(!aH)return!1;aO(!0),C("");try{let b=await fetch(`/api/keys/${aH.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),c=await b.json().catch(()=>({}));if(!b.ok)throw Error(c.error||"Kh\xf4ng lưu được cấu h\xecnh Caveman");return await b7(),aI(null),!0}catch(b){let a=b?.message||"Kh\xf4ng lưu được cấu h\xecnh Caveman";throw C(a),Error(a)}finally{aO(!1)}};return(0,d.jsxs)("div",{className:"space-y-6",children:[(0,d.jsxs)("div",{className:"flex flex-col gap-3 lg:flex-row lg:items-center lg:justify-between",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h1",{className:"text-2xl font-semibold text-text-main",children:"Quản l\xfd API Keys"}),(0,d.jsx)("p",{className:"mt-1 text-sm text-text-muted",children:bF?"Bảng quản trị API key c\xf3 t\xecm kiếm, lọc trạng th\xe1i v\xe0 ph\xe2n trang để kh\xf4ng render qu\xe1 nhiều key c\xf9ng l\xfac.":`Bạn c\xf3 thể quản l\xfd API key của t\xe0i khoản m\xecnh. Mỗi user thường sở hữu tối đa ${bG} API keys. D\xf9ng n\xfat Đổi key để xoay sang key mới m\xe0 kh\xf4ng cần x\xf3a/tạo lại.`})]}),(0,d.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,d.jsx)(f.$n,{variant:"outline",onClick:b7,disabled:u,children:u?"Đang tải...":"Refresh"}),(0,d.jsx)(f.$n,{onClick:()=>{E(!0),!H&&bE&&J(bE)},disabled:bK,children:"Tạo API Key"})]})]}),A?(0,d.jsx)("div",{className:"rounded-xl border border-red-500/30 bg-red-500/10 p-3 text-sm text-red-600 whitespace-pre-line",children:A}):null,(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-3",children:[(0,d.jsx)(x,{label:"Tổng API keys",value:bI,hint:bF?"To\xe0n hệ thống":`${bH}/${bG} key của bạn`}),(0,d.jsx)(x,{label:"Đang hiển thị",value:bJ,hint:b6?"Theo bộ lọc hiện tại":"Kh\xf4ng filter"}),(0,d.jsx)(x,{label:"Page size",value:bv,hint:"Chỉ tải số d\xf2ng của trang hiện tại"})]}),bF?null:(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"font-medium",children:"Giới hạn API key theo user"}),(0,d.jsxs)("p",{className:"text-sm text-text-muted",children:["T\xe0i khoản của bạn đang c\xf3 ",bH,"/",bG," API keys. Key bị disabled vẫn được t\xednh v\xe0o giới hạn."]})]}),(0,d.jsx)("span",{className:"rounded-full border border-border bg-surface px-3 py-1 text-sm",children:bK?"Đ\xe3 đạt giới hạn":"C\xf2n c\xf3 thể tạo th\xeam"})]})}),(0,d.jsxs)("div",{className:"grid gap-4 xl:grid-cols-2",children:[(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"font-medium",children:"Default models cho API key mới"}),(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"API key mới sẽ mặc định được d\xf9ng c\xe1c model n\xe0y. Cần cấu h\xecnh \xedt nhất một default model trước khi tạo API key."})]}),(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[Z.length>0?(0,d.jsx)(s,{models:Z,emptyLabel:"Chưa cấu h\xecnh default models"}):(0,d.jsx)("span",{className:"text-sm text-red-600",children:"Chưa cấu h\xecnh default models"}),bF?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(f.$n,{variant:"outline",size:"sm",onClick:()=>{am(!0),b8()},children:_.length>0?`Đ\xe3 chọn ${_.length} model`:"Chọn default models..."}),(0,d.jsx)(f.$n,{size:"sm",onClick:ca,disabled:!b4||ab||0===_.length,children:ab?"Đang lưu...":"Lưu"})]}):null]}),bF?(0,d.jsx)("p",{className:"text-xs text-text-muted",children:at?"Đang tải danh s\xe1ch model...":"Danh s\xe1ch model chỉ tải khi mở bộ chọn để trang load nhanh hơn."}):null]})}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"font-medium",children:"Default policy cho API key mới"}),(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"Policy n\xe0y được tự động g\xe1n cho key mới. Policy ri\xeang từng key vẫn c\xf3 thể override sau khi tạo."})]}),bF?(0,d.jsx)(f.$n,{variant:"outline",size:"sm",onClick:()=>{ag(r(ad||i,i)),ak(!0)},children:"Chỉnh default policy"}):null]}),(0,d.jsx)(t,{limits:ad,showThinking:bF,showOutputLimit:bF})]})})]}),bF?(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"font-medium",children:"Giới hạn số API key cho mỗi user"}),(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"Global default \xe1p dụng cho mọi user thường. Per-user override sẽ ghi đ\xe8 global cho user cụ thể (nhập 0 hoặc bấm X\xf3a để bỏ override v\xe0 quay lại global)."})]}),(0,d.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-end",children:[(0,d.jsxs)("label",{className:"flex-1",children:[(0,d.jsx)("span",{className:"mb-1 block text-xs font-medium text-text-muted",children:"Global default (\xe1p dụng cho user kh\xf4ng c\xf3 override)"}),(0,d.jsx)("input",{type:"number",min:"1",value:a_,onChange:a=>a0(a.target.value),className:"w-full rounded-xl border border-border bg-background px-3 py-2 text-sm outline-none focus:border-primary"})]}),(0,d.jsx)(f.$n,{onClick:cc,disabled:a1||Number.parseInt(a_,10)===aZ,children:a1?"Đang lưu...":"Lưu global"})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border p-3",children:[(0,d.jsx)("div",{className:"text-sm font-medium",children:"Per-user override"}),(0,d.jsx)("p",{className:"mt-1 text-xs text-text-muted",children:"Ghi đ\xe8 global cho user cụ thể. Override sẽ \xe1p dụng lu\xf4n cả cho key hiện c\xf3 (chặn tạo key mới nếu vượt)."}),(0,d.jsxs)("div",{className:"mt-3 flex flex-col gap-2 sm:flex-row",children:[(0,d.jsx)("input",{value:a5,onChange:a=>a6(a.target.value),placeholder:"username hoặc email",className:"min-w-0 flex-1 rounded-xl border border-border bg-background px-3 py-2 text-sm outline-none focus:border-primary"}),(0,d.jsx)("input",{type:"number",min:"1",value:a7,onChange:a=>a8(a.target.value),placeholder:"Giới hạn key",className:"w-full rounded-xl border border-border bg-background px-3 py-2 text-sm outline-none focus:border-primary sm:w-40"}),(0,d.jsx)(f.$n,{onClick:ce,disabled:a9,children:a9?"Đang lưu...":"Th\xeam / Cập nhật"})]}),0===Object.keys(a3).length?(0,d.jsxs)("div",{className:"mt-3 rounded-xl border border-dashed border-border bg-surface p-3 text-xs text-text-muted",children:["Chưa c\xf3 user n\xe0o được override. Global = ",aZ," key."]}):(0,d.jsx)("div",{className:"mt-3 overflow-hidden rounded-xl border border-border",children:(0,d.jsxs)("table",{className:"min-w-full text-sm",children:[(0,d.jsx)("thead",{className:"bg-surface text-xs text-text-muted",children:(0,d.jsxs)("tr",{children:[(0,d.jsx)("th",{className:"px-3 py-2 text-left font-medium",children:"User"}),(0,d.jsx)("th",{className:"px-3 py-2 text-left font-medium",children:"Giới hạn"}),(0,d.jsx)("th",{className:"px-3 py-2 text-right font-medium",children:"H\xe0nh động"})]})}),(0,d.jsx)("tbody",{children:Object.entries(a3).sort(([a],[b])=>a.localeCompare(b)).map(([a,b])=>(0,d.jsxs)("tr",{className:"border-t border-border",children:[(0,d.jsx)("td",{className:"px-3 py-2 font-mono text-xs",children:a}),(0,d.jsx)("td",{className:"px-3 py-2",children:b}),(0,d.jsx)("td",{className:"px-3 py-2 text-right",children:(0,d.jsx)(f.$n,{size:"sm",variant:"ghost",disabled:a9,onClick:()=>cf(a),children:"X\xf3a"})})]},a))})]})})]})]})}):null,(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"font-medium",children:"Th\xf4ng tin API endpoint"}),(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"D\xf9ng API key b\xean dưới để gọi gateway theo chuẩn OpenAI-compatible. Endpoint lấy theo domain hiện tại của dashboard."})]}),(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-2",children:[(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Base URL"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bL})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Chat Completions"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bN})]})]}),(0,d.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,d.jsx)(f.$n,{variant:"outline",size:"sm",onClick:()=>bA(bL,"api-base-url"),children:"api-base-url"===bz?"Đ\xe3 copy Base URL":"Copy Base URL"}),(0,d.jsx)(f.$n,{variant:"outline",size:"sm",onClick:()=>bA(bN,"api-chat-endpoint"),children:"api-chat-endpoint"===bz?"Đ\xe3 copy Endpoint":"Copy Endpoint"})]})]})}),N?(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsx)("h3",{className:"font-medium",children:"Đ\xe3 tạo API key"}),(0,d.jsx)("pre",{className:"overflow-auto rounded-xl border border-border bg-surface p-3 text-sm",children:N}),(0,d.jsxs)("div",{className:"text-sm text-text-muted",children:["H\xe3y copy ngay. Key mới mặc định được d\xf9ng default models v\xe0 default policy đang cấu h\xecnh trong Dashboard, trừ khi admin chỉnh quyền model/policy.",(0,d.jsx)(s,{models:Z,emptyLabel:"default models"})]}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(f.$n,{size:"sm",onClick:()=>bA(N,"created"),children:"created"===bz?"Đ\xe3 copy":"Copy"}),(0,d.jsx)(f.$n,{size:"sm",variant:"ghost",onClick:()=>O(""),children:"Đ\xf3ng"})]})]})}):null,(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{className:"flex flex-col gap-3 xl:flex-row xl:items-end xl:justify-between",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"text-lg font-semibold text-text-main",children:"Danh s\xe1ch API keys"}),(0,d.jsx)("p",{className:"mt-1 text-sm text-text-muted",children:"T\xecm theo t\xean key, owner, model, id hoặc một phần API key. Backend chỉ trả về page hiện tại."})]}),(0,d.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center",children:[(0,d.jsx)("input",{value:bn,onChange:a=>bo(a.target.value),placeholder:"T\xecm API key, owner, model...",className:"w-full rounded-xl border border-border bg-background px-3 py-2 text-sm text-text-main outline-none focus:border-primary sm:w-80"}),(0,d.jsxs)("select",{value:br,onChange:a=>{bs(a.target.value),bu(1)},className:"rounded-xl border border-border bg-background px-3 py-2 text-sm text-text-main outline-none focus:border-primary",children:[(0,d.jsx)("option",{value:"all",children:"Tất cả trạng th\xe1i"}),(0,d.jsx)("option",{value:"active",children:"Chỉ key đang bật"}),(0,d.jsx)("option",{value:"inactive",children:"Chỉ key đ\xe3 tắt"})]}),b6?(0,d.jsx)(f.$n,{variant:"outline",size:"sm",onClick:()=>{bo(""),bq(""),bs("all"),bu(1)},children:"X\xf3a lọc"}):null]})]}),u?(0,d.jsx)("div",{className:"rounded-2xl border border-dashed border-border p-8 text-center text-sm text-text-muted",children:"Đang tải API keys..."}):0===o.length?(0,d.jsx)("div",{className:"rounded-2xl border border-dashed border-border p-8 text-center text-sm text-text-muted",children:b6?"Kh\xf4ng t\xecm thấy API key ph\xf9 hợp bộ lọc.":"Chưa c\xf3 API key n\xe0o."}):(0,d.jsx)(L,{keys:o,copied:bz,copy:bA,isAdmin:bF,globalCavemanEnabled:aP,globalCavemanLevel:aR,onToggleActive:(a,b)=>ci(a,{isActive:b}),onApiTest:be,onClaudeSettings:bg,onOpenCodeSettings:bi,onCodexSettings:bk,onQwenSettings:bm,onRename:(a,b)=>{let c=prompt("T\xean API key mới",b||"");c?.trim()&&ci(a,{name:c.trim()})},onRotate:a=>{a?.id&&Q({title:"Đổi API key",message:"Hệ thống sẽ tạo chuỗi API key mới cho record n\xe0y v\xe0 giữ nguy\xean t\xean, owner, model, policy. Key cũ sẽ hết hiệu lực ngay sau khi đổi.",onConfirm:async()=>{Q(null),C("");let b=await fetch(`/api/keys/${a.id}/rotate`,{method:"POST"}),c=await b.json().catch(()=>({}));if(!b.ok)return void C(c.error||"Kh\xf4ng đổi được API key");let d=c.rotatedKey||c.key?.key||"";d&&O(d),await b7()}})},onEditModels:a=>{aw(a),ay(k(a.allowedModels)),b8()},onEditPolicy:a=>{bF&&(aC(a),aE(q(a.limits)?r(a.limits):i))},onEditCaveman:aI,onShowCavemanInfo:aK,onCavemanTest:aM,onAssignOwner:(a,b)=>{if(!bF)return;let c=prompt("G\xe1n owner username/email",b||bE||"");null!==c&&ci(a,{ownerUser:j(c)})},onDelete:a=>{Q({title:"X\xf3a API Key",message:"Bạn chắc chắn muốn x\xf3a API key n\xe0y? Thao t\xe1c n\xe0y kh\xf4ng thể ho\xe0n t\xe1c.",onConfirm:async()=>{Q(null),(await fetch(`/api/keys/${a}`,{method:"DELETE"})).ok&&await b7()}})}}),(0,d.jsx)(y,{pagination:bx,pageSize:bv,onPageChange:bu,onPageSizeChange:a=>{bw(a),bu(1)},loading:u})]})}),(0,d.jsx)(f.aF,{isOpen:D,onClose:()=>E(!1),title:"Tạo API Key",size:"lg",children:(0,d.jsxs)("div",{className:"space-y-4",children:[0===Z.length?(0,d.jsx)("div",{className:"rounded-xl border border-red-500/30 bg-red-500/10 p-3 text-sm text-red-600",children:"Admin cần cấu h\xecnh default models trước khi tạo API key."}):bK?(0,d.jsxs)("div",{className:"rounded-xl border border-red-500/30 bg-red-500/10 p-3 text-sm text-red-600",children:["Bạn đ\xe3 đạt giới hạn ",bG," API keys. H\xe3y x\xf3a bớt key cũ trước khi tạo key mới."]}):(0,d.jsxs)("div",{className:"text-sm text-text-muted",children:["Key n\xe0y sẽ được tạo với quyền d\xf9ng default models v\xe0 default policy đang cấu h\xecnh trong Dashboard.",(0,d.jsx)(s,{models:Z})]}),(0,d.jsxs)("label",{className:"block",children:[(0,d.jsx)("span",{className:"mb-1 block text-xs font-medium text-text-muted",children:"T\xean API key"}),(0,d.jsx)("input",{value:F,onChange:a=>G(a.target.value),placeholder:"VD: VSCode, LibreChat, team-user",className:"w-full rounded-xl border border-border bg-background px-3 py-2 text-sm outline-none focus:border-primary"})]}),bF?(0,d.jsxs)("div",{className:"space-y-3 rounded-xl border border-border p-3",children:[(0,d.jsx)("div",{className:"text-sm font-medium",children:"Owner user"}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)("input",{value:T,onChange:a=>U(a.target.value),placeholder:"Nhập từ kh\xf3a rồi bấm Tải",className:"min-w-0 flex-1 rounded-xl border border-border bg-background px-3 py-2 text-sm outline-none focus:border-primary"}),(0,d.jsx)(f.$n,{variant:"outline",onClick:()=>b9(T),disabled:V,children:V?"Đang tải":"Tải LDAP"})]}),(0,d.jsxs)("select",{value:H,onChange:a=>J(a.target.value),className:"w-full rounded-xl border border-border bg-background px-3 py-2 text-sm text-text-main outline-none focus:border-primary",children:[(0,d.jsxs)("option",{value:bE||"",children:["G\xe1n cho t\xf4i (",bE||"local",")"]}),b3.map(a=>(0,d.jsx)("option",{value:a.id,children:a.label},a.id))]}),(0,d.jsx)("input",{value:K,onChange:a=>M(a.target.value),placeholder:"username hoặc email, kh\xf4ng bắt buộc",className:"w-full rounded-xl border border-border bg-background px-3 py-2 text-sm outline-none focus:border-primary"}),(0,d.jsx)("p",{className:"text-xs text-text-muted",children:"LDAP kh\xf4ng tự tải khi mở trang để giảm thời gian load. C\xf3 thể nhập owner thủ c\xf4ng hoặc nhập từ kh\xf3a rồi bấm Tải LDAP."})]}):(0,d.jsxs)("p",{className:"rounded-xl border border-border bg-surface p-3 text-sm text-text-muted",children:["Owner: ",bE||"user hiện tại"]}),(0,d.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,d.jsx)(f.$n,{variant:"ghost",onClick:()=>E(!1),children:"Hủy"}),(0,d.jsx)(f.$n,{onClick:ch,disabled:b5,children:X?"Đang tạo...":"Tạo"})]})]})}),(0,d.jsx)(f.aF,{isOpen:!!bd,onClose:()=>be(null),title:"API Test bằng curl Windows",size:"xl",children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"Lệnh dưới đ\xe2y gọi thử endpoint Chat Completions bằng API key đang chọn v\xe0 đ\xe3 nh\xfang sẵn Bearer token."}),(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-3",children:[(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"API Key"}),(0,d.jsx)("div",{className:"mt-1 text-sm",children:bd?.name||"API Key"})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Endpoint"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bN})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Model test"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bP})]})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"Lệnh curl cho Windows CMD"}),(0,d.jsx)("pre",{className:"overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:bS})]}),(0,d.jsx)("p",{className:"text-xs text-text-muted",children:"D\xe1n lệnh v\xe0o CMD hoặc Windows Terminal để test nhanh. Nếu domain dashboard chạy sau reverse proxy, endpoint sẽ d\xf9ng đ\xfang domain đang mở tr\xean tr\xecnh duyệt."}),(0,d.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,d.jsx)(f.$n,{variant:"ghost",onClick:()=>be(null),children:"Đ\xf3ng"}),(0,d.jsx)(f.$n,{onClick:()=>bA(bS,`api-test-curl-${bd?.id||"current"}`),children:bz===`api-test-curl-${bd?.id||"current"}`?"Đ\xe3 copy":"Copy lệnh curl"})]})]})}),(0,d.jsx)(f.aF,{isOpen:!!bf,onClose:()=>bg(null),title:"Claude Code Settings",size:"xl",children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("p",{className:"text-sm text-text-muted",children:["Copy nội dung JSON dưới đ\xe2y v\xe0o file ",(0,d.jsx)("span",{className:"font-mono",children:"%USERPROFILE%\\.claude\\settings.json"})," để Claude Code gọi qua gateway n\xe0y. Model coding d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:bT.codingModel}),"; model fast d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:bT.fastModel}),"."]}),(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-3",children:[(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"API Key"}),(0,d.jsx)("div",{className:"mt-1 text-sm",children:bf?.name||"API Key"})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Base URL"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bL})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Model"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bT.codingModel})]})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"settings.json"}),(0,d.jsx)("pre",{className:"max-h-[420px] overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:bU})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"C\xe0i v\xe0 chạy Claude Code CLI tr\xean Windows"}),(0,d.jsx)("pre",{className:"overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:bV})]}),(0,d.jsx)("div",{className:"rounded-xl border border-amber-500/30 bg-amber-500/10 p-3 text-xs text-amber-700 dark:text-amber-300",children:"Lưu \xfd: 2 d\xf2ng auto-compact/context window đ\xe3 được comment sẵn; chỉ uncomment khi d\xf9ng local model. Nếu c\xe0i bằng npm th\xec m\xe1y cần c\xe0i Node.js trước. Chạy Claude Code trong thư mục project, kh\xf4ng chạy trong C:\\WINDOWS\\system32. Nếu d\xf9ng model fast ri\xeang như programmer-fast th\xec API key n\xe0y cũng phải được ph\xe9p d\xf9ng model đ\xf3 trong cột Model."}),(0,d.jsxs)("div",{className:"flex flex-wrap justify-end gap-2",children:[(0,d.jsx)(f.$n,{variant:"ghost",onClick:()=>bg(null),children:"Đ\xf3ng"}),(0,d.jsx)(f.$n,{variant:"outline",onClick:()=>bA(bV,`claude-code-help-${bf?.id||"current"}`),children:bz===`claude-code-help-${bf?.id||"current"}`?"Đ\xe3 copy hướng dẫn":"Copy hướng dẫn"}),(0,d.jsx)(f.$n,{onClick:()=>bA(bU,`claude-code-settings-${bf?.id||"current"}`),children:bz===`claude-code-settings-${bf?.id||"current"}`?"Đ\xe3 copy settings":"Copy settings.json"})]})]})}),(0,d.jsx)(f.aF,{isOpen:!!bh,onClose:()=>bi(null),title:"OpenCode Settings",size:"xl",children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("p",{className:"text-sm text-text-muted",children:["Copy JSON dưới đ\xe2y v\xe0o file ",(0,d.jsx)("span",{className:"font-mono",children:"%APPDATA%\\opencode\\opencode.json"})," hoặc ",(0,d.jsx)("span",{className:"font-mono",children:"opencode.json"})," trong project. Model ch\xednh d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:bW.codingModel}),"; explorer/fast d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:bW.fastModel}),"."]}),(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-4",children:[(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"API Key"}),(0,d.jsx)("div",{className:"mt-1 text-sm",children:bh?.name||"API Key"})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Base URL"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bL})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Model ch\xednh"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bW.codingModel})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Model fast"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bW.fastModel})]})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"opencode.json"}),(0,d.jsx)("pre",{className:"max-h-[420px] overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:bX})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"C\xe0i v\xe0 chạy OpenCode tr\xean Windows PowerShell"}),(0,d.jsx)("pre",{className:"overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:bY})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-amber-500/30 bg-amber-500/10 p-3 text-xs text-amber-700 dark:text-amber-300",children:["Lưu \xfd: API key n\xe0y cần được ph\xe9p gọi cả ",bW.codingModel," v\xe0 ",bW.fastModel,". Nếu OpenCode đang d\xf9ng đường dẫn config kh\xe1c, c\xf3 thể đặt file opencode.json ngay trong thư mục project."]}),(0,d.jsxs)("div",{className:"flex flex-wrap justify-end gap-2",children:[(0,d.jsx)(f.$n,{variant:"ghost",onClick:()=>bi(null),children:"Đ\xf3ng"}),(0,d.jsx)(f.$n,{variant:"outline",onClick:()=>bA(bY,`opencode-help-${bh?.id||"current"}`),children:bz===`opencode-help-${bh?.id||"current"}`?"Đ\xe3 copy hướng dẫn":"Copy hướng dẫn"}),(0,d.jsx)(f.$n,{onClick:()=>bA(bX,`opencode-settings-${bh?.id||"current"}`),children:bz===`opencode-settings-${bh?.id||"current"}`?"Đ\xe3 copy settings":"Copy opencode.json"})]})]})}),(0,d.jsx)(f.aF,{isOpen:!!bj,onClose:()=>bk(null),title:"Codex Settings",size:"xl",children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("p",{className:"text-sm text-text-muted",children:["Copy TOML dưới đ\xe2y v\xe0o file ",(0,d.jsx)("span",{className:"font-mono",children:"%USERPROFILE%\\.codex\\config.toml"}),". API key được set bằng biến m\xf4i trường ",(0,d.jsx)("span",{className:"font-mono",children:"OPENAI_API_KEY"}),". Model ch\xednh d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:bZ.codingModel}),"; profile fast d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:bZ.fastModel}),"."]}),(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-3",children:[(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"API Key"}),(0,d.jsx)("div",{className:"mt-1 text-sm",children:bj?.name||"API Key"})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Base URL"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bL})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Model"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bZ.codingModel})]})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"config.toml"}),(0,d.jsx)("pre",{className:"max-h-[420px] overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:b$})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"C\xe0i v\xe0 chạy Codex tr\xean Windows PowerShell"}),(0,d.jsx)("pre",{className:"overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:b_})]}),(0,d.jsx)("div",{className:"rounded-xl border border-amber-500/30 bg-amber-500/10 p-3 text-xs text-amber-700 dark:text-amber-300",children:"Lưu \xfd: c\xe1c d\xf2ng context window v\xe0 auto-compact đ\xe3 được comment sẵn; chỉ uncomment khi d\xf9ng local model. Nếu c\xe0i bằng npm th\xec m\xe1y cần c\xe0i Node.js trước. Hướng dẫn đ\xe3 tự tạo config.toml v\xe0 set biến m\xf4i trường cho phi\xean PowerShell hiện tại; setx chỉ lưu lại cho terminal mở sau. Codex d\xf9ng OpenAI-compatible endpoint của BlueRouter."}),(0,d.jsxs)("div",{className:"flex flex-wrap justify-end gap-2",children:[(0,d.jsx)(f.$n,{variant:"ghost",onClick:()=>bk(null),children:"Đ\xf3ng"}),(0,d.jsx)(f.$n,{variant:"outline",onClick:()=>bA(b_,`codex-help-${bj?.id||"current"}`),children:bz===`codex-help-${bj?.id||"current"}`?"Đ\xe3 copy hướng dẫn":"Copy hướng dẫn"}),(0,d.jsx)(f.$n,{onClick:()=>bA(b$,`codex-settings-${bj?.id||"current"}`),children:bz===`codex-settings-${bj?.id||"current"}`?"Đ\xe3 copy settings":"Copy config.toml"})]})]})}),(0,d.jsx)(f.aF,{isOpen:!!bl,onClose:()=>bm(null),title:"Qwen Code Settings",size:"xl",children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("p",{className:"text-sm text-text-muted",children:["Copy JSON dưới đ\xe2y v\xe0o file ",(0,d.jsx)("span",{className:"font-mono",children:"%USERPROFILE%\\.qwen\\settings.json"})," để Qwen Code gọi qua OpenAI-compatible endpoint của BlueRouter. Model ch\xednh d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:b0.codingModel}),"; model fast d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:b0.fastModel}),"."]}),(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-3",children:[(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"API Key"}),(0,d.jsx)("div",{className:"mt-1 text-sm",children:bl?.name||"API Key"})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Base URL"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bL})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Model"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:b0.codingModel})]})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"settings.json"}),(0,d.jsx)("pre",{className:"max-h-[420px] overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:b1})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"C\xe0i v\xe0 chạy Qwen Code tr\xean Windows PowerShell"}),(0,d.jsx)("pre",{className:"overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:b2})]}),(0,d.jsx)("div",{className:"rounded-xl border border-amber-500/30 bg-amber-500/10 p-3 text-xs text-amber-700 dark:text-amber-300",children:"Lưu \xfd: hướng dẫn đ\xe3 tự tạo settings.json hợp lệ v\xe0 set biến m\xf4i trường cho phi\xean PowerShell hiện tại. setx chỉ lưu lại cho terminal mở sau. Qwen Code hỗ trợ OpenAI-compatible provider n\xean d\xf9ng tốt với BlueRouter."}),(0,d.jsxs)("div",{className:"flex flex-wrap justify-end gap-2",children:[(0,d.jsx)(f.$n,{variant:"ghost",onClick:()=>bm(null),children:"Đ\xf3ng"}),(0,d.jsx)(f.$n,{variant:"outline",onClick:()=>bA(b2,`qwen-code-help-${bl?.id||"current"}`),children:bz===`qwen-code-help-${bl?.id||"current"}`?"Đ\xe3 copy hướng dẫn":"Copy hướng dẫn"}),(0,d.jsx)(f.$n,{onClick:()=>bA(b1,`qwen-code-settings-${bl?.id||"current"}`),children:bz===`qwen-code-settings-${bl?.id||"current"}`?"Đ\xe3 copy settings":"Copy settings.json"})]})]})}),(0,d.jsx)(I,{apiKey:aL,fallbackModels:Z,onClose:()=>aM(null)}),(0,d.jsx)(B,{apiKey:aH,globalEnabled:aP,globalLevel:aR,onClose:()=>aI(null),onSave:cm,saving:aN}),(0,d.jsx)(B,{apiKey:aJ,globalEnabled:aP,globalLevel:aR,onClose:()=>aK(null),onSave:()=>{},saving:!1,infoOnly:!0}),(0,d.jsx)(w,{open:!!av,keyName:av?.name,models:ax,setModels:ay,activeProviders:an,modelAliases:ap,onClose:()=>{aw(null),ay([])},onSave:cj,saving:az,personalOnly:!bF,extraModels:Z}),(0,d.jsx)(v,{isOpen:aj,keyName:"Default cho API key mới",policy:af,setPolicy:ag,onClose:()=>{ak(!1),ag(ad||i)},onSave:cg,saving:ah}),(0,d.jsx)(v,{isOpen:!!aB,keyName:aB?.name,policy:aD,setPolicy:aE,onClose:()=>{aC(null),aE(i)},onSave:ck,onClear:cl,saving:aF}),(0,d.jsx)(f.rq,{isOpen:al,onClose:()=>am(!1),onSelect:a=>{let b=String(a?.value||a?.name||a||"").trim();b&&aa(a=>k([...a,b]))},onDeselect:a=>{let b=String(a?.value||a?.name||a||"").trim();b&&aa(a=>k(a).filter(a=>a!==b))},activeProviders:an,modelAliases:ap,title:"Chọn default models cho API key",addedModelValues:_,closeOnSelect:!1}),P?(0,d.jsx)(f.uo,{isOpen:!!P,onClose:()=>Q(null),onConfirm:P.onConfirm,title:P.title,message:P.message,confirmText:"X\xf3a",cancelText:"Hủy",variant:"danger"}):null]})}},87550:a=>{"use strict";a.exports=require("better-sqlite3")},88554:(a,b,c)=>{"use strict";c.r(b),c.d(b,{__next_app__:()=>w,handler:()=>y,routeModule:()=>x});var d=c(21635),e=c(86315),f=c(1020),g=c(61287),h={};for(let a in g)0>["default","__next_app__","routeModule","handler"].indexOf(a)&&(h[a]=()=>g[a]);c.d(b,h);let i=(0,d.p)(()=>Promise.resolve().then(c.bind(c,32059))),j=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),k=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,55091,23))),l=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,45270,23))),m=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,28193,23))),n=(0,d.p)(()=>Promise.resolve().then(c.bind(c,30508))),o=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),p=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,55091,23))),q=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,45270,23))),r=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,28193,23))),s=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),t=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),u={children:["",{children:["(dashboard)",{children:["dashboard",{children:["api-keys",{children:["__PAGE__",{},{page:[(0,d.p)(()=>Promise.resolve().then(c.bind(c,77619))),"D:\\bluerouter\\src\\app\\(dashboard)\\dashboard\\api-keys\\page.js"]}]},{"global-error":[t,"next/dist/client/components/builtin/global-error.js"]},[]]},{"global-error":[s,"next/dist/client/components/builtin/global-error.js"]},[]]},{layout:[n,"D:\\bluerouter\\src\\app\\(dashboard)\\layout.js"],"global-error":[o,"next/dist/client/components/builtin/global-error.js"],"not-found":[p,"next/dist/client/components/builtin/not-found.js"],forbidden:[q,"next/dist/client/components/builtin/forbidden.js"],unauthorized:[r,"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await (0,d.p)(()=>Promise.resolve().then(c.bind(c,70440)))()).default(a)],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]},{layout:[i,"D:\\bluerouter\\src\\app\\layout.js"],"global-error":[j,"next/dist/client/components/builtin/global-error.js"],"not-found":[k,"next/dist/client/components/builtin/not-found.js"],forbidden:[l,"next/dist/client/components/builtin/forbidden.js"],unauthorized:[m,"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await (0,d.p)(()=>Promise.resolve().then(c.bind(c,70440)))()).default(a)],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]}.children,v=(0,e.H)({tree:u,page:"/(dashboard)/dashboard/api-keys/page",pathname:"/dashboard/api-keys",require:c,loadChunk:()=>Promise.resolve(),interopDefault:f.T}),w=v.__next_app__,x=v.routeModule,y=v.handler},91645:a=>{"use strict";a.exports=require("net")},94735:a=>{"use strict";a.exports=require("events")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,2430,8316,8946,402,5681,4404,6064,6328,8640,5424],()=>b(b.s=88554));module.exports=c})();
|
|
39
|
+
C\xf3 thể d\xf9ng n\xfat Đổi key để xoay sang key mới m\xe0 kh\xf4ng cần x\xf3a/tạo lại.`);Y(!0),C("");try{let a=bF?j(K||H||bE):void 0,b=await fetch("/api/keys",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:F.trim(),ownerUser:a})}),c=await b.json().catch(()=>({}));if(!b.ok)throw Error(c.error||"Kh\xf4ng tạo được API key");O(c.key),G(""),M(""),E(!1),bu(1),await b7()}catch(a){C(a.message||"Kh\xf4ng tạo được API key")}finally{Y(!1)}}},ci=async(a,b)=>{let c=await fetch(`/api/keys/${a}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(b)}),d=await c.json().catch(()=>({}));return c.ok?(await b7(),!0):(C(d.error||"Kh\xf4ng cập nhật được API key"),!1)},cj=async()=>{if(!av)return;let a=k(ax);if(0===a.length)return void C("H\xe3y chọn \xedt nhất một model trước khi lưu quyền truy cập API key.");aA(!0),C("");try{await ci(av.id,{allowedModels:a})&&(aw(null),ay([]))}finally{aA(!1)}},ck=async a=>{if(aB){aG(!0),C("");try{await ci(aB.id,{limits:r(a)})&&(aC(null),aE(i))}finally{aG(!1)}}},cl=async()=>{if(aB){aG(!0),C("");try{await ci(aB.id,{limits:{}})&&(aC(null),aE(i))}finally{aG(!1)}}},cm=async a=>{if(!aH)return!1;aO(!0),C("");try{let b=await fetch(`/api/keys/${aH.id}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),c=await b.json().catch(()=>({}));if(!b.ok)throw Error(c.error||"Kh\xf4ng lưu được cấu h\xecnh Caveman");return await b7(),aI(null),!0}catch(b){let a=b?.message||"Kh\xf4ng lưu được cấu h\xecnh Caveman";throw C(a),Error(a)}finally{aO(!1)}};return(0,d.jsxs)("div",{className:"space-y-6",children:[(0,d.jsxs)("div",{className:"flex flex-col gap-3 lg:flex-row lg:items-center lg:justify-between",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h1",{className:"text-2xl font-semibold text-text-main",children:"Quản l\xfd API Keys"}),(0,d.jsx)("p",{className:"mt-1 text-sm text-text-muted",children:bF?"Bảng quản trị API key c\xf3 t\xecm kiếm, lọc trạng th\xe1i v\xe0 ph\xe2n trang để kh\xf4ng render qu\xe1 nhiều key c\xf9ng l\xfac.":`Bạn c\xf3 thể quản l\xfd API key của t\xe0i khoản m\xecnh. Mỗi user thường sở hữu tối đa ${bG} API keys. D\xf9ng n\xfat Đổi key để xoay sang key mới m\xe0 kh\xf4ng cần x\xf3a/tạo lại.`})]}),(0,d.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,d.jsx)(f.$n,{variant:"outline",onClick:b7,disabled:u,children:u?"Đang tải...":"Refresh"}),(0,d.jsx)(f.$n,{onClick:()=>{E(!0),!H&&bE&&J(bE)},disabled:bK,children:"Tạo API Key"})]})]}),A?(0,d.jsx)("div",{className:"rounded-xl border border-red-500/30 bg-red-500/10 p-3 text-sm text-red-600 whitespace-pre-line",children:A}):null,(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-3",children:[(0,d.jsx)(x,{label:"Tổng API keys",value:bI,hint:bF?"To\xe0n hệ thống":`${bH}/${bG} key của bạn`}),(0,d.jsx)(x,{label:"Đang hiển thị",value:bJ,hint:b6?"Theo bộ lọc hiện tại":"Kh\xf4ng filter"}),(0,d.jsx)(x,{label:"Page size",value:bv,hint:"Chỉ tải số d\xf2ng của trang hiện tại"})]}),bF?null:(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"font-medium",children:"Giới hạn API key theo user"}),(0,d.jsxs)("p",{className:"text-sm text-text-muted",children:["T\xe0i khoản của bạn đang c\xf3 ",bH,"/",bG," API keys. Key bị disabled vẫn được t\xednh v\xe0o giới hạn."]})]}),(0,d.jsx)("span",{className:"rounded-full border border-border bg-surface px-3 py-1 text-sm",children:bK?"Đ\xe3 đạt giới hạn":"C\xf2n c\xf3 thể tạo th\xeam"})]})}),(0,d.jsxs)("div",{className:"grid gap-4 xl:grid-cols-2",children:[(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"font-medium",children:"Default models cho API key mới"}),(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"API key mới sẽ mặc định được d\xf9ng c\xe1c model n\xe0y. Cần cấu h\xecnh \xedt nhất một default model trước khi tạo API key."})]}),(0,d.jsxs)("div",{className:"flex flex-wrap items-center gap-2",children:[Z.length>0?(0,d.jsx)(s,{models:Z,emptyLabel:"Chưa cấu h\xecnh default models"}):(0,d.jsx)("span",{className:"text-sm text-red-600",children:"Chưa cấu h\xecnh default models"}),bF?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(f.$n,{variant:"outline",size:"sm",onClick:()=>{am(!0),b8()},children:_.length>0?`Đ\xe3 chọn ${_.length} model`:"Chọn default models..."}),(0,d.jsx)(f.$n,{size:"sm",onClick:ca,disabled:!b4||ab||0===_.length,children:ab?"Đang lưu...":"Lưu"})]}):null]}),bF?(0,d.jsx)("p",{className:"text-xs text-text-muted",children:at?"Đang tải danh s\xe1ch model...":"Danh s\xe1ch model chỉ tải khi mở bộ chọn để trang load nhanh hơn."}):null]})}),(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-start sm:justify-between",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"font-medium",children:"Default policy cho API key mới"}),(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"Policy n\xe0y được tự động g\xe1n cho key mới. Policy ri\xeang từng key vẫn c\xf3 thể override sau khi tạo."})]}),bF?(0,d.jsx)(f.$n,{variant:"outline",size:"sm",onClick:()=>{ag(r(ad||i,i)),ak(!0)},children:"Chỉnh default policy"}):null]}),(0,d.jsx)(t,{limits:ad,showThinking:bF,showOutputLimit:bF})]})})]}),bF?(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"font-medium",children:"Giới hạn số API key cho mỗi user"}),(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"Global default \xe1p dụng cho mọi user thường. Per-user override sẽ ghi đ\xe8 global cho user cụ thể (nhập 0 hoặc bấm X\xf3a để bỏ override v\xe0 quay lại global)."})]}),(0,d.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-end",children:[(0,d.jsxs)("label",{className:"flex-1",children:[(0,d.jsx)("span",{className:"mb-1 block text-xs font-medium text-text-muted",children:"Global default (\xe1p dụng cho user kh\xf4ng c\xf3 override)"}),(0,d.jsx)("input",{type:"number",min:"1",value:a_,onChange:a=>a0(a.target.value),className:"w-full rounded-xl border border-border bg-background px-3 py-2 text-sm outline-none focus:border-primary"})]}),(0,d.jsx)(f.$n,{onClick:cc,disabled:a1||Number.parseInt(a_,10)===aZ,children:a1?"Đang lưu...":"Lưu global"})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border p-3",children:[(0,d.jsx)("div",{className:"text-sm font-medium",children:"Per-user override"}),(0,d.jsx)("p",{className:"mt-1 text-xs text-text-muted",children:"Ghi đ\xe8 global cho user cụ thể. Override sẽ \xe1p dụng lu\xf4n cả cho key hiện c\xf3 (chặn tạo key mới nếu vượt)."}),(0,d.jsxs)("div",{className:"mt-3 flex flex-col gap-2 sm:flex-row",children:[(0,d.jsx)("input",{value:a5,onChange:a=>a6(a.target.value),placeholder:"username hoặc email",className:"min-w-0 flex-1 rounded-xl border border-border bg-background px-3 py-2 text-sm outline-none focus:border-primary"}),(0,d.jsx)("input",{type:"number",min:"1",value:a7,onChange:a=>a8(a.target.value),placeholder:"Giới hạn key",className:"w-full rounded-xl border border-border bg-background px-3 py-2 text-sm outline-none focus:border-primary sm:w-40"}),(0,d.jsx)(f.$n,{onClick:ce,disabled:a9,children:a9?"Đang lưu...":"Th\xeam / Cập nhật"})]}),0===Object.keys(a3).length?(0,d.jsxs)("div",{className:"mt-3 rounded-xl border border-dashed border-border bg-surface p-3 text-xs text-text-muted",children:["Chưa c\xf3 user n\xe0o được override. Global = ",aZ," key."]}):(0,d.jsx)("div",{className:"mt-3 overflow-hidden rounded-xl border border-border",children:(0,d.jsxs)("table",{className:"min-w-full text-sm",children:[(0,d.jsx)("thead",{className:"bg-surface text-xs text-text-muted",children:(0,d.jsxs)("tr",{children:[(0,d.jsx)("th",{className:"px-3 py-2 text-left font-medium",children:"User"}),(0,d.jsx)("th",{className:"px-3 py-2 text-left font-medium",children:"Giới hạn"}),(0,d.jsx)("th",{className:"px-3 py-2 text-right font-medium",children:"H\xe0nh động"})]})}),(0,d.jsx)("tbody",{children:Object.entries(a3).sort(([a],[b])=>a.localeCompare(b)).map(([a,b])=>(0,d.jsxs)("tr",{className:"border-t border-border",children:[(0,d.jsx)("td",{className:"px-3 py-2 font-mono text-xs",children:a}),(0,d.jsx)("td",{className:"px-3 py-2",children:b}),(0,d.jsx)("td",{className:"px-3 py-2 text-right",children:(0,d.jsx)(f.$n,{size:"sm",variant:"ghost",disabled:a9,onClick:()=>cf(a),children:"X\xf3a"})})]},a))})]})})]})]})}):null,(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"font-medium",children:"Th\xf4ng tin API endpoint"}),(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"D\xf9ng API key b\xean dưới để gọi gateway theo chuẩn OpenAI-compatible. Endpoint lấy theo domain hiện tại của dashboard."})]}),(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-2",children:[(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Base URL"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bL})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Chat Completions"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bN})]})]}),(0,d.jsxs)("div",{className:"flex flex-wrap gap-2",children:[(0,d.jsx)(f.$n,{variant:"outline",size:"sm",onClick:()=>bA(bL,"api-base-url"),children:"api-base-url"===bz?"Đ\xe3 copy Base URL":"Copy Base URL"}),(0,d.jsx)(f.$n,{variant:"outline",size:"sm",onClick:()=>bA(bN,"api-chat-endpoint"),children:"api-chat-endpoint"===bz?"Đ\xe3 copy Endpoint":"Copy Endpoint"})]})]})}),N?(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsx)("h3",{className:"font-medium",children:"Đ\xe3 tạo API key"}),(0,d.jsx)("pre",{className:"overflow-auto rounded-xl border border-border bg-surface p-3 text-sm",children:N}),(0,d.jsxs)("div",{className:"text-sm text-text-muted",children:["H\xe3y copy ngay. Key mới mặc định được d\xf9ng default models v\xe0 default policy đang cấu h\xecnh trong Dashboard, trừ khi admin chỉnh quyền model/policy.",(0,d.jsx)(s,{models:Z,emptyLabel:"default models"})]}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(f.$n,{size:"sm",onClick:()=>bA(N,"created"),children:"created"===bz?"Đ\xe3 copy":"Copy"}),(0,d.jsx)(f.$n,{size:"sm",variant:"ghost",onClick:()=>O(""),children:"Đ\xf3ng"})]})]})}):null,(0,d.jsx)(f.Zp,{children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("div",{className:"flex flex-col gap-3 xl:flex-row xl:items-end xl:justify-between",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("h3",{className:"text-lg font-semibold text-text-main",children:"Danh s\xe1ch API keys"}),(0,d.jsx)("p",{className:"mt-1 text-sm text-text-muted",children:"T\xecm theo t\xean key, owner, model, id hoặc một phần API key. Backend chỉ trả về page hiện tại."})]}),(0,d.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center",children:[(0,d.jsx)("input",{value:bn,onChange:a=>bo(a.target.value),placeholder:"T\xecm API key, owner, model...",className:"w-full rounded-xl border border-border bg-background px-3 py-2 text-sm text-text-main outline-none focus:border-primary sm:w-80"}),(0,d.jsxs)("select",{value:br,onChange:a=>{bs(a.target.value),bu(1)},className:"rounded-xl border border-border bg-background px-3 py-2 text-sm text-text-main outline-none focus:border-primary",children:[(0,d.jsx)("option",{value:"all",children:"Tất cả trạng th\xe1i"}),(0,d.jsx)("option",{value:"active",children:"Chỉ key đang bật"}),(0,d.jsx)("option",{value:"inactive",children:"Chỉ key đ\xe3 tắt"})]}),b6?(0,d.jsx)(f.$n,{variant:"outline",size:"sm",onClick:()=>{bo(""),bq(""),bs("all"),bu(1)},children:"X\xf3a lọc"}):null]})]}),u?(0,d.jsx)("div",{className:"rounded-2xl border border-dashed border-border p-8 text-center text-sm text-text-muted",children:"Đang tải API keys..."}):0===o.length?(0,d.jsx)("div",{className:"rounded-2xl border border-dashed border-border p-8 text-center text-sm text-text-muted",children:b6?"Kh\xf4ng t\xecm thấy API key ph\xf9 hợp bộ lọc.":"Chưa c\xf3 API key n\xe0o."}):(0,d.jsx)(L,{keys:o,copied:bz,copy:bA,isAdmin:bF,globalCavemanEnabled:aP,globalCavemanLevel:aR,onToggleActive:(a,b)=>ci(a,{isActive:b}),onApiTest:be,onClaudeSettings:bg,onOpenCodeSettings:bi,onCodexSettings:bk,onQwenSettings:bm,onRename:(a,b)=>{let c=prompt("T\xean API key mới",b||"");c?.trim()&&ci(a,{name:c.trim()})},onRotate:a=>{a?.id&&Q({title:"Đổi API key",message:"Hệ thống sẽ tạo chuỗi API key mới cho record n\xe0y v\xe0 giữ nguy\xean t\xean, owner, model, policy. Key cũ sẽ hết hiệu lực ngay sau khi đổi.",onConfirm:async()=>{Q(null),C("");let b=await fetch(`/api/keys/${a.id}/rotate`,{method:"POST"}),c=await b.json().catch(()=>({}));if(!b.ok)return void C(c.error||"Kh\xf4ng đổi được API key");let d=c.rotatedKey||c.key?.key||"";d&&O(d),await b7()}})},onEditModels:a=>{aw(a),ay(k(a.allowedModels)),b8()},onEditPolicy:a=>{bF&&(aC(a),aE(q(a.limits)?r(a.limits):i))},onEditCaveman:aI,onShowCavemanInfo:aK,onCavemanTest:aM,onAssignOwner:(a,b)=>{if(!bF)return;let c=prompt("G\xe1n owner username/email",b||bE||"");null!==c&&ci(a,{ownerUser:j(c)})},onDelete:a=>{Q({title:"X\xf3a API Key",message:"Bạn chắc chắn muốn x\xf3a API key n\xe0y? Thao t\xe1c n\xe0y kh\xf4ng thể ho\xe0n t\xe1c.",onConfirm:async()=>{Q(null),(await fetch(`/api/keys/${a}`,{method:"DELETE"})).ok&&await b7()}})}}),(0,d.jsx)(y,{pagination:bx,pageSize:bv,onPageChange:bu,onPageSizeChange:a=>{bw(a),bu(1)},loading:u})]})}),(0,d.jsx)(f.aF,{isOpen:D,onClose:()=>E(!1),title:"Tạo API Key",size:"lg",children:(0,d.jsxs)("div",{className:"space-y-4",children:[0===Z.length?(0,d.jsx)("div",{className:"rounded-xl border border-red-500/30 bg-red-500/10 p-3 text-sm text-red-600",children:"Admin cần cấu h\xecnh default models trước khi tạo API key."}):bK?(0,d.jsxs)("div",{className:"rounded-xl border border-red-500/30 bg-red-500/10 p-3 text-sm text-red-600",children:["Bạn đ\xe3 đạt giới hạn ",bG," API keys. H\xe3y x\xf3a bớt key cũ trước khi tạo key mới."]}):(0,d.jsxs)("div",{className:"text-sm text-text-muted",children:["Key n\xe0y sẽ được tạo với quyền d\xf9ng default models v\xe0 default policy đang cấu h\xecnh trong Dashboard.",(0,d.jsx)(s,{models:Z})]}),(0,d.jsxs)("label",{className:"block",children:[(0,d.jsx)("span",{className:"mb-1 block text-xs font-medium text-text-muted",children:"T\xean API key"}),(0,d.jsx)("input",{value:F,onChange:a=>G(a.target.value),placeholder:"VD: VSCode, LibreChat, team-user",className:"w-full rounded-xl border border-border bg-background px-3 py-2 text-sm outline-none focus:border-primary"})]}),bF?(0,d.jsxs)("div",{className:"space-y-3 rounded-xl border border-border p-3",children:[(0,d.jsx)("div",{className:"text-sm font-medium",children:"Owner user"}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)("input",{value:T,onChange:a=>U(a.target.value),placeholder:"Nhập từ kh\xf3a rồi bấm Tải",className:"min-w-0 flex-1 rounded-xl border border-border bg-background px-3 py-2 text-sm outline-none focus:border-primary"}),(0,d.jsx)(f.$n,{variant:"outline",onClick:()=>b9(T),disabled:V,children:V?"Đang tải":"Tải LDAP"})]}),(0,d.jsxs)("select",{value:H,onChange:a=>J(a.target.value),className:"w-full rounded-xl border border-border bg-background px-3 py-2 text-sm text-text-main outline-none focus:border-primary",children:[(0,d.jsxs)("option",{value:bE||"",children:["G\xe1n cho t\xf4i (",bE||"local",")"]}),b3.map(a=>(0,d.jsx)("option",{value:a.id,children:a.label},a.id))]}),(0,d.jsx)("input",{value:K,onChange:a=>M(a.target.value),placeholder:"username hoặc email, kh\xf4ng bắt buộc",className:"w-full rounded-xl border border-border bg-background px-3 py-2 text-sm outline-none focus:border-primary"}),(0,d.jsx)("p",{className:"text-xs text-text-muted",children:"LDAP kh\xf4ng tự tải khi mở trang để giảm thời gian load. C\xf3 thể nhập owner thủ c\xf4ng hoặc nhập từ kh\xf3a rồi bấm Tải LDAP."})]}):(0,d.jsxs)("p",{className:"rounded-xl border border-border bg-surface p-3 text-sm text-text-muted",children:["Owner: ",bE||"user hiện tại"]}),(0,d.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,d.jsx)(f.$n,{variant:"ghost",onClick:()=>E(!1),children:"Hủy"}),(0,d.jsx)(f.$n,{onClick:ch,disabled:b5,children:X?"Đang tạo...":"Tạo"})]})]})}),(0,d.jsx)(f.aF,{isOpen:!!bd,onClose:()=>be(null),title:"API Test bằng curl Windows",size:"xl",children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"Lệnh dưới đ\xe2y gọi thử endpoint Chat Completions bằng API key đang chọn v\xe0 đ\xe3 nh\xfang sẵn Bearer token."}),(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-3",children:[(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"API Key"}),(0,d.jsx)("div",{className:"mt-1 text-sm",children:bd?.name||"API Key"})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Endpoint"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bN})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Model test"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bP})]})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"Lệnh curl cho Windows CMD"}),(0,d.jsx)("pre",{className:"overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:bS})]}),(0,d.jsx)("p",{className:"text-xs text-text-muted",children:"D\xe1n lệnh v\xe0o CMD hoặc Windows Terminal để test nhanh. Nếu domain dashboard chạy sau reverse proxy, endpoint sẽ d\xf9ng đ\xfang domain đang mở tr\xean tr\xecnh duyệt."}),(0,d.jsxs)("div",{className:"flex justify-end gap-2",children:[(0,d.jsx)(f.$n,{variant:"ghost",onClick:()=>be(null),children:"Đ\xf3ng"}),(0,d.jsx)(f.$n,{onClick:()=>bA(bS,`api-test-curl-${bd?.id||"current"}`),children:bz===`api-test-curl-${bd?.id||"current"}`?"Đ\xe3 copy":"Copy lệnh curl"})]})]})}),(0,d.jsx)(f.aF,{isOpen:!!bf,onClose:()=>bg(null),title:"Claude Code Settings",size:"xl",children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("p",{className:"text-sm text-text-muted",children:["Copy nội dung JSON dưới đ\xe2y v\xe0o file ",(0,d.jsx)("span",{className:"font-mono",children:"%USERPROFILE%\\.claude\\settings.json"})," để Claude Code gọi qua gateway n\xe0y. Model coding d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:bT.codingModel}),"; model fast d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:bT.fastModel}),"."]}),(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-3",children:[(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"API Key"}),(0,d.jsx)("div",{className:"mt-1 text-sm",children:bf?.name||"API Key"})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Base URL"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bL})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Model"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bT.codingModel})]})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"settings.json"}),(0,d.jsx)("pre",{className:"max-h-[420px] overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:bU})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"C\xe0i v\xe0 chạy Claude Code CLI tr\xean Windows"}),(0,d.jsx)("pre",{className:"overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:bV})]}),(0,d.jsx)("div",{className:"rounded-xl border border-amber-500/30 bg-amber-500/10 p-3 text-xs text-amber-700 dark:text-amber-300",children:"Lưu \xfd: 2 d\xf2ng auto-compact/context window đ\xe3 được comment sẵn; chỉ uncomment khi d\xf9ng local model. Nếu c\xe0i bằng npm th\xec m\xe1y cần c\xe0i Node.js trước. Chạy Claude Code trong thư mục project, kh\xf4ng chạy trong C:\\WINDOWS\\system32. Nếu d\xf9ng model fast ri\xeang như programmer-fast th\xec API key n\xe0y cũng phải được ph\xe9p d\xf9ng model đ\xf3 trong cột Model."}),(0,d.jsxs)("div",{className:"flex flex-wrap justify-end gap-2",children:[(0,d.jsx)(f.$n,{variant:"ghost",onClick:()=>bg(null),children:"Đ\xf3ng"}),(0,d.jsx)(f.$n,{variant:"outline",onClick:()=>bA(bV,`claude-code-help-${bf?.id||"current"}`),children:bz===`claude-code-help-${bf?.id||"current"}`?"Đ\xe3 copy hướng dẫn":"Copy hướng dẫn"}),(0,d.jsx)(f.$n,{onClick:()=>bA(bU,`claude-code-settings-${bf?.id||"current"}`),children:bz===`claude-code-settings-${bf?.id||"current"}`?"Đ\xe3 copy settings":"Copy settings.json"})]})]})}),(0,d.jsx)(f.aF,{isOpen:!!bh,onClose:()=>bi(null),title:"OpenCode Settings",size:"xl",children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("p",{className:"text-sm text-text-muted",children:["Copy JSON dưới đ\xe2y v\xe0o file ",(0,d.jsx)("span",{className:"font-mono",children:"%APPDATA%\\opencode\\opencode.json"})," hoặc ",(0,d.jsx)("span",{className:"font-mono",children:"opencode.json"})," trong project. Model ch\xednh d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:bW.codingModel}),"; explorer/fast d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:bW.fastModel}),"."]}),(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-4",children:[(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"API Key"}),(0,d.jsx)("div",{className:"mt-1 text-sm",children:bh?.name||"API Key"})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Base URL"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bL})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Model ch\xednh"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bW.codingModel})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Model fast"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bW.fastModel})]})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"opencode.json"}),(0,d.jsx)("pre",{className:"max-h-[420px] overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:bX})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"C\xe0i v\xe0 chạy OpenCode tr\xean Windows PowerShell"}),(0,d.jsx)("pre",{className:"overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:bY})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-amber-500/30 bg-amber-500/10 p-3 text-xs text-amber-700 dark:text-amber-300",children:["Lưu \xfd: API key n\xe0y cần được ph\xe9p gọi cả ",bW.codingModel," v\xe0 ",bW.fastModel,". Nếu OpenCode đang d\xf9ng đường dẫn config kh\xe1c, c\xf3 thể đặt file opencode.json ngay trong thư mục project."]}),(0,d.jsxs)("div",{className:"flex flex-wrap justify-end gap-2",children:[(0,d.jsx)(f.$n,{variant:"ghost",onClick:()=>bi(null),children:"Đ\xf3ng"}),(0,d.jsx)(f.$n,{variant:"outline",onClick:()=>bA(bY,`opencode-help-${bh?.id||"current"}`),children:bz===`opencode-help-${bh?.id||"current"}`?"Đ\xe3 copy hướng dẫn":"Copy hướng dẫn"}),(0,d.jsx)(f.$n,{onClick:()=>bA(bX,`opencode-settings-${bh?.id||"current"}`),children:bz===`opencode-settings-${bh?.id||"current"}`?"Đ\xe3 copy settings":"Copy opencode.json"})]})]})}),(0,d.jsx)(f.aF,{isOpen:!!bj,onClose:()=>bk(null),title:"Codex Settings",size:"xl",children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("p",{className:"text-sm text-text-muted",children:["Copy TOML dưới đ\xe2y v\xe0o file ",(0,d.jsx)("span",{className:"font-mono",children:"%USERPROFILE%\\.codex\\config.toml"}),". API key được set bằng biến m\xf4i trường ",(0,d.jsx)("span",{className:"font-mono",children:"OPENAI_API_KEY"}),". Model ch\xednh d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:bZ.codingModel}),"; profile fast d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:bZ.fastModel}),"."]}),(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-3",children:[(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"API Key"}),(0,d.jsx)("div",{className:"mt-1 text-sm",children:bj?.name||"API Key"})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Base URL"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bL})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Model"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bZ.codingModel})]})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"config.toml"}),(0,d.jsx)("pre",{className:"max-h-[420px] overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:b$})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"C\xe0i v\xe0 chạy Codex tr\xean Windows PowerShell"}),(0,d.jsx)("pre",{className:"overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:b_})]}),(0,d.jsx)("div",{className:"rounded-xl border border-amber-500/30 bg-amber-500/10 p-3 text-xs text-amber-700 dark:text-amber-300",children:"Lưu \xfd: c\xe1c d\xf2ng context window v\xe0 auto-compact đ\xe3 được comment sẵn; chỉ uncomment khi d\xf9ng local model. Nếu c\xe0i bằng npm th\xec m\xe1y cần c\xe0i Node.js trước. Hướng dẫn đ\xe3 tự tạo config.toml v\xe0 set biến m\xf4i trường cho phi\xean PowerShell hiện tại; setx chỉ lưu lại cho terminal mở sau. Codex d\xf9ng OpenAI-compatible endpoint của BlueRouter."}),(0,d.jsxs)("div",{className:"flex flex-wrap justify-end gap-2",children:[(0,d.jsx)(f.$n,{variant:"ghost",onClick:()=>bk(null),children:"Đ\xf3ng"}),(0,d.jsx)(f.$n,{variant:"outline",onClick:()=>bA(b_,`codex-help-${bj?.id||"current"}`),children:bz===`codex-help-${bj?.id||"current"}`?"Đ\xe3 copy hướng dẫn":"Copy hướng dẫn"}),(0,d.jsx)(f.$n,{onClick:()=>bA(b$,`codex-settings-${bj?.id||"current"}`),children:bz===`codex-settings-${bj?.id||"current"}`?"Đ\xe3 copy settings":"Copy config.toml"})]})]})}),(0,d.jsx)(f.aF,{isOpen:!!bl,onClose:()=>bm(null),title:"Qwen Code Settings",size:"xl",children:(0,d.jsxs)("div",{className:"space-y-4",children:[(0,d.jsxs)("p",{className:"text-sm text-text-muted",children:["Copy JSON dưới đ\xe2y v\xe0o file ",(0,d.jsx)("span",{className:"font-mono",children:"%USERPROFILE%\\.qwen\\settings.json"})," để Qwen Code gọi qua OpenAI-compatible endpoint của BlueRouter. Model ch\xednh d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:b0.codingModel}),"; model fast d\xf9ng ",(0,d.jsx)("span",{className:"font-mono",children:b0.fastModel}),"."]}),(0,d.jsxs)("div",{className:"grid gap-3 md:grid-cols-3",children:[(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"API Key"}),(0,d.jsx)("div",{className:"mt-1 text-sm",children:bl?.name||"API Key"})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Base URL"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:bL})]}),(0,d.jsxs)("div",{className:"rounded-xl border border-border bg-surface p-3",children:[(0,d.jsx)("div",{className:"text-xs text-text-muted",children:"Model"}),(0,d.jsx)("div",{className:"mt-1 break-all font-mono text-sm",children:b0.codingModel})]})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"settings.json"}),(0,d.jsx)("pre",{className:"max-h-[420px] overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:b1})]}),(0,d.jsxs)("div",{children:[(0,d.jsx)("div",{className:"mb-1 text-xs font-medium text-text-muted",children:"C\xe0i v\xe0 chạy Qwen Code tr\xean Windows PowerShell"}),(0,d.jsx)("pre",{className:"overflow-auto rounded-xl border border-border bg-surface p-3 text-xs",children:b2})]}),(0,d.jsx)("div",{className:"rounded-xl border border-amber-500/30 bg-amber-500/10 p-3 text-xs text-amber-700 dark:text-amber-300",children:"Lưu \xfd: hướng dẫn đ\xe3 tự tạo settings.json hợp lệ v\xe0 set biến m\xf4i trường cho phi\xean PowerShell hiện tại. setx chỉ lưu lại cho terminal mở sau. Qwen Code hỗ trợ OpenAI-compatible provider n\xean d\xf9ng tốt với BlueRouter."}),(0,d.jsxs)("div",{className:"flex flex-wrap justify-end gap-2",children:[(0,d.jsx)(f.$n,{variant:"ghost",onClick:()=>bm(null),children:"Đ\xf3ng"}),(0,d.jsx)(f.$n,{variant:"outline",onClick:()=>bA(b2,`qwen-code-help-${bl?.id||"current"}`),children:bz===`qwen-code-help-${bl?.id||"current"}`?"Đ\xe3 copy hướng dẫn":"Copy hướng dẫn"}),(0,d.jsx)(f.$n,{onClick:()=>bA(b1,`qwen-code-settings-${bl?.id||"current"}`),children:bz===`qwen-code-settings-${bl?.id||"current"}`?"Đ\xe3 copy settings":"Copy settings.json"})]})]})}),(0,d.jsx)(I,{apiKey:aL,fallbackModels:Z,onClose:()=>aM(null)}),(0,d.jsx)(B,{apiKey:aH,globalEnabled:aP,globalLevel:aR,onClose:()=>aI(null),onSave:cm,saving:aN}),(0,d.jsx)(B,{apiKey:aJ,globalEnabled:aP,globalLevel:aR,onClose:()=>aK(null),onSave:()=>{},saving:!1,infoOnly:!0}),(0,d.jsx)(w,{open:!!av,keyName:av?.name,models:ax,setModels:ay,activeProviders:an,modelAliases:ap,onClose:()=>{aw(null),ay([])},onSave:cj,saving:az,personalOnly:!bF,extraModels:Z}),(0,d.jsx)(v,{isOpen:aj,keyName:"Default cho API key mới",policy:af,setPolicy:ag,onClose:()=>{ak(!1),ag(ad||i)},onSave:cg,saving:ah}),(0,d.jsx)(v,{isOpen:!!aB,keyName:aB?.name,policy:aD,setPolicy:aE,onClose:()=>{aC(null),aE(i)},onSave:ck,onClear:cl,saving:aF}),(0,d.jsx)(f.rq,{isOpen:al,onClose:()=>am(!1),onSelect:a=>{let b=String(a?.value||a?.name||a||"").trim();b&&aa(a=>k([...a,b]))},onDeselect:a=>{let b=String(a?.value||a?.name||a||"").trim();b&&aa(a=>k(a).filter(a=>a!==b))},activeProviders:an,modelAliases:ap,title:"Chọn default models cho API key",addedModelValues:_,closeOnSelect:!1}),P?(0,d.jsx)(f.uo,{isOpen:!!P,onClose:()=>Q(null),onConfirm:P.onConfirm,title:P.title,message:P.message,confirmText:"X\xf3a",cancelText:"Hủy",variant:"danger"}):null]})}},87550:a=>{"use strict";a.exports=require("better-sqlite3")},91645:a=>{"use strict";a.exports=require("net")},93319:(a,b,c)=>{"use strict";c.r(b),c.d(b,{__next_app__:()=>w,handler:()=>y,routeModule:()=>x});var d=c(21635),e=c(86315),f=c(1020),g=c(61287),h={};for(let a in g)0>["default","__next_app__","routeModule","handler"].indexOf(a)&&(h[a]=()=>g[a]);c.d(b,h);let i=(0,d.p)(()=>Promise.resolve().then(c.bind(c,32059))),j=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),k=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,55091,23))),l=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,45270,23))),m=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,28193,23))),n=(0,d.p)(()=>Promise.resolve().then(c.bind(c,30508))),o=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),p=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,55091,23))),q=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,45270,23))),r=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,28193,23))),s=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),t=(0,d.p)(()=>Promise.resolve().then(c.t.bind(c,95547,23))),u={children:["",{children:["(dashboard)",{children:["dashboard",{children:["api-keys",{children:["__PAGE__",{},{page:[(0,d.p)(()=>Promise.resolve().then(c.bind(c,77619))),"D:\\bluerouter\\src\\app\\(dashboard)\\dashboard\\api-keys\\page.js"]}]},{"global-error":[t,"next/dist/client/components/builtin/global-error.js"]},[]]},{"global-error":[s,"next/dist/client/components/builtin/global-error.js"]},[]]},{layout:[n,"D:\\bluerouter\\src\\app\\(dashboard)\\layout.js"],"global-error":[o,"next/dist/client/components/builtin/global-error.js"],"not-found":[p,"next/dist/client/components/builtin/not-found.js"],forbidden:[q,"next/dist/client/components/builtin/forbidden.js"],unauthorized:[r,"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await (0,d.p)(()=>Promise.resolve().then(c.bind(c,70440)))()).default(a)],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]},{layout:[i,"D:\\bluerouter\\src\\app\\layout.js"],"global-error":[j,"next/dist/client/components/builtin/global-error.js"],"not-found":[k,"next/dist/client/components/builtin/not-found.js"],forbidden:[l,"next/dist/client/components/builtin/forbidden.js"],unauthorized:[m,"next/dist/client/components/builtin/unauthorized.js"],metadata:{icon:[async a=>(await (0,d.p)(()=>Promise.resolve().then(c.bind(c,70440)))()).default(a)],apple:[],openGraph:[],twitter:[],manifest:"/manifest.webmanifest"}},[]]}.children,v=(0,e.H)({tree:u,page:"/(dashboard)/dashboard/api-keys/page",pathname:"/dashboard/api-keys",require:c,loadChunk:()=>Promise.resolve(),interopDefault:f.T}),w=v.__next_app__,x=v.routeModule,y=v.handler},94735:a=>{"use strict";a.exports=require("events")}};var b=require("../../../../webpack-runtime.js");b.C(a);var c=b.X(0,[4741,2430,8316,8946,402,5681,4404,6064,6328,8640,5424],()=>b(b.s=93319));module.exports=c})();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":1,"files":["../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../node_modules/@swc/helpers/package.json","../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../node_modules/better-sqlite3/package.json","../../../../../../node_modules/bindings/bindings.js","../../../../../../node_modules/bindings/package.json","../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/blocking-route-messages.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-tracking.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../node_modules/next/dist/server/app-render/sync-io-messages.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/instant-messages.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/package.json","../../../../../../node_modules/pg-cloudflare/dist/empty.js","../../../../../../node_modules/pg-cloudflare/dist/index.js","../../../../../../node_modules/pg-cloudflare/package.json","../../../../../../node_modules/pg-connection-string/index.js","../../../../../../node_modules/pg-connection-string/package.json","../../../../../../node_modules/pg-int8/index.js","../../../../../../node_modules/pg-int8/package.json","../../../../../../node_modules/pg-pool/index.js","../../../../../../node_modules/pg-pool/package.json","../../../../../../node_modules/pg-protocol/dist/buffer-reader.js","../../../../../../node_modules/pg-protocol/dist/buffer-writer.js","../../../../../../node_modules/pg-protocol/dist/index.js","../../../../../../node_modules/pg-protocol/dist/messages.js","../../../../../../node_modules/pg-protocol/dist/parser.js","../../../../../../node_modules/pg-protocol/dist/serializer.js","../../../../../../node_modules/pg-protocol/package.json","../../../../../../node_modules/pg-types/index.js","../../../../../../node_modules/pg-types/lib/arrayParser.js","../../../../../../node_modules/pg-types/lib/binaryParsers.js","../../../../../../node_modules/pg-types/lib/builtins.js","../../../../../../node_modules/pg-types/lib/textParsers.js","../../../../../../node_modules/pg-types/package.json","../../../../../../node_modules/pg/esm/index.mjs","../../../../../../node_modules/pg/lib/client.js","../../../../../../node_modules/pg/lib/connection-parameters.js","../../../../../../node_modules/pg/lib/connection.js","../../../../../../node_modules/pg/lib/crypto/cert-signatures.js","../../../../../../node_modules/pg/lib/crypto/sasl.js","../../../../../../node_modules/pg/lib/crypto/utils.js","../../../../../../node_modules/pg/lib/defaults.js","../../../../../../node_modules/pg/lib/index.js","../../../../../../node_modules/pg/lib/native/client.js","../../../../../../node_modules/pg/lib/native/index.js","../../../../../../node_modules/pg/lib/native/query.js","../../../../../../node_modules/pg/lib/query.js","../../../../../../node_modules/pg/lib/result.js","../../../../../../node_modules/pg/lib/stream.js","../../../../../../node_modules/pg/lib/type-overrides.js","../../../../../../node_modules/pg/lib/utils.js","../../../../../../node_modules/pg/package.json","../../../../../../node_modules/pgpass/lib/helper.js","../../../../../../node_modules/pgpass/lib/index.js","../../../../../../node_modules/pgpass/package.json","../../../../../../node_modules/postgres-array/index.js","../../../../../../node_modules/postgres-array/package.json","../../../../../../node_modules/postgres-bytea/index.js","../../../../../../node_modules/postgres-bytea/package.json","../../../../../../node_modules/postgres-date/index.js","../../../../../../node_modules/postgres-date/package.json","../../../../../../node_modules/postgres-interval/index.js","../../../../../../node_modules/postgres-interval/package.json","../../../../../../node_modules/react/cjs/react.development.js","../../../../../../node_modules/react/cjs/react.production.js","../../../../../../node_modules/react/index.js","../../../../../../node_modules/react/package.json","../../../../../../node_modules/split2/index.js","../../../../../../node_modules/split2/package.json","../../../../../../node_modules/sql.js/dist/sql-wasm.js","../../../../../../node_modules/sql.js/package.json","../../../../../../node_modules/xtend/mutable.js","../../../../../../node_modules/xtend/package.json","../../../../../../package.json","../../../../../package.json","../../../../chunks/1002.js","../../../../chunks/1455.js","../../../../chunks/1817.js","../../../../chunks/1998.js","../../../../chunks/2155.js","../../../../chunks/2242.js","../../../../chunks/241.js","../../../../chunks/2430.js","../../../../chunks/2506.js","../../../../chunks/2507.js","../../../../chunks/2512.js","../../../../chunks/2556.js","../../../../chunks/2566.js","../../../../chunks/2611.js","../../../../chunks/2650.js","../../../../chunks/2664.js","../../../../chunks/2731.js","../../../../chunks/2891.js","../../../../chunks/2944.js","../../../../chunks/3031.js","../../../../chunks/3104.js","../../../../chunks/318.js","../../../../chunks/3433.js","../../../../chunks/3484.js","../../../../chunks/3593.js","../../../../chunks/3609.js","../../../../chunks/3696.js","../../../../chunks/3738.js","../../../../chunks/3767.js","../../../../chunks/3801.js","../../../../chunks/3824.js","../../../../chunks/3958.js","../../../../chunks/3960.js","../../../../chunks/4013.js","../../../../chunks/4017.js","../../../../chunks/402.js","../../../../chunks/4123.js","../../../../chunks/4177.js","../../../../chunks/4298.js","../../../../chunks/4315.js","../../../../chunks/436.js","../../../../chunks/4404.js","../../../../chunks/4433.js","../../../../chunks/4632.js","../../../../chunks/4696.js","../../../../chunks/4739.js","../../../../chunks/4741.js","../../../../chunks/4746.js","../../../../chunks/476.js","../../../../chunks/4778.js","../../../../chunks/4780.js","../../../../chunks/4790.js","../../../../chunks/4803.js","../../../../chunks/507.js","../../../../chunks/5206.js","../../../../chunks/5210.js","../../../../chunks/5258.js","../../../../chunks/541.js","../../../../chunks/5424.js","../../../../chunks/5433.js","../../../../chunks/5573.js","../../../../chunks/5592.js","../../../../chunks/564.js","../../../../chunks/5681.js","../../../../chunks/5852.js","../../../../chunks/5901.js","../../../../chunks/5915.js","../../../../chunks/595.js","../../../../chunks/6053.js","../../../../chunks/6064.js","../../../../chunks/607.js","../../../../chunks/6103.js","../../../../chunks/6108.js","../../../../chunks/6118.js","../../../../chunks/6182.js","../../../../chunks/6252.js","../../../../chunks/6328.js","../../../../chunks/6404.js","../../../../chunks/6492.js","../../../../chunks/6811.js","../../../../chunks/6844.js","../../../../chunks/689.js","../../../../chunks/6936.js","../../../../chunks/6956.js","../../../../chunks/6977.js","../../../../chunks/6979.js","../../../../chunks/698.js","../../../../chunks/6992.js","../../../../chunks/7126.js","../../../../chunks/7242.js","../../../../chunks/7341.js","../../../../chunks/7464.js","../../../../chunks/7639.js","../../../../chunks/7669.js","../../../../chunks/7707.js","../../../../chunks/7753.js","../../../../chunks/7774.js","../../../../chunks/7812.js","../../../../chunks/7828.js","../../../../chunks/7859.js","../../../../chunks/7965.js","../../../../chunks/7986.js","../../../../chunks/8023.js","../../../../chunks/8062.js","../../../../chunks/8099.js","../../../../chunks/814.js","../../../../chunks/8255.js","../../../../chunks/8316.js","../../../../chunks/8347.js","../../../../chunks/8352.js","../../../../chunks/8360.js","../../../../chunks/8469.js","../../../../chunks/8491.js","../../../../chunks/8520.js","../../../../chunks/8590.js","../../../../chunks/8640.js","../../../../chunks/8895.js","../../../../chunks/8946.js","../../../../chunks/9483.js","../../../../chunks/9489.js","../../../../chunks/9609.js","../../../../chunks/9868.js","../../../../webpack-runtime.js","page_client-reference-manifest.js"]}
|
|
1
|
+
{"version":1,"files":["../../../../../../node_modules/@swc/helpers/_/_interop_require_default/package.json","../../../../../../node_modules/@swc/helpers/cjs/_interop_require_default.cjs","../../../../../../node_modules/@swc/helpers/package.json","../../../../../../node_modules/better-sqlite3/build/Release/better_sqlite3.node","../../../../../../node_modules/better-sqlite3/lib/database.js","../../../../../../node_modules/better-sqlite3/lib/index.js","../../../../../../node_modules/better-sqlite3/lib/methods/aggregate.js","../../../../../../node_modules/better-sqlite3/lib/methods/backup.js","../../../../../../node_modules/better-sqlite3/lib/methods/function.js","../../../../../../node_modules/better-sqlite3/lib/methods/inspect.js","../../../../../../node_modules/better-sqlite3/lib/methods/pragma.js","../../../../../../node_modules/better-sqlite3/lib/methods/serialize.js","../../../../../../node_modules/better-sqlite3/lib/methods/table.js","../../../../../../node_modules/better-sqlite3/lib/methods/transaction.js","../../../../../../node_modules/better-sqlite3/lib/methods/wrappers.js","../../../../../../node_modules/better-sqlite3/lib/sqlite-error.js","../../../../../../node_modules/better-sqlite3/lib/util.js","../../../../../../node_modules/better-sqlite3/package.json","../../../../../../node_modules/bindings/bindings.js","../../../../../../node_modules/bindings/package.json","../../../../../../node_modules/file-uri-to-path/index.js","../../../../../../node_modules/file-uri-to-path/package.json","../../../../../../node_modules/next/dist/build/adapter/setup-node-env.external.js","../../../../../../node_modules/next/dist/client/components/hooks-server-context.js","../../../../../../node_modules/next/dist/client/components/static-generation-bailout.js","../../../../../../node_modules/next/dist/client/lib/console.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/index.js","../../../../../../node_modules/next/dist/compiled/@opentelemetry/api/package.json","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/index.js","../../../../../../node_modules/next/dist/compiled/jsonwebtoken/package.json","../../../../../../node_modules/next/dist/compiled/next-server/app-page.runtime.prod.js","../../../../../../node_modules/next/dist/compiled/source-map/package.json","../../../../../../node_modules/next/dist/compiled/source-map/source-map.js","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/package.json","../../../../../../node_modules/next/dist/compiled/stacktrace-parser/stack-trace-parser.cjs.js","../../../../../../node_modules/next/dist/compiled/ws/index.js","../../../../../../node_modules/next/dist/compiled/ws/package.json","../../../../../../node_modules/next/dist/lib/client-and-server-references.js","../../../../../../node_modules/next/dist/lib/constants.js","../../../../../../node_modules/next/dist/lib/framework/boundary-constants.js","../../../../../../node_modules/next/dist/lib/interop-default.js","../../../../../../node_modules/next/dist/lib/is-error.js","../../../../../../node_modules/next/dist/lib/picocolors.js","../../../../../../node_modules/next/dist/lib/scheduler.js","../../../../../../node_modules/next/dist/lib/semver-noop.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/action-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/after-task-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/async-local-storage.js","../../../../../../node_modules/next/dist/server/app-render/blocking-route-messages.js","../../../../../../node_modules/next/dist/server/app-render/cache-signal.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/console-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-access-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/dynamic-rendering.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-constants.js","../../../../../../node_modules/next/dist/server/app-render/instant-validation/boundary-tracking.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.external.js","../../../../../../node_modules/next/dist/server/app-render/module-loading/track-module-loading.instance.js","../../../../../../node_modules/next/dist/server/app-render/staged-rendering.js","../../../../../../node_modules/next/dist/server/app-render/sync-io-messages.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-async-storage.external.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage-instance.js","../../../../../../node_modules/next/dist/server/app-render/work-unit-async-storage.external.js","../../../../../../node_modules/next/dist/server/dev/browser-logs/file-logger.js","../../../../../../node_modules/next/dist/server/dynamic-rendering-utils.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/memory-cache.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/shared-cache-controls.external.js","../../../../../../node_modules/next/dist/server/lib/incremental-cache/tags-manifest.external.js","../../../../../../node_modules/next/dist/server/lib/lru-cache.js","../../../../../../node_modules/next/dist/server/lib/parse-stack.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-globals.external.js","../../../../../../node_modules/next/dist/server/lib/router-utils/instrumentation-node-extensions.js","../../../../../../node_modules/next/dist/server/lib/source-maps.js","../../../../../../node_modules/next/dist/server/lib/trace/constants.js","../../../../../../node_modules/next/dist/server/lib/trace/tracer.js","../../../../../../node_modules/next/dist/server/load-manifest.external.js","../../../../../../node_modules/next/dist/server/node-environment-baseline.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-dim.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-exit.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/console-file.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/date.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/error-inspect.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/fast-set-immediate.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/io-utils.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/node-crypto.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/random.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/unhandled-rejection.external.js","../../../../../../node_modules/next/dist/server/node-environment-extensions/web-crypto.js","../../../../../../node_modules/next/dist/server/node-environment.js","../../../../../../node_modules/next/dist/server/node-polyfill-crypto.js","../../../../../../node_modules/next/dist/server/patch-error-inspect.js","../../../../../../node_modules/next/dist/server/require-hook.js","../../../../../../node_modules/next/dist/server/response-cache/types.js","../../../../../../node_modules/next/dist/server/runtime-reacts.external.js","../../../../../../node_modules/next/dist/shared/lib/deep-freeze.js","../../../../../../node_modules/next/dist/shared/lib/instant-messages.js","../../../../../../node_modules/next/dist/shared/lib/invariant-error.js","../../../../../../node_modules/next/dist/shared/lib/is-plain-object.js","../../../../../../node_modules/next/dist/shared/lib/is-thenable.js","../../../../../../node_modules/next/dist/shared/lib/lazy-dynamic/bailout-to-csr.js","../../../../../../node_modules/next/dist/shared/lib/no-fallback-error.external.js","../../../../../../node_modules/next/dist/shared/lib/promise-with-resolvers.js","../../../../../../node_modules/next/dist/shared/lib/server-reference-info.js","../../../../../../node_modules/next/package.json","../../../../../../node_modules/pg-cloudflare/dist/empty.js","../../../../../../node_modules/pg-cloudflare/dist/index.js","../../../../../../node_modules/pg-cloudflare/package.json","../../../../../../node_modules/pg-connection-string/index.js","../../../../../../node_modules/pg-connection-string/package.json","../../../../../../node_modules/pg-int8/index.js","../../../../../../node_modules/pg-int8/package.json","../../../../../../node_modules/pg-pool/index.js","../../../../../../node_modules/pg-pool/package.json","../../../../../../node_modules/pg-protocol/dist/buffer-reader.js","../../../../../../node_modules/pg-protocol/dist/buffer-writer.js","../../../../../../node_modules/pg-protocol/dist/index.js","../../../../../../node_modules/pg-protocol/dist/messages.js","../../../../../../node_modules/pg-protocol/dist/parser.js","../../../../../../node_modules/pg-protocol/dist/serializer.js","../../../../../../node_modules/pg-protocol/package.json","../../../../../../node_modules/pg-types/index.js","../../../../../../node_modules/pg-types/lib/arrayParser.js","../../../../../../node_modules/pg-types/lib/binaryParsers.js","../../../../../../node_modules/pg-types/lib/builtins.js","../../../../../../node_modules/pg-types/lib/textParsers.js","../../../../../../node_modules/pg-types/package.json","../../../../../../node_modules/pg/esm/index.mjs","../../../../../../node_modules/pg/lib/client.js","../../../../../../node_modules/pg/lib/connection-parameters.js","../../../../../../node_modules/pg/lib/connection.js","../../../../../../node_modules/pg/lib/crypto/cert-signatures.js","../../../../../../node_modules/pg/lib/crypto/sasl.js","../../../../../../node_modules/pg/lib/crypto/utils.js","../../../../../../node_modules/pg/lib/defaults.js","../../../../../../node_modules/pg/lib/index.js","../../../../../../node_modules/pg/lib/native/client.js","../../../../../../node_modules/pg/lib/native/index.js","../../../../../../node_modules/pg/lib/native/query.js","../../../../../../node_modules/pg/lib/query.js","../../../../../../node_modules/pg/lib/result.js","../../../../../../node_modules/pg/lib/stream.js","../../../../../../node_modules/pg/lib/type-overrides.js","../../../../../../node_modules/pg/lib/utils.js","../../../../../../node_modules/pg/package.json","../../../../../../node_modules/pgpass/lib/helper.js","../../../../../../node_modules/pgpass/lib/index.js","../../../../../../node_modules/pgpass/package.json","../../../../../../node_modules/postgres-array/index.js","../../../../../../node_modules/postgres-array/package.json","../../../../../../node_modules/postgres-bytea/index.js","../../../../../../node_modules/postgres-bytea/package.json","../../../../../../node_modules/postgres-date/index.js","../../../../../../node_modules/postgres-date/package.json","../../../../../../node_modules/postgres-interval/index.js","../../../../../../node_modules/postgres-interval/package.json","../../../../../../node_modules/react/cjs/react.development.js","../../../../../../node_modules/react/cjs/react.production.js","../../../../../../node_modules/react/index.js","../../../../../../node_modules/react/package.json","../../../../../../node_modules/split2/index.js","../../../../../../node_modules/split2/package.json","../../../../../../node_modules/sql.js/dist/sql-wasm.js","../../../../../../node_modules/sql.js/package.json","../../../../../../node_modules/xtend/mutable.js","../../../../../../node_modules/xtend/package.json","../../../../../../package.json","../../../../../package.json","../../../../chunks/1002.js","../../../../chunks/1455.js","../../../../chunks/1817.js","../../../../chunks/1998.js","../../../../chunks/2155.js","../../../../chunks/2242.js","../../../../chunks/241.js","../../../../chunks/2430.js","../../../../chunks/2506.js","../../../../chunks/2507.js","../../../../chunks/2512.js","../../../../chunks/2556.js","../../../../chunks/2566.js","../../../../chunks/2611.js","../../../../chunks/2650.js","../../../../chunks/2664.js","../../../../chunks/2731.js","../../../../chunks/2891.js","../../../../chunks/2944.js","../../../../chunks/3031.js","../../../../chunks/3104.js","../../../../chunks/318.js","../../../../chunks/3433.js","../../../../chunks/3484.js","../../../../chunks/3593.js","../../../../chunks/3609.js","../../../../chunks/3696.js","../../../../chunks/3738.js","../../../../chunks/3767.js","../../../../chunks/3801.js","../../../../chunks/3824.js","../../../../chunks/3958.js","../../../../chunks/3960.js","../../../../chunks/4013.js","../../../../chunks/4017.js","../../../../chunks/402.js","../../../../chunks/4123.js","../../../../chunks/4177.js","../../../../chunks/4298.js","../../../../chunks/4315.js","../../../../chunks/436.js","../../../../chunks/4404.js","../../../../chunks/4433.js","../../../../chunks/4594.js","../../../../chunks/4632.js","../../../../chunks/4696.js","../../../../chunks/4739.js","../../../../chunks/4741.js","../../../../chunks/4746.js","../../../../chunks/476.js","../../../../chunks/4778.js","../../../../chunks/4780.js","../../../../chunks/4790.js","../../../../chunks/4803.js","../../../../chunks/507.js","../../../../chunks/5206.js","../../../../chunks/5210.js","../../../../chunks/5258.js","../../../../chunks/541.js","../../../../chunks/5424.js","../../../../chunks/5433.js","../../../../chunks/5573.js","../../../../chunks/5592.js","../../../../chunks/564.js","../../../../chunks/5681.js","../../../../chunks/5852.js","../../../../chunks/5901.js","../../../../chunks/5915.js","../../../../chunks/595.js","../../../../chunks/6053.js","../../../../chunks/6064.js","../../../../chunks/607.js","../../../../chunks/6103.js","../../../../chunks/6108.js","../../../../chunks/6118.js","../../../../chunks/6182.js","../../../../chunks/6252.js","../../../../chunks/6328.js","../../../../chunks/6404.js","../../../../chunks/6492.js","../../../../chunks/6811.js","../../../../chunks/6844.js","../../../../chunks/689.js","../../../../chunks/6936.js","../../../../chunks/6956.js","../../../../chunks/6977.js","../../../../chunks/6979.js","../../../../chunks/698.js","../../../../chunks/6992.js","../../../../chunks/7126.js","../../../../chunks/7142.js","../../../../chunks/7242.js","../../../../chunks/7341.js","../../../../chunks/7464.js","../../../../chunks/7639.js","../../../../chunks/7669.js","../../../../chunks/7707.js","../../../../chunks/7753.js","../../../../chunks/7774.js","../../../../chunks/7812.js","../../../../chunks/7828.js","../../../../chunks/7965.js","../../../../chunks/7986.js","../../../../chunks/8023.js","../../../../chunks/8062.js","../../../../chunks/8099.js","../../../../chunks/814.js","../../../../chunks/8255.js","../../../../chunks/8316.js","../../../../chunks/8347.js","../../../../chunks/8352.js","../../../../chunks/8360.js","../../../../chunks/8469.js","../../../../chunks/8491.js","../../../../chunks/8520.js","../../../../chunks/8590.js","../../../../chunks/8640.js","../../../../chunks/8895.js","../../../../chunks/8946.js","../../../../chunks/9483.js","../../../../chunks/9489.js","../../../../chunks/9609.js","../../../../chunks/9868.js","../../../../webpack-runtime.js","page_client-reference-manifest.js"]}
|