@sifxprime/krouter 0.5.6 → 0.5.8

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.
Files changed (911) hide show
  1. package/README.md +9 -9
  2. package/app/.next-cli-build/BUILD_ID +1 -1
  3. package/app/.next-cli-build/app-path-routes-manifest.json +5 -3
  4. package/app/.next-cli-build/build-manifest.json +2 -2
  5. package/app/.next-cli-build/prerender-manifest.json +24 -0
  6. package/app/.next-cli-build/routes-manifest.json +12 -0
  7. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +3 -3
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/environment/page.js +2 -0
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/environment/page.js.nft.json +1 -0
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/environment/page_client-reference-manifest.js +1 -0
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +3 -3
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +3 -3
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
  38. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  39. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  40. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  41. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  42. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  43. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
  44. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  45. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  46. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  47. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  48. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  49. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
  50. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  51. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  52. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  53. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  54. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  55. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  56. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  57. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  58. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +3 -3
  59. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  60. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  61. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  62. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  63. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  64. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +2 -2
  65. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  66. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  67. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  68. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  69. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  70. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  71. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  72. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  73. package/app/.next-cli-build/server/app/_global-error/page.js +3 -3
  74. package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  75. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  76. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  77. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  78. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  79. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  80. package/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  81. package/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +1 -1
  82. package/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +1 -1
  83. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  84. package/app/.next-cli-build/server/app/_not-found/page.js +2 -2
  85. package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  86. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  87. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  88. package/app/.next-cli-build/server/app/_not-found.rsc +4 -4
  89. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
  90. package/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +1 -1
  91. package/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +4 -4
  92. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  93. package/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  94. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  95. package/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  96. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  97. package/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
  98. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  99. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  100. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  101. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  102. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  103. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  104. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  105. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js +1 -1
  106. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js.nft.json +1 -1
  107. package/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
  108. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  109. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +5 -5
  110. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  111. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  112. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  113. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  114. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  115. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  116. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  117. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +1 -1
  118. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  119. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  120. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  121. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  122. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  123. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
  124. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  125. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +1 -1
  126. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  127. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +2 -2
  128. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  129. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +3 -3
  130. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  131. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
  132. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  133. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +3 -3
  134. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  135. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  136. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  137. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  138. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  139. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  140. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  141. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  142. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  143. package/app/.next-cli-build/server/app/api/combos/[id]/route.js +2 -1
  144. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  145. package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  146. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  147. package/app/.next-cli-build/server/app/api/health/route.js +1 -1
  148. package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  149. package/app/.next-cli-build/server/app/api/init/route.js +1 -1
  150. package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  151. package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  152. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  153. package/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  154. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  155. package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  156. package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  157. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +1 -1
  158. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  159. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +2 -2
  160. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  161. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  162. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  163. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  164. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  165. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  166. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  167. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  168. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  169. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  170. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  171. package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  172. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  173. package/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
  174. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  175. package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  176. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  177. package/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  178. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  179. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  180. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  181. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  182. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  183. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  184. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  185. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
  186. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
  187. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  188. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  189. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  190. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  191. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  192. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  193. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  194. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  195. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  196. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  197. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  198. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  199. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  200. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  201. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  202. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  203. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  204. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  205. package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  206. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  207. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  208. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  209. package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  210. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  211. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  212. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  213. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  214. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  215. package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  216. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  217. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  218. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  219. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  220. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  221. package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  222. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  223. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  224. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  225. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  226. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  227. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  228. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  229. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  230. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  231. package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  232. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  233. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  234. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  235. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  236. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  237. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
  238. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  239. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
  240. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  241. package/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  242. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  243. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
  244. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  245. package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  246. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  247. package/app/.next-cli-build/server/app/api/settings/environment/route.js +1 -0
  248. package/app/.next-cli-build/server/app/api/settings/environment/route.js.nft.json +1 -0
  249. package/app/.next-cli-build/server/app/api/settings/environment/route_client-reference-manifest.js +1 -0
  250. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  251. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  252. package/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  253. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  254. package/app/.next-cli-build/server/app/api/settings/route.js +2 -1
  255. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  256. package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  257. package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  258. package/app/.next-cli-build/server/app/api/tags/route.js +1 -1
  259. package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  260. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  261. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  262. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  263. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  264. package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  265. package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  266. package/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  267. package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  268. package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  269. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  270. package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  271. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  272. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  273. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  274. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  275. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  276. package/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  277. package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  278. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  279. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  280. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  281. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  282. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  283. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  284. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +3 -3
  285. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  286. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  287. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  288. package/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  289. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  290. package/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  291. package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  292. package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  293. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  294. package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  295. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  296. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  297. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  298. package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  299. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  300. package/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  301. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  302. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  303. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  304. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +2 -1
  305. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  306. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  307. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  308. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  309. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  310. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  311. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  312. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  313. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  314. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +3 -2
  315. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  316. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  317. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  318. package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  319. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  320. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  321. package/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  322. package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  323. package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  324. package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  325. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  326. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  327. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  328. package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  329. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  330. package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  331. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  332. package/app/.next-cli-build/server/app/api/v1/search/route.js +2 -1
  333. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  334. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +2 -1
  335. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  336. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  337. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  338. package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  339. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  340. package/app/.next-cli-build/server/app/api/version/route.js +1 -1
  341. package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  342. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  343. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  344. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  345. package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  346. package/app/.next-cli-build/server/app/callback/page.js +2 -2
  347. package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  348. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  349. package/app/.next-cli-build/server/app/callback.html +1 -1
  350. package/app/.next-cli-build/server/app/callback.rsc +4 -4
  351. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +4 -4
  352. package/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +1 -1
  353. package/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +4 -4
  354. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
  355. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +1 -1
  356. package/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +1 -1
  357. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  358. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +6 -6
  359. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +2 -2
  360. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +1 -1
  361. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  362. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  363. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
  364. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +1 -1
  365. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +4 -4
  366. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  367. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  368. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +6 -6
  369. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  370. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  371. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  372. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  373. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
  374. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  375. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +4 -4
  376. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  377. package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  378. package/app/.next-cli-build/server/app/dashboard/combos.rsc +6 -6
  379. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  380. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  381. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  382. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  383. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  384. package/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  385. package/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +4 -4
  386. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  387. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  388. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +6 -6
  389. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  390. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  391. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  392. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  393. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
  394. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  395. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +4 -4
  396. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  397. package/app/.next-cli-build/server/app/dashboard/environment.html +1 -0
  398. package/app/.next-cli-build/server/app/dashboard/environment.meta +17 -0
  399. package/app/.next-cli-build/server/app/dashboard/environment.rsc +27 -0
  400. package/app/.next-cli-build/server/app/dashboard/environment.segments/!KGRhc2hib2FyZCk/dashboard/environment/__PAGE__.segment.rsc +9 -0
  401. package/app/.next-cli-build/server/app/dashboard/environment.segments/!KGRhc2hib2FyZCk/dashboard/environment.segment.rsc +5 -0
  402. package/app/.next-cli-build/server/app/dashboard/environment.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +5 -0
  403. package/app/.next-cli-build/server/app/dashboard/environment.segments/!KGRhc2hib2FyZCk.segment.rsc +6 -0
  404. package/app/.next-cli-build/server/app/dashboard/environment.segments/_full.segment.rsc +27 -0
  405. package/app/.next-cli-build/server/app/dashboard/environment.segments/_head.segment.rsc +6 -0
  406. package/app/.next-cli-build/server/app/dashboard/environment.segments/_index.segment.rsc +8 -0
  407. package/app/.next-cli-build/server/app/dashboard/environment.segments/_tree.segment.rsc +6 -0
  408. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  409. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +6 -6
  410. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +2 -2
  411. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +1 -1
  412. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +1 -1
  413. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  414. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  415. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +6 -6
  416. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +1 -1
  417. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +4 -4
  418. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
  419. package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  420. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +6 -6
  421. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +2 -2
  422. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +1 -1
  423. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  424. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  425. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
  426. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +1 -1
  427. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +4 -4
  428. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  429. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  430. package/app/.next-cli-build/server/app/dashboard/profile.rsc +6 -6
  431. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +2 -2
  432. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  433. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  434. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  435. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  436. package/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  437. package/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +4 -4
  438. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  439. package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  440. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +6 -6
  441. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  442. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  443. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  444. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  445. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  446. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
  447. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  448. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +4 -4
  449. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  450. package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  451. package/app/.next-cli-build/server/app/dashboard/providers.rsc +6 -6
  452. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  453. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  454. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  455. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  456. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
  457. package/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  458. package/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +4 -4
  459. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  460. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  461. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +6 -6
  462. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +2 -2
  463. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +1 -1
  464. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  465. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  466. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
  467. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +1 -1
  468. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +4 -4
  469. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  470. package/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  471. package/app/.next-cli-build/server/app/dashboard/quota.rsc +7 -7
  472. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +3 -3
  473. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +1 -1
  474. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  475. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  476. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +7 -7
  477. package/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +1 -1
  478. package/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +4 -4
  479. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
  480. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
  481. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  482. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  483. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  484. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +4 -4
  485. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +4 -4
  486. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  487. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +4 -4
  488. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  489. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +1 -1
  490. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +1 -1
  491. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +1 -1
  492. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +1 -1
  493. package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  494. package/app/.next-cli-build/server/app/dashboard/skills.rsc +6 -6
  495. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +2 -2
  496. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills.segment.rsc +1 -1
  497. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  498. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  499. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +6 -6
  500. package/app/.next-cli-build/server/app/dashboard/skills.segments/_head.segment.rsc +1 -1
  501. package/app/.next-cli-build/server/app/dashboard/skills.segments/_index.segment.rsc +4 -4
  502. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
  503. package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  504. package/app/.next-cli-build/server/app/dashboard/translator.rsc +6 -6
  505. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  506. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  507. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  508. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  509. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
  510. package/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  511. package/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +4 -4
  512. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  513. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  514. package/app/.next-cli-build/server/app/dashboard/usage.rsc +6 -6
  515. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  516. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  517. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  518. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  519. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  520. package/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  521. package/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +4 -4
  522. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  523. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  524. package/app/.next-cli-build/server/app/dashboard.rsc +6 -6
  525. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +2 -2
  526. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  527. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  528. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +6 -6
  529. package/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +1 -1
  530. package/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +4 -4
  531. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  532. package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
  533. package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
  534. package/app/.next-cli-build/server/app/index.html +1 -1
  535. package/app/.next-cli-build/server/app/index.rsc +4 -4
  536. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  537. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +4 -4
  538. package/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +1 -1
  539. package/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +4 -4
  540. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
  541. package/app/.next-cli-build/server/app/landing/page.js +2 -2
  542. package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  543. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  544. package/app/.next-cli-build/server/app/landing.html +1 -1
  545. package/app/.next-cli-build/server/app/landing.rsc +5 -5
  546. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +5 -5
  547. package/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +1 -1
  548. package/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +4 -4
  549. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
  550. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
  551. package/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +1 -1
  552. package/app/.next-cli-build/server/app/login/page.js +2 -2
  553. package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  554. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  555. package/app/.next-cli-build/server/app/login.html +1 -1
  556. package/app/.next-cli-build/server/app/login.rsc +5 -5
  557. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +5 -5
  558. package/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +1 -1
  559. package/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +4 -4
  560. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
  561. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  562. package/app/.next-cli-build/server/app/login.segments/login.segment.rsc +1 -1
  563. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
  564. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  565. package/app/.next-cli-build/server/app/page.js +2 -2
  566. package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  567. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  568. package/app/.next-cli-build/server/app-paths-manifest.json +5 -3
  569. package/app/.next-cli-build/server/chunks/2722.js +11 -11
  570. package/app/.next-cli-build/server/chunks/2966.js +1 -1
  571. package/app/.next-cli-build/server/chunks/3104.js +1 -1
  572. package/app/.next-cli-build/server/chunks/318.js +1 -1
  573. package/app/.next-cli-build/server/chunks/3535.js +1 -1
  574. package/app/.next-cli-build/server/chunks/412.js +1 -1
  575. package/app/.next-cli-build/server/chunks/4161.js +1 -0
  576. package/app/.next-cli-build/server/chunks/4177.js +1 -1
  577. package/app/.next-cli-build/server/chunks/4380.js +1 -0
  578. package/app/.next-cli-build/server/chunks/4746.js +1 -1
  579. package/app/.next-cli-build/server/chunks/4884.js +1 -1
  580. package/app/.next-cli-build/server/chunks/5024.js +1 -1
  581. package/app/.next-cli-build/server/chunks/6182.js +63 -0
  582. package/app/.next-cli-build/server/chunks/6298.js +1 -1
  583. package/app/.next-cli-build/server/chunks/706.js +1 -0
  584. package/app/.next-cli-build/server/chunks/7153.js +1 -0
  585. package/app/.next-cli-build/server/chunks/7501.js +1 -0
  586. package/app/.next-cli-build/server/chunks/7540.js +7 -7
  587. package/app/.next-cli-build/server/chunks/7774.js +15 -15
  588. package/app/.next-cli-build/server/chunks/7879.js +2 -2
  589. package/app/.next-cli-build/server/chunks/8271.js +1 -0
  590. package/app/.next-cli-build/server/chunks/8895.js +1 -1
  591. package/app/.next-cli-build/server/chunks/9489.js +2 -1
  592. package/app/.next-cli-build/server/chunks/9754.js +1 -0
  593. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  594. package/app/.next-cli-build/server/middleware.js +1 -1
  595. package/app/.next-cli-build/server/pages/404.html +1 -1
  596. package/app/.next-cli-build/server/pages/500.html +1 -1
  597. package/app/.next-cli-build/static/chunks/{1321-af234bd85e3c185f.js → 1321-54b4a8da412f1ce5.js} +1 -1
  598. package/app/.next-cli-build/static/chunks/{5497-203788669b701ef3.js → 5497-5e835b2348fa3ba4.js} +2 -2
  599. package/app/.next-cli-build/static/chunks/6069-16dfda64c3d754de.js +53 -0
  600. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-4c1e725bd992da4a.js +1 -0
  601. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/environment/page-c4bf05bcf846ba6d.js +1 -0
  602. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/{page-442131997a40d2c6.js → page-e2ad254d0354082d.js} +1 -1
  603. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-1befb2cb37eac66d.js +10 -0
  604. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-29d3f0186b78fa76.js +1 -0
  605. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/{page-62a53f4e6cbff359.js → page-bff87b71ed7474bb.js} +1 -1
  606. package/app/.next-cli-build/static/chunks/app/_global-error/page-478dd09cdaa20324.js +1 -0
  607. package/app/.next-cli-build/static/chunks/app/api/auth/login/route-478dd09cdaa20324.js +1 -0
  608. package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-478dd09cdaa20324.js +1 -0
  609. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-478dd09cdaa20324.js +1 -0
  610. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-478dd09cdaa20324.js +1 -0
  611. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-478dd09cdaa20324.js +1 -0
  612. package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-478dd09cdaa20324.js +1 -0
  613. package/app/.next-cli-build/static/chunks/app/api/auth/status/route-478dd09cdaa20324.js +1 -0
  614. package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-478dd09cdaa20324.js +1 -0
  615. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-478dd09cdaa20324.js +1 -0
  616. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-478dd09cdaa20324.js +1 -0
  617. package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-478dd09cdaa20324.js +1 -0
  618. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-478dd09cdaa20324.js +1 -0
  619. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-478dd09cdaa20324.js +1 -0
  620. package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-478dd09cdaa20324.js +1 -0
  621. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-478dd09cdaa20324.js +1 -0
  622. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-478dd09cdaa20324.js +1 -0
  623. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-478dd09cdaa20324.js +1 -0
  624. package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-478dd09cdaa20324.js +1 -0
  625. package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-478dd09cdaa20324.js +1 -0
  626. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-478dd09cdaa20324.js +1 -0
  627. package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-478dd09cdaa20324.js +1 -0
  628. package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-478dd09cdaa20324.js +1 -0
  629. package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-478dd09cdaa20324.js +1 -0
  630. package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-478dd09cdaa20324.js +1 -0
  631. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-478dd09cdaa20324.js +1 -0
  632. package/app/.next-cli-build/static/chunks/app/api/combos/route-478dd09cdaa20324.js +1 -0
  633. package/app/.next-cli-build/static/chunks/app/api/health/route-478dd09cdaa20324.js +1 -0
  634. package/app/.next-cli-build/static/chunks/app/api/init/route-478dd09cdaa20324.js +1 -0
  635. package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-478dd09cdaa20324.js +1 -0
  636. package/app/.next-cli-build/static/chunks/app/api/keys/route-478dd09cdaa20324.js +1 -0
  637. package/app/.next-cli-build/static/chunks/app/api/locale/route-478dd09cdaa20324.js +1 -0
  638. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-478dd09cdaa20324.js +1 -0
  639. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-478dd09cdaa20324.js +1 -0
  640. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-478dd09cdaa20324.js +1 -0
  641. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-478dd09cdaa20324.js +1 -0
  642. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-478dd09cdaa20324.js +1 -0
  643. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-478dd09cdaa20324.js +1 -0
  644. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-478dd09cdaa20324.js +1 -0
  645. package/app/.next-cli-build/static/chunks/app/api/models/alias/route-478dd09cdaa20324.js +1 -0
  646. package/app/.next-cli-build/static/chunks/app/api/models/availability/route-478dd09cdaa20324.js +1 -0
  647. package/app/.next-cli-build/static/chunks/app/api/models/custom/route-478dd09cdaa20324.js +1 -0
  648. package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-478dd09cdaa20324.js +1 -0
  649. package/app/.next-cli-build/static/chunks/app/api/models/route-478dd09cdaa20324.js +1 -0
  650. package/app/.next-cli-build/static/chunks/app/api/models/test/route-478dd09cdaa20324.js +1 -0
  651. package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-478dd09cdaa20324.js +1 -0
  652. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-478dd09cdaa20324.js +1 -0
  653. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-478dd09cdaa20324.js +1 -0
  654. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-478dd09cdaa20324.js +1 -0
  655. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-478dd09cdaa20324.js +1 -0
  656. package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-478dd09cdaa20324.js +1 -0
  657. package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-478dd09cdaa20324.js +1 -0
  658. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-478dd09cdaa20324.js +1 -0
  659. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-478dd09cdaa20324.js +1 -0
  660. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-478dd09cdaa20324.js +1 -0
  661. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-478dd09cdaa20324.js +1 -0
  662. package/app/.next-cli-build/static/chunks/app/api/pricing/route-478dd09cdaa20324.js +1 -0
  663. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-478dd09cdaa20324.js +1 -0
  664. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-478dd09cdaa20324.js +1 -0
  665. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-478dd09cdaa20324.js +1 -0
  666. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-478dd09cdaa20324.js +1 -0
  667. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-478dd09cdaa20324.js +1 -0
  668. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-478dd09cdaa20324.js +1 -0
  669. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-478dd09cdaa20324.js +1 -0
  670. package/app/.next-cli-build/static/chunks/app/api/providers/client/route-478dd09cdaa20324.js +1 -0
  671. package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-478dd09cdaa20324.js +1 -0
  672. package/app/.next-cli-build/static/chunks/app/api/providers/route-478dd09cdaa20324.js +1 -0
  673. package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-478dd09cdaa20324.js +1 -0
  674. package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-478dd09cdaa20324.js +1 -0
  675. package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-478dd09cdaa20324.js +1 -0
  676. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-478dd09cdaa20324.js +1 -0
  677. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-478dd09cdaa20324.js +1 -0
  678. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-478dd09cdaa20324.js +1 -0
  679. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-478dd09cdaa20324.js +1 -0
  680. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-478dd09cdaa20324.js +1 -0
  681. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-478dd09cdaa20324.js +1 -0
  682. package/app/.next-cli-build/static/chunks/app/api/settings/database/route-478dd09cdaa20324.js +1 -0
  683. package/app/.next-cli-build/static/chunks/app/api/settings/environment/route-478dd09cdaa20324.js +1 -0
  684. package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-478dd09cdaa20324.js +1 -0
  685. package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-478dd09cdaa20324.js +1 -0
  686. package/app/.next-cli-build/static/chunks/app/api/settings/route-478dd09cdaa20324.js +1 -0
  687. package/app/.next-cli-build/static/chunks/app/api/shutdown/route-478dd09cdaa20324.js +1 -0
  688. package/app/.next-cli-build/static/chunks/app/api/tags/route-478dd09cdaa20324.js +1 -0
  689. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-478dd09cdaa20324.js +1 -0
  690. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-478dd09cdaa20324.js +1 -0
  691. package/app/.next-cli-build/static/chunks/app/api/translator/load/route-478dd09cdaa20324.js +1 -0
  692. package/app/.next-cli-build/static/chunks/app/api/translator/save/route-478dd09cdaa20324.js +1 -0
  693. package/app/.next-cli-build/static/chunks/app/api/translator/send/route-478dd09cdaa20324.js +1 -0
  694. package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-478dd09cdaa20324.js +1 -0
  695. package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-478dd09cdaa20324.js +1 -0
  696. package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-478dd09cdaa20324.js +1 -0
  697. package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-478dd09cdaa20324.js +1 -0
  698. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-478dd09cdaa20324.js +1 -0
  699. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-478dd09cdaa20324.js +1 -0
  700. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-478dd09cdaa20324.js +1 -0
  701. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-478dd09cdaa20324.js +1 -0
  702. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-478dd09cdaa20324.js +1 -0
  703. package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-478dd09cdaa20324.js +1 -0
  704. package/app/.next-cli-build/static/chunks/app/api/usage/history/route-478dd09cdaa20324.js +1 -0
  705. package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-478dd09cdaa20324.js +1 -0
  706. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-478dd09cdaa20324.js +1 -0
  707. package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-478dd09cdaa20324.js +1 -0
  708. package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-478dd09cdaa20324.js +1 -0
  709. package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-478dd09cdaa20324.js +1 -0
  710. package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-478dd09cdaa20324.js +1 -0
  711. package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-478dd09cdaa20324.js +1 -0
  712. package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-478dd09cdaa20324.js +1 -0
  713. package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-478dd09cdaa20324.js +1 -0
  714. package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-478dd09cdaa20324.js +1 -0
  715. package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-478dd09cdaa20324.js +1 -0
  716. package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-478dd09cdaa20324.js +1 -0
  717. package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-478dd09cdaa20324.js +1 -0
  718. package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-478dd09cdaa20324.js +1 -0
  719. package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-478dd09cdaa20324.js +1 -0
  720. package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-478dd09cdaa20324.js +1 -0
  721. package/app/.next-cli-build/static/chunks/app/api/v1/models/route-478dd09cdaa20324.js +1 -0
  722. package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-478dd09cdaa20324.js +1 -0
  723. package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-478dd09cdaa20324.js +1 -0
  724. package/app/.next-cli-build/static/chunks/app/api/v1/route-478dd09cdaa20324.js +1 -0
  725. package/app/.next-cli-build/static/chunks/app/api/v1/search/route-478dd09cdaa20324.js +1 -0
  726. package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-478dd09cdaa20324.js +1 -0
  727. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-478dd09cdaa20324.js +1 -0
  728. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-478dd09cdaa20324.js +1 -0
  729. package/app/.next-cli-build/static/chunks/app/api/version/route-478dd09cdaa20324.js +1 -0
  730. package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-478dd09cdaa20324.js +1 -0
  731. package/app/.next-cli-build/static/chunks/app/api/version/update/route-478dd09cdaa20324.js +1 -0
  732. package/app/.next-cli-build/static/chunks/app/landing/page-6ea4d0e0696afdaf.js +1 -0
  733. package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-478dd09cdaa20324.js +1 -0
  734. package/app/.next-cli-build/static/chunks/app/page-478dd09cdaa20324.js +1 -0
  735. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-478dd09cdaa20324.js +1 -0
  736. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-478dd09cdaa20324.js +1 -0
  737. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-478dd09cdaa20324.js +1 -0
  738. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-478dd09cdaa20324.js +1 -0
  739. package/app/.next-cli-build/static/cs-JIRZTHi1El1lFpGPT-/_buildManifest.js +1 -0
  740. package/app/.next-cli-build/static/css/d850c5a6fb4ab3c5.css +1 -0
  741. package/app/cli/.build-home/{.9router/db/backups/upgrade-0.5.1-to-0.5.2-0.5.2-20260617-190156 → .krouter/db}/data.sqlite +0 -0
  742. package/app/package.json +3 -2
  743. package/app/public/favicon.svg +5 -19
  744. package/app/src/lib/updater/updater.js +16 -6
  745. package/app/src/mitm/server.js +32 -32
  746. package/cli.js +76 -17
  747. package/hooks/postinstall.js +5 -5
  748. package/hooks/sqliteRuntime.js +17 -5
  749. package/hooks/trayRuntime.js +6 -6
  750. package/package.json +3 -3
  751. package/src/cli/api/client.js +19 -5
  752. package/src/cli/menus/cliTools.js +10 -6
  753. package/src/cli/terminalUI.js +2 -2
  754. package/src/cli/tray/autostart.js +158 -30
  755. package/src/cli/tray/icon.ico +0 -0
  756. package/src/cli/tray/icon.png +0 -0
  757. package/src/cli/tray/tray.js +5 -5
  758. package/src/cli/tray/tray.ps1 +1 -1
  759. package/app/.next-cli-build/server/chunks/1051.js +0 -1
  760. package/app/.next-cli-build/server/chunks/1260.js +0 -1
  761. package/app/.next-cli-build/server/chunks/3529.js +0 -1
  762. package/app/.next-cli-build/server/chunks/6811.js +0 -1
  763. package/app/.next-cli-build/server/chunks/71.js +0 -1
  764. package/app/.next-cli-build/server/chunks/8255.js +0 -1
  765. package/app/.next-cli-build/server/chunks/915.js +0 -63
  766. package/app/.next-cli-build/static/GetUlhAf36B8GeUeChMFM/_buildManifest.js +0 -1
  767. package/app/.next-cli-build/static/chunks/6069-6837f0e0d8eeeb28.js +0 -53
  768. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-f756ee83816a63f2.js +0 -1
  769. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-71a6700f4f0a01dc.js +0 -10
  770. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-04d3612075e922f8.js +0 -1
  771. package/app/.next-cli-build/static/chunks/app/_global-error/page-45e7abb74f49cc88.js +0 -1
  772. package/app/.next-cli-build/static/chunks/app/api/auth/login/route-45e7abb74f49cc88.js +0 -1
  773. package/app/.next-cli-build/static/chunks/app/api/auth/logout/route-45e7abb74f49cc88.js +0 -1
  774. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/route-45e7abb74f49cc88.js +0 -1
  775. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-45e7abb74f49cc88.js +0 -1
  776. package/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-45e7abb74f49cc88.js +0 -1
  777. package/app/.next-cli-build/static/chunks/app/api/auth/reset-password/route-45e7abb74f49cc88.js +0 -1
  778. package/app/.next-cli-build/static/chunks/app/api/auth/status/route-45e7abb74f49cc88.js +0 -1
  779. package/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-45e7abb74f49cc88.js +0 -1
  780. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-45e7abb74f49cc88.js +0 -1
  781. package/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-45e7abb74f49cc88.js +0 -1
  782. package/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-45e7abb74f49cc88.js +0 -1
  783. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-45e7abb74f49cc88.js +0 -1
  784. package/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-45e7abb74f49cc88.js +0 -1
  785. package/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-45e7abb74f49cc88.js +0 -1
  786. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-45e7abb74f49cc88.js +0 -1
  787. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-45e7abb74f49cc88.js +0 -1
  788. package/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-45e7abb74f49cc88.js +0 -1
  789. package/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-45e7abb74f49cc88.js +0 -1
  790. package/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-45e7abb74f49cc88.js +0 -1
  791. package/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-45e7abb74f49cc88.js +0 -1
  792. package/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-45e7abb74f49cc88.js +0 -1
  793. package/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-45e7abb74f49cc88.js +0 -1
  794. package/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-45e7abb74f49cc88.js +0 -1
  795. package/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-45e7abb74f49cc88.js +0 -1
  796. package/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-45e7abb74f49cc88.js +0 -1
  797. package/app/.next-cli-build/static/chunks/app/api/combos/route-45e7abb74f49cc88.js +0 -1
  798. package/app/.next-cli-build/static/chunks/app/api/health/route-45e7abb74f49cc88.js +0 -1
  799. package/app/.next-cli-build/static/chunks/app/api/init/route-45e7abb74f49cc88.js +0 -1
  800. package/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-45e7abb74f49cc88.js +0 -1
  801. package/app/.next-cli-build/static/chunks/app/api/keys/route-45e7abb74f49cc88.js +0 -1
  802. package/app/.next-cli-build/static/chunks/app/api/locale/route-45e7abb74f49cc88.js +0 -1
  803. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-45e7abb74f49cc88.js +0 -1
  804. package/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-45e7abb74f49cc88.js +0 -1
  805. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-45e7abb74f49cc88.js +0 -1
  806. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-45e7abb74f49cc88.js +0 -1
  807. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-45e7abb74f49cc88.js +0 -1
  808. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-45e7abb74f49cc88.js +0 -1
  809. package/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-45e7abb74f49cc88.js +0 -1
  810. package/app/.next-cli-build/static/chunks/app/api/models/alias/route-45e7abb74f49cc88.js +0 -1
  811. package/app/.next-cli-build/static/chunks/app/api/models/availability/route-45e7abb74f49cc88.js +0 -1
  812. package/app/.next-cli-build/static/chunks/app/api/models/custom/route-45e7abb74f49cc88.js +0 -1
  813. package/app/.next-cli-build/static/chunks/app/api/models/disabled/route-45e7abb74f49cc88.js +0 -1
  814. package/app/.next-cli-build/static/chunks/app/api/models/route-45e7abb74f49cc88.js +0 -1
  815. package/app/.next-cli-build/static/chunks/app/api/models/test/route-45e7abb74f49cc88.js +0 -1
  816. package/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-45e7abb74f49cc88.js +0 -1
  817. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/bulk-import/route-45e7abb74f49cc88.js +0 -1
  818. package/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-45e7abb74f49cc88.js +0 -1
  819. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-45e7abb74f49cc88.js +0 -1
  820. package/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-45e7abb74f49cc88.js +0 -1
  821. package/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-45e7abb74f49cc88.js +0 -1
  822. package/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-45e7abb74f49cc88.js +0 -1
  823. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-45e7abb74f49cc88.js +0 -1
  824. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-45e7abb74f49cc88.js +0 -1
  825. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-45e7abb74f49cc88.js +0 -1
  826. package/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-45e7abb74f49cc88.js +0 -1
  827. package/app/.next-cli-build/static/chunks/app/api/pricing/route-45e7abb74f49cc88.js +0 -1
  828. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-45e7abb74f49cc88.js +0 -1
  829. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-45e7abb74f49cc88.js +0 -1
  830. package/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-45e7abb74f49cc88.js +0 -1
  831. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-45e7abb74f49cc88.js +0 -1
  832. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-45e7abb74f49cc88.js +0 -1
  833. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-45e7abb74f49cc88.js +0 -1
  834. package/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-45e7abb74f49cc88.js +0 -1
  835. package/app/.next-cli-build/static/chunks/app/api/providers/client/route-45e7abb74f49cc88.js +0 -1
  836. package/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-45e7abb74f49cc88.js +0 -1
  837. package/app/.next-cli-build/static/chunks/app/api/providers/route-45e7abb74f49cc88.js +0 -1
  838. package/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-45e7abb74f49cc88.js +0 -1
  839. package/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-45e7abb74f49cc88.js +0 -1
  840. package/app/.next-cli-build/static/chunks/app/api/providers/validate/route-45e7abb74f49cc88.js +0 -1
  841. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-45e7abb74f49cc88.js +0 -1
  842. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-45e7abb74f49cc88.js +0 -1
  843. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-45e7abb74f49cc88.js +0 -1
  844. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-45e7abb74f49cc88.js +0 -1
  845. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-45e7abb74f49cc88.js +0 -1
  846. package/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-45e7abb74f49cc88.js +0 -1
  847. package/app/.next-cli-build/static/chunks/app/api/settings/database/route-45e7abb74f49cc88.js +0 -1
  848. package/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-45e7abb74f49cc88.js +0 -1
  849. package/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-45e7abb74f49cc88.js +0 -1
  850. package/app/.next-cli-build/static/chunks/app/api/settings/route-45e7abb74f49cc88.js +0 -1
  851. package/app/.next-cli-build/static/chunks/app/api/shutdown/route-45e7abb74f49cc88.js +0 -1
  852. package/app/.next-cli-build/static/chunks/app/api/tags/route-45e7abb74f49cc88.js +0 -1
  853. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-45e7abb74f49cc88.js +0 -1
  854. package/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-45e7abb74f49cc88.js +0 -1
  855. package/app/.next-cli-build/static/chunks/app/api/translator/load/route-45e7abb74f49cc88.js +0 -1
  856. package/app/.next-cli-build/static/chunks/app/api/translator/save/route-45e7abb74f49cc88.js +0 -1
  857. package/app/.next-cli-build/static/chunks/app/api/translator/send/route-45e7abb74f49cc88.js +0 -1
  858. package/app/.next-cli-build/static/chunks/app/api/translator/translate/route-45e7abb74f49cc88.js +0 -1
  859. package/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-45e7abb74f49cc88.js +0 -1
  860. package/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-45e7abb74f49cc88.js +0 -1
  861. package/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-45e7abb74f49cc88.js +0 -1
  862. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-45e7abb74f49cc88.js +0 -1
  863. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-45e7abb74f49cc88.js +0 -1
  864. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-45e7abb74f49cc88.js +0 -1
  865. package/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-45e7abb74f49cc88.js +0 -1
  866. package/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-45e7abb74f49cc88.js +0 -1
  867. package/app/.next-cli-build/static/chunks/app/api/usage/chart/route-45e7abb74f49cc88.js +0 -1
  868. package/app/.next-cli-build/static/chunks/app/api/usage/history/route-45e7abb74f49cc88.js +0 -1
  869. package/app/.next-cli-build/static/chunks/app/api/usage/providers/route-45e7abb74f49cc88.js +0 -1
  870. package/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-45e7abb74f49cc88.js +0 -1
  871. package/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-45e7abb74f49cc88.js +0 -1
  872. package/app/.next-cli-build/static/chunks/app/api/usage/stats/route-45e7abb74f49cc88.js +0 -1
  873. package/app/.next-cli-build/static/chunks/app/api/usage/stream/route-45e7abb74f49cc88.js +0 -1
  874. package/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-45e7abb74f49cc88.js +0 -1
  875. package/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-45e7abb74f49cc88.js +0 -1
  876. package/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-45e7abb74f49cc88.js +0 -1
  877. package/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-45e7abb74f49cc88.js +0 -1
  878. package/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-45e7abb74f49cc88.js +0 -1
  879. package/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-45e7abb74f49cc88.js +0 -1
  880. package/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-45e7abb74f49cc88.js +0 -1
  881. package/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-45e7abb74f49cc88.js +0 -1
  882. package/app/.next-cli-build/static/chunks/app/api/v1/messages/route-45e7abb74f49cc88.js +0 -1
  883. package/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-45e7abb74f49cc88.js +0 -1
  884. package/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-45e7abb74f49cc88.js +0 -1
  885. package/app/.next-cli-build/static/chunks/app/api/v1/models/route-45e7abb74f49cc88.js +0 -1
  886. package/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-45e7abb74f49cc88.js +0 -1
  887. package/app/.next-cli-build/static/chunks/app/api/v1/responses/route-45e7abb74f49cc88.js +0 -1
  888. package/app/.next-cli-build/static/chunks/app/api/v1/route-45e7abb74f49cc88.js +0 -1
  889. package/app/.next-cli-build/static/chunks/app/api/v1/search/route-45e7abb74f49cc88.js +0 -1
  890. package/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-45e7abb74f49cc88.js +0 -1
  891. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-45e7abb74f49cc88.js +0 -1
  892. package/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-45e7abb74f49cc88.js +0 -1
  893. package/app/.next-cli-build/static/chunks/app/api/version/route-45e7abb74f49cc88.js +0 -1
  894. package/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-45e7abb74f49cc88.js +0 -1
  895. package/app/.next-cli-build/static/chunks/app/api/version/update/route-45e7abb74f49cc88.js +0 -1
  896. package/app/.next-cli-build/static/chunks/app/landing/page-fcd19da612ef903f.js +0 -1
  897. package/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-45e7abb74f49cc88.js +0 -1
  898. package/app/.next-cli-build/static/chunks/app/page-45e7abb74f49cc88.js +0 -1
  899. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-45e7abb74f49cc88.js +0 -1
  900. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-45e7abb74f49cc88.js +0 -1
  901. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-45e7abb74f49cc88.js +0 -1
  902. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-45e7abb74f49cc88.js +0 -1
  903. package/app/.next-cli-build/static/css/9116556a04eab3b0.css +0 -1
  904. package/app/cli/.build-home/.9router/db/backups/upgrade-0.5.2-to-0.5.3-0.5.3-20260617-190532/data.sqlite +0 -0
  905. /package/app/.next-cli-build/static/{GetUlhAf36B8GeUeChMFM → cs-JIRZTHi1El1lFpGPT-}/_ssgManifest.js +0 -0
  906. /package/app/cli/.build-home/{.9router → .krouter}/db/backups/upgrade-0.5.3-to-0.5.4-0.5.4-20260618-020746/data.sqlite +0 -0
  907. /package/app/cli/.build-home/{.9router → .krouter}/db/backups/upgrade-0.5.4-to-0.5.5-0.5.5-20260618-022155/data.sqlite +0 -0
  908. /package/app/cli/.build-home/{.9router → .krouter}/db/backups/upgrade-0.5.5-to-0.5.6-0.5.6-20260618-023500/data.sqlite +0 -0
  909. /package/app/cli/.build-home/{.9router/db → .krouter/db/backups/upgrade-0.5.6-to-0.5.7-0.5.7-20260618-205427}/data.sqlite +0 -0
  910. /package/app/cli/.build-home/{.9router → .krouter}/jwt-secret +0 -0
  911. /package/app/cli/.build-home/{.9router → .krouter}/machine-id +0 -0
@@ -0,0 +1 @@
1
+ "use strict";exports.id=4161,exports.ids=[1998,4161],exports.modules={7803:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>f,error:()=>i,info:()=>g,maskKey:()=>m,request:()=>j,response:()=>k,stream:()=>l,warn:()=>h});function d(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}function e(a){if(!a)return"";if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}function f(a,b,c){!0;{let f=c?` ${e(c)}`:"";console.log(`[${d()}] 🔍 [${a}] ${b}${f}`)}}function g(a,b,c){!0;{let f=c?` ${e(c)}`:"";console.log(`[${d()}] ℹ️ [${a}] ${b}${f}`)}}function h(a,b,c){c&&e(c)}function i(a,b,c){!0;{let f=c?` ${e(c)}`:"";console.log(`[${d()}] ❌ [${a}] ${b}${f}`)}}function j(a,b,c){let f=c?` ${e(c)}`:"";console.log(`\x1b[36m[${d()}] 📥 ${a} ${b}${f}\x1b[0m`)}function k(a,b,c){let f=c?` ${e(c)}`:"";console.log(`[${d()}] ${a<400?"\uD83D\uDCE4":"\uD83D\uDCA5"} ${a} (${b}ms)${f}`)}function l(a,b){let c=b?` ${e(b)}`:"";console.log(`[${d()}] 🌊 [STREAM] ${a}${c}`)}function m(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}},19225:(a,b,c)=>{a.exports=c(44870)},39326:(a,b,c)=>{c.d(b,{B:()=>f});var d=c(71998);function e(a){return null==a?"":String(a).trim()}async function f(a={}){try{let b=e(a?.proxyPoolId),c="__none__"===b?"":b,f=function(a={}){let b=a?.connectionProxyEnabled===!0,c=e(a?.connectionProxyUrl);return{connectionProxyEnabled:b,connectionProxyUrl:c,connectionNoProxy:e(a?.connectionNoProxy)}}(a);if(c){let a=await (0,d.hr)(c),b=e(a?.proxyUrl),f=e(a?.noProxy);if(a&&!0===a.isActive&&b){if("vercel"===a.type||"cloudflare"===a.type||"deno"===a.type)return{source:a.type,proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:f,strictProxy:!0===a.strictProxy,vercelRelayUrl:b};return{source:"pool",proxyPoolId:c,proxyPool:a,connectionProxyEnabled:!0,connectionProxyUrl:b,connectionNoProxy:f,strictProxy:!0===a.strictProxy}}}if(f.connectionProxyEnabled&&f.connectionProxyUrl)return{source:"legacy",proxyPoolId:c||null,proxyPool:null,...f};return{source:"none",proxyPoolId:c||null,proxyPool:null,...f}}catch(a){return console.error("[resolveConnectionProxyConfig] Failed to resolve proxy config:",a),{source:"error",proxyPoolId:null,proxyPool:null,connectionProxyEnabled:!1,connectionProxyUrl:"",connectionNoProxy:"",strictProxy:!1}}}},50122:(a,b,c)=>{c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},71998:(a,b,c)=>{c.d(b,{Fh:()=>d.Fh,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.OM,P:()=>d.getProviderConnections,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,createProviderConnection:()=>d.iE,fK:()=>d.fK,fv:()=>d.fv,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,o5:()=>d.o5,op:()=>d.op,rj:()=>d.updateProviderConnection,uL:()=>d.uL,ui:()=>d.ui,uv:()=>d.uv});var d=c(89718)},80238:(a,b,c)=>{c.d(b,{Pt:()=>m,Tr:()=>n,c1:()=>k,kI:()=>o,vk:()=>l});var d=c(89718),e=c(39326),f=c(12557),g=c(3662),h=c(75681),i=c(7803);let j=Promise.resolve();async function k(a,b=null,c=null,g={}){let l,m=b instanceof Set?b:b?new Set([b]):new Set,n=g?.preferredConnectionId||null,o=j;j=new Promise(a=>{l=a});try{let b;await o;let g=(0,h.rs)(a);if(h.IS[g]?.noAuth){let a=((await (0,d.mt)()).providerStrategies||{})[g]||{},b=await (0,e.B)({proxyPoolId:a.proxyPoolId||""});return{id:"noauth",connectionName:"Public",isActive:!0,accessToken:"public",providerSpecificData:{connectionProxyEnabled:b.connectionProxyEnabled,connectionProxyUrl:b.connectionProxyUrl,connectionNoProxy:b.connectionNoProxy,connectionProxyPoolId:b.proxyPoolId||null,vercelRelayUrl:b.vercelRelayUrl||""}}}let j=await (0,d.getProviderConnections)({provider:g,isActive:!0});if(i.debug("AUTH",`${a} | total connections: ${j.length}, excludeIds: ${m.size>0?[...m].join(","):"none"}, model: ${c||"any"}`),0===j.length)return i.warn("AUTH",`No credentials for ${a}`),null;let k=j.filter(a=>!(m.has(a.id)||(0,f.Bl)(a,c)));if(i.debug("AUTH",`${a} | available: ${k.length}/${j.length}`),j.forEach(a=>{let b=m.has(a.id),d=(0,f.Bl)(a,c);if(b||d){let e=(0,f.kJ)(a);i.debug("AUTH",` → ${a.id?.slice(0,8)} | ${b?"excluded":""} ${d?`modelLocked(${c}) until ${e}`:""}`)}}),0===k.length){let b=j.filter(a=>(0,f.Bl)(a,c)),d=b.map(a=>(0,f.kJ)(a)).filter(Boolean).sort()[0]||null;if(d){let e=b[0];return i.warn("AUTH",`${a} | all ${j.length} accounts locked for ${c||"all"} (${(0,f.Qo)(d)}) | lastError=${e?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:d,retryAfterHuman:(0,f.Qo)(d),lastError:e?.lastError||null,lastErrorCode:e?.errorCode||null}}return i.warn("AUTH",`${a} | all ${j.length} accounts unavailable`),null}let l=await (0,d.mt)(),p=(l.providerStrategies||{})[g]||{},q=p.fallbackStrategy||l.fallbackStrategy||"fill-first";if(n&&(b=k.find(a=>a.id===n))&&i.info("AUTH",`${a} | pinned to ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`),b);else if("round-robin"===q){let a=p.stickyRoundRobinLimit||l.stickyRoundRobinLimit||3,c=[...k].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt)-new Date(a.lastUsedAt):-1:1:(a.priority||999)-(b.priority||999))[0],e=c?.consecutiveUseCount||0;c&&c.lastUsedAt&&e<a?(b=c,await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:(b.consecutiveUseCount||0)+1})):(b=[...k].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt)-new Date(b.lastUsedAt):1:-1:(a.priority||999)-(b.priority||999))[0],await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1}))}else b=k[0];let r=await (0,e.B)(b.providerSpecificData||{});return{authType:b.authType,apiKey:b.apiKey,accessToken:b.accessToken,refreshToken:b.refreshToken,idToken:b.idToken,expiresAt:b.expiresAt,expiresIn:b.expiresIn,lastRefreshAt:b.lastRefreshAt,projectId:b.projectId,connectionName:b.displayName||b.name||b.email||b.id,copilotToken:b.providerSpecificData?.copilotToken,providerSpecificData:{...b.providerSpecificData||{},connectionProxyEnabled:r.connectionProxyEnabled,connectionProxyUrl:r.connectionProxyUrl,connectionNoProxy:r.connectionNoProxy,connectionProxyPoolId:r.proxyPoolId||null,vercelRelayUrl:r.vercelRelayUrl||""},connectionId:b.id,testStatus:b.testStatus,lastError:b.lastError,_connection:b}}finally{l&&l()}}async function l(a,b,c,e=null,h=null,j=null){if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let k="string"==typeof c?c.slice(0,100):"Provider error",m={shouldFallback:!1,cooldownMs:0},n=null,o=a.slice(0,8);return await (0,d.Q9)(a,a=>{let d,e,i,l=a?.backoffLevel||0;if(o=a?.displayName||a?.name||a?.email||o,j&&j>Date.now()?(d=!0,e=Math.min(j-Date.now(),g.fh),i=0):{shouldFallback:d,cooldownMs:e,newBackoffLevel:i}=(0,f.hk)(b,c,l),!d)return m={shouldFallback:!1,cooldownMs:0},null;let p=(0,f.S5)(h,e);return n=Object.keys(p)[0],m={shouldFallback:!0,cooldownMs:e},{...p,testStatus:"unavailable",lastError:k,errorCode:b,lastErrorAt:new Date().toISOString(),backoffLevel:i??l}})&&m.shouldFallback&&(i.warn("AUTH",`${o} locked ${n} for ${Math.round(m.cooldownMs/1e3)}s [${b}]`),e&&b&&k&&console.error(`❌ ${e} [${b}]: ${k}`)),m}async function m(a,b,c=null){if(!a||"noauth"===a)return;let e=b._connection||b,f=Date.now(),g=Object.keys(e).filter(a=>a.startsWith("modelLock_"));if(!e.testStatus&&!e.lastError&&0===g.length)return;let h=g.filter(a=>{if(c&&a===`modelLock_${c}`||c&&"modelLock___all"===a)return!0;let b=e[a];return b&&new Date(b).getTime()<=f});if(0===h.length&&"unavailable"!==e.testStatus&&!e.lastError)return;let i=g.filter(a=>{if(h.includes(a))return!1;let b=e[a];return b&&new Date(b).getTime()>f}),j=Object.fromEntries(h.map(a=>[a,null]));0===i.length&&Object.assign(j,{testStatus:"active",lastError:null,lastErrorAt:null,backoffLevel:0}),await (0,d.updateProviderConnection)(a,j)}function n(a){let b=a.headers.get("Authorization");if(b?.startsWith("Bearer "))return b.slice(7);let c=a.headers.get("x-api-key");return c||null}async function o(a){return!!a&&await (0,d.ek)(a)}},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},94755:(a,b,c)=>{c.d(b,{A:()=>i});var d=c(77598);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length;var h=c(50122);let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();var i=a,j=c;let k=(i=i||{}).random??i.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(k.length<16)throw Error("Random bytes length must be >= 16");if(k[6]=15&k[6]|64,k[8]=63&k[8]|128,b){if((j=j||0)<0||j+16>b.length)throw RangeError(`UUID byte range ${j}:${j+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[j+a]=k[a];return b}return(0,h.k)(k)}}};
@@ -1 +1 @@
1
- "use strict";exports.id=4177,exports.ids=[4177],exports.modules={74177:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{PY:()=>w,Re:()=>u,Su:()=>v,exchangeTokens:()=>t,extractCodexAccountInfo:()=>q,fetchKiroProfileArn:()=>p,kP:()=>s,sO:()=>r});var e=c(48895),f=c(55511),g=c.n(f),h=c(13808),i=c(92990),j=c(73159),k=a([e]);e=(k.then?(await k)():k)[0];let x=null;function l(a,b){let c,d=String(a||"").trim();if(!d)throw Error(`xai discovery ${b} is empty`);try{c=new URL(d)}catch(a){throw Error(`xai discovery ${b} is invalid: ${a.message}`)}if("https:"!==c.protocol)throw Error(`xai discovery ${b} must use https: ${d}`);let e=c.hostname.toLowerCase().trim();if("x.ai"!==e&&!e.endsWith(".x.ai"))throw Error(`xai discovery ${b} host ${e} is not on x.ai`);return d}async function m(){if(x)return x;try{let a=await fetch(j.oT.discoveryUrl,{headers:{Accept:"application/json"}});if(a.ok){let b=await a.json();return x={authorizeUrl:l(b.authorization_endpoint,"authorization_endpoint"),tokenUrl:l(b.token_endpoint,"token_endpoint")}}}catch{}return x={authorizeUrl:j.oT.authorizeUrl,tokenUrl:j.oT.tokenUrl}}function n(a){try{if(!a||"string"!=typeof a)return null;let b=a.split(".");if(3!==b.length)return null;let c=b[1].replace(/-/g,"+").replace(/_/g,"/"),d=(4-c.length%4)%4,e=c+"=".repeat(d);return JSON.parse(Buffer.from(e,"base64").toString("utf8"))}catch{return null}}function o(a){let b=n(a);if(b)return b.email||b.preferred_username||b.sub||void 0}async function p(a){if(!a)return null;try{let b=await fetch("https://codewhisperer.us-east-1.amazonaws.com/ListAvailableProfiles",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:`Bearer ${a}`},body:JSON.stringify({maxResults:10})});if(!b.ok)return null;let c=await b.json();return c.profiles?.find(a=>a.arn?.trim())?.arn?.trim()||null}catch{return null}}function q(a){let b=n(a);if(!b)return{};let c=b["https://api.openai.com/auth"]||{};return{email:b.email,chatgptAccountId:c.chatgpt_account_id||b.account_id,chatgptPlanType:c.chatgpt_plan_type||b.plan_type}}let y={claude:{config:i.OV,flowType:"authorization_code_pkce",buildAuthUrl:(a,b,c,d)=>{let e=new URLSearchParams({code:"true",client_id:a.clientId,response_type:"code",redirect_uri:b,scope:a.scopes.join(" "),code_challenge:d,code_challenge_method:a.codeChallengeMethod,state:c});return`${a.authorizeUrl}?${e.toString()}`},exchangeToken:async(a,b,c,d,e)=>{let f=b,g="";if(f.includes("#")){let a=f.split("#");f=a[0],g=a[1]||""}let h=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({code:f,state:g||e,grant_type:"authorization_code",client_id:a.clientId,redirect_uri:c,code_verifier:d})});if(!h.ok){let a=await h.text();throw Error(`Token exchange failed: ${a}`)}return await h.json()},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope})},codex:{config:i.DI,flowType:"authorization_code_pkce",fixedPort:1455,callbackPath:"/auth/callback",buildAuthUrl:(a,b,c,d)=>{let e={response_type:"code",client_id:a.clientId,redirect_uri:b,scope:a.scope,code_challenge:d,code_challenge_method:a.codeChallengeMethod,...a.extraParams,state:c},f=Object.entries(e).map(([a,b])=>`${a}=${encodeURIComponent(b)}`).join("&");return`${a.authorizeUrl}?${f}`},exchangeToken:async(a,b,c,d)=>{let e=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,code:b,redirect_uri:c,code_verifier:d})});if(!e.ok){let a=await e.text();throw Error(`Token exchange failed: ${a}`)}return await e.json()},mapTokens:a=>{let b=q(a.id_token),c={accessToken:a.access_token,refreshToken:a.refresh_token,idToken:a.id_token,expiresIn:a.expires_in,lastRefreshAt:new Date().toISOString()},d=b.email||o(a.access_token);return d&&(c.email=d),(b.chatgptAccountId||b.chatgptPlanType)&&(c.providerSpecificData={chatgptAccountId:b.chatgptAccountId,chatgptPlanType:b.chatgptPlanType}),c}},xai:{config:j.oT,flowType:"authorization_code_pkce",fixedPort:j.oT.loopbackPort,callbackPath:j.oT.callbackPath,pkceVerifierBytes:j.Ue,prepareConfig:async a=>{let b=await m();return{...a,authorizeUrl:b.authorizeUrl,tokenUrl:b.tokenUrl}},buildAuthUrl:(a,b,c,d)=>{let e=g().randomBytes(16).toString("hex"),f={response_type:"code",client_id:a.clientId,redirect_uri:b,scope:a.scope,code_challenge:d,code_challenge_method:a.codeChallengeMethod,state:c,nonce:e,plan:"generic",referrer:"cli-proxy-api"},h=Object.entries(f).map(([a,b])=>`${a}=${encodeURIComponent(b)}`).join("&");return`${a.authorizeUrl}?${h}`},exchangeToken:async(a,b,c,d)=>{let e=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,code:b,redirect_uri:c,code_verifier:d})});if(!e.ok){let a=await e.text();throw Error(`xAI token exchange failed: ${a}`)}return await e.json()},mapTokens:a=>{let b={accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope},c=function(a){if(!a||"string"!=typeof a)return;let b=a.split(".");if(3===b.length)try{let a=b[1].replace(/-/g,"+").replace(/_/g,"/"),c=(4-a.length%4)%4,d=Buffer.from(a+"=".repeat(c),"base64").toString("utf8"),e=JSON.parse(d);return e.email||e.preferred_username||e.sub||void 0}catch{return}}(a.id_token);return c&&(b.email=c),a.id_token&&(b.providerSpecificData={idToken:a.id_token}),b}},"gemini-cli":{config:i.LT,flowType:"authorization_code",buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({client_id:a.clientId,response_type:"code",redirect_uri:b,scope:a.scopes.join(" "),state:c,access_type:"offline",prompt:"consent"});return`${a.authorizeUrl}?${d.toString()}`},exchangeToken:async(a,b,c)=>{let d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,client_secret:a.clientSecret,code:b,redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`Token exchange failed: ${a}`)}return await d.json()},postExchange:async a=>{let b=await fetch(`${i.LT.userInfoUrl}?alt=json`,{headers:{Authorization:`Bearer ${a.access_token}`}}),c=b.ok?await b.json():{},d="";try{let b=await fetch("https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",{method:"POST",headers:{Authorization:`Bearer ${a.access_token}`,"Content-Type":"application/json"},body:JSON.stringify({metadata:(0,i.cD)(),mode:1})});if(b.ok){let a=await b.json();d=a.cloudaicompanionProject?.id||a.cloudaicompanionProject||""}}catch(a){console.log("Failed to fetch project ID:",a)}return{userInfo:c,projectId:d}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope,email:b?.userInfo?.email,projectId:b?.projectId})},antigravity:{config:i.YT,flowType:"authorization_code",buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({client_id:a.clientId,response_type:"code",redirect_uri:b,scope:a.scopes.join(" "),state:c,access_type:"offline",prompt:"consent"});return`${a.authorizeUrl}?${d.toString()}`},exchangeToken:async(a,b,c)=>{let d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,client_secret:a.clientSecret,code:b,redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`Token exchange failed: ${a}`)}return await d.json()},postExchange:async a=>{let b={Authorization:`Bearer ${a.access_token}`,"Content-Type":"application/json","User-Agent":i.YT.loadCodeAssistUserAgent,"X-Goog-Api-Client":i.YT.loadCodeAssistApiClient,"Client-Metadata":i.YT.loadCodeAssistClientMetadata,"x-request-source":"local"},c=(0,i.cD)(),d=await fetch(`${i.YT.userInfoUrl}?alt=json`,{headers:{Authorization:`Bearer ${a.access_token}`,"x-request-source":"local"}}),e=d.ok?await d.json():{},f="",g="legacy-tier";try{let a=await fetch(i.YT.loadCodeAssistEndpoint,{method:"POST",headers:b,body:JSON.stringify({metadata:c})});if(a.ok){let b=await a.json();if(f=b.cloudaicompanionProject?.id||b.cloudaicompanionProject||"",Array.isArray(b.allowedTiers)){for(let a of b.allowedTiers)if(a.isDefault&&a.id){g=a.id.trim();break}}}}catch(a){console.log("Failed to load code assist:",a)}return f&&(async()=>{for(let a=0;a<10;a++){try{let a=await fetch(i.YT.onboardUserEndpoint,{method:"POST",headers:b,body:JSON.stringify({tierId:g,metadata:c})});if(a.ok){let b=await a.json();if(!0===b.done)break}}catch(a){break}await new Promise(a=>setTimeout(a,5e3))}})().catch(()=>{}),{userInfo:e,projectId:f}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope,email:b?.userInfo?.email,projectId:b?.projectId})},iflow:{config:i.ZL,flowType:"authorization_code",buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({loginMethod:a.extraParams.loginMethod,type:a.extraParams.type,redirect:b,state:c,client_id:a.clientId});return`${a.authorizeUrl}?${d.toString()}`},exchangeToken:async(a,b,c)=>{let d=Buffer.from(`${a.clientId}:${a.clientSecret}`).toString("base64"),e=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",Authorization:`Basic ${d}`},body:new URLSearchParams({grant_type:"authorization_code",code:b,redirect_uri:c,client_id:a.clientId,client_secret:a.clientSecret})});if(!e.ok){let a=await e.text();throw Error(`Token exchange failed: ${a}`)}return await e.json()},postExchange:async a=>{let b=await fetch(`${i.ZL.userInfoUrl}?accessToken=${encodeURIComponent(a.access_token)}`,{headers:{Accept:"application/json"}});if(!b.ok){let a=await b.text();throw Error(`Failed to fetch user info: ${a}`)}let c=await b.json();if(!c.success)throw Error(`User info request failed: ${c.message||"Unknown error"}`);let d=c.data||{};if(!d.apiKey||""===d.apiKey.trim())throw Error("Empty API key returned from iFlow");if(!(d.email?.trim()||d.phone?.trim()))throw Error("Missing account email/phone in user info");return{userInfo:d}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,apiKey:b?.userInfo?.apiKey,email:b?.userInfo?.email||b?.userInfo?.phone,displayName:b?.userInfo?.nickname||b?.userInfo?.name})},qoder:{config:i.hF,flowType:"device_code",requestDeviceCode:async a=>{let{QoderService:b}=await c.e(1531).then(c.bind(c,91531)),d=new b().initiateDeviceFlow();return{device_code:d.nonce,user_code:d.nonce.slice(0,8).toUpperCase(),verification_uri:a.loginUrl,verification_uri_complete:d.verificationUriComplete,expires_in:300,interval:2,codeVerifier:d.codeVerifier,_qoderNonce:d.nonce,_qoderMachineId:d.machineId}},pollToken:async(a,b,d,e)=>{let f,{QoderService:g}=await c.e(1531).then(c.bind(c,91531)),h=new g,i=b||e?._qoderNonce,j=d||e?._qoderVerifier;if(!i||!j)return{ok:!1,data:{error:"invalid_request",error_description:"Missing nonce/verifier"}};try{f=await h.pollDeviceToken({nonce:i,codeVerifier:j})}catch(a){return{ok:!1,data:{error:"poll_failed",error_description:a.message}}}if("pending"===f.status)return{ok:!1,data:{error:"authorization_pending"}};let k=await h.fetchUserInfo(f.accessToken),l=Math.floor((f.expireTime-Date.now())/1e3),m=Math.max(86400,l);return{ok:!0,data:{access_token:f.accessToken,refresh_token:f.refreshToken,expires_in:m,_qoderUserId:f.userId,_qoderMachineId:e?._qoderMachineId||"",_qoderName:k.name,_qoderEmail:k.email,_qoderOrganizationId:k.organizationId}}},mapTokens:a=>{let b=(a._qoderEmail||"").trim(),c=(a._qoderName||"").trim()||null,d=a._qoderUserId||"",e=b||(d?`qoder-user-${d}`:null);return{accessToken:a.access_token,refreshToken:a.refresh_token||null,expiresIn:a.expires_in,email:e,displayName:c,providerSpecificData:{authMethod:"device",userId:d,machineId:a._qoderMachineId||"",organizationId:a._qoderOrganizationId||""}}}},qwen:{config:i.Hp,flowType:"device_code",requestDeviceCode:async(a,b)=>{let c=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId,scope:a.scope,code_challenge:b,code_challenge_method:a.codeChallengeMethod})});if(!c.ok){let a=await c.text();throw Error(`Device code request failed: ${a}`)}return await c.json()},pollToken:async(a,b,c)=>{let d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:device_code",client_id:a.clientId,device_code:b,code_verifier:c})});return{ok:d.ok,data:await d.json()}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,providerSpecificData:{resourceUrl:a.resource_url}})},github:{config:i.Nu,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId,scope:a.scopes})});if(!b.ok){let a=await b.text();throw Error(`Device code request failed: ${a}`)}return await b.json()},pollToken:async(a,b)=>{let c,d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId,device_code:b,grant_type:"urn:ietf:params:oauth:grant-type:device_code"})});try{c=await d.json()}catch(b){let a=await d.text();c={error:"invalid_response",error_description:a}}return{ok:d.ok,data:c}},postExchange:async a=>{let b=await fetch(i.Nu.copilotTokenUrl,{headers:{Authorization:`Bearer ${a.access_token}`,Accept:"application/json","X-GitHub-Api-Version":i.Nu.apiVersion,"User-Agent":i.Nu.userAgent}}),c=b.ok?await b.json():{},d=await fetch(i.Nu.userInfoUrl,{headers:{Authorization:`Bearer ${a.access_token}`,Accept:"application/json","X-GitHub-Api-Version":i.Nu.apiVersion,"User-Agent":i.Nu.userAgent}}),e=d.ok?await d.json():{};return{copilotToken:c,userInfo:e}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,providerSpecificData:{copilotToken:b?.copilotToken?.token,copilotTokenExpiresAt:b?.copilotToken?.expires_at,githubUserId:b?.userInfo?.id,githubLogin:b?.userInfo?.login,githubName:b?.userInfo?.name,githubEmail:b?.userInfo?.email}})},kiro:{config:i.Tx,flowType:"device_code",requestDeviceCode:async(a,b,c={})=>{let d=("string"==typeof c.region?c.region.trim():"")||"us-east-1",e=("string"==typeof c.startUrl?c.startUrl.trim():"")||a.startUrl,f="idc"===c.authMethod?"idc":"builder-id",g=`https://oidc.${d}.amazonaws.com/client/register`,h=`https://oidc.${d}.amazonaws.com/device_authorization`,i=await fetch(g,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientName:a.clientName,clientType:a.clientType,scopes:a.scopes,grantTypes:a.grantTypes,issuerUrl:a.issuerUrl})});if(!i.ok){let a=await i.text();throw Error(`Client registration failed: ${a}`)}let j=await i.json(),k=await fetch(h,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:j.clientId,clientSecret:j.clientSecret,startUrl:e})});if(!k.ok){let a=await k.text();throw Error(`Device authorization failed: ${a}`)}let l=await k.json();return{device_code:l.deviceCode,user_code:l.userCode,verification_uri:l.verificationUri,verification_uri_complete:l.verificationUriComplete,expires_in:l.expiresIn,interval:l.interval||5,_clientId:j.clientId,_clientSecret:j.clientSecret,_region:d,_authMethod:f,_startUrl:e}},pollToken:async(a,b,c,d)=>{let e,f=d?._region||"us-east-1",g=`https://oidc.${f}.amazonaws.com/token`,h=await fetch(g,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:d?._clientId,clientSecret:d?._clientSecret,deviceCode:b,grantType:"urn:ietf:params:oauth:grant-type:device_code"})});try{e=await h.json()}catch(b){let a=await h.text();e={error:"invalid_response",error_description:a}}return e.accessToken?{ok:!0,data:{access_token:e.accessToken,refresh_token:e.refreshToken,expires_in:e.expiresIn,profile_arn:e?.profileArn||null,_clientId:d?._clientId,_clientSecret:d?._clientSecret,_region:d?._region,_authMethod:d?._authMethod,_startUrl:d?._startUrl}}:{ok:!1,data:{error:e.error||"authorization_pending",error_description:e.error_description||e.message}}},mapTokens:a=>{let b=o(a.access_token);return{accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,email:b,providerSpecificData:{profileArn:a?.profile_arn||null,clientId:a._clientId,clientSecret:a._clientSecret,region:a._region||"us-east-1",authMethod:a._authMethod||"builder-id",startUrl:a._startUrl||i.Tx.startUrl}}}},cursor:{config:i.WN,flowType:"import_token",mapTokens:a=>({accessToken:a.accessToken,refreshToken:null,expiresIn:a.expiresIn||86400,providerSpecificData:{machineId:a.machineId,authMethod:"imported"}})},"kimi-coding":{config:i.t,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId})});if(!b.ok){let a=await b.text();throw Error(`Device code request failed: ${a}`)}let c=await b.json();return{device_code:c.device_code,user_code:c.user_code,verification_uri:c.verification_uri||"https://www.kimi.com/code/authorize_device",verification_uri_complete:c.verification_uri_complete||`https://www.kimi.com/code/authorize_device?user_code=${c.user_code}`,expires_in:c.expires_in,interval:c.interval||5}},pollToken:async(a,b)=>{let c,d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:device_code",client_id:a.clientId,device_code:b})});try{c=await d.json()}catch(b){let a=await d.text();c={error:"invalid_response",error_description:a}}return{ok:d.ok,data:c}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in})},kilocode:{config:i.MZ,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(a.initiateUrl,{method:"POST",headers:{"Content-Type":"application/json"}});if(!b.ok){if(429===b.status)throw Error("Too many pending authorization requests. Please try again later.");let a=await b.text();throw Error(`Device auth initiation failed: ${a}`)}let c=await b.json();return{device_code:c.code,user_code:c.code,verification_uri:c.verificationUrl,verification_uri_complete:c.verificationUrl,expires_in:c.expiresIn||300,interval:3}},pollToken:async(a,b)=>{let c=await fetch(`${a.pollUrlBase}/${b}`);if(202===c.status)return{ok:!1,data:{error:"authorization_pending"}};if(403===c.status)return{ok:!1,data:{error:"access_denied",error_description:"Authorization denied by user"}};if(410===c.status)return{ok:!1,data:{error:"expired_token",error_description:"Authorization code expired"}};if(!c.ok)return{ok:!1,data:{error:"poll_failed",error_description:`Poll failed: ${c.status}`}};let d=await c.json();if("approved"===d.status&&d.token){let b=null;try{let c=await fetch(`${a.apiBaseUrl}/api/profile`,{headers:{Authorization:`Bearer ${d.token}`}});if(c.ok){let a=await c.json();b=a.organizations?.[0]?.id||null}}catch{}return{ok:!0,data:{access_token:d.token,_userEmail:d.userEmail,_orgId:b}}}return{ok:!1,data:{error:"authorization_pending"}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:null,expiresIn:null,email:a._userEmail,...a._orgId?{providerSpecificData:{orgId:a._orgId}}:{}})},cline:{config:i.lB,flowType:"authorization_code",buildAuthUrl:(a,b)=>{let c=new URLSearchParams({client_type:"extension",callback_url:b,redirect_uri:b});return`${a.authorizeUrl}?${c.toString()}`},exchangeToken:async(a,b,c)=>{try{let a=b,c=4-a.length%4;4!==c&&(a+="=".repeat(c));let d=Buffer.from(a,"base64").toString("utf-8"),e=d.lastIndexOf("}");if(-1===e)throw Error("No JSON found in decoded code");let f=JSON.parse(d.substring(0,e+1));return{access_token:f.accessToken,refresh_token:f.refreshToken,email:f.email,firstName:f.firstName,lastName:f.lastName,expires_at:f.expiresAt}}catch(f){let d=await fetch(a.tokenExchangeUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"authorization_code",code:b,client_type:"extension",redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`Cline token exchange failed: ${a}`)}let e=await d.json();return{access_token:e.data?.accessToken||e.accessToken,refresh_token:e.data?.refreshToken||e.refreshToken,email:e.data?.userInfo?.email||"",expires_at:e.data?.expiresAt||e.expiresAt}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_at?Math.floor((new Date(a.expires_at).getTime()-Date.now())/1e3):3600,email:a.email,providerSpecificData:{firstName:a.firstName,lastName:a.lastName}})},gitlab:{config:i.f7,flowType:"authorization_code_pkce",buildAuthUrl:(a,b,c,d,e={})=>{let f=e.baseUrl||a.defaultBaseUrl,g=e.clientId||"",h=new URLSearchParams({client_id:g,redirect_uri:b,response_type:"code",state:c,scope:a.scope,code_challenge:d,code_challenge_method:a.codeChallengeMethod});return`${f}${a.authorizeUrlPath}?${h.toString()}`},exchangeToken:async(a,b,c,d,e,f={})=>{let g=f.baseUrl||a.defaultBaseUrl,h=f.clientId||"",i=f.clientSecret||"",j=new URLSearchParams({client_id:h,grant_type:"authorization_code",code:b,redirect_uri:c,code_verifier:d});i&&j.set("client_secret",i);let k=await fetch(`${g}${a.tokenUrlPath}`,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:j.toString()});if(!k.ok)throw Error(`GitLab token exchange failed: ${await k.text()}`);let l=await k.json(),m=await fetch(`${g}${a.userInfoUrlPath}`,{headers:{Authorization:`Bearer ${l.access_token}`}}),n=m.ok?await m.json():{};return{...l,_user:n,_baseUrl:g,_clientId:h}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope,providerSpecificData:{username:a._user?.username||"",email:a._user?.email||a._user?.public_email||"",name:a._user?.name||"",baseUrl:a._baseUrl,clientId:a._clientId,authKind:"oauth"}})},codebuddy:{config:i.Nl,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(`${a.stateUrl}?platform=${a.platform}`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-No-Authorization":"true","X-No-User-Id":"true","X-Product":"SaaS"},body:"{}"});if(!b.ok)throw Error(`CodeBuddy state request failed: ${await b.text()}`);let c=await b.json();if(0!==c.code||!c.data?.state||!c.data?.authUrl)throw Error(`CodeBuddy state error: ${c.msg||"missing state/authUrl"}`);return{device_code:c.data.state,verification_uri:c.data.authUrl,user_code:"",interval:a.pollInterval/1e3,_isCodeBuddy:!0}},pollToken:async(a,b)=>{let c=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-No-Authorization":"true","X-No-User-Id":"true","X-Product":"SaaS"},body:JSON.stringify({state:b})});if(!c.ok)return{ok:!1,data:{error:"request_failed"}};let d=await c.json();return 0===d.code&&d.data?.accessToken?{ok:!0,data:{access_token:d.data.accessToken,refresh_token:d.data.refreshToken||"",token_type:d.data.tokenType||"Bearer"}}:11217===d.code?{ok:!0,data:{error:"authorization_pending"}}:{ok:!1,data:{error:d.msg||"unknown_error"}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:86400,providerSpecificData:{}})}};function r(a){let b=y[a];if(!b)throw Error(`Unknown provider: ${a}`);return b}async function s(a,b,c){let d=r(a),e=d.prepareConfig?await d.prepareConfig(d.config,c||{}):d.config,{codeVerifier:f,codeChallenge:g,state:i}=(0,h.lz)(d.pkceVerifierBytes);return{authUrl:"device_code"===d.flowType?null:"authorization_code_pkce"===d.flowType?d.buildAuthUrl(e,b,i,g,c||{}):d.buildAuthUrl(e,b,i,void 0,c||{}),state:i,codeVerifier:f,codeChallenge:g,redirectUri:b,flowType:d.flowType,fixedPort:d.fixedPort,callbackPath:d.callbackPath||"/callback"}}async function t(a,b,c,d,e,f){let g=r(a),h=g.prepareConfig?await g.prepareConfig(g.config,f||{}):g.config,i=await g.exchangeToken(h,b,c,d,e,f||{}),j=null;return g.postExchange&&(j=await g.postExchange(i)),g.mapTokens(i,j)}async function u(a,b,c){let d=r(a);if("device_code"!==d.flowType)throw Error(`Provider ${a} does not support device code flow`);return await d.requestDeviceCode(d.config,b,c||{})}async function v(a,b,c,d){let e=r(a);if("device_code"!==e.flowType)throw Error(`Provider ${a} does not support device code flow`);let f=await e.pollToken(e.config,b,c,d);if(f.ok)if(f.data.access_token){let b=null;e.postExchange&&(b=await e.postExchange(f.data));let c=e.mapTokens(f.data,b);if("kiro"===a&&!c.providerSpecificData?.profileArn){let a=await p(c.accessToken);a&&(c.providerSpecificData.profileArn=a)}return{success:!0,tokens:c}}else if("authorization_pending"===f.data.error||"slow_down"===f.data.error)return{success:!1,error:f.data.error,errorDescription:f.data.error_description||f.data.message,pending:"authorization_pending"===f.data.error};else return{success:!1,error:f.data.error||"no_access_token",errorDescription:f.data.error_description||f.data.message||"No access token received"};return{success:!1,error:f.data.error,errorDescription:f.data.error_description}}let z=!1;async function w(){if(!z){z=!0;try{let{getProviderConnections:a,updateProviderConnection:b}=await Promise.resolve().then(c.bind(c,89718));for(let c of(await a()).filter(a=>{if("codex"!==a.provider||"oauth"!==a.authType||!a.idToken)return!1;let b=!!a.email,c=!!a.providerSpecificData?.chatgptAccountId;return!b||!c})){let a=q(c.idToken);if(!a.email&&!a.chatgptAccountId)continue;let d={};!c.email&&a.email&&(d.email=a.email),(a.chatgptAccountId||a.chatgptPlanType)&&(d.providerSpecificData={...c.providerSpecificData||{},chatgptAccountId:a.chatgptAccountId,chatgptPlanType:a.chatgptPlanType}),Object.keys(d).length&&await b(c.id,d)}}catch(a){z=!1,console.log("backfillCodexEmails failed:",a?.message||a)}}}d()}catch(a){d(a)}})}};
1
+ "use strict";exports.id=4177,exports.ids=[4177],exports.modules={74177:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{PY:()=>w,Re:()=>u,Su:()=>v,exchangeTokens:()=>t,extractCodexAccountInfo:()=>q,fetchKiroProfileArn:()=>p,kP:()=>s,sO:()=>r});var e=c(48895),f=c(55511),g=c.n(f),h=c(13808),i=c(92990),j=c(73159),k=a([e]);e=(k.then?(await k)():k)[0];let x=null;function l(a,b){let c,d=String(a||"").trim();if(!d)throw Error(`xai discovery ${b} is empty`);try{c=new URL(d)}catch(a){throw Error(`xai discovery ${b} is invalid: ${a.message}`)}if("https:"!==c.protocol)throw Error(`xai discovery ${b} must use https: ${d}`);let e=c.hostname.toLowerCase().trim();if("x.ai"!==e&&!e.endsWith(".x.ai"))throw Error(`xai discovery ${b} host ${e} is not on x.ai`);return d}async function m(){if(x)return x;try{let a=await fetch(j.oT.discoveryUrl,{headers:{Accept:"application/json"}});if(a.ok){let b=await a.json();return x={authorizeUrl:l(b.authorization_endpoint,"authorization_endpoint"),tokenUrl:l(b.token_endpoint,"token_endpoint")}}}catch{}return x={authorizeUrl:j.oT.authorizeUrl,tokenUrl:j.oT.tokenUrl}}function n(a){try{if(!a||"string"!=typeof a)return null;let b=a.split(".");if(3!==b.length)return null;let c=b[1].replace(/-/g,"+").replace(/_/g,"/"),d=(4-c.length%4)%4,e=c+"=".repeat(d);return JSON.parse(Buffer.from(e,"base64").toString("utf8"))}catch{return null}}function o(a){let b=n(a);if(b)return b.email||b.preferred_username||b.sub||void 0}async function p(a){if(!a)return null;try{let b=await fetch("https://codewhisperer.us-east-1.amazonaws.com/ListAvailableProfiles",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json",Authorization:`Bearer ${a}`},body:JSON.stringify({maxResults:10})});if(!b.ok)return null;let c=await b.json();return c.profiles?.find(a=>a.arn?.trim())?.arn?.trim()||null}catch{return null}}function q(a){let b=n(a);if(!b)return{};let c=b["https://api.openai.com/auth"]||{};return{email:b.email,chatgptAccountId:c.chatgpt_account_id||b.account_id,chatgptPlanType:c.chatgpt_plan_type||b.plan_type}}let y={claude:{config:i.OV,flowType:"authorization_code_pkce",buildAuthUrl:(a,b,c,d)=>{let e=new URLSearchParams({code:"true",client_id:a.clientId,response_type:"code",redirect_uri:b,scope:a.scopes.join(" "),code_challenge:d,code_challenge_method:a.codeChallengeMethod,state:c});return`${a.authorizeUrl}?${e.toString()}`},exchangeToken:async(a,b,c,d,e)=>{let f=b,g="";if(f.includes("#")){let a=f.split("#");f=a[0],g=a[1]||""}let h=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({code:f,state:g||e,grant_type:"authorization_code",client_id:a.clientId,redirect_uri:c,code_verifier:d})});if(!h.ok){let a=await h.text();throw Error(`Token exchange failed: ${a}`)}return await h.json()},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope})},codex:{config:i.DI,flowType:"authorization_code_pkce",fixedPort:1455,callbackPath:"/auth/callback",buildAuthUrl:(a,b,c,d)=>{let e={response_type:"code",client_id:a.clientId,redirect_uri:b,scope:a.scope,code_challenge:d,code_challenge_method:a.codeChallengeMethod,...a.extraParams,state:c},f=Object.entries(e).map(([a,b])=>`${a}=${encodeURIComponent(b)}`).join("&");return`${a.authorizeUrl}?${f}`},exchangeToken:async(a,b,c,d)=>{let e=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,code:b,redirect_uri:c,code_verifier:d})});if(!e.ok){let a=await e.text();throw Error(`Token exchange failed: ${a}`)}return await e.json()},mapTokens:a=>{let b=q(a.id_token),c={accessToken:a.access_token,refreshToken:a.refresh_token,idToken:a.id_token,expiresIn:a.expires_in,lastRefreshAt:new Date().toISOString()},d=b.email||o(a.access_token);return d&&(c.email=d),(b.chatgptAccountId||b.chatgptPlanType)&&(c.providerSpecificData={chatgptAccountId:b.chatgptAccountId,chatgptPlanType:b.chatgptPlanType}),c}},xai:{config:j.oT,flowType:"authorization_code_pkce",fixedPort:j.oT.loopbackPort,callbackPath:j.oT.callbackPath,pkceVerifierBytes:j.Ue,prepareConfig:async a=>{let b=await m();return{...a,authorizeUrl:b.authorizeUrl,tokenUrl:b.tokenUrl}},buildAuthUrl:(a,b,c,d)=>{let e=g().randomBytes(16).toString("hex"),f={response_type:"code",client_id:a.clientId,redirect_uri:b,scope:a.scope,code_challenge:d,code_challenge_method:a.codeChallengeMethod,state:c,nonce:e,plan:"generic",referrer:"cli-proxy-api"},h=Object.entries(f).map(([a,b])=>`${a}=${encodeURIComponent(b)}`).join("&");return`${a.authorizeUrl}?${h}`},exchangeToken:async(a,b,c,d)=>{let e=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,code:b,redirect_uri:c,code_verifier:d})});if(!e.ok){let a=await e.text();throw Error(`xAI token exchange failed: ${a}`)}return await e.json()},mapTokens:a=>{let b={accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope},c=function(a){if(!a||"string"!=typeof a)return;let b=a.split(".");if(3===b.length)try{let a=b[1].replace(/-/g,"+").replace(/_/g,"/"),c=(4-a.length%4)%4,d=Buffer.from(a+"=".repeat(c),"base64").toString("utf8"),e=JSON.parse(d);return e.email||e.preferred_username||e.sub||void 0}catch{return}}(a.id_token);return c&&(b.email=c),a.id_token&&(b.providerSpecificData={idToken:a.id_token}),b}},"gemini-cli":{config:i.LT,flowType:"authorization_code",buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({client_id:a.clientId,response_type:"code",redirect_uri:b,scope:a.scopes.join(" "),state:c,access_type:"offline",prompt:"consent"});return`${a.authorizeUrl}?${d.toString()}`},exchangeToken:async(a,b,c)=>{let d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,client_secret:a.clientSecret,code:b,redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`Token exchange failed: ${a}`)}return await d.json()},postExchange:async a=>{let b=await fetch(`${i.LT.userInfoUrl}?alt=json`,{headers:{Authorization:`Bearer ${a.access_token}`}}),c=b.ok?await b.json():{},d="";try{let b=await fetch("https://cloudcode-pa.googleapis.com/v1internal:loadCodeAssist",{method:"POST",headers:{Authorization:`Bearer ${a.access_token}`,"Content-Type":"application/json"},body:JSON.stringify({metadata:(0,i.cD)(),mode:1})});if(b.ok){let a=await b.json();d=a.cloudaicompanionProject?.id||a.cloudaicompanionProject||""}}catch(a){console.log("Failed to fetch project ID:",a)}return{userInfo:c,projectId:d}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope,email:b?.userInfo?.email,projectId:b?.projectId})},antigravity:{config:i.YT,flowType:"authorization_code",buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({client_id:a.clientId,response_type:"code",redirect_uri:b,scope:a.scopes.join(" "),state:c,access_type:"offline",prompt:"consent"});return`${a.authorizeUrl}?${d.toString()}`},exchangeToken:async(a,b,c)=>{let d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"authorization_code",client_id:a.clientId,client_secret:a.clientSecret,code:b,redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`Token exchange failed: ${a}`)}return await d.json()},postExchange:async a=>{let b={Authorization:`Bearer ${a.access_token}`,"Content-Type":"application/json","User-Agent":i.YT.loadCodeAssistUserAgent,"X-Goog-Api-Client":i.YT.loadCodeAssistApiClient,"Client-Metadata":i.YT.loadCodeAssistClientMetadata,"x-request-source":"local"},c=(0,i.cD)(),d=await fetch(`${i.YT.userInfoUrl}?alt=json`,{headers:{Authorization:`Bearer ${a.access_token}`,"x-request-source":"local"}}),e=d.ok?await d.json():{},f="",g="legacy-tier";try{let a=await fetch(i.YT.loadCodeAssistEndpoint,{method:"POST",headers:b,body:JSON.stringify({metadata:c})});if(a.ok){let b=await a.json();if(f=b.cloudaicompanionProject?.id||b.cloudaicompanionProject||"",Array.isArray(b.allowedTiers)){for(let a of b.allowedTiers)if(a.isDefault&&a.id){g=a.id.trim();break}}}}catch(a){console.log("Failed to load code assist:",a)}return f&&(async()=>{for(let a=0;a<10;a++){try{let a=await fetch(i.YT.onboardUserEndpoint,{method:"POST",headers:b,body:JSON.stringify({tierId:g,metadata:c})});if(a.ok){let b=await a.json();if(!0===b.done)break}}catch(a){break}await new Promise(a=>setTimeout(a,5e3))}})().catch(()=>{}),{userInfo:e,projectId:f}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope,email:b?.userInfo?.email,projectId:b?.projectId})},iflow:{config:i.ZL,flowType:"authorization_code",buildAuthUrl:(a,b,c)=>{let d=new URLSearchParams({loginMethod:a.extraParams.loginMethod,type:a.extraParams.type,redirect:b,state:c,client_id:a.clientId});return`${a.authorizeUrl}?${d.toString()}`},exchangeToken:async(a,b,c)=>{let d=Buffer.from(`${a.clientId}:${a.clientSecret}`).toString("base64"),e=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",Authorization:`Basic ${d}`},body:new URLSearchParams({grant_type:"authorization_code",code:b,redirect_uri:c,client_id:a.clientId,client_secret:a.clientSecret})});if(!e.ok){let a=await e.text();throw Error(`Token exchange failed: ${a}`)}return await e.json()},postExchange:async a=>{let b=await fetch(`${i.ZL.userInfoUrl}?accessToken=${encodeURIComponent(a.access_token)}`,{headers:{Accept:"application/json"}});if(!b.ok){let a=await b.text();throw Error(`Failed to fetch user info: ${a}`)}let c=await b.json();if(!c.success)throw Error(`User info request failed: ${c.message||"Unknown error"}`);let d=c.data||{};if(!d.apiKey||""===d.apiKey.trim())throw Error("Empty API key returned from iFlow");if(!(d.email?.trim()||d.phone?.trim()))throw Error("Missing account email/phone in user info");return{userInfo:d}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,apiKey:b?.userInfo?.apiKey,email:b?.userInfo?.email||b?.userInfo?.phone,displayName:b?.userInfo?.nickname||b?.userInfo?.name})},qoder:{config:i.hF,flowType:"device_code",requestDeviceCode:async a=>{let{QoderService:b}=await c.e(1531).then(c.bind(c,91531)),d=new b().initiateDeviceFlow();return{device_code:d.nonce,user_code:d.nonce.slice(0,8).toUpperCase(),verification_uri:a.loginUrl,verification_uri_complete:d.verificationUriComplete,expires_in:300,interval:2,codeVerifier:d.codeVerifier,_qoderNonce:d.nonce,_qoderMachineId:d.machineId}},pollToken:async(a,b,d,e)=>{let f,{QoderService:g}=await c.e(1531).then(c.bind(c,91531)),h=new g,i=b||e?._qoderNonce,j=d||e?._qoderVerifier;if(!i||!j)return{ok:!1,data:{error:"invalid_request",error_description:"Missing nonce/verifier"}};try{f=await h.pollDeviceToken({nonce:i,codeVerifier:j})}catch(a){return{ok:!1,data:{error:"poll_failed",error_description:a.message}}}if("pending"===f.status)return{ok:!1,data:{error:"authorization_pending"}};let k=await h.fetchUserInfo(f.accessToken),l=Math.floor((f.expireTime-Date.now())/1e3),m=Math.max(86400,l);return{ok:!0,data:{access_token:f.accessToken,refresh_token:f.refreshToken,expires_in:m,_qoderUserId:f.userId,_qoderMachineId:e?._qoderMachineId||"",_qoderName:k.name,_qoderEmail:k.email,_qoderOrganizationId:k.organizationId}}},mapTokens:a=>{let b=(a._qoderEmail||"").trim(),c=(a._qoderName||"").trim()||null,d=a._qoderUserId||"",e=b||(d?`qoder-user-${d}`:null);return{accessToken:a.access_token,refreshToken:a.refresh_token||null,expiresIn:a.expires_in,email:e,displayName:c,providerSpecificData:{authMethod:"device",userId:d,machineId:a._qoderMachineId||"",organizationId:a._qoderOrganizationId||""}}}},qwen:{config:i.Hp,flowType:"device_code",requestDeviceCode:async(a,b)=>{let c=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId,scope:a.scope,code_challenge:b,code_challenge_method:a.codeChallengeMethod})});if(!c.ok){let a=await c.text();throw Error(`Device code request failed: ${a}`)}return await c.json()},pollToken:async(a,b,c)=>{let d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:device_code",client_id:a.clientId,device_code:b,code_verifier:c})});return{ok:d.ok,data:await d.json()}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,providerSpecificData:{resourceUrl:a.resource_url}})},github:{config:i.Nu,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId,scope:a.scopes})});if(!b.ok){let a=await b.text();throw Error(`Device code request failed: ${a}`)}return await b.json()},pollToken:async(a,b)=>{let c,d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId,device_code:b,grant_type:"urn:ietf:params:oauth:grant-type:device_code"})});try{c=await d.json()}catch(b){let a=await d.text();c={error:"invalid_response",error_description:a}}return{ok:d.ok,data:c}},postExchange:async a=>{let b=await fetch(i.Nu.copilotTokenUrl,{headers:{Authorization:`Bearer ${a.access_token}`,Accept:"application/json","X-GitHub-Api-Version":i.Nu.apiVersion,"User-Agent":i.Nu.userAgent}}),c=b.ok?await b.json():{},d=await fetch(i.Nu.userInfoUrl,{headers:{Authorization:`Bearer ${a.access_token}`,Accept:"application/json","X-GitHub-Api-Version":i.Nu.apiVersion,"User-Agent":i.Nu.userAgent}}),e=d.ok?await d.json():{};return{copilotToken:c,userInfo:e}},mapTokens:(a,b)=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,providerSpecificData:{copilotToken:b?.copilotToken?.token,copilotTokenExpiresAt:b?.copilotToken?.expires_at,githubUserId:b?.userInfo?.id,githubLogin:b?.userInfo?.login,githubName:b?.userInfo?.name,githubEmail:b?.userInfo?.email}})},kiro:{config:i.Tx,flowType:"device_code",requestDeviceCode:async(a,b,c={})=>{let d=("string"==typeof c.region?c.region.trim():"")||"us-east-1";(0,i.S6)(d);let e=("string"==typeof c.startUrl?c.startUrl.trim():"")||a.startUrl,f="idc"===c.authMethod?"idc":"builder-id",g=`https://oidc.${d}.amazonaws.com/client/register`,h=`https://oidc.${d}.amazonaws.com/device_authorization`,j=await fetch(g,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientName:a.clientName,clientType:a.clientType,scopes:a.scopes,grantTypes:a.grantTypes,issuerUrl:a.issuerUrl})});if(!j.ok){let a=await j.text();throw Error(`Client registration failed: ${a}`)}let k=await j.json(),l=await fetch(h,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:k.clientId,clientSecret:k.clientSecret,startUrl:e})});if(!l.ok){let a=await l.text();throw Error(`Device authorization failed: ${a}`)}let m=await l.json();return{device_code:m.deviceCode,user_code:m.userCode,verification_uri:m.verificationUri,verification_uri_complete:m.verificationUriComplete,expires_in:m.expiresIn,interval:m.interval||5,_clientId:k.clientId,_clientSecret:k.clientSecret,_region:d,_authMethod:f,_startUrl:e}},pollToken:async(a,b,c,d)=>{let e,f=d?._region||"us-east-1";(0,i.S6)(f);let g=`https://oidc.${f}.amazonaws.com/token`,h=await fetch(g,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:d?._clientId,clientSecret:d?._clientSecret,deviceCode:b,grantType:"urn:ietf:params:oauth:grant-type:device_code"})});try{e=await h.json()}catch(b){let a=await h.text();e={error:"invalid_response",error_description:a}}return e.accessToken?{ok:!0,data:{access_token:e.accessToken,refresh_token:e.refreshToken,expires_in:e.expiresIn,profile_arn:e?.profileArn||null,_clientId:d?._clientId,_clientSecret:d?._clientSecret,_region:d?._region,_authMethod:d?._authMethod,_startUrl:d?._startUrl}}:{ok:!1,data:{error:e.error||"authorization_pending",error_description:e.error_description||e.message}}},mapTokens:a=>{let b=o(a.access_token);return{accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,email:b,providerSpecificData:{profileArn:a?.profile_arn||null,clientId:a._clientId,clientSecret:a._clientSecret,region:a._region||"us-east-1",authMethod:a._authMethod||"builder-id",startUrl:a._startUrl||i.Tx.startUrl}}}},cursor:{config:i.WN,flowType:"import_token",mapTokens:a=>({accessToken:a.accessToken,refreshToken:null,expiresIn:a.expiresIn||86400,providerSpecificData:{machineId:a.machineId,authMethod:"imported"}})},"kimi-coding":{config:i.t,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(a.deviceCodeUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({client_id:a.clientId})});if(!b.ok){let a=await b.text();throw Error(`Device code request failed: ${a}`)}let c=await b.json();return{device_code:c.device_code,user_code:c.user_code,verification_uri:c.verification_uri||"https://www.kimi.com/code/authorize_device",verification_uri_complete:c.verification_uri_complete||`https://www.kimi.com/code/authorize_device?user_code=${c.user_code}`,expires_in:c.expires_in,interval:c.interval||5}},pollToken:async(a,b)=>{let c,d=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:device_code",client_id:a.clientId,device_code:b})});try{c=await d.json()}catch(b){let a=await d.text();c={error:"invalid_response",error_description:a}}return{ok:d.ok,data:c}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in})},kilocode:{config:i.MZ,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(a.initiateUrl,{method:"POST",headers:{"Content-Type":"application/json"}});if(!b.ok){if(429===b.status)throw Error("Too many pending authorization requests. Please try again later.");let a=await b.text();throw Error(`Device auth initiation failed: ${a}`)}let c=await b.json();return{device_code:c.code,user_code:c.code,verification_uri:c.verificationUrl,verification_uri_complete:c.verificationUrl,expires_in:c.expiresIn||300,interval:3}},pollToken:async(a,b)=>{let c=await fetch(`${a.pollUrlBase}/${b}`);if(202===c.status)return{ok:!1,data:{error:"authorization_pending"}};if(403===c.status)return{ok:!1,data:{error:"access_denied",error_description:"Authorization denied by user"}};if(410===c.status)return{ok:!1,data:{error:"expired_token",error_description:"Authorization code expired"}};if(!c.ok)return{ok:!1,data:{error:"poll_failed",error_description:`Poll failed: ${c.status}`}};let d=await c.json();if("approved"===d.status&&d.token){let b=null;try{let c=await fetch(`${a.apiBaseUrl}/api/profile`,{headers:{Authorization:`Bearer ${d.token}`}});if(c.ok){let a=await c.json();b=a.organizations?.[0]?.id||null}}catch{}return{ok:!0,data:{access_token:d.token,_userEmail:d.userEmail,_orgId:b}}}return{ok:!1,data:{error:"authorization_pending"}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:null,expiresIn:null,email:a._userEmail,...a._orgId?{providerSpecificData:{orgId:a._orgId}}:{}})},cline:{config:i.lB,flowType:"authorization_code",buildAuthUrl:(a,b)=>{let c=new URLSearchParams({client_type:"extension",callback_url:b,redirect_uri:b});return`${a.authorizeUrl}?${c.toString()}`},exchangeToken:async(a,b,c)=>{try{let a=b,c=4-a.length%4;4!==c&&(a+="=".repeat(c));let d=Buffer.from(a,"base64").toString("utf-8"),e=d.lastIndexOf("}");if(-1===e)throw Error("No JSON found in decoded code");let f=JSON.parse(d.substring(0,e+1));return{access_token:f.accessToken,refresh_token:f.refreshToken,email:f.email,firstName:f.firstName,lastName:f.lastName,expires_at:f.expiresAt}}catch(f){let d=await fetch(a.tokenExchangeUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"authorization_code",code:b,client_type:"extension",redirect_uri:c})});if(!d.ok){let a=await d.text();throw Error(`Cline token exchange failed: ${a}`)}let e=await d.json();return{access_token:e.data?.accessToken||e.accessToken,refresh_token:e.data?.refreshToken||e.refreshToken,email:e.data?.userInfo?.email||"",expires_at:e.data?.expiresAt||e.expiresAt}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_at?Math.floor((new Date(a.expires_at).getTime()-Date.now())/1e3):3600,email:a.email,providerSpecificData:{firstName:a.firstName,lastName:a.lastName}})},gitlab:{config:i.f7,flowType:"authorization_code_pkce",buildAuthUrl:(a,b,c,d,e={})=>{let f=e.baseUrl||a.defaultBaseUrl,g=e.clientId||"",h=new URLSearchParams({client_id:g,redirect_uri:b,response_type:"code",state:c,scope:a.scope,code_challenge:d,code_challenge_method:a.codeChallengeMethod});return`${f}${a.authorizeUrlPath}?${h.toString()}`},exchangeToken:async(a,b,c,d,e,f={})=>{let g=f.baseUrl||a.defaultBaseUrl,h=f.clientId||"",i=f.clientSecret||"",j=new URLSearchParams({client_id:h,grant_type:"authorization_code",code:b,redirect_uri:c,code_verifier:d});i&&j.set("client_secret",i);let k=await fetch(`${g}${a.tokenUrlPath}`,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:j.toString()});if(!k.ok)throw Error(`GitLab token exchange failed: ${await k.text()}`);let l=await k.json(),m=await fetch(`${g}${a.userInfoUrlPath}`,{headers:{Authorization:`Bearer ${l.access_token}`}}),n=m.ok?await m.json():{};return{...l,_user:n,_baseUrl:g,_clientId:h}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:a.expires_in,scope:a.scope,providerSpecificData:{username:a._user?.username||"",email:a._user?.email||a._user?.public_email||"",name:a._user?.name||"",baseUrl:a._baseUrl,clientId:a._clientId,authKind:"oauth"}})},codebuddy:{config:i.Nl,flowType:"device_code",requestDeviceCode:async a=>{let b=await fetch(`${a.stateUrl}?platform=${a.platform}`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-No-Authorization":"true","X-No-User-Id":"true","X-Product":"SaaS"},body:"{}"});if(!b.ok)throw Error(`CodeBuddy state request failed: ${await b.text()}`);let c=await b.json();if(0!==c.code||!c.data?.state||!c.data?.authUrl)throw Error(`CodeBuddy state error: ${c.msg||"missing state/authUrl"}`);return{device_code:c.data.state,verification_uri:c.data.authUrl,user_code:"",interval:a.pollInterval/1e3,_isCodeBuddy:!0}},pollToken:async(a,b)=>{let c=await fetch(a.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":a.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-No-Authorization":"true","X-No-User-Id":"true","X-Product":"SaaS"},body:JSON.stringify({state:b})});if(!c.ok)return{ok:!1,data:{error:"request_failed"}};let d=await c.json();return 0===d.code&&d.data?.accessToken?{ok:!0,data:{access_token:d.data.accessToken,refresh_token:d.data.refreshToken||"",token_type:d.data.tokenType||"Bearer"}}:11217===d.code?{ok:!0,data:{error:"authorization_pending"}}:{ok:!1,data:{error:d.msg||"unknown_error"}}},mapTokens:a=>({accessToken:a.access_token,refreshToken:a.refresh_token,expiresIn:86400,providerSpecificData:{}})}};function r(a){let b=y[a];if(!b)throw Error(`Unknown provider: ${a}`);return b}async function s(a,b,c){let d=r(a),e=d.prepareConfig?await d.prepareConfig(d.config,c||{}):d.config,{codeVerifier:f,codeChallenge:g,state:i}=(0,h.lz)(d.pkceVerifierBytes);return{authUrl:"device_code"===d.flowType?null:"authorization_code_pkce"===d.flowType?d.buildAuthUrl(e,b,i,g,c||{}):d.buildAuthUrl(e,b,i,void 0,c||{}),state:i,codeVerifier:f,codeChallenge:g,redirectUri:b,flowType:d.flowType,fixedPort:d.fixedPort,callbackPath:d.callbackPath||"/callback"}}async function t(a,b,c,d,e,f){let g=r(a),h=g.prepareConfig?await g.prepareConfig(g.config,f||{}):g.config,i=await g.exchangeToken(h,b,c,d,e,f||{}),j=null;return g.postExchange&&(j=await g.postExchange(i)),g.mapTokens(i,j)}async function u(a,b,c){let d=r(a);if("device_code"!==d.flowType)throw Error(`Provider ${a} does not support device code flow`);return await d.requestDeviceCode(d.config,b,c||{})}async function v(a,b,c,d){let e=r(a);if("device_code"!==e.flowType)throw Error(`Provider ${a} does not support device code flow`);let f=await e.pollToken(e.config,b,c,d);if(f.ok)if(f.data.access_token){let b=null;e.postExchange&&(b=await e.postExchange(f.data));let c=e.mapTokens(f.data,b);if("kiro"===a&&!c.providerSpecificData?.profileArn){let a=await p(c.accessToken);a&&(c.providerSpecificData.profileArn=a)}return{success:!0,tokens:c}}else if("authorization_pending"===f.data.error||"slow_down"===f.data.error)return{success:!1,error:f.data.error,errorDescription:f.data.error_description||f.data.message,pending:"authorization_pending"===f.data.error};else return{success:!1,error:f.data.error||"no_access_token",errorDescription:f.data.error_description||f.data.message||"No access token received"};return{success:!1,error:f.data.error,errorDescription:f.data.error_description}}let z=!1;async function w(){if(!z){z=!0;try{let{getProviderConnections:a,updateProviderConnection:b}=await Promise.resolve().then(c.bind(c,89718));for(let c of(await a()).filter(a=>{if("codex"!==a.provider||"oauth"!==a.authType||!a.idToken)return!1;let b=!!a.email,c=!!a.providerSpecificData?.chatgptAccountId;return!b||!c})){let a=q(c.idToken);if(!a.email&&!a.chatgptAccountId)continue;let d={};!c.email&&a.email&&(d.email=a.email),(a.chatgptAccountId||a.chatgptPlanType)&&(d.providerSpecificData={...c.providerSpecificData||{},chatgptAccountId:a.chatgptAccountId,chatgptPlanType:a.chatgptPlanType}),Object.keys(d).length&&await b(c.id,d)}}catch(a){z=!1,console.log("backfillCodexEmails failed:",a?.message||a)}}}d()}catch(a){d(a)}})}};