9router-proxy 0.6.10 → 0.6.11

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 (564) hide show
  1. package/app/.next-cli-build/BUILD_ID +1 -1
  2. package/app/.next-cli-build/app-path-routes-manifest.json +4 -4
  3. package/app/.next-cli-build/build-manifest.json +3 -3
  4. package/app/.next-cli-build/prerender-manifest.json +4 -4
  5. package/app/.next-cli-build/react-loadable-manifest.json +1 -1
  6. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +1 -1
  7. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  8. package/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  9. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +1 -1
  10. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  11. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  12. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +1 -1
  13. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  14. package/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  15. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +1 -1
  16. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  17. package/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  18. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +1 -1
  19. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  20. package/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  21. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +1 -1
  22. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  23. package/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  24. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +1 -1
  25. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  26. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  27. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +1 -1
  28. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  29. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  30. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +2 -2
  31. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  32. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  33. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +1 -1
  34. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  35. package/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  36. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +1 -1
  37. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  38. package/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  39. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +1 -1
  40. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  41. package/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  42. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +1 -1
  43. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  44. package/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  45. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +5 -5
  46. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  47. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  48. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +1 -1
  49. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  50. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  51. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +1 -1
  52. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  53. package/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  54. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +1 -1
  55. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  56. package/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  57. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +1 -1
  58. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
  59. package/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
  60. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +1 -1
  61. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  62. package/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  63. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js +1 -1
  64. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page.js.nft.json +1 -1
  65. package/app/.next-cli-build/server/app/(dashboard)/dashboard/skills/page_client-reference-manifest.js +1 -1
  66. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +1 -1
  67. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  68. package/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  69. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +1 -1
  70. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  71. package/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  72. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +1 -1
  73. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  74. package/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  75. package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  76. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  77. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  78. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  79. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  80. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  81. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  82. package/app/.next-cli-build/server/app/_not-found/page.js +1 -1
  83. package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  84. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  85. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  86. package/app/.next-cli-build/server/app/_not-found.rsc +5 -5
  87. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +5 -5
  88. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +5 -5
  89. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  90. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  91. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  92. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  93. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  94. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  95. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js.nft.json +1 -1
  96. package/app/.next-cli-build/server/app/api/auth/saml/acs/route.js.nft.json +1 -1
  97. package/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js.nft.json +1 -1
  98. package/app/.next-cli-build/server/app/api/auth/saml/start/route.js.nft.json +1 -1
  99. package/app/.next-cli-build/server/app/api/auth/saml/test/route.js.nft.json +1 -1
  100. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  101. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +5 -5
  102. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  103. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  104. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  105. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  106. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  107. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  108. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +1 -1
  109. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  110. package/app/.next-cli-build/server/app/api/cli-tools/codewhale-settings/route.js +1 -1
  111. package/app/.next-cli-build/server/app/api/cli-tools/codewhale-settings/route.js.nft.json +1 -1
  112. package/app/.next-cli-build/server/app/api/cli-tools/codex-profiles/route.js.nft.json +1 -1
  113. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  114. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  115. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  116. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
  117. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  118. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +1 -1
  119. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  120. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +1 -1
  121. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  122. package/app/.next-cli-build/server/app/api/cli-tools/crush-settings/route.js +2 -2
  123. package/app/.next-cli-build/server/app/api/cli-tools/crush-settings/route.js.nft.json +1 -1
  124. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +2 -2
  125. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  126. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js +1 -1
  127. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js.nft.json +1 -1
  128. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
  129. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  130. package/app/.next-cli-build/server/app/api/cli-tools/forge-settings/route.js +2 -2
  131. package/app/.next-cli-build/server/app/api/cli-tools/forge-settings/route.js.nft.json +1 -1
  132. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +2 -2
  133. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js.nft.json +1 -1
  134. package/app/.next-cli-build/server/app/api/cli-tools/hermes-profiles/route.js +22 -2
  135. package/app/.next-cli-build/server/app/api/cli-tools/hermes-profiles/route.js.nft.json +1 -1
  136. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
  137. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  138. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  139. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  140. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  141. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  142. package/app/.next-cli-build/server/app/api/cli-tools/omp-settings/route.js +3 -3
  143. package/app/.next-cli-build/server/app/api/cli-tools/omp-settings/route.js.nft.json +1 -1
  144. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  145. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  146. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +1 -1
  147. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  148. package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js +1 -1
  149. package/app/.next-cli-build/server/app/api/cli-tools/pi-settings/route.js.nft.json +1 -1
  150. package/app/.next-cli-build/server/app/api/cli-tools/smelt-settings/route.js +2 -2
  151. package/app/.next-cli-build/server/app/api/cli-tools/smelt-settings/route.js.nft.json +1 -1
  152. package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  153. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  154. package/app/.next-cli-build/server/app/api/combos/presets/route.js +1 -1
  155. package/app/.next-cli-build/server/app/api/combos/presets/route.js.nft.json +1 -1
  156. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  157. package/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
  158. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
  159. package/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
  160. package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  161. package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  162. package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  163. package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  164. package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  165. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  166. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  167. package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  168. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  169. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  170. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  171. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  172. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  173. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  174. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  175. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  176. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  177. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  178. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  179. package/app/.next-cli-build/server/app/api/models/catalog-sync/route.js +1 -1
  180. package/app/.next-cli-build/server/app/api/models/catalog-sync/route.js.nft.json +1 -1
  181. package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  182. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  183. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  184. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  185. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  186. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  187. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  188. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  189. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  190. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
  191. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
  192. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  193. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  194. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  195. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  196. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  197. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  198. package/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js.nft.json +1 -1
  199. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  200. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
  201. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
  202. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  203. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  204. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  205. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
  206. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  207. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  208. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  209. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  210. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/api-key/route.js.nft.json +1 -1
  211. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route.js.nft.json +1 -1
  212. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/login/start/route.js.nft.json +1 -1
  213. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/login/status/route.js.nft.json +1 -1
  214. package/app/.next-cli-build/server/app/api/oauth/zed/auto-import/route.js.nft.json +1 -1
  215. package/app/.next-cli-build/server/app/api/oauth/zed/import/route.js.nft.json +1 -1
  216. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  217. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  218. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  219. package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  220. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  221. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  222. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  223. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  224. package/app/.next-cli-build/server/app/api/providers/[id]/overrides/route.js +1 -1
  225. package/app/.next-cli-build/server/app/api/providers/[id]/overrides/route.js.nft.json +1 -1
  226. package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  227. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  228. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  229. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  230. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  231. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  232. package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  233. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  234. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  235. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  236. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  237. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  238. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  239. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  240. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  241. package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  242. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  243. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  244. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  245. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  246. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  247. package/app/.next-cli-build/server/app/api/proxy-pools/netlify-deploy/route.js.nft.json +1 -1
  248. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  249. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  250. package/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
  251. package/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
  252. package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js.nft.json +1 -1
  253. package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
  254. package/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
  255. package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
  256. package/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
  257. package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
  258. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  259. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  260. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  261. package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  262. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  263. package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  264. package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  265. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  266. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  267. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
  268. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  269. package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  270. package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  271. package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  272. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  273. package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  274. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  275. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  276. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +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.nft.json +1 -1
  279. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  280. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  281. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
  282. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  283. package/app/.next-cli-build/server/app/api/usage/[connectionId]/claude-reset/route.js +1 -1
  284. package/app/.next-cli-build/server/app/api/usage/[connectionId]/claude-reset/route.js.nft.json +1 -1
  285. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
  286. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
  287. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  288. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +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.nft.json +1 -1
  291. package/app/.next-cli-build/server/app/api/usage/logs/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.nft.json +1 -1
  295. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  296. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  297. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  298. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  299. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  300. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  301. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  302. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  303. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  304. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  305. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  306. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  307. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  308. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  309. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  310. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +2 -2
  311. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  312. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  313. package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  314. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  315. package/app/.next-cli-build/server/app/api/v1/models/[...model]/route.js +1 -1
  316. package/app/.next-cli-build/server/app/api/v1/models/[...model]/route.js.nft.json +1 -1
  317. package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  318. package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  319. package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  320. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  321. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  322. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  323. package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  324. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  325. package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  326. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  327. package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  328. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  329. package/app/.next-cli-build/server/app/api/v1/systemone/route.js +1 -1
  330. package/app/.next-cli-build/server/app/api/v1/systemone/route.js.nft.json +1 -1
  331. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
  332. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -1
  333. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
  334. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -1
  335. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
  336. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -1
  337. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
  338. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
  339. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  340. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  341. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  342. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  343. package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  344. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  345. package/app/.next-cli-build/server/app/api/version/route.js +1 -1
  346. package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  347. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  348. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  349. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  350. package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  351. package/app/.next-cli-build/server/app/callback/page.js +1 -1
  352. package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  353. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  354. package/app/.next-cli-build/server/app/callback.html +1 -1
  355. package/app/.next-cli-build/server/app/callback.rsc +5 -5
  356. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +5 -5
  357. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
  358. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +5 -5
  359. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  360. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +5 -5
  361. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +5 -5
  362. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +5 -5
  363. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  364. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  365. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +6 -6
  366. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +6 -6
  367. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
  368. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  369. package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  370. package/app/.next-cli-build/server/app/dashboard/combos.rsc +6 -6
  371. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +6 -6
  372. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  373. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  374. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  375. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +5 -5
  376. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +5 -5
  377. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +5 -5
  378. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  379. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  380. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +5 -5
  381. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +5 -5
  382. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +5 -5
  383. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
  384. package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  385. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +6 -6
  386. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +6 -6
  387. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
  388. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  389. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  390. package/app/.next-cli-build/server/app/dashboard/profile.rsc +5 -5
  391. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +5 -5
  392. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +5 -5
  393. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  394. package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  395. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +5 -5
  396. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +5 -5
  397. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +5 -5
  398. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  399. package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  400. package/app/.next-cli-build/server/app/dashboard/providers.rsc +5 -5
  401. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +5 -5
  402. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +5 -5
  403. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  404. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  405. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +5 -5
  406. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +5 -5
  407. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +5 -5
  408. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  409. package/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
  410. package/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +5 -5
  411. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +5 -5
  412. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +5 -5
  413. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +2 -2
  414. package/app/.next-cli-build/server/app/dashboard/quota.html +1 -1
  415. package/app/.next-cli-build/server/app/dashboard/quota.rsc +6 -6
  416. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +6 -6
  417. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +6 -6
  418. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
  419. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +1 -1
  420. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  421. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  422. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  423. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +5 -5
  424. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -5
  425. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  426. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +5 -5
  427. package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  428. package/app/.next-cli-build/server/app/dashboard/skills.rsc +5 -5
  429. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +5 -5
  430. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +5 -5
  431. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +2 -2
  432. package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  433. package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +5 -5
  434. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +5 -5
  435. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +5 -5
  436. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +2 -2
  437. package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  438. package/app/.next-cli-build/server/app/dashboard/translator.rsc +5 -5
  439. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +5 -5
  440. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +5 -5
  441. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  442. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  443. package/app/.next-cli-build/server/app/dashboard/usage.rsc +6 -6
  444. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +6 -6
  445. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  446. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  447. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  448. package/app/.next-cli-build/server/app/dashboard.rsc +5 -5
  449. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +5 -5
  450. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +5 -5
  451. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  452. package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
  453. package/app/.next-cli-build/server/app/index.html +1 -1
  454. package/app/.next-cli-build/server/app/index.rsc +5 -5
  455. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +5 -5
  456. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +5 -5
  457. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
  458. package/app/.next-cli-build/server/app/landing/page.js +1 -1
  459. package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  460. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  461. package/app/.next-cli-build/server/app/landing.html +1 -1
  462. package/app/.next-cli-build/server/app/landing.rsc +5 -5
  463. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +5 -5
  464. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
  465. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +5 -5
  466. package/app/.next-cli-build/server/app/login/page.js +1 -1
  467. package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  468. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  469. package/app/.next-cli-build/server/app/login.html +1 -1
  470. package/app/.next-cli-build/server/app/login.rsc +5 -5
  471. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +5 -5
  472. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
  473. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +5 -5
  474. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  475. package/app/.next-cli-build/server/app/page.js +1 -1
  476. package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  477. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  478. package/app/.next-cli-build/server/app-paths-manifest.json +4 -4
  479. package/app/.next-cli-build/server/chunks/1051.js +1 -1
  480. package/app/.next-cli-build/server/chunks/1350.js +1 -1
  481. package/app/.next-cli-build/server/chunks/1757.js +22 -2
  482. package/app/.next-cli-build/server/chunks/1836.js +1 -1
  483. package/app/.next-cli-build/server/chunks/24.js +1 -1
  484. package/app/.next-cli-build/server/chunks/2409.js +1 -1
  485. package/app/.next-cli-build/server/chunks/{2329.js → 2578.js} +1 -1
  486. package/app/.next-cli-build/server/chunks/2897.js +1 -0
  487. package/app/.next-cli-build/server/chunks/2983.js +1 -0
  488. package/app/.next-cli-build/server/chunks/3210.js +1 -1
  489. package/app/.next-cli-build/server/chunks/3535.js +1 -1
  490. package/app/.next-cli-build/server/chunks/3726.js +1 -1
  491. package/app/.next-cli-build/server/chunks/3943.js +1 -1
  492. package/app/.next-cli-build/server/chunks/3966.js +1 -1
  493. package/app/.next-cli-build/server/chunks/4049.js +1 -1
  494. package/app/.next-cli-build/server/chunks/412.js +5 -5
  495. package/app/.next-cli-build/server/chunks/4123.js +1 -1
  496. package/app/.next-cli-build/server/chunks/4199.js +1 -1
  497. package/app/.next-cli-build/server/chunks/436.js +1 -1
  498. package/app/.next-cli-build/server/chunks/4798.js +1 -1
  499. package/app/.next-cli-build/server/chunks/5026.js +1 -1
  500. package/app/.next-cli-build/server/chunks/5299.js +10 -3
  501. package/app/.next-cli-build/server/chunks/5330.js +5 -5
  502. package/app/.next-cli-build/server/chunks/5615.js +2 -2
  503. package/app/.next-cli-build/server/chunks/562.js +1 -1
  504. package/app/.next-cli-build/server/chunks/6070.js +1 -1
  505. package/app/.next-cli-build/server/chunks/614.js +6 -6
  506. package/app/.next-cli-build/server/chunks/615.js +1 -1
  507. package/app/.next-cli-build/server/chunks/6877.js +1 -1
  508. package/app/.next-cli-build/server/chunks/6922.js +1 -1
  509. package/app/.next-cli-build/server/chunks/7066.js +1 -1
  510. package/app/.next-cli-build/server/chunks/7211.js +1 -1
  511. package/app/.next-cli-build/server/chunks/7247.js +1 -1
  512. package/app/.next-cli-build/server/chunks/7716.js +1 -1
  513. package/app/.next-cli-build/server/chunks/7828.js +1 -1
  514. package/app/.next-cli-build/server/chunks/7843.js +1 -1
  515. package/app/.next-cli-build/server/chunks/8251.js +1 -1
  516. package/app/.next-cli-build/server/chunks/8363.js +1 -1
  517. package/app/.next-cli-build/server/chunks/8402.js +1 -1
  518. package/app/.next-cli-build/server/chunks/8499.js +6 -2
  519. package/app/.next-cli-build/server/chunks/8635.js +1 -1
  520. package/app/.next-cli-build/server/chunks/869.js +1 -1
  521. package/app/.next-cli-build/server/chunks/8895.js +4 -4
  522. package/app/.next-cli-build/server/chunks/8910.js +1 -1
  523. package/app/.next-cli-build/server/chunks/9100.js +2 -2
  524. package/app/.next-cli-build/server/chunks/936.js +1 -1
  525. package/app/.next-cli-build/server/chunks/9604.js +1 -1
  526. package/app/.next-cli-build/server/chunks/{6555.js → 9858.js} +1 -1
  527. package/app/.next-cli-build/server/instrumentation.js +1 -1
  528. package/app/.next-cli-build/server/instrumentation.js.nft.json +1 -1
  529. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  530. package/app/.next-cli-build/server/middleware-react-loadable-manifest.js +1 -1
  531. package/app/.next-cli-build/server/middleware.js.nft.json +1 -1
  532. package/app/.next-cli-build/server/pages/404.html +1 -1
  533. package/app/.next-cli-build/server/pages/500.html +1 -1
  534. package/app/.next-cli-build/server/preview-props.json +3 -3
  535. package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
  536. package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
  537. package/app/.next-cli-build/static/chunks/1321-dd1b3ddaa32903fc.js +1 -0
  538. package/app/.next-cli-build/static/chunks/5497-619cad99e918e6b6.js +7 -0
  539. package/app/.next-cli-build/static/chunks/6808-ada8d917f8f60e64.js +1 -0
  540. package/app/.next-cli-build/static/chunks/{761-e9f1b4d71f823c81.js → 761-c9086970fe03f4a1.js} +17 -10
  541. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-68f91309eb1f96f4.js +1 -0
  542. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-4eb913893337386a.js → page-46e8e71f59e43a41.js} +1 -1
  543. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-52036f4792a313ea.js → page-bdffd7da424a40f6.js} +2 -2
  544. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-c18f2c1a8086dade.js +27 -0
  545. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-4dbfaf4b1a0b1c32.js +1 -0
  546. package/app/.next-cli-build/static/chunks/app/(dashboard)/{layout-95805ef9f057450e.js → layout-9b16f294682f60b0.js} +1 -1
  547. package/app/.next-cli-build/static/chunks/{webpack-f32df626b66ad66c.js → webpack-12ea7382538b2759.js} +1 -1
  548. package/app/.next-cli-build/static/css/ddd5ce279857f5e9.css +1 -0
  549. package/app/package.json +1 -1
  550. package/app/public/providers/nous.png +0 -0
  551. package/app/src/mitm/server.js +1 -1
  552. package/app/src/shared/services/quotaAutoPing.js +57 -25
  553. package/package.json +1 -1
  554. package/app/.next-cli-build/server/chunks/2375.js +0 -1
  555. package/app/.next-cli-build/server/chunks/3711.js +0 -1
  556. package/app/.next-cli-build/static/chunks/1321-c14ab5f20e75ec51.js +0 -1
  557. package/app/.next-cli-build/static/chunks/5497-76da5aae5c912ea5.js +0 -7
  558. package/app/.next-cli-build/static/chunks/6808-89bf09eb1e95c74d.js +0 -1
  559. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-08d02f26c201563c.js +0 -1
  560. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-85d183456bb818fb.js +0 -27
  561. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-736db53272ee934c.js +0 -1
  562. package/app/.next-cli-build/static/css/9744bf52995548d4.css +0 -1
  563. /package/app/.next-cli-build/static/{1OwkUVIMD7I3wwdhcBzuQ → g6PngkH3jgczic6Eb9ziG}/_buildManifest.js +0 -0
  564. /package/app/.next-cli-build/static/{1OwkUVIMD7I3wwdhcBzuQ → g6PngkH3jgczic6Eb9ziG}/_ssgManifest.js +0 -0
@@ -40,7 +40,7 @@
40
40
  <style>body{font-family:system-ui;display:flex;justify-content:center;align-items:center;height:100vh;margin:0;background:#f5f5f5}.c{text-align:center;padding:2rem;background:#fff;border-radius:8px;box-shadow:0 2px 10px rgba(0,0,0,.1)}.i{color:${a?"#22c55e":"#ef4444"};font-size:3rem}h1{margin:1rem 0}p{color:#666}</style>
41
41
  </head><body><div class="c"><div class="i">${a?"&#10003;":"&#10007;"}</div><h1>${c}</h1><p>${d}</p><p>Closing in <span id="cd">3</span>s...</p>
42
42
  <script>let n=3;const c=document.getElementById("cd");const t=setInterval(()=>{n--;c.textContent=n;if(n<=0){clearInterval(t);window.close();}},1000);<\/script>
43
- </div></body></html>`}function t(a){return new Promise(b=>{if(k)return void b({success:!0});let d=e().createServer(async(b,d)=>{let e=new f.URL(b.url,"http://localhost");if("/callback"!==e.pathname&&"/auth/callback"!==e.pathname){d.writeHead(404),d.end("Not found");return}let g=e.searchParams.get("code"),h=e.searchParams.get("state"),i=e.searchParams.get("error"),j=o(h);if(j){try{if(i)throw Error(e.searchParams.get("error_description")||i);if(!g)throw Error("No authorization code received");let{exchangeTokens:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(7843),c.e(2329),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:b}=await c.e(1998).then(c.bind(c,71998)),f=await a("codex",g,j.redirectUri,j.codeVerifier,h),k=await b({provider:"codex",authType:"oauth",...f,expiresAt:f.expiresIn?new Date(Date.now()+1e3*f.expiresIn).toISOString():null,testStatus:"active"});j.status="done",j.connectionId=k.id,j.email=k.email,d.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),d.end(s(!0,"You can close this window."))}catch(a){j.status="error",j.error=a.message,d.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),d.end(s(!1,a.message))}finally{u()}return}let k=`http://localhost:${a}/callback${e.search}`;d.writeHead(302,{Location:k}),d.end(),u()});d.listen(m,"127.0.0.1",()=>{k=d,l=setTimeout(()=>u(),3e5),b({success:!0})}),d.on("error",a=>{"EADDRINUSE"===a.code?b({success:!1,reason:"port_busy"}):b({success:!1,reason:a.message})})})}function u(){l&&(clearTimeout(l),l=null),k&&(k.close(),k=null)}let v=null,w=null,x=new Map;function y({state:a,codeVerifier:b,redirectUri:c}){return!!a&&!!b&&!!c&&(x.set(a,{codeVerifier:b,redirectUri:c,status:"pending",createdAt:Date.now()}),!0)}function z(a){return x.get(a)||null}function A(a){x.delete(a)}function B(a){return new Promise(b=>{if(v)return void b({success:!0});let d=e().createServer(async(b,d)=>{let e=new f.URL(b.url,"http://localhost");if("/callback"!==e.pathname&&"/auth/callback"!==e.pathname){d.writeHead(404),d.end("Not found");return}let g=e.searchParams.get("code"),h=e.searchParams.get("state"),i=e.searchParams.get("error"),j=h?x.get(h):null;if(j){var k;try{if(i)throw Error(e.searchParams.get("error_description")||i);if(!g)throw Error("No authorization code received");let{exchangeTokens:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(7843),c.e(2329),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:b}=await c.e(1998).then(c.bind(c,71998)),f=await a("xai",g,j.redirectUri,j.codeVerifier,h),k=await b({provider:"xai",authType:"oauth",...f,expiresAt:f.expiresIn?new Date(Date.now()+1e3*f.expiresIn).toISOString():null,testStatus:"active"});j.status="done",j.connectionId=k.id,j.email=k.email,d.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),d.end(s(!0,"You can close this window."))}catch(a){j.status="error",j.error=a.message,d.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),d.end((k=a.message,s(!1,k)))}finally{C()}return}let l=`http://localhost:${a}/callback${e.search}`;d.writeHead(302,{Location:l}),d.end(),C()});d.listen(56121,"127.0.0.1",()=>{v=d,w=setTimeout(()=>C(),3e5),b({success:!0})}),d.on("error",a=>{"EADDRINUSE"===a.code?b({success:!1,reason:"port_busy"}):b({success:!1,reason:a.message})})})}function C(){w&&(clearTimeout(w),w=null),v&&(v.close(),v=null)}let D=new Map;function E(a){let b=D.get(a);return b||(b={server:null,timeout:null,port:null,session:null},D.set(a,b)),b}function F({state:a,provider:b="trae"}){return!!a&&(E(b).session={state:a,provider:b,status:"pending",createdAt:Date.now()},!0)}function G(a,b="trae"){let c=E(b).session;return!c||a&&c.state!==a?null:c}function H(a,b="trae"){let c=E(b);(!a||c.session&&c.session.state===a)&&(c.session=null)}async function I(a="trae"){let{getProvider:b}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(7843),c.e(2329),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),d=b(a).config,g=E(a);return new Promise(b=>{if(g.server)return void b({success:!0,port:g.port,callbackUrl:`http://127.0.0.1:${g.port}${d.callbackPath}`});let h=e().createServer(async(b,e)=>{let h=new f.URL(b.url,"http://localhost");if(h.pathname!==d.callbackPath&&"/auth/callback"!==h.pathname){e.writeHead(404),e.end("Not found");return}let j=g.session;if(!j){e.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),e.end(s(!1,"No active Trae login session"));return}if(!i(b.headers.origin)){e.writeHead(403,{"Content-Type":"text/html; charset=utf-8"}),e.end(s(!1,"Cross-origin callback rejected"));return}let k=h.searchParams.get("state");if(k&&j.state&&k!==j.state){j.status="error",j.error="Trae callback state mismatch",e.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),e.end(s(!1,j.error)),J(a);return}let l=`${h.pathname}?${h.searchParams.toString()}`;try{let{exchangeTokens:b}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(7843),c.e(2329),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:d}=await c.e(1998).then(c.bind(c,71998)),f=await b(a,l),g=await d({provider:a,authType:"oauth",...f,expiresAt:f.expiresIn?new Date(Date.now()+1e3*f.expiresIn).toISOString():null,testStatus:"active"});j.status="done",j.connectionId=g.id,j.email=g.email,e.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),e.end(s(!0,"You can close this window."))}catch(a){j.status="error",j.error=a.message,e.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),e.end(s(!1,a.message))}finally{J(a)}});h.listen(0,"127.0.0.1",()=>{g.server=h,g.port=h.address().port,g.timeout=setTimeout(()=>J(a),d.oauthTimeoutMs),b({success:!0,port:g.port,callbackUrl:`http://127.0.0.1:${g.port}${d.callbackPath}`})}),h.on("error",a=>b({success:!1,reason:a.message}))})}function J(a="trae"){let b=E(a);b.timeout&&(clearTimeout(b.timeout),b.timeout=null),b.server&&(b.server.close(),b.server=null),b.port=null}let K=null,L=null,M=null,N=null;function O({state:a}){return!!a&&(N={state:a,status:"pending",createdAt:Date.now()},!0)}function P(a){return!N||a&&N.state!==a?null:N}function Q(a){(!a||N&&N.state===a)&&(N=null)}function R(){return new Promise(a=>{if(K)return void a({success:!0,port:M,callbackUrl:`http://127.0.0.1:${M}${g.eD.callbackPath}`});let b=e().createServer(async(a,b)=>{let d=new f.URL(a.url,"http://localhost");if(d.pathname!==g.eD.callbackPath){b.writeHead(404),b.end("Not found");return}let e=N;if(!e){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"No active Windsurf login session"));return}if(!i(a.headers.origin)){b.writeHead(403,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Cross-origin callback rejected"));return}let h=d.searchParams.get("state");if(!h||!e.state||h!==e.state){e.status="error",e.error="Windsurf callback state mismatch",b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,e.error)),S();return}let j=`${d.pathname}?${d.searchParams.toString()}`;try{let{exchangeTokens:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(7843),c.e(2329),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:d}=await c.e(1998).then(c.bind(c,71998)),f=await a("windsurf",j,null,null,e.state),g=await d({provider:"windsurf",authType:"api_key",...f,testStatus:"active"});e.status="done",e.connectionId=g.id,e.email=g.email,b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!0,"You can close this window."))}catch(a){e.status="error",e.error=a.message,b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,a.message))}finally{S()}});b.listen(0,"127.0.0.1",()=>{K=b,M=b.address().port,L=setTimeout(()=>S(),g.eD.oauthTimeoutMs),a({success:!0,port:M,callbackUrl:`http://127.0.0.1:${M}${g.eD.callbackPath}`})}),b.on("error",b=>a({success:!1,reason:b.message}))})}function S(){L&&(clearTimeout(L),L=null),K&&(K.close(),K=null),M=null}let T=null,U=null,V=null,W=null;function X({state:a,codeVerifier:b,systemId:c}){return!!a&&!!b&&(W={state:a,codeVerifier:b,systemId:c||null,status:"pending",createdAt:Date.now()},!0)}function Y(a){return!W||a&&W.state!==a?null:W}function Z(a){(!a||W&&W.state===a)&&(W=null)}function $(a=0){return new Promise(b=>{if(T){U&&clearTimeout(U),U=setTimeout(()=>{console.log("[Zed proxy] timeout, stopping"),_()},g.RY.oauthTimeoutMs),b({success:!0,port:V,callbackUrl:`http://127.0.0.1:${V}/`});return}let d=e().createServer(async(a,b)=>{let d=new f.URL(a.url,"http://localhost"),e=Object.fromEntries(d.searchParams);for(let a of["access_token","user_id","code_verifier","state"])e[a]&&(e[a]="<redacted>");if(console.log("[Zed proxy]",a.method,d.pathname,JSON.stringify(e)),"/"!==d.pathname&&"/callback"!==d.pathname){b.writeHead(404),b.end("Not found");return}let g=W;if(!g){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"No active Zed login session"));return}if(!i(a.headers.origin)){b.writeHead(403,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Cross-origin callback rejected"));return}let h=d.searchParams;if(!(h.has("user_id")||h.has("userId")||h.has("access_token")||h.has("accessToken")||h.has("token"))){console.log(`[Zed proxy] ignoring non-callback ${a.method} ${d.pathname} (session kept, server kept)`),b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Waiting for Zed sign-in — this request carried no login data."));return}let j=d.search?`${d.pathname}?${d.searchParams.toString()}`:d.pathname;try{let{exchangeTokens:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(7843),c.e(2329),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:d}=await c.e(1998).then(c.bind(c,71998)),e=await a("zed",j,null,g.codeVerifier,g.state,g.systemId?{systemId:g.systemId}:void 0),f=await d({provider:"zed",authType:"oauth",...e,testStatus:"active"});g.status="done",g.connectionId=f.id,g.email=f.email,b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!0,"You can close this window.")),_()}catch(a){g.status="error",g.error=a.message,b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,a.message))}}),h=Number(a)||0;d.on("error",a=>{"EADDRINUSE"===a.code&&0!==h?(console.log(`[Zed proxy] port ${h} busy, falling back to random`),d.listen(0,"127.0.0.1",()=>{T=d,V=d.address().port,U=setTimeout(()=>_(),g.RY.oauthTimeoutMs),console.log(`[Zed proxy] listening on random port ${V}`),b({success:!0,port:V,callbackUrl:`http://127.0.0.1:${V}/`})})):(console.log(`[Zed proxy] listen error: ${a.message}`),b({success:!1,reason:a.message}))}),d.listen(h,"127.0.0.1",()=>{T=d,V=d.address().port,U=setTimeout(()=>{console.log("[Zed proxy] timeout, stopping"),_()},g.RY.oauthTimeoutMs),console.log(`[Zed proxy] listening on port ${V}`),b({success:!0,port:V,callbackUrl:`http://127.0.0.1:${V}/`})})})}function _(){console.log(`[Zed proxy] stopping (port ${V||"-"})`),U&&(clearTimeout(U),U=null),T&&(T.close(),T=null),V=null}let aa=null,ab=null,ac=null,ad=new Map;function ae({state:a,privateKeyDer:b}){return!!a&&!!b&&(ad.set(a,{privateKeyDer:b,status:"pending",createdAt:Date.now()}),!0)}function af(a){let b=ad.get(a);return b?{status:b.status,result:b.result||null,error:b.error||null}:null}function ag(a){ad.delete(a)}function ah(a,b){let c=a?"Authentication Successful":"Authentication Failed";return`<!DOCTYPE html>
43
+ </div></body></html>`}function t(a){return new Promise(b=>{if(k)return void b({success:!0});let d=e().createServer(async(b,d)=>{let e=new f.URL(b.url,"http://localhost");if("/callback"!==e.pathname&&"/auth/callback"!==e.pathname){d.writeHead(404),d.end("Not found");return}let g=e.searchParams.get("code"),h=e.searchParams.get("state"),i=e.searchParams.get("error"),j=o(h);if(j){try{if(i)throw Error(e.searchParams.get("error_description")||i);if(!g)throw Error("No authorization code received");let{exchangeTokens:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(2578),c.e(7843),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:b}=await c.e(1998).then(c.bind(c,71998)),f=await a("codex",g,j.redirectUri,j.codeVerifier,h),k=await b({provider:"codex",authType:"oauth",...f,expiresAt:f.expiresIn?new Date(Date.now()+1e3*f.expiresIn).toISOString():null,testStatus:"active"});j.status="done",j.connectionId=k.id,j.email=k.email,d.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),d.end(s(!0,"You can close this window."))}catch(a){j.status="error",j.error=a.message,d.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),d.end(s(!1,a.message))}finally{u()}return}let k=`http://localhost:${a}/callback${e.search}`;d.writeHead(302,{Location:k}),d.end(),u()});d.listen(m,"127.0.0.1",()=>{k=d,l=setTimeout(()=>u(),3e5),b({success:!0})}),d.on("error",a=>{"EADDRINUSE"===a.code?b({success:!1,reason:"port_busy"}):b({success:!1,reason:a.message})})})}function u(){l&&(clearTimeout(l),l=null),k&&(k.close(),k=null)}let v=null,w=null,x=new Map;function y({state:a,codeVerifier:b,redirectUri:c}){return!!a&&!!b&&!!c&&(x.set(a,{codeVerifier:b,redirectUri:c,status:"pending",createdAt:Date.now()}),!0)}function z(a){return x.get(a)||null}function A(a){x.delete(a)}function B(a){return new Promise(b=>{if(v)return void b({success:!0});let d=e().createServer(async(b,d)=>{let e=new f.URL(b.url,"http://localhost");if("/callback"!==e.pathname&&"/auth/callback"!==e.pathname){d.writeHead(404),d.end("Not found");return}let g=e.searchParams.get("code"),h=e.searchParams.get("state"),i=e.searchParams.get("error"),j=h?x.get(h):null;if(j){var k;try{if(i)throw Error(e.searchParams.get("error_description")||i);if(!g)throw Error("No authorization code received");let{exchangeTokens:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(2578),c.e(7843),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:b}=await c.e(1998).then(c.bind(c,71998)),f=await a("xai",g,j.redirectUri,j.codeVerifier,h),k=await b({provider:"xai",authType:"oauth",...f,expiresAt:f.expiresIn?new Date(Date.now()+1e3*f.expiresIn).toISOString():null,testStatus:"active"});j.status="done",j.connectionId=k.id,j.email=k.email,d.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),d.end(s(!0,"You can close this window."))}catch(a){j.status="error",j.error=a.message,d.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),d.end((k=a.message,s(!1,k)))}finally{C()}return}let l=`http://localhost:${a}/callback${e.search}`;d.writeHead(302,{Location:l}),d.end(),C()});d.listen(56121,"127.0.0.1",()=>{v=d,w=setTimeout(()=>C(),3e5),b({success:!0})}),d.on("error",a=>{"EADDRINUSE"===a.code?b({success:!1,reason:"port_busy"}):b({success:!1,reason:a.message})})})}function C(){w&&(clearTimeout(w),w=null),v&&(v.close(),v=null)}let D=new Map;function E(a){let b=D.get(a);return b||(b={server:null,timeout:null,port:null,session:null},D.set(a,b)),b}function F({state:a,provider:b="trae"}){return!!a&&(E(b).session={state:a,provider:b,status:"pending",createdAt:Date.now()},!0)}function G(a,b="trae"){let c=E(b).session;return!c||a&&c.state!==a?null:c}function H(a,b="trae"){let c=E(b);(!a||c.session&&c.session.state===a)&&(c.session=null)}async function I(a="trae"){let{getProvider:b}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(2578),c.e(7843),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),d=b(a).config,g=E(a);return new Promise(b=>{if(g.server)return void b({success:!0,port:g.port,callbackUrl:`http://127.0.0.1:${g.port}${d.callbackPath}`});let h=e().createServer(async(b,e)=>{let h=new f.URL(b.url,"http://localhost");if(h.pathname!==d.callbackPath&&"/auth/callback"!==h.pathname){e.writeHead(404),e.end("Not found");return}let j=g.session;if(!j){e.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),e.end(s(!1,"No active Trae login session"));return}if(!i(b.headers.origin)){e.writeHead(403,{"Content-Type":"text/html; charset=utf-8"}),e.end(s(!1,"Cross-origin callback rejected"));return}let k=h.searchParams.get("state");if(k&&j.state&&k!==j.state){j.status="error",j.error="Trae callback state mismatch",e.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),e.end(s(!1,j.error)),J(a);return}let l=`${h.pathname}?${h.searchParams.toString()}`;try{let{exchangeTokens:b}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(2578),c.e(7843),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:d}=await c.e(1998).then(c.bind(c,71998)),f=await b(a,l),g=await d({provider:a,authType:"oauth",...f,expiresAt:f.expiresIn?new Date(Date.now()+1e3*f.expiresIn).toISOString():null,testStatus:"active"});j.status="done",j.connectionId=g.id,j.email=g.email,e.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),e.end(s(!0,"You can close this window."))}catch(a){j.status="error",j.error=a.message,e.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),e.end(s(!1,a.message))}finally{J(a)}});h.listen(0,"127.0.0.1",()=>{g.server=h,g.port=h.address().port,g.timeout=setTimeout(()=>J(a),d.oauthTimeoutMs),b({success:!0,port:g.port,callbackUrl:`http://127.0.0.1:${g.port}${d.callbackPath}`})}),h.on("error",a=>b({success:!1,reason:a.message}))})}function J(a="trae"){let b=E(a);b.timeout&&(clearTimeout(b.timeout),b.timeout=null),b.server&&(b.server.close(),b.server=null),b.port=null}let K=null,L=null,M=null,N=null;function O({state:a}){return!!a&&(N={state:a,status:"pending",createdAt:Date.now()},!0)}function P(a){return!N||a&&N.state!==a?null:N}function Q(a){(!a||N&&N.state===a)&&(N=null)}function R(){return new Promise(a=>{if(K)return void a({success:!0,port:M,callbackUrl:`http://127.0.0.1:${M}${g.eD.callbackPath}`});let b=e().createServer(async(a,b)=>{let d=new f.URL(a.url,"http://localhost");if(d.pathname!==g.eD.callbackPath){b.writeHead(404),b.end("Not found");return}let e=N;if(!e){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"No active Windsurf login session"));return}if(!i(a.headers.origin)){b.writeHead(403,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Cross-origin callback rejected"));return}let h=d.searchParams.get("state");if(!h||!e.state||h!==e.state){e.status="error",e.error="Windsurf callback state mismatch",b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,e.error)),S();return}let j=`${d.pathname}?${d.searchParams.toString()}`;try{let{exchangeTokens:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(2578),c.e(7843),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:d}=await c.e(1998).then(c.bind(c,71998)),f=await a("windsurf",j,null,null,e.state),g=await d({provider:"windsurf",authType:"api_key",...f,testStatus:"active"});e.status="done",e.connectionId=g.id,e.email=g.email,b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!0,"You can close this window."))}catch(a){e.status="error",e.error=a.message,b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,a.message))}finally{S()}});b.listen(0,"127.0.0.1",()=>{K=b,M=b.address().port,L=setTimeout(()=>S(),g.eD.oauthTimeoutMs),a({success:!0,port:M,callbackUrl:`http://127.0.0.1:${M}${g.eD.callbackPath}`})}),b.on("error",b=>a({success:!1,reason:b.message}))})}function S(){L&&(clearTimeout(L),L=null),K&&(K.close(),K=null),M=null}let T=null,U=null,V=null,W=null;function X({state:a,codeVerifier:b,systemId:c}){return!!a&&!!b&&(W={state:a,codeVerifier:b,systemId:c||null,status:"pending",createdAt:Date.now()},!0)}function Y(a){return!W||a&&W.state!==a?null:W}function Z(a){(!a||W&&W.state===a)&&(W=null)}function $(a=0){return new Promise(b=>{if(T){U&&clearTimeout(U),U=setTimeout(()=>{console.log("[Zed proxy] timeout, stopping"),_()},g.RY.oauthTimeoutMs),b({success:!0,port:V,callbackUrl:`http://127.0.0.1:${V}/`});return}let d=e().createServer(async(a,b)=>{let d=new f.URL(a.url,"http://localhost"),e=Object.fromEntries(d.searchParams);for(let a of["access_token","user_id","code_verifier","state"])e[a]&&(e[a]="<redacted>");if(console.log("[Zed proxy]",a.method,d.pathname,JSON.stringify(e)),"/"!==d.pathname&&"/callback"!==d.pathname){b.writeHead(404),b.end("Not found");return}let g=W;if(!g){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"No active Zed login session"));return}if(!i(a.headers.origin)){b.writeHead(403,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Cross-origin callback rejected"));return}let h=d.searchParams;if(!(h.has("user_id")||h.has("userId")||h.has("access_token")||h.has("accessToken")||h.has("token"))){console.log(`[Zed proxy] ignoring non-callback ${a.method} ${d.pathname} (session kept, server kept)`),b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Waiting for Zed sign-in — this request carried no login data."));return}let j=d.search?`${d.pathname}?${d.searchParams.toString()}`:d.pathname;try{let{exchangeTokens:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(2578),c.e(7843),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:d}=await c.e(1998).then(c.bind(c,71998)),e=await a("zed",j,null,g.codeVerifier,g.state,g.systemId?{systemId:g.systemId}:void 0),f=await d({provider:"zed",authType:"oauth",...e,testStatus:"active"});g.status="done",g.connectionId=f.id,g.email=f.email,b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!0,"You can close this window.")),_()}catch(a){g.status="error",g.error=a.message,b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,a.message))}}),h=Number(a)||0;d.on("error",a=>{"EADDRINUSE"===a.code&&0!==h?(console.log(`[Zed proxy] port ${h} busy, falling back to random`),d.listen(0,"127.0.0.1",()=>{T=d,V=d.address().port,U=setTimeout(()=>_(),g.RY.oauthTimeoutMs),console.log(`[Zed proxy] listening on random port ${V}`),b({success:!0,port:V,callbackUrl:`http://127.0.0.1:${V}/`})})):(console.log(`[Zed proxy] listen error: ${a.message}`),b({success:!1,reason:a.message}))}),d.listen(h,"127.0.0.1",()=>{T=d,V=d.address().port,U=setTimeout(()=>{console.log("[Zed proxy] timeout, stopping"),_()},g.RY.oauthTimeoutMs),console.log(`[Zed proxy] listening on port ${V}`),b({success:!0,port:V,callbackUrl:`http://127.0.0.1:${V}/`})})})}function _(){console.log(`[Zed proxy] stopping (port ${V||"-"})`),U&&(clearTimeout(U),U=null),T&&(T.close(),T=null),V=null}let aa=null,ab=null,ac=null,ad=new Map;function ae({state:a,privateKeyDer:b}){return!!a&&!!b&&(ad.set(a,{privateKeyDer:b,status:"pending",createdAt:Date.now()}),!0)}function af(a){let b=ad.get(a);return b?{status:b.status,result:b.result||null,error:b.error||null}:null}function ag(a){ad.delete(a)}function ah(a,b){let c=a?"Authentication Successful":"Authentication Failed";return`<!DOCTYPE html>
44
44
  <html>
45
45
  <head><meta charset="utf-8"><title>${c}</title>
46
46
  <style>
@@ -59,4 +59,4 @@
59
59
  ${a?"<script>setTimeout(() => window.close(), 3000);<\/script>":""}
60
60
  </div>
61
61
  </body>
62
- </html>`}function ai(){return new Promise(a=>{if(aa)return void a({success:!0,port:ab,callbackUrl:`http://127.0.0.1:${ab}/`});let b=e().createServer(async(a,b)=>{if(!i(a.headers.origin)){b.writeHead(403),b.end("Forbidden");return}let d=new f.URL(a.url,"http://127.0.0.1").searchParams.get("u");if(!d){b.writeHead(400,{"Content-Type":"text/html; charset=utf-8"}),b.end(ah(!1,"Missing encrypted payload (u parameter)."));return}let e=[...ad.entries()].filter(([,a])=>"pending"===a.status);if(0===e.length){b.writeHead(500,{"Content-Type":"text/html; charset=utf-8"}),b.end(ah(!1,"No active OAuth session. Please restart the login flow."));return}try{let{decryptCallback:a}=await c.e(4152).then(c.bind(c,34152)),f=null,g=null;for(let[b,c]of e)try{f=a(c.privateKeyDer,d),g=b;break}catch{}if(!f||!g)throw Error("Could not decrypt with any pending session key");if(!f.sk)throw Error("Decrypted payload missing sk (API key)");let h=ad.get(g);h&&(h.status="done",h.result={uid:f.uid,accessToken:f.sk,baseUrl:f.url||"https://api.xiaomimimo.com/v1"}),b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(ah(!0,"Xiaomi account linked. You can close this tab.")),console.log("[xiaomi-mimo oauth] callback decrypted, uid:",f.uid)}catch(a){for(let[,b]of(console.error("[xiaomi-mimo oauth] decrypt failed:",a.message),e))b.status="error",b.error=a.message;b.writeHead(400,{"Content-Type":"text/html; charset=utf-8"}),b.end(ah(!1,`Decryption failed: ${a.message}`))}});b.on("error",b=>{console.log("[xiaomi-mimo oauth] listen error:",b.message),a({success:!1,reason:b.message})}),b.listen(0,"127.0.0.1",()=>{aa=b,ab=b.address().port,ac=setTimeout(()=>{console.log("[xiaomi-mimo oauth] timeout, stopping"),aj()},3e5),console.log(`[xiaomi-mimo oauth] listening on port ${ab}`),a({success:!0,port:ab,callbackUrl:`http://127.0.0.1:${ab}/`})})})}function aj(){console.log(`[xiaomi-mimo oauth] stopping (port ${ab||"-"})`),ac&&(clearTimeout(ac),ac=null),aa&&(aa.close(),aa=null),ab=null,ad.clear()}let ak=null,al=null,am=null,an=null;function ao({state:a,codeVerifier:b,ticketId:c}){return!!a&&!!b&&(an={state:a,codeVerifier:b,ticketId:c||null,status:"pending",createdAt:Date.now()},!0)}function ap(a){return!an||a&&an.state!==a?null:{state:an.state,status:an.status,connectionId:an.connectionId||null,email:an.email||null,error:an.error||null}}function aq(a){(!a||an&&an.state===a)&&(an=null)}function ar(a){let b=new URLSearchParams({login_succeed:String(a),locale:g.Ru.locale||"zh-cn"});return`${g.Ru.portalBase}/login?${b.toString()}`}function as(){return new Promise(a=>{if(ak){al&&clearTimeout(al),al=setTimeout(()=>{console.log("[CodeArts proxy] timeout, stopping"),at()},g.Ru.oauthTimeoutMs),a({success:!0,port:am,callbackUrl:(0,h.yn)(am)});return}let b=e().createServer(async(a,b)=>{let d=new f.URL(a.url,"http://localhost");if(d.pathname!==g.Ru.callbackPath){b.writeHead(404),b.end("Not found");return}let e=d.searchParams;if(console.log("[CodeArts proxy]",a.method,d.pathname,JSON.stringify({hasCode:e.has("code"),hasSecret:e.has("secret"),redirect:e.get("redirect")?"<ignored>":null})),!e.has("code")&&!e.has("secret")){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Waiting for CodeArts sign-in — this request carried no login data."));return}if(!i(a.headers.origin)){b.writeHead(403,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Cross-origin callback rejected"));return}let j=an;if(!j){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"No active CodeArts login session"));return}if("pending"!==j.status){b.writeHead(307,{Location:ar("done"===j.status)}),b.end();return}try{let{exchangeTokens:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(7843),c.e(2329),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:f}=await c.e(1998).then(c.bind(c,71998)),g=`${d.pathname}?${e.toString()}`,i=await a("codearts",g,(0,h.yn)(am),j.codeVerifier,j.state,j.ticketId?{ticketId:j.ticketId}:void 0),k=await f({provider:"codearts",authType:"oauth",...i,expiresAt:i.expiresIn?new Date(Date.now()+1e3*i.expiresIn).toISOString():null,testStatus:"active"});j.status="done",j.connectionId=k.id,j.email=k.email,j.codeVerifier=null,j.ticketId=null,b.writeHead(307,{Location:ar(!0)}),b.end(),at()}catch(a){j.status="error",j.error=a.message,j.codeVerifier=null,j.ticketId=null,b.writeHead(307,{Location:ar(!1)}),b.end()}});b.listen(0,"127.0.0.1",()=>{ak=b,am=b.address().port,al=setTimeout(()=>{console.log("[CodeArts proxy] timeout, stopping"),at()},g.Ru.oauthTimeoutMs),console.log(`[CodeArts proxy] listening on port ${am}`),a({success:!0,port:am,callbackUrl:(0,h.yn)(am)})}),b.on("error",b=>{console.log(`[CodeArts proxy] listen error: ${b.message}`),a({success:!1,reason:b.message})})})}function at(){console.log(`[CodeArts proxy] stopping (port ${am||"-"})`),al&&(clearTimeout(al),al=null),ak&&(ak.close(),ak=null),am=null,an&&(an.codeVerifier=null,an.ticketId=null)}let au=null,av=null,aw=null,ax=null;function ay({state:a}){return!!a&&(ax={state:a,status:"pending",createdAt:Date.now()},!0)}function az(a){return!ax||a&&ax.state!==a?null:{state:ax.state,status:ax.status,connectionId:ax.connectionId||null,email:ax.email||null,error:ax.error||null}}function aA(a){(!a||ax&&ax.state===a)&&(ax=null)}function aB(a){let b=a?g.iO.successRedirectPath:g.iO.failedRedirectPath;return`${g.iO.baseUrl}/${b}`}function aC(){return new Promise(a=>{if(au){av&&clearTimeout(av),av=setTimeout(()=>{console.log("[DevEco proxy] timeout, stopping"),aD()},g.iO.oauthTimeoutMs),a({success:!0,port:aw,callbackUrl:`http://127.0.0.1:${aw}${g.iO.callbackPath}`});return}let b=e().createServer(async(a,b)=>{let d=new f.URL(a.url,"http://localhost");if(console.log("[DevEco proxy]",a.method,d.pathname),d.pathname!==g.iO.callbackPath&&"/"!==d.pathname){b.writeHead(404),b.end("Not found");return}let e=d.searchParams;if("POST"===a.method){let c="";try{for await(let d of(a.setEncoding("utf8"),a))if((c+=d).length>65536){b.writeHead(413,{"Content-Type":"text/plain"}),b.end("Payload too large"),a.destroy();return}}catch{c=""}if(c.trim()){let a=new URLSearchParams(c.trim());[...a.keys()].length>0&&(e=a)}}if(console.log("[DevEco proxy] params",JSON.stringify({hasTempToken:e.has("tempToken"),hasCode:e.has("code"),siteId:e.get("siteId")||null,origin:a.headers.origin||null})),!e.has("tempToken")&&!e.has("access_denied")&&"true"!==e.get("quit")){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Waiting for HUAWEI ID sign-in — this request carried no login data."));return}if(!function(a){if(!a||i(a))return!0;try{let b=new f.URL(a).hostname.toLowerCase();return"huawei.com"===b||b.endsWith(".huawei.com")}catch{return!1}}(a.headers.origin)){b.writeHead(403,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Foreign-origin callback rejected"));return}let h=ax;if(!h){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"No active DevEco login session"));return}if("pending"!==h.status){b.writeHead(302,{Location:aB("done"===h.status)}),b.end();return}if(!e.has("code")||e.get("code")!==h.state){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"DevEco callback state mismatch"));return}if("true"===e.get("access_denied")||"true"===e.get("quit")){h.status="error",h.error="Login cancelled by user",b.writeHead(302,{Location:aB(!1)}),b.end();return}try{let{exchangeTokens:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(7843),c.e(2329),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:f}=await c.e(1998).then(c.bind(c,71998)),i=`${d.pathname}?${e.toString()}`,j=await a("deveco",i,`http://127.0.0.1:${aw}${g.iO.callbackPath}`,null,h.state),k=await f({provider:"deveco",authType:"oauth",...j,expiresAt:j.expiresIn?new Date(Date.now()+1e3*j.expiresIn).toISOString():null,testStatus:"active"});h.status="done",h.connectionId=k.id,h.email=k.email,b.writeHead(302,{Location:aB(!0)}),b.end(),aD()}catch(a){h.status="error",h.error=a.message,b.writeHead(302,{Location:aB(!1)}),b.end()}});b.listen(0,"127.0.0.1",()=>{au=b,aw=b.address().port,av=setTimeout(()=>{console.log("[DevEco proxy] timeout, stopping"),aD()},g.iO.oauthTimeoutMs),console.log(`[DevEco proxy] listening on port ${aw}`),a({success:!0,port:aw,callbackUrl:`http://127.0.0.1:${aw}${g.iO.callbackPath}`})}),b.on("error",b=>{console.log(`[DevEco proxy] listen error: ${b.message}`),a({success:!1,reason:b.message})})})}function aD(){console.log(`[DevEco proxy] stopping (port ${aw||"-"})`),av&&(clearTimeout(av),av=null),au&&(au.close(),au=null),aw=null}},73159:(a,b,c)=>{c.d(b,{Ue:()=>k,oT:()=>l});var d=c(26070);let e=d.xq.xai?.clientId,f="https://auth.x.ai",g="/oauth2/authorize",h="/oauth2/token",i="/.well-known/openid-configuration",j="/callback",k=96,l={clientId:e,issuer:f,authEndpointPath:g,tokenEndpointPath:h,discoveryPath:i,authorizeUrl:`${f}${g}`,tokenUrl:`${f}${h}`,discoveryUrl:`${f}${i}`,scope:"openid profile email offline_access grok-cli:access api:access",apiBaseUrl:"https://api.x.ai/v1",redirectUri:`http://127.0.0.1:56121${j}`,loopbackPort:56121,callbackPath:j,pkceVerifierBytes:96,refreshLeadSeconds:300,userAgent:"grok-cli/9router",codeChallengeMethod:"S256"}},92990:(a,b,c)=>{c.d(b,{DI:()=>i,DV:()=>A,EL:()=>G,LT:()=>j,MZ:()=>v,Nl:()=>z,Nu:()=>p,OV:()=>h,RY:()=>J,Ru:()=>K,S6:()=>s,SK:()=>F,Td:()=>B,Tx:()=>q,WN:()=>t,Ww:()=>M,YT:()=>n,ZL:()=>m,_0:()=>I,aV:()=>u,cD:()=>o,eD:()=>H,f7:()=>y,hF:()=>k,iO:()=>L,lB:()=>w,oe:()=>E,qp:()=>C,sA:()=>D,t3:()=>l,w1:()=>x});var d=c(21820),e=c(74129),f=c(26070);function g(){let a=(0,d.platform)(),b=(0,d.arch)();return"darwin"===a?"arm64"===b?2:1:"linux"===a?"arm64"===b?4:3:5*("win32"===a)}let h={...f.sr.claude},i={...f.sr.codex},j={...e.dG,...f.sr["gemini-cli"]},k={...f.sr.qoder},l={...f.sr["qoder-cn"]},m={...f.sr.iflow},n={...e.XP,...f.sr.antigravity,loadCodeAssistClientMetadata:JSON.stringify({ideType:9,platform:g(),pluginType:2})};function o(){return{ideType:9,platform:g(),pluginType:2}}({...f.sr.openai});let p={...f.sr.github},q={...f.sr.kiro},r=/^[a-z]{2}-[a-z]+-\d{1,2}$/;function s(a){if("string"!=typeof a||!r.test(a))throw Error("Invalid region");return a}let t={...f.sr.cursor,tokenStoragePaths:{linux:"~/.config/Cursor/User/globalStorage/state.vscdb",macos:"/Users/<user>/Library/Application Support/Cursor/User/globalStorage/state.vscdb",windows:"%APPDATA%\\Cursor\\User\\globalStorage\\state.vscdb"}},u={...f.sr.kimi,clientId:process.env.KIMI_CODING_OAUTH_CLIENT_ID||process.env.KIMI_OAUTH_CLIENT_ID||f.xq.kimi?.clientId||f.sr.kimi?.clientId},v={...f.sr.kilocode},w={...f.sr.cline},x={...f.sr.clinepass},y={...f.sr.gitlab},z={...f.sr["codebuddy-cn"]},A={...f.sr["codebuddy-intl"]},B={...f.sr.kimchi},C={...f.sr["grok-cli"]},D={...f.sr.muse},E={platformUrl:process.env.MIMO_PLATFORM_URL||"https://platform.xiaomimimo.com",defaultBaseUrl:"https://api.xiaomimimo.com/v1",kn:"mimocode",callbackPath:"/",timeoutMs:3e5},F={clientId:"ono9krqynydwx5",clientSecret:"-",loginGuidanceUrls:["https://api.marscode.com/cloudide/api/v3/trae/GetLoginGuidance","https://api.trae.ai/cloudide/api/v3/trae/GetLoginGuidance","https://www.trae.ai/cloudide/api/v3/trae/GetLoginGuidance"],apiOrigins:["https://api.marscode.com","https://api.trae.ai","https://www.trae.ai","https://www.marscode.com"],exchangeTokenPath:"/cloudide/api/v3/trae/oauth/ExchangeToken",getUserInfoPath:"/cloudide/api/v3/trae/GetUserInfo",authorizationPath:"/authorization",callbackPath:"/callback",minAppVersion:"3.5.54",defaultAppVersion:"3.5.54",defaultAppType:"stable",defaultPluginVersion:"local",defaultDeviceId:"0",userAgent:"Trae/1.0.0 antigravity-cockpit-tools",webUrl:"https://www.trae.ai",authScheme:"Cloud-IDE-JWT",tokenLifetimeDays:14,oauthTimeoutMs:6e5},G={...f.sr["trae-enterprise"],minAppVersion:F.minAppVersion,defaultAppVersion:F.defaultAppVersion,defaultAppType:F.defaultAppType,defaultPluginVersion:F.defaultPluginVersion,defaultDeviceId:F.defaultDeviceId,userAgent:F.userAgent,authScheme:F.authScheme,tokenLifetimeDays:F.tokenLifetimeDays,oauthTimeoutMs:F.oauthTimeoutMs},H={clientId:"3GUryQ7ldAeKEuD2obYnppsnmj58eP5u",authBaseUrl:"https://www.windsurf.com",signInPath:"/windsurf/signin",registerApiBaseUrl:"https://register.windsurf.com",registerPath:"/exa.seat_management_pb.SeatManagementService/RegisterUser",oneTimeAuthPath:"/exa.seat_management_pb.SeatManagementService/GetOneTimeAuthToken",currentUserPath:"/exa.seat_management_pb.SeatManagementService/GetCurrentUser",planStatusPath:"/exa.seat_management_pb.SeatManagementService/GetPlanStatus",userStatusPath:"/exa.seat_management_pb.SeatManagementService/GetUserStatus",defaultApiServerUrl:"https://server.codeium.com",firebaseApiKey:"AIzaSyDsOl-1XpT5err0Tcn0TFFod1H8gVGIycY",callbackPath:"/windsurf-auth-callback",userAgent:"antigravity-cockpit-tools",oauthTimeoutMs:6e5},I={...f.sr.glm},J={webBaseUrl:"https://zed.dev",cloudBaseUrl:"https://cloud.zed.dev",llmBaseUrl:"https://cloud.zed.dev",defaultNativeAppPort:58443,oauthTimeoutMs:6e5},K={...f.sr.codearts},L={...f.sr.deveco},M=3e5}};
62
+ </html>`}function ai(){return new Promise(a=>{if(aa)return void a({success:!0,port:ab,callbackUrl:`http://127.0.0.1:${ab}/`});let b=e().createServer(async(a,b)=>{if(!i(a.headers.origin)){b.writeHead(403),b.end("Forbidden");return}let d=new f.URL(a.url,"http://127.0.0.1").searchParams.get("u");if(!d){b.writeHead(400,{"Content-Type":"text/html; charset=utf-8"}),b.end(ah(!1,"Missing encrypted payload (u parameter)."));return}let e=[...ad.entries()].filter(([,a])=>"pending"===a.status);if(0===e.length){b.writeHead(500,{"Content-Type":"text/html; charset=utf-8"}),b.end(ah(!1,"No active OAuth session. Please restart the login flow."));return}try{let{decryptCallback:a}=await c.e(4152).then(c.bind(c,34152)),f=null,g=null;for(let[b,c]of e)try{f=a(c.privateKeyDer,d),g=b;break}catch{}if(!f||!g)throw Error("Could not decrypt with any pending session key");if(!f.sk)throw Error("Decrypted payload missing sk (API key)");let h=ad.get(g);h&&(h.status="done",h.result={uid:f.uid,accessToken:f.sk,baseUrl:f.url||"https://api.xiaomimimo.com/v1"}),b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(ah(!0,"Xiaomi account linked. You can close this tab.")),console.log("[xiaomi-mimo oauth] callback decrypted, uid:",f.uid)}catch(a){for(let[,b]of(console.error("[xiaomi-mimo oauth] decrypt failed:",a.message),e))b.status="error",b.error=a.message;b.writeHead(400,{"Content-Type":"text/html; charset=utf-8"}),b.end(ah(!1,`Decryption failed: ${a.message}`))}});b.on("error",b=>{console.log("[xiaomi-mimo oauth] listen error:",b.message),a({success:!1,reason:b.message})}),b.listen(0,"127.0.0.1",()=>{aa=b,ab=b.address().port,ac=setTimeout(()=>{console.log("[xiaomi-mimo oauth] timeout, stopping"),aj()},3e5),console.log(`[xiaomi-mimo oauth] listening on port ${ab}`),a({success:!0,port:ab,callbackUrl:`http://127.0.0.1:${ab}/`})})})}function aj(){console.log(`[xiaomi-mimo oauth] stopping (port ${ab||"-"})`),ac&&(clearTimeout(ac),ac=null),aa&&(aa.close(),aa=null),ab=null,ad.clear()}let ak=null,al=null,am=null,an=null;function ao({state:a,codeVerifier:b,ticketId:c}){return!!a&&!!b&&(an={state:a,codeVerifier:b,ticketId:c||null,status:"pending",createdAt:Date.now()},!0)}function ap(a){return!an||a&&an.state!==a?null:{state:an.state,status:an.status,connectionId:an.connectionId||null,email:an.email||null,error:an.error||null}}function aq(a){(!a||an&&an.state===a)&&(an=null)}function ar(a){let b=new URLSearchParams({login_succeed:String(a),locale:g.Ru.locale||"zh-cn"});return`${g.Ru.portalBase}/login?${b.toString()}`}function as(){return new Promise(a=>{if(ak){al&&clearTimeout(al),al=setTimeout(()=>{console.log("[CodeArts proxy] timeout, stopping"),at()},g.Ru.oauthTimeoutMs),a({success:!0,port:am,callbackUrl:(0,h.yn)(am)});return}let b=e().createServer(async(a,b)=>{let d=new f.URL(a.url,"http://localhost");if(d.pathname!==g.Ru.callbackPath){b.writeHead(404),b.end("Not found");return}let e=d.searchParams;if(console.log("[CodeArts proxy]",a.method,d.pathname,JSON.stringify({hasCode:e.has("code"),hasSecret:e.has("secret"),redirect:e.get("redirect")?"<ignored>":null})),!e.has("code")&&!e.has("secret")){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Waiting for CodeArts sign-in — this request carried no login data."));return}if(!i(a.headers.origin)){b.writeHead(403,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Cross-origin callback rejected"));return}let j=an;if(!j){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"No active CodeArts login session"));return}if("pending"!==j.status){b.writeHead(307,{Location:ar("done"===j.status)}),b.end();return}try{let{exchangeTokens:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(2578),c.e(7843),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:f}=await c.e(1998).then(c.bind(c,71998)),g=`${d.pathname}?${e.toString()}`,i=await a("codearts",g,(0,h.yn)(am),j.codeVerifier,j.state,j.ticketId?{ticketId:j.ticketId}:void 0),k=await f({provider:"codearts",authType:"oauth",...i,expiresAt:i.expiresIn?new Date(Date.now()+1e3*i.expiresIn).toISOString():null,testStatus:"active"});j.status="done",j.connectionId=k.id,j.email=k.email,j.codeVerifier=null,j.ticketId=null,b.writeHead(307,{Location:ar(!0)}),b.end(),at()}catch(a){j.status="error",j.error=a.message,j.codeVerifier=null,j.ticketId=null,b.writeHead(307,{Location:ar(!1)}),b.end()}});b.listen(0,"127.0.0.1",()=>{ak=b,am=b.address().port,al=setTimeout(()=>{console.log("[CodeArts proxy] timeout, stopping"),at()},g.Ru.oauthTimeoutMs),console.log(`[CodeArts proxy] listening on port ${am}`),a({success:!0,port:am,callbackUrl:(0,h.yn)(am)})}),b.on("error",b=>{console.log(`[CodeArts proxy] listen error: ${b.message}`),a({success:!1,reason:b.message})})})}function at(){console.log(`[CodeArts proxy] stopping (port ${am||"-"})`),al&&(clearTimeout(al),al=null),ak&&(ak.close(),ak=null),am=null,an&&(an.codeVerifier=null,an.ticketId=null)}let au=null,av=null,aw=null,ax=null;function ay({state:a}){return!!a&&(ax={state:a,status:"pending",createdAt:Date.now()},!0)}function az(a){return!ax||a&&ax.state!==a?null:{state:ax.state,status:ax.status,connectionId:ax.connectionId||null,email:ax.email||null,error:ax.error||null}}function aA(a){(!a||ax&&ax.state===a)&&(ax=null)}function aB(a){let b=a?g.iO.successRedirectPath:g.iO.failedRedirectPath;return`${g.iO.baseUrl}/${b}`}function aC(){return new Promise(a=>{if(au){av&&clearTimeout(av),av=setTimeout(()=>{console.log("[DevEco proxy] timeout, stopping"),aD()},g.iO.oauthTimeoutMs),a({success:!0,port:aw,callbackUrl:`http://127.0.0.1:${aw}${g.iO.callbackPath}`});return}let b=e().createServer(async(a,b)=>{let d=new f.URL(a.url,"http://localhost");if(console.log("[DevEco proxy]",a.method,d.pathname),d.pathname!==g.iO.callbackPath&&"/"!==d.pathname){b.writeHead(404),b.end("Not found");return}let e=d.searchParams;if("POST"===a.method){let c="";try{for await(let d of(a.setEncoding("utf8"),a))if((c+=d).length>65536){b.writeHead(413,{"Content-Type":"text/plain"}),b.end("Payload too large"),a.destroy();return}}catch{c=""}if(c.trim()){let a=new URLSearchParams(c.trim());[...a.keys()].length>0&&(e=a)}}if(console.log("[DevEco proxy] params",JSON.stringify({hasTempToken:e.has("tempToken"),hasCode:e.has("code"),siteId:e.get("siteId")||null,origin:a.headers.origin||null})),!e.has("tempToken")&&!e.has("access_denied")&&"true"!==e.get("quit")){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Waiting for HUAWEI ID sign-in — this request carried no login data."));return}if(!function(a){if(!a||i(a))return!0;try{let b=new f.URL(a).hostname.toLowerCase();return"huawei.com"===b||b.endsWith(".huawei.com")}catch{return!1}}(a.headers.origin)){b.writeHead(403,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"Foreign-origin callback rejected"));return}let h=ax;if(!h){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"No active DevEco login session"));return}if("pending"!==h.status){b.writeHead(302,{Location:aB("done"===h.status)}),b.end();return}if(!e.has("code")||e.get("code")!==h.state){b.writeHead(200,{"Content-Type":"text/html; charset=utf-8"}),b.end(s(!1,"DevEco callback state mismatch"));return}if("true"===e.get("access_denied")||"true"===e.get("quit")){h.status="error",h.error="Login cancelled by user",b.writeHead(302,{Location:aB(!1)}),b.end();return}try{let{exchangeTokens:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(6922),c.e(2578),c.e(7843),c.e(3225),c.e(7913),c.e(3811),c.e(614),c.e(9696),c.e(8499),c.e(1836),c.e(5330),c.e(6171),c.e(8895),c.e(4049)]).then(c.bind(c,74177)),{createProviderConnection:f}=await c.e(1998).then(c.bind(c,71998)),i=`${d.pathname}?${e.toString()}`,j=await a("deveco",i,`http://127.0.0.1:${aw}${g.iO.callbackPath}`,null,h.state),k=await f({provider:"deveco",authType:"oauth",...j,expiresAt:j.expiresIn?new Date(Date.now()+1e3*j.expiresIn).toISOString():null,testStatus:"active"});h.status="done",h.connectionId=k.id,h.email=k.email,b.writeHead(302,{Location:aB(!0)}),b.end(),aD()}catch(a){h.status="error",h.error=a.message,b.writeHead(302,{Location:aB(!1)}),b.end()}});b.listen(0,"127.0.0.1",()=>{au=b,aw=b.address().port,av=setTimeout(()=>{console.log("[DevEco proxy] timeout, stopping"),aD()},g.iO.oauthTimeoutMs),console.log(`[DevEco proxy] listening on port ${aw}`),a({success:!0,port:aw,callbackUrl:`http://127.0.0.1:${aw}${g.iO.callbackPath}`})}),b.on("error",b=>{console.log(`[DevEco proxy] listen error: ${b.message}`),a({success:!1,reason:b.message})})})}function aD(){console.log(`[DevEco proxy] stopping (port ${aw||"-"})`),av&&(clearTimeout(av),av=null),au&&(au.close(),au=null),aw=null}},73159:(a,b,c)=>{c.d(b,{Ue:()=>k,oT:()=>l});var d=c(26070);let e=d.xq.xai?.clientId,f="https://auth.x.ai",g="/oauth2/authorize",h="/oauth2/token",i="/.well-known/openid-configuration",j="/callback",k=96,l={clientId:e,issuer:f,authEndpointPath:g,tokenEndpointPath:h,discoveryPath:i,authorizeUrl:`${f}${g}`,tokenUrl:`${f}${h}`,discoveryUrl:`${f}${i}`,scope:"openid profile email offline_access grok-cli:access api:access",apiBaseUrl:"https://api.x.ai/v1",redirectUri:`http://127.0.0.1:56121${j}`,loopbackPort:56121,callbackPath:j,pkceVerifierBytes:96,refreshLeadSeconds:300,userAgent:"grok-cli/9router",codeChallengeMethod:"S256"}},92990:(a,b,c)=>{c.d(b,{DI:()=>i,DV:()=>A,EL:()=>G,LT:()=>j,MZ:()=>v,Nl:()=>z,Nu:()=>p,OV:()=>h,RY:()=>J,Ru:()=>K,S6:()=>s,SK:()=>F,Td:()=>B,Tx:()=>q,WN:()=>t,Ww:()=>N,YT:()=>n,Z2:()=>M,ZL:()=>m,_0:()=>I,aV:()=>u,cD:()=>o,eD:()=>H,f7:()=>y,hF:()=>k,iO:()=>L,lB:()=>w,oe:()=>E,qp:()=>C,sA:()=>D,t3:()=>l,w1:()=>x});var d=c(21820),e=c(74129),f=c(26070);function g(){let a=(0,d.platform)(),b=(0,d.arch)();return"darwin"===a?"arm64"===b?2:1:"linux"===a?"arm64"===b?4:3:5*("win32"===a)}let h={...f.sr.claude},i={...f.sr.codex},j={...e.dG,...f.sr["gemini-cli"]},k={...f.sr.qoder},l={...f.sr["qoder-cn"]},m={...f.sr.iflow},n={...e.XP,...f.sr.antigravity,loadCodeAssistClientMetadata:JSON.stringify({ideType:9,platform:g(),pluginType:2})};function o(){return{ideType:9,platform:g(),pluginType:2}}({...f.sr.openai});let p={...f.sr.github},q={...f.sr.kiro},r=/^[a-z]{2}-[a-z]+-\d{1,2}$/;function s(a){if("string"!=typeof a||!r.test(a))throw Error("Invalid region");return a}let t={...f.sr.cursor,tokenStoragePaths:{linux:"~/.config/Cursor/User/globalStorage/state.vscdb",macos:"/Users/<user>/Library/Application Support/Cursor/User/globalStorage/state.vscdb",windows:"%APPDATA%\\Cursor\\User\\globalStorage\\state.vscdb"}},u={...f.sr.kimi,clientId:process.env.KIMI_CODING_OAUTH_CLIENT_ID||process.env.KIMI_OAUTH_CLIENT_ID||f.xq.kimi?.clientId||f.sr.kimi?.clientId},v={...f.sr.kilocode},w={...f.sr.cline},x={...f.sr.clinepass},y={...f.sr.gitlab},z={...f.sr["codebuddy-cn"]},A={...f.sr["codebuddy-intl"]},B={...f.sr.kimchi},C={...f.sr["grok-cli"]},D={...f.sr.muse},E={platformUrl:process.env.MIMO_PLATFORM_URL||"https://platform.xiaomimimo.com",defaultBaseUrl:"https://api.xiaomimimo.com/v1",kn:"mimocode",callbackPath:"/",timeoutMs:3e5},F={clientId:"ono9krqynydwx5",clientSecret:"-",loginGuidanceUrls:["https://api.marscode.com/cloudide/api/v3/trae/GetLoginGuidance","https://api.trae.ai/cloudide/api/v3/trae/GetLoginGuidance","https://www.trae.ai/cloudide/api/v3/trae/GetLoginGuidance"],apiOrigins:["https://api.marscode.com","https://api.trae.ai","https://www.trae.ai","https://www.marscode.com"],exchangeTokenPath:"/cloudide/api/v3/trae/oauth/ExchangeToken",getUserInfoPath:"/cloudide/api/v3/trae/GetUserInfo",authorizationPath:"/authorization",callbackPath:"/callback",minAppVersion:"3.5.54",defaultAppVersion:"3.5.54",defaultAppType:"stable",defaultPluginVersion:"local",defaultDeviceId:"0",userAgent:"Trae/1.0.0 antigravity-cockpit-tools",webUrl:"https://www.trae.ai",authScheme:"Cloud-IDE-JWT",tokenLifetimeDays:14,oauthTimeoutMs:6e5},G={...f.sr["trae-enterprise"],minAppVersion:F.minAppVersion,defaultAppVersion:F.defaultAppVersion,defaultAppType:F.defaultAppType,defaultPluginVersion:F.defaultPluginVersion,defaultDeviceId:F.defaultDeviceId,userAgent:F.userAgent,authScheme:F.authScheme,tokenLifetimeDays:F.tokenLifetimeDays,oauthTimeoutMs:F.oauthTimeoutMs},H={clientId:"3GUryQ7ldAeKEuD2obYnppsnmj58eP5u",authBaseUrl:"https://www.windsurf.com",signInPath:"/windsurf/signin",registerApiBaseUrl:"https://register.windsurf.com",registerPath:"/exa.seat_management_pb.SeatManagementService/RegisterUser",oneTimeAuthPath:"/exa.seat_management_pb.SeatManagementService/GetOneTimeAuthToken",currentUserPath:"/exa.seat_management_pb.SeatManagementService/GetCurrentUser",planStatusPath:"/exa.seat_management_pb.SeatManagementService/GetPlanStatus",userStatusPath:"/exa.seat_management_pb.SeatManagementService/GetUserStatus",defaultApiServerUrl:"https://server.codeium.com",firebaseApiKey:"AIzaSyDsOl-1XpT5err0Tcn0TFFod1H8gVGIycY",callbackPath:"/windsurf-auth-callback",userAgent:"antigravity-cockpit-tools",oauthTimeoutMs:6e5},I={...f.sr.glm},J={webBaseUrl:"https://zed.dev",cloudBaseUrl:"https://cloud.zed.dev",llmBaseUrl:"https://cloud.zed.dev",defaultNativeAppPort:58443,oauthTimeoutMs:6e5},K={...f.sr.codearts},L={...f.sr.deveco},M={clientId:"hermes-cli",portalBaseUrl:"https://portal.nousresearch.com",deviceCodeUrl:"https://portal.nousresearch.com/api/oauth/device/code",tokenUrl:"https://portal.nousresearch.com/api/oauth/token",agentKeyUrl:"https://portal.nousresearch.com/api/oauth/agent-key",inferenceBaseUrl:"https://inference-api.nousresearch.com/v1",scope:"inference:invoke inference:mint_agent_key"},N=3e5}};
@@ -1 +1 @@
1
- exports.id=562,exports.ids=[562],exports.modules={962:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/McpMarketplaceModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/McpMarketplaceModal.js","default")},3080:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/OAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/OAuthModal.js","default")},4996:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/CapacityBadges.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/CapacityBadges.js","default")},5843:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/NoAuthProxyCard.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/NoAuthProxyCard.js","default")},7290:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Card.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Card.js","default")},10079:(a,b,c)=>{"use strict";c.d(b,{ConfirmModal:()=>f,default:()=>e});var d=c(77943);let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Modal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Modal.js","default"),f=(0,d.registerClientReference)(function(){throw Error("Attempted to call ConfirmModal() from the server but ConfirmModal is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Modal.js","ConfirmModal")},14285:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/KiroOAuthWrapper.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/KiroOAuthWrapper.js","default")},18060:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/XiaomiMimoAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/XiaomiMimoAuthModal.js","default")},18200:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/AddCustomEmbeddingModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/AddCustomEmbeddingModal.js","default")},18421:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Tooltip.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Tooltip.js","default")},19083:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/RequestLogger.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/RequestLogger.js","default")},20493:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ComboFormModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ComboFormModal.js","default")},26866:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Sidebar.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Sidebar.js","default")},29354:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/HeaderMenu.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/HeaderMenu.js","default")},29674:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/NineRemoteButton.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/NineRemoteButton.js","default")},30508:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(5735);c(45512),c(71230),c(83784),c(7290),c(10079),c(92082),c(70061),c(33893),c(70092),c(40515),c(89886),c(26866),c(92669),c(49123),c(3080),c(94582),c(70603),c(20493),c(962),c(45205),c(29674),c(29354),c(33811),c(19083),c(82448),c(14285),c(87228),c(40167),c(56966),c(18060),c(80342),c(64148),c(70139),c(18200),c(5843),c(54065),c(18421),c(81923),c(4996);var e=c(61780);function f({children:a}){return(0,d.jsx)(e.default,{children:a})}c(64420)},33811:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ChangelogModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ChangelogModal.js","default")},33893:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Badge.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Badge.js","default")},40167:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/CursorAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/CursorAuthModal.js","default")},40515:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ThemeToggle.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ThemeToggle.js","default")},41540:(a,b,c)=>{Promise.resolve().then(c.bind(c,18200)),Promise.resolve().then(c.bind(c,70061)),Promise.resolve().then(c.bind(c,33893)),Promise.resolve().then(c.bind(c,45512)),Promise.resolve().then(c.bind(c,4996)),Promise.resolve().then(c.bind(c,7290)),Promise.resolve().then(c.bind(c,33811)),Promise.resolve().then(c.bind(c,20493)),Promise.resolve().then(c.bind(c,40167)),Promise.resolve().then(c.bind(c,70139)),Promise.resolve().then(c.bind(c,49123)),Promise.resolve().then(c.bind(c,64148)),Promise.resolve().then(c.bind(c,92669)),Promise.resolve().then(c.bind(c,29354)),Promise.resolve().then(c.bind(c,80342)),Promise.resolve().then(c.bind(c,71230)),Promise.resolve().then(c.bind(c,82448)),Promise.resolve().then(c.bind(c,14285)),Promise.resolve().then(c.bind(c,87228)),Promise.resolve().then(c.bind(c,45205)),Promise.resolve().then(c.bind(c,64420)),Promise.resolve().then(c.bind(c,61780)),Promise.resolve().then(c.bind(c,92082)),Promise.resolve().then(c.bind(c,70603)),Promise.resolve().then(c.bind(c,962)),Promise.resolve().then(c.bind(c,10079)),Promise.resolve().then(c.bind(c,94582)),Promise.resolve().then(c.bind(c,29674)),Promise.resolve().then(c.bind(c,5843)),Promise.resolve().then(c.bind(c,3080)),Promise.resolve().then(c.bind(c,81923)),Promise.resolve().then(c.bind(c,19083)),Promise.resolve().then(c.bind(c,54065)),Promise.resolve().then(c.bind(c,83784)),Promise.resolve().then(c.bind(c,26866)),Promise.resolve().then(c.bind(c,89886)),Promise.resolve().then(c.bind(c,40515)),Promise.resolve().then(c.bind(c,70092)),Promise.resolve().then(c.bind(c,18421)),Promise.resolve().then(c.bind(c,18060)),Promise.resolve().then(c.bind(c,56966))},45205:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/LanguageSwitcher.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/LanguageSwitcher.js","default")},45512:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Button.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Button.js","default")},49123:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Footer.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Footer.js","default")},49156:(a,b,c)=>{Promise.resolve().then(c.bind(c,67738)),Promise.resolve().then(c.bind(c,25919)),Promise.resolve().then(c.bind(c,75171)),Promise.resolve().then(c.bind(c,99070)),Promise.resolve().then(c.bind(c,38930)),Promise.resolve().then(c.bind(c,17660)),Promise.resolve().then(c.bind(c,11229)),Promise.resolve().then(c.bind(c,62727)),Promise.resolve().then(c.bind(c,51109)),Promise.resolve().then(c.bind(c,51585)),Promise.resolve().then(c.bind(c,48781)),Promise.resolve().then(c.bind(c,43182)),Promise.resolve().then(c.bind(c,47036)),Promise.resolve().then(c.bind(c,3236)),Promise.resolve().then(c.bind(c,79488)),Promise.resolve().then(c.bind(c,83552)),Promise.resolve().then(c.bind(c,8590)),Promise.resolve().then(c.bind(c,5291)),Promise.resolve().then(c.bind(c,56110)),Promise.resolve().then(c.bind(c,267)),Promise.resolve().then(c.bind(c,53838)),Promise.resolve().then(c.bind(c,85306)),Promise.resolve().then(c.bind(c,74812)),Promise.resolve().then(c.bind(c,39645)),Promise.resolve().then(c.bind(c,20084)),Promise.resolve().then(c.bind(c,95145)),Promise.resolve().then(c.bind(c,83352)),Promise.resolve().then(c.bind(c,29370)),Promise.resolve().then(c.bind(c,50585)),Promise.resolve().then(c.bind(c,79346)),Promise.resolve().then(c.bind(c,11633)),Promise.resolve().then(c.bind(c,91809)),Promise.resolve().then(c.bind(c,91099)),Promise.resolve().then(c.bind(c,4770)),Promise.resolve().then(c.bind(c,42196)),Promise.resolve().then(c.bind(c,19308)),Promise.resolve().then(c.bind(c,53845)),Promise.resolve().then(c.bind(c,95514)),Promise.resolve().then(c.bind(c,32971)),Promise.resolve().then(c.bind(c,24622)),Promise.resolve().then(c.bind(c,24656))},54065:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/SegmentedControl.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/SegmentedControl.js","default")},56966:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ZedAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ZedAuthModal.js","default")},61780:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/layouts/DashboardLayout.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/layouts/DashboardLayout.js","default")},64148:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/GitLabAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/GitLabAuthModal.js","default")},64420:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/layouts/AuthLayout.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/layouts/AuthLayout.js","default")},70061:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Avatar.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Avatar.js","default")},70092:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Toggle.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Toggle.js","default")},70139:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/EditConnectionModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/EditConnectionModal.js","default")},70603:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ManualConfigModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ManualConfigModal.js","default")},71230:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Input.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Input.js","default")},80342:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/IFlowCookieModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/IFlowCookieModal.js","default")},81923:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ProviderInfoCard.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ProviderInfoCard.js","default")},82448:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/KiroAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/KiroAuthModal.js","default")},83784:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Select.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Select.js","default")},87228:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/KiroSocialOAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/KiroSocialOAuthModal.js","default")},92082:(a,b,c)=>{"use strict";c.d(b,{CardSkeleton:()=>h,PageLoading:()=>f,Skeleton:()=>g,Spinner:()=>e,default:()=>i});var d=c(77943);let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call Spinner() from the server but Spinner is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Loading.js","Spinner"),f=(0,d.registerClientReference)(function(){throw Error("Attempted to call PageLoading() from the server but PageLoading is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Loading.js","PageLoading"),g=(0,d.registerClientReference)(function(){throw Error("Attempted to call Skeleton() from the server but Skeleton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Loading.js","Skeleton"),h=(0,d.registerClientReference)(function(){throw Error("Attempted to call CardSkeleton() from the server but CardSkeleton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Loading.js","CardSkeleton"),i=(0,d.registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Loading.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Loading.js","default")},92669:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Header.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Header.js","default")},94582:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ModelSelectModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ModelSelectModal.js","default")}};
1
+ exports.id=562,exports.ids=[562],exports.modules={962:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/McpMarketplaceModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/McpMarketplaceModal.js","default")},3080:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/OAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/OAuthModal.js","default")},4996:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/CapacityBadges.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/CapacityBadges.js","default")},5843:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/NoAuthProxyCard.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/NoAuthProxyCard.js","default")},7290:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Card.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Card.js","default")},10079:(a,b,c)=>{"use strict";c.d(b,{ConfirmModal:()=>f,default:()=>e});var d=c(77943);let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Modal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Modal.js","default"),f=(0,d.registerClientReference)(function(){throw Error("Attempted to call ConfirmModal() from the server but ConfirmModal is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Modal.js","ConfirmModal")},14285:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/KiroOAuthWrapper.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/KiroOAuthWrapper.js","default")},18060:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/XiaomiMimoAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/XiaomiMimoAuthModal.js","default")},18200:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/AddCustomEmbeddingModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/AddCustomEmbeddingModal.js","default")},18421:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Tooltip.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Tooltip.js","default")},19083:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/RequestLogger.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/RequestLogger.js","default")},20493:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ComboFormModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ComboFormModal.js","default")},26866:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Sidebar.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Sidebar.js","default")},29354:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/HeaderMenu.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/HeaderMenu.js","default")},29674:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/NineRemoteButton.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/NineRemoteButton.js","default")},30508:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(5735);c(45512),c(71230),c(83784),c(7290),c(10079),c(92082),c(70061),c(33893),c(70092),c(40515),c(89886),c(26866),c(92669),c(49123),c(3080),c(94582),c(70603),c(20493),c(962),c(45205),c(29674),c(29354),c(33811),c(19083),c(82448),c(14285),c(87228),c(40167),c(56966),c(18060),c(80342),c(64148),c(70139),c(18200),c(5843),c(54065),c(18421),c(81923),c(4996);var e=c(61780);function f({children:a}){return(0,d.jsx)(e.default,{children:a})}c(64420)},33811:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ChangelogModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ChangelogModal.js","default")},33893:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Badge.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Badge.js","default")},40167:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/CursorAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/CursorAuthModal.js","default")},40515:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ThemeToggle.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ThemeToggle.js","default")},41540:(a,b,c)=>{Promise.resolve().then(c.bind(c,18200)),Promise.resolve().then(c.bind(c,70061)),Promise.resolve().then(c.bind(c,33893)),Promise.resolve().then(c.bind(c,45512)),Promise.resolve().then(c.bind(c,4996)),Promise.resolve().then(c.bind(c,7290)),Promise.resolve().then(c.bind(c,33811)),Promise.resolve().then(c.bind(c,20493)),Promise.resolve().then(c.bind(c,40167)),Promise.resolve().then(c.bind(c,70139)),Promise.resolve().then(c.bind(c,49123)),Promise.resolve().then(c.bind(c,64148)),Promise.resolve().then(c.bind(c,92669)),Promise.resolve().then(c.bind(c,29354)),Promise.resolve().then(c.bind(c,80342)),Promise.resolve().then(c.bind(c,71230)),Promise.resolve().then(c.bind(c,82448)),Promise.resolve().then(c.bind(c,14285)),Promise.resolve().then(c.bind(c,87228)),Promise.resolve().then(c.bind(c,45205)),Promise.resolve().then(c.bind(c,64420)),Promise.resolve().then(c.bind(c,61780)),Promise.resolve().then(c.bind(c,92082)),Promise.resolve().then(c.bind(c,70603)),Promise.resolve().then(c.bind(c,962)),Promise.resolve().then(c.bind(c,10079)),Promise.resolve().then(c.bind(c,94582)),Promise.resolve().then(c.bind(c,29674)),Promise.resolve().then(c.bind(c,5843)),Promise.resolve().then(c.bind(c,3080)),Promise.resolve().then(c.bind(c,81923)),Promise.resolve().then(c.bind(c,19083)),Promise.resolve().then(c.bind(c,54065)),Promise.resolve().then(c.bind(c,83784)),Promise.resolve().then(c.bind(c,26866)),Promise.resolve().then(c.bind(c,89886)),Promise.resolve().then(c.bind(c,40515)),Promise.resolve().then(c.bind(c,70092)),Promise.resolve().then(c.bind(c,18421)),Promise.resolve().then(c.bind(c,18060)),Promise.resolve().then(c.bind(c,56966))},45205:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/LanguageSwitcher.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/LanguageSwitcher.js","default")},45512:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Button.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Button.js","default")},49123:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Footer.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Footer.js","default")},49156:(a,b,c)=>{Promise.resolve().then(c.bind(c,67738)),Promise.resolve().then(c.bind(c,25919)),Promise.resolve().then(c.bind(c,75171)),Promise.resolve().then(c.bind(c,99070)),Promise.resolve().then(c.bind(c,38930)),Promise.resolve().then(c.bind(c,17660)),Promise.resolve().then(c.bind(c,11229)),Promise.resolve().then(c.bind(c,62727)),Promise.resolve().then(c.bind(c,51109)),Promise.resolve().then(c.bind(c,51585)),Promise.resolve().then(c.bind(c,48781)),Promise.resolve().then(c.bind(c,43182)),Promise.resolve().then(c.bind(c,47036)),Promise.resolve().then(c.bind(c,3236)),Promise.resolve().then(c.bind(c,79488)),Promise.resolve().then(c.bind(c,83552)),Promise.resolve().then(c.bind(c,8590)),Promise.resolve().then(c.bind(c,5291)),Promise.resolve().then(c.bind(c,56110)),Promise.resolve().then(c.bind(c,267)),Promise.resolve().then(c.bind(c,53838)),Promise.resolve().then(c.bind(c,85306)),Promise.resolve().then(c.bind(c,74812)),Promise.resolve().then(c.bind(c,39645)),Promise.resolve().then(c.bind(c,20084)),Promise.resolve().then(c.bind(c,95145)),Promise.resolve().then(c.bind(c,4249)),Promise.resolve().then(c.bind(c,29370)),Promise.resolve().then(c.bind(c,50585)),Promise.resolve().then(c.bind(c,79346)),Promise.resolve().then(c.bind(c,11633)),Promise.resolve().then(c.bind(c,91809)),Promise.resolve().then(c.bind(c,91099)),Promise.resolve().then(c.bind(c,4770)),Promise.resolve().then(c.bind(c,42196)),Promise.resolve().then(c.bind(c,19308)),Promise.resolve().then(c.bind(c,53845)),Promise.resolve().then(c.bind(c,95514)),Promise.resolve().then(c.bind(c,32971)),Promise.resolve().then(c.bind(c,24622)),Promise.resolve().then(c.bind(c,24656))},54065:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/SegmentedControl.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/SegmentedControl.js","default")},56966:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ZedAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ZedAuthModal.js","default")},61780:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/layouts/DashboardLayout.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/layouts/DashboardLayout.js","default")},64148:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/GitLabAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/GitLabAuthModal.js","default")},64420:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/layouts/AuthLayout.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/layouts/AuthLayout.js","default")},70061:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Avatar.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Avatar.js","default")},70092:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Toggle.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Toggle.js","default")},70139:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/EditConnectionModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/EditConnectionModal.js","default")},70603:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ManualConfigModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ManualConfigModal.js","default")},71230:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Input.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Input.js","default")},80342:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/IFlowCookieModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/IFlowCookieModal.js","default")},81923:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ProviderInfoCard.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ProviderInfoCard.js","default")},82448:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/KiroAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/KiroAuthModal.js","default")},83784:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Select.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Select.js","default")},87228:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/KiroSocialOAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/KiroSocialOAuthModal.js","default")},92082:(a,b,c)=>{"use strict";c.d(b,{CardSkeleton:()=>h,PageLoading:()=>f,Skeleton:()=>g,Spinner:()=>e,default:()=>i});var d=c(77943);let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call Spinner() from the server but Spinner is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Loading.js","Spinner"),f=(0,d.registerClientReference)(function(){throw Error("Attempted to call PageLoading() from the server but PageLoading is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Loading.js","PageLoading"),g=(0,d.registerClientReference)(function(){throw Error("Attempted to call Skeleton() from the server but Skeleton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Loading.js","Skeleton"),h=(0,d.registerClientReference)(function(){throw Error("Attempted to call CardSkeleton() from the server but CardSkeleton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Loading.js","CardSkeleton"),i=(0,d.registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Loading.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Loading.js","default")},92669:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/Header.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/Header.js","default")},94582:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/9router/9router/src/shared/components/ModelSelectModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/9router/9router/src/shared/components/ModelSelectModal.js","default")}};
@@ -1 +1 @@
1
- "use strict";exports.id=6070,exports.ids=[6070],exports.modules={26070:(a,b,c)=>{c.d(b,{xq:()=>p,B$:()=>s,vq:()=>q,sr:()=>r});var d=c(72375),e=c(41004);let f={baseUrl:"",format:"openai",headers:{},auth:{header:"Authorization",scheme:"bearer",source:["accessToken","apiKey"]},forceStream:!1,urlSuffix:"",quirks:{},passthroughModels:!1,retry:e.cI,timeoutMs:e.pH,executor:"default"};var g=c(99511);let h={alloy:{id:"alloy",name:"Alloy"},ash:{id:"ash",name:"Ash"},ballad:{id:"ballad",name:"Ballad"},cedar:{id:"cedar",name:"Cedar"},coral:{id:"coral",name:"Coral"},echo:{id:"echo",name:"Echo"},fable:{id:"fable",name:"Fable"},marin:{id:"marin",name:"Marin"},nova:{id:"nova",name:"Nova"},onyx:{id:"onyx",name:"Onyx"},sage:{id:"sage",name:"Sage"},shimmer:{id:"shimmer",name:"Shimmer"},verse:{id:"verse",name:"Verse"}},i=(...a)=>a.map(a=>({...h[a],type:"tts"})),j=i("alloy","ash","coral","echo","fable","nova","onyx","sage","shimmer"),k=i("alloy","ash","ballad","cedar","coral","echo","fable","marin","nova","onyx","sage","shimmer","verse"),l=["Zephyr","Puck","Charon","Kore","Fenrir","Leda","Orus","Aoede","Callirrhoe","Autonoe","Enceladus","Iapetus","Umbriel","Algieba","Despina","Erinome","Algenib","Rasalgethi","Laomedeia","Achernar","Alnilam","Schedar","Gacrux","Pulcherrima","Achird","Zubenelgenubi","Vindemiatrix","Sadachbia","Sadaltager","Sulafat"].map(a=>({id:a,name:a,type:"tts"})),m={openai:{models:[{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"tts-1",name:"TTS-1",type:"tts"}],voices:{"gpt-4o-mini-tts":k,"tts-1":j,"tts-1-hd":j},allVoices:k},openrouter:{models:[{id:"openai/gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"openai/tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"openai/tts-1",name:"TTS-1",type:"tts"}],voices:{"openai/gpt-4o-mini-tts":k,"openai/tts-1":j,"openai/tts-1-hd":j},allVoices:k},elevenlabs:{models:[{id:"eleven_flash_v2_5",name:"Flash v2.5 (Fastest)",type:"tts"},{id:"eleven_turbo_v2_5",name:"Turbo v2.5 (Fast)",type:"tts"},{id:"eleven_multilingual_v2",name:"Multilingual v2 (Quality)",type:"tts"},{id:"eleven_monolingual_v1",name:"Monolingual v1 (English)",type:"tts"}]},"edge-tts":{defaults:[{id:"en-US-AriaNeural",name:"Aria (en-US)",type:"tts"},{id:"en-US-GuyNeural",name:"Guy (en-US)",type:"tts"},{id:"en-GB-SoniaNeural",name:"Sonia (en-GB)",type:"tts"},{id:"vi-VN-HoaiMyNeural",name:"Hoai My (vi-VN)",type:"tts"},{id:"vi-VN-NamMinhNeural",name:"Nam Minh (vi-VN)",type:"tts"},{id:"zh-CN-XiaoxiaoNeural",name:"Xiaoxiao (zh-CN)",type:"tts"},{id:"zh-CN-YunxiNeural",name:"Yunxi (zh-CN)",type:"tts"},{id:"fr-FR-DeniseNeural",name:"Denise (fr-FR)",type:"tts"},{id:"de-DE-KatjaNeural",name:"Katja (de-DE)",type:"tts"},{id:"ja-JP-NanamiNeural",name:"Nanami (ja-JP)",type:"tts"},{id:"ko-KR-SunHiNeural",name:"SunHi (ko-KR)",type:"tts"}]},"local-device":{defaults:[{id:"default",name:"System Default Voice",type:"tts"}]},"google-tts":{defaults:[{id:"af",name:"Afrikaans",type:"tts"},{id:"ar",name:"Arabic",type:"tts"},{id:"bg",name:"Bulgarian",type:"tts"},{id:"bn",name:"Bengali",type:"tts"},{id:"bs",name:"Bosnian",type:"tts"},{id:"ca",name:"Catalan",type:"tts"},{id:"cs",name:"Czech",type:"tts"},{id:"cy",name:"Welsh",type:"tts"},{id:"da",name:"Danish",type:"tts"},{id:"de",name:"German",type:"tts"},{id:"el",name:"Greek",type:"tts"},{id:"en",name:"English",type:"tts"},{id:"eo",name:"Esperanto",type:"tts"},{id:"es",name:"Spanish",type:"tts"},{id:"et",name:"Estonian",type:"tts"},{id:"fi",name:"Finnish",type:"tts"},{id:"fr",name:"French",type:"tts"},{id:"gu",name:"Gujarati",type:"tts"},{id:"hi",name:"Hindi",type:"tts"},{id:"hr",name:"Croatian",type:"tts"},{id:"hu",name:"Hungarian",type:"tts"},{id:"hy",name:"Armenian",type:"tts"},{id:"id",name:"Indonesian",type:"tts"},{id:"is",name:"Icelandic",type:"tts"},{id:"it",name:"Italian",type:"tts"},{id:"ja",name:"Japanese",type:"tts"},{id:"jw",name:"Javanese",type:"tts"},{id:"km",name:"Khmer",type:"tts"},{id:"kn",name:"Kannada",type:"tts"},{id:"ko",name:"Korean",type:"tts"},{id:"la",name:"Latin",type:"tts"},{id:"lv",name:"Latvian",type:"tts"},{id:"mk",name:"Macedonian",type:"tts"},{id:"ml",name:"Malayalam",type:"tts"},{id:"mr",name:"Marathi",type:"tts"},{id:"my",name:"Myanmar (Burmese)",type:"tts"},{id:"ne",name:"Nepali",type:"tts"},{id:"nl",name:"Dutch",type:"tts"},{id:"no",name:"Norwegian",type:"tts"},{id:"pl",name:"Polish",type:"tts"},{id:"pt",name:"Portuguese",type:"tts"},{id:"ro",name:"Romanian",type:"tts"},{id:"ru",name:"Russian",type:"tts"},{id:"si",name:"Sinhala",type:"tts"},{id:"sk",name:"Slovak",type:"tts"},{id:"sq",name:"Albanian",type:"tts"},{id:"sr",name:"Serbian",type:"tts"},{id:"su",name:"Sundanese",type:"tts"},{id:"sv",name:"Swedish",type:"tts"},{id:"sw",name:"Swahili",type:"tts"},{id:"ta",name:"Tamil",type:"tts"},{id:"te",name:"Telugu",type:"tts"},{id:"th",name:"Thai",type:"tts"},{id:"tl",name:"Filipino",type:"tts"},{id:"tr",name:"Turkish",type:"tts"},{id:"uk",name:"Ukrainian",type:"tts"},{id:"ur",name:"Urdu",type:"tts"},{id:"vi",name:"Vietnamese",type:"tts"},{id:"zh-CN",name:"Chinese (Simplified)",type:"tts"},{id:"zh-TW",name:"Chinese (Traditional)",type:"tts"}]},gemini:{models:[{id:"gemini-3.1-flash-tts-preview",name:"Gemini 3.1 Flash TTS",type:"tts"},{id:"gemini-2.5-flash-preview-tts",name:"Gemini 2.5 Flash TTS",type:"tts"},{id:"gemini-2.5-pro-preview-tts",name:"Gemini 2.5 Pro TTS",type:"tts"}],voices:{"gemini-3.1-flash-tts-preview":l,"gemini-2.5-flash-preview-tts":l,"gemini-2.5-pro-preview-tts":l},allVoices:l},"xiaomi-mimo":{models:[{id:"mimo-v2.5-tts",name:"MiMo V2.5 TTS",type:"tts"}],voices:{"mimo-v2.5-tts":[{id:"mimo_default",name:"mimo_default"},{id:"冰糖",name:"冰糖"},{id:"茉莉",name:"茉莉"},{id:"苏打",name:"苏打"},{id:"白桦",name:"白桦"},{id:"Mia",name:"Mia"},{id:"Chloe",name:"Chloe"},{id:"Milo",name:"Milo"},{id:"Dean",name:"Dean"}].map(a=>({type:"tts",...a}))}}},n=["clientId","clientSecret","tokenUrl"],o=new Set(["serviceKinds","ttsConfig","sttConfig","embeddingConfig","imageConfig","imageToTextConfig","videoConfig","musicConfig","searchViaChat","searchConfig","fetchConfig","systemoneConfig","modelsFetcher","mediaPriority","hiddenKinds"]),p={},q={},r={},s={};for(let a of d.default){a.transport&&(p[a.id]=function(a,b){let c={...a};if(c.format||(c.format=f.format),b)for(let a of n)void 0===c[a]&&void 0!==b[a]&&(c[a]=b[a]);return c}(a.transport,a.oauth),a.transports&&(p[a.id].transports=a.transports)),void 0!==a.models&&(q[a.alias||a.id]=a.models.map(g.pk)),a.oauth&&(r[a.id]=a.oauth);let b={};for(let c of o)void 0!==a[c]&&(b[c]=a[c]);a.media&&Object.assign(b,a.media),Object.keys(b).length&&(s[a.id]=b)}Object.assign(q,function(){let a={};for(let[b,c]of Object.entries(m))c.models&&(a[`${b}-tts-models`]=c.models),c.allVoices&&(a[`${b}-tts-voices`]=c.allVoices),c.defaults&&(a[b]=c.defaults);return a["openai-tts-voices"]=m.openai.allVoices,a["openrouter-tts-voices"]=m.openrouter.allVoices,a}())},99511:(a,b,c)=>{function d(a){return a.split(/[-_\s]+/).filter(Boolean).map(a=>/^\d/.test(a)?a:a.charAt(0).toUpperCase()+a.slice(1)).join(" ")}c.d(b,{g5:()=>h,ec:()=>j,gr:()=>i,pk:()=>g,Kq:()=>f});let e=[[/^kimi-k(\d+(?:\.\d+)?)(-thinking)?$/i,a=>`Kimi K${a[1]}${a[2]?" Thinking":""}`],[/^glm-(\d+(?:\.\d+)?)(v)?$/i,a=>`GLM ${a[1]}${a[2]?"V (Vision)":""}`],[/^minimax-m(\d+(?:\.\d+)?)$/i,a=>`MiniMax M${a[1]}`],[/^gpt-(.+)$/i,a=>`GPT ${d(a[1])}`],[/^gemini-(.+)$/i,a=>`Gemini ${d(a[1])}`],[/^grok-(.+)$/i,a=>`Grok ${d(a[1])}`],[/^deepseek-(.+)$/i,a=>`DeepSeek ${d(a[1])}`],[/^qwen([\d.]+.*)$/i,a=>`Qwen ${d(a[1])}`]];function f(a){return"string"!=typeof a?a:a.replace(/(\d)-(\d)/g,"$1.$2")}function g(a){let b="string"==typeof a?{id:a}:a;return void 0!==b.name?b:{...b,name:function(a){if("string"!=typeof a)return a;for(let[b,c]of e){let d=a.match(b);if(d)return c(d)}return a}(b.id)}}function h(a){return a?.strip||[]}function i(a){return a?.targetFormat||null}function j(a){return a?.supportedFormats||null}}};
1
+ "use strict";exports.id=6070,exports.ids=[6070],exports.modules={26070:(a,b,c)=>{c.d(b,{xq:()=>p,B$:()=>s,vq:()=>q,sr:()=>r});var d=c(82983),e=c(41004);let f={baseUrl:"",format:"openai",headers:{},auth:{header:"Authorization",scheme:"bearer",source:["accessToken","apiKey"]},forceStream:!1,urlSuffix:"",quirks:{},passthroughModels:!1,retry:e.cI,timeoutMs:e.pH,executor:"default"};var g=c(99511);let h={alloy:{id:"alloy",name:"Alloy"},ash:{id:"ash",name:"Ash"},ballad:{id:"ballad",name:"Ballad"},cedar:{id:"cedar",name:"Cedar"},coral:{id:"coral",name:"Coral"},echo:{id:"echo",name:"Echo"},fable:{id:"fable",name:"Fable"},marin:{id:"marin",name:"Marin"},nova:{id:"nova",name:"Nova"},onyx:{id:"onyx",name:"Onyx"},sage:{id:"sage",name:"Sage"},shimmer:{id:"shimmer",name:"Shimmer"},verse:{id:"verse",name:"Verse"}},i=(...a)=>a.map(a=>({...h[a],type:"tts"})),j=i("alloy","ash","coral","echo","fable","nova","onyx","sage","shimmer"),k=i("alloy","ash","ballad","cedar","coral","echo","fable","marin","nova","onyx","sage","shimmer","verse"),l=["Zephyr","Puck","Charon","Kore","Fenrir","Leda","Orus","Aoede","Callirrhoe","Autonoe","Enceladus","Iapetus","Umbriel","Algieba","Despina","Erinome","Algenib","Rasalgethi","Laomedeia","Achernar","Alnilam","Schedar","Gacrux","Pulcherrima","Achird","Zubenelgenubi","Vindemiatrix","Sadachbia","Sadaltager","Sulafat"].map(a=>({id:a,name:a,type:"tts"})),m={openai:{models:[{id:"gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"tts-1",name:"TTS-1",type:"tts"}],voices:{"gpt-4o-mini-tts":k,"tts-1":j,"tts-1-hd":j},allVoices:k},openrouter:{models:[{id:"openai/gpt-4o-mini-tts",name:"GPT-4o Mini TTS",type:"tts"},{id:"openai/tts-1-hd",name:"TTS-1 HD",type:"tts"},{id:"openai/tts-1",name:"TTS-1",type:"tts"}],voices:{"openai/gpt-4o-mini-tts":k,"openai/tts-1":j,"openai/tts-1-hd":j},allVoices:k},elevenlabs:{models:[{id:"eleven_flash_v2_5",name:"Flash v2.5 (Fastest)",type:"tts"},{id:"eleven_turbo_v2_5",name:"Turbo v2.5 (Fast)",type:"tts"},{id:"eleven_multilingual_v2",name:"Multilingual v2 (Quality)",type:"tts"},{id:"eleven_monolingual_v1",name:"Monolingual v1 (English)",type:"tts"}]},"edge-tts":{defaults:[{id:"en-US-AriaNeural",name:"Aria (en-US)",type:"tts"},{id:"en-US-GuyNeural",name:"Guy (en-US)",type:"tts"},{id:"en-GB-SoniaNeural",name:"Sonia (en-GB)",type:"tts"},{id:"vi-VN-HoaiMyNeural",name:"Hoai My (vi-VN)",type:"tts"},{id:"vi-VN-NamMinhNeural",name:"Nam Minh (vi-VN)",type:"tts"},{id:"zh-CN-XiaoxiaoNeural",name:"Xiaoxiao (zh-CN)",type:"tts"},{id:"zh-CN-YunxiNeural",name:"Yunxi (zh-CN)",type:"tts"},{id:"fr-FR-DeniseNeural",name:"Denise (fr-FR)",type:"tts"},{id:"de-DE-KatjaNeural",name:"Katja (de-DE)",type:"tts"},{id:"ja-JP-NanamiNeural",name:"Nanami (ja-JP)",type:"tts"},{id:"ko-KR-SunHiNeural",name:"SunHi (ko-KR)",type:"tts"}]},"local-device":{defaults:[{id:"default",name:"System Default Voice",type:"tts"}]},"google-tts":{defaults:[{id:"af",name:"Afrikaans",type:"tts"},{id:"ar",name:"Arabic",type:"tts"},{id:"bg",name:"Bulgarian",type:"tts"},{id:"bn",name:"Bengali",type:"tts"},{id:"bs",name:"Bosnian",type:"tts"},{id:"ca",name:"Catalan",type:"tts"},{id:"cs",name:"Czech",type:"tts"},{id:"cy",name:"Welsh",type:"tts"},{id:"da",name:"Danish",type:"tts"},{id:"de",name:"German",type:"tts"},{id:"el",name:"Greek",type:"tts"},{id:"en",name:"English",type:"tts"},{id:"eo",name:"Esperanto",type:"tts"},{id:"es",name:"Spanish",type:"tts"},{id:"et",name:"Estonian",type:"tts"},{id:"fi",name:"Finnish",type:"tts"},{id:"fr",name:"French",type:"tts"},{id:"gu",name:"Gujarati",type:"tts"},{id:"hi",name:"Hindi",type:"tts"},{id:"hr",name:"Croatian",type:"tts"},{id:"hu",name:"Hungarian",type:"tts"},{id:"hy",name:"Armenian",type:"tts"},{id:"id",name:"Indonesian",type:"tts"},{id:"is",name:"Icelandic",type:"tts"},{id:"it",name:"Italian",type:"tts"},{id:"ja",name:"Japanese",type:"tts"},{id:"jw",name:"Javanese",type:"tts"},{id:"km",name:"Khmer",type:"tts"},{id:"kn",name:"Kannada",type:"tts"},{id:"ko",name:"Korean",type:"tts"},{id:"la",name:"Latin",type:"tts"},{id:"lv",name:"Latvian",type:"tts"},{id:"mk",name:"Macedonian",type:"tts"},{id:"ml",name:"Malayalam",type:"tts"},{id:"mr",name:"Marathi",type:"tts"},{id:"my",name:"Myanmar (Burmese)",type:"tts"},{id:"ne",name:"Nepali",type:"tts"},{id:"nl",name:"Dutch",type:"tts"},{id:"no",name:"Norwegian",type:"tts"},{id:"pl",name:"Polish",type:"tts"},{id:"pt",name:"Portuguese",type:"tts"},{id:"ro",name:"Romanian",type:"tts"},{id:"ru",name:"Russian",type:"tts"},{id:"si",name:"Sinhala",type:"tts"},{id:"sk",name:"Slovak",type:"tts"},{id:"sq",name:"Albanian",type:"tts"},{id:"sr",name:"Serbian",type:"tts"},{id:"su",name:"Sundanese",type:"tts"},{id:"sv",name:"Swedish",type:"tts"},{id:"sw",name:"Swahili",type:"tts"},{id:"ta",name:"Tamil",type:"tts"},{id:"te",name:"Telugu",type:"tts"},{id:"th",name:"Thai",type:"tts"},{id:"tl",name:"Filipino",type:"tts"},{id:"tr",name:"Turkish",type:"tts"},{id:"uk",name:"Ukrainian",type:"tts"},{id:"ur",name:"Urdu",type:"tts"},{id:"vi",name:"Vietnamese",type:"tts"},{id:"zh-CN",name:"Chinese (Simplified)",type:"tts"},{id:"zh-TW",name:"Chinese (Traditional)",type:"tts"}]},gemini:{models:[{id:"gemini-3.1-flash-tts-preview",name:"Gemini 3.1 Flash TTS",type:"tts"},{id:"gemini-2.5-flash-preview-tts",name:"Gemini 2.5 Flash TTS",type:"tts"},{id:"gemini-2.5-pro-preview-tts",name:"Gemini 2.5 Pro TTS",type:"tts"}],voices:{"gemini-3.1-flash-tts-preview":l,"gemini-2.5-flash-preview-tts":l,"gemini-2.5-pro-preview-tts":l},allVoices:l},"xiaomi-mimo":{models:[{id:"mimo-v2.5-tts",name:"MiMo V2.5 TTS",type:"tts"}],voices:{"mimo-v2.5-tts":[{id:"mimo_default",name:"mimo_default"},{id:"冰糖",name:"冰糖"},{id:"茉莉",name:"茉莉"},{id:"苏打",name:"苏打"},{id:"白桦",name:"白桦"},{id:"Mia",name:"Mia"},{id:"Chloe",name:"Chloe"},{id:"Milo",name:"Milo"},{id:"Dean",name:"Dean"}].map(a=>({type:"tts",...a}))}}},n=["clientId","clientSecret","tokenUrl"],o=new Set(["serviceKinds","ttsConfig","sttConfig","embeddingConfig","imageConfig","imageToTextConfig","videoConfig","musicConfig","searchViaChat","searchConfig","fetchConfig","systemoneConfig","modelsFetcher","mediaPriority","hiddenKinds"]),p={},q={},r={},s={};for(let a of d.default){a.transport&&(p[a.id]=function(a,b){let c={...a};if(c.format||(c.format=f.format),b)for(let a of n)void 0===c[a]&&void 0!==b[a]&&(c[a]=b[a]);return c}(a.transport,a.oauth),a.transports&&(p[a.id].transports=a.transports)),void 0!==a.models&&(q[a.alias||a.id]=a.models.map(g.pk)),a.oauth&&(r[a.id]=a.oauth);let b={};for(let c of o)void 0!==a[c]&&(b[c]=a[c]);a.media&&Object.assign(b,a.media),Object.keys(b).length&&(s[a.id]=b)}Object.assign(q,function(){let a={};for(let[b,c]of Object.entries(m))c.models&&(a[`${b}-tts-models`]=c.models),c.allVoices&&(a[`${b}-tts-voices`]=c.allVoices),c.defaults&&(a[b]=c.defaults);return a["openai-tts-voices"]=m.openai.allVoices,a["openrouter-tts-voices"]=m.openrouter.allVoices,a}())},99511:(a,b,c)=>{function d(a){return a.split(/[-_\s]+/).filter(Boolean).map(a=>/^\d/.test(a)?a:a.charAt(0).toUpperCase()+a.slice(1)).join(" ")}c.d(b,{g5:()=>h,ec:()=>j,gr:()=>i,pk:()=>g,Kq:()=>f});let e=[[/^kimi-k(\d+(?:\.\d+)?)(-thinking)?$/i,a=>`Kimi K${a[1]}${a[2]?" Thinking":""}`],[/^glm-(\d+(?:\.\d+)?)(v)?$/i,a=>`GLM ${a[1]}${a[2]?"V (Vision)":""}`],[/^minimax-m(\d+(?:\.\d+)?)$/i,a=>`MiniMax M${a[1]}`],[/^gpt-(.+)$/i,a=>`GPT ${d(a[1])}`],[/^gemini-(.+)$/i,a=>`Gemini ${d(a[1])}`],[/^grok-(.+)$/i,a=>`Grok ${d(a[1])}`],[/^deepseek-(.+)$/i,a=>`DeepSeek ${d(a[1])}`],[/^qwen([\d.]+.*)$/i,a=>`Qwen ${d(a[1])}`]];function f(a){return"string"!=typeof a?a:a.replace(/(\d)-(\d)/g,"$1.$2")}function g(a){let b="string"==typeof a?{id:a}:a;return void 0!==b.name?b:{...b,name:function(a){if("string"!=typeof a)return a;for(let[b,c]of e){let d=a.match(b);if(d)return c(d)}return a}(b.id)}}function h(a){return a?.strip||[]}function i(a){return a?.targetFormat||null}function j(a){return a?.supportedFormats||null}}};
@@ -1,11 +1,11 @@
1
- "use strict";exports.id=614,exports.ids=[614],exports.modules={80614:(a,b,c)=>{c.d(b,{BS:()=>M,Rm:()=>H,nY:()=>ac});var d=c(31421),e=c(77598),f=c.n(e),g=c(73024),h=c.n(g),i=c(76760),j=c.n(i),k=c(46193),l=c(48161),m=c.n(l),n=c(49120),o=c(39609),p=c(72239),q=c(41004);let r=0,s=/^[A-Za-z0-9._:/@[\]()-]+$/,t="opencode/",u="opencode-cli://run",v=Math.min(184320,"win32"===process.platform?30720:"linux"===process.platform?122880:184320),w="opencode_cli_error",x="attachments",y={"image/png":"png","image/jpeg":"jpg","image/gif":"gif","image/webp":"webp","image/bmp":"bmp","image/svg+xml":"svg"};function z(a){let b=process.env[a];return null==b?"":String(b).trim().toLowerCase()}function A(a){return"win32"===process.platform&&!!a&&(!a.includes(j().sep)||/\.(cmd|bat)$/i.test(a))}function B(a){return`"${String(a).replace(/"/g,'""')}"`}function C(a,b){return A(a)?b.map(B):b}function D(){let a=function(){let a=z("CLI_OPENCODE_BIN");if(a)return[a];let b=m().homedir();if("win32"===process.platform){let a=process.env.LOCALAPPDATA||j().join(b,"AppData","Local"),c=process.env.APPDATA||j().join(b,"AppData","Roaming");return[j().join(b,".opencode","bin","opencode.exe"),j().join(a,"opencode","bin","opencode.exe"),j().join(c,"npm","opencode.cmd"),j().join(a,"npm","opencode.cmd"),j().join(b,".bun","bin","opencode.exe"),"opencode.cmd"]}return[j().join(b,".opencode","bin","opencode"),j().join(b,".local","bin","opencode"),j().join(b,".bun","bin","opencode"),"/opt/homebrew/bin/opencode","/usr/local/bin/opencode","/usr/bin/opencode","opencode"]}();for(let b of a)if(b.includes(j().sep))try{if(h().existsSync(b))return b}catch{}return a[a.length-1]}function E(a){return new Promise(b=>{let c,e=!1,f=a=>{e||(e=!0,b(a))};try{c=(0,d.spawn)(a,C(a,["--version"]),{stdio:["ignore","pipe","ignore"],shell:A(a)})}catch{f({ok:!1,major:null});return}let g="",h=setTimeout(()=>{try{c.kill("SIGKILL")}catch{}f({ok:!1,major:null})},q.SW.versionProbeMs);h.unref&&h.unref(),c.on("error",()=>{clearTimeout(h),f({ok:!1,major:null})}),c.stdout.on("data",a=>{g=(g+a.toString("utf8")).slice(0,200)}),c.on("close",a=>{let b;clearTimeout(h),f({ok:0===a,major:(b=String(g||"").match(/(\d+)\s*\./))?Number(b[1]):null})})})}let F=null,G=null;async function H({force:a=!1}={}){let b=z("OPENCODE_TRANSPORT");if("http"===b||"off"===b)return!1;if("cli"===b||"on"===b){let a=D(),b=F?.bin===a&&null!=F.major?F.major:(await E(a)).major;return F={bin:a,ok:!0,checkedAt:Date.now(),major:b},!0}return!a&&F&&Date.now()-F.checkedAt<q.SW.availabilityTtlMs?F.ok:!a&&G?G:G=(async()=>{try{let a=D(),{ok:b,major:c}=await E(a);return F={bin:a,ok:b,checkedAt:Date.now(),major:c},b}finally{G=null}})()}function I(){return{bin:F?.bin||D(),ok:F?.ok??null,major:F?.major??null}}let J=null,K=null,L=0;async function M({ttlMs:a=q.SW.availabilityTtlMs}={}){return J&&Date.now()-J.at<a?J.ids:Date.now()-L<6e4?null:K||(K=(async()=>{try{var a;let b=await (a=I().bin,new Promise(b=>{let c,e=!1,f=a=>{e||(e=!0,b(a))};try{c=(0,d.spawn)(a,C(a,["models"]),{stdio:["ignore","pipe","ignore"],shell:A(a)})}catch{f(null);return}let g="",h=setTimeout(()=>{try{c.kill("SIGKILL")}catch{}f(null)},q.SW.versionProbeMs);h.unref&&h.unref(),c.on("error",()=>{clearTimeout(h),f(null)}),c.stdout.on("data",a=>{g+=a.toString("utf8")}),c.on("close",a=>{if(clearTimeout(h),0!==a)return f(null);let b=new Set;for(let a of g.split("\n")){let c=a.replace(/\x1b\[[0-9;]*[A-Za-z]/g,"").trim();c.startsWith(t)&&b.add(c.slice(t.length))}f(b.size?b:null)})}));if(!b)return L=Date.now(),null;return J={ids:b,at:Date.now()},b}finally{K=null}})())}async function N(a,b,c,d,e){if(!a?.length)return[];let g=j().join(b,x);return h().mkdirSync(g,{recursive:!0}),[...new Set((await Promise.all(a.map(async a=>{if(e?.aborted)return null;try{let b,e=a.mime||"";if(a.base64)b=Buffer.from(a.base64,"base64");else{if(!a.url)return null;let f=await (0,o.proxyAwareFetch)(a.url,{signal:AbortSignal.timeout(15e3)},c);if(!f.ok)throw Error(`HTTP ${f.status}`);e=(f.headers.get("content-type")||"").split(";")[0]||e;let g=Number(f.headers.get("content-length")||0);if(g>8388608)return d?.warn?.("OPENCODE",`image attachment declares ${g}B > cap → skipped`),null;let h=f.body?.getReader();if(!h)return null;let i=[],j=0;for(;;){let{done:a,value:b}=await h.read();if(a)break;if((j+=b.length)>8388608)return await h.cancel().catch(()=>{}),d?.warn?.("OPENCODE","image attachment exceeds cap mid-stream → dropped"),null;i.push(Buffer.from(b))}b=Buffer.concat(i)}if(!b?.length)return null;if(b.length>8388608)return d?.warn?.("OPENCODE",`image attachment ${b.length}B exceeds cap → dropped`),null;let i=y[e]||"png",k=f().createHash("sha1").update(b).digest("hex").slice(0,16),l=j().join(g,`${k}-${f().randomUUID().slice(0,8)}.${i}`);return h().writeFileSync(l,b,{flag:"wx"}),l}catch(a){return d?.warn?.("OPENCODE",`image attachment failed: ${a.message}`),null}}))).filter(Boolean))]}function O(a){for(let b of a)try{h().unlinkSync(b)}catch{}}function P(a){let b=a.image_url??(a.source?a.source:null);if(!b)return null;if("string"==typeof b)return{url:b};if("object"!=typeof b)return null;if("base64"===b.type&&"string"==typeof b.data)return{base64:b.data,mime:b.media_type||"image/png"};let c=b.url||b.data;if("string"!=typeof c)return null;if(c.startsWith("data:")){let a=c.match(/^data:([^;,]+);base64,(.*)$/s);return a?{base64:a[2],mime:a[1]}:null}return/^https?:\/\//i.test(c)?{url:c}:null}function Q(a,b,c){if("string"==typeof a)return a;if(!Array.isArray(a))return"";let d=[];for(let e of a)if(e){if("string"==typeof e){d.push(e);continue}switch(e.type){case"text":case"input_text":case"output_text":d.push(String(e.text||""));break;case"tool_use":d.push(`[assistant called tool ${e.name||"?"} with ${JSON.stringify(e.input??{})}]`);break;case"tool_result":d.push(`[tool result: ${"string"==typeof e.content?e.content:JSON.stringify(e.content??"")}]`);break;case"image":case"image_url":case"input_image":{let a=P(e);a&&b.length<32?(b.push({...a,turn:c}),d.push(`[image #${b.length}]`)):d.push("[image omitted]");break}default:if("string"==typeof e.text)d.push(e.text);else if(e.inlineData){let a=P({source:{type:"base64",media_type:e.inlineData.mimeType,data:e.inlineData.data}});a&&b.length<32?(b.push({...a,turn:c}),d.push(`[image #${b.length}]`)):d.push("[image omitted]")}}}return d.filter(Boolean).join("\n")}function R(a,b){if(null==a)return"";let c=Array.isArray(a)?a:Array.isArray(a?.parts)?a.parts:a;return Q(c,b,0)||("string"==typeof c?c:"")}function S(a){return a.map(a=>`${a.role}: ${a.text}`).join("\n\n")}function T(a,b){if(!a||b<=0)return"";if(Buffer.byteLength(a)<=b)return a;let c=a.split("\n"),d=0,e=c.length;for(;e>0;){let a=Buffer.byteLength(c[e-1])+ +(e!==c.length);if(d+a>b)break;d+=a,e--}return e<c.length?c.slice(e).join("\n"):U(a,b)}function U(a,b){let c=Buffer.from(a,"utf8");if(c.length<=b)return a;let d=c.length-b;for(;d<c.length&&(192&c[d])==128;)d++;return c.subarray(d).toString("utf8")}let V=new Map,W=new Map,X=setInterval(()=>{let a=Date.now();for(let[b,c]of V)a-c.lastUsed>q.v1.sessionTtlMs&&V.delete(b)},q.v1.sessionCleanupIntervalMs);function Y(a){return f().createHash("sha256").update(JSON.stringify(a.map(a=>[a.role,a.text]))).digest("hex").slice(0,24)}function Z(a,b){return`
1
+ "use strict";exports.id=614,exports.ids=[614],exports.modules={80614:(a,b,c)=>{c.d(b,{BS:()=>M,Rm:()=>H,nY:()=>ad});var d=c(31421),e=c(77598),f=c.n(e),g=c(73024),h=c.n(g),i=c(76760),j=c.n(i),k=c(46193),l=c(48161),m=c.n(l),n=c(49120),o=c(39609),p=c(72239),q=c(41004);let r=0,s=/^[A-Za-z0-9._:/@[\]()-]+$/,t="opencode/",u="opencode-cli://run",v=Math.min(184320,"win32"===process.platform?30720:"linux"===process.platform?122880:184320),w="opencode_cli_error",x="attachments",y={"image/png":"png","image/jpeg":"jpg","image/gif":"gif","image/webp":"webp","image/bmp":"bmp","image/svg+xml":"svg"};function z(a){let b=process.env[a];return null==b?"":String(b).trim().toLowerCase()}function A(a){return"win32"===process.platform&&!!a&&(!a.includes(j().sep)||/\.(cmd|bat)$/i.test(a))}function B(a){return`"${String(a).replace(/"/g,'""')}"`}function C(a,b){return A(a)?b.map(B):b}function D(){let a=function(){let a=z("CLI_OPENCODE_BIN");if(a)return[a];let b=m().homedir();if("win32"===process.platform){let a=process.env.LOCALAPPDATA||j().join(b,"AppData","Local"),c=process.env.APPDATA||j().join(b,"AppData","Roaming");return[j().join(b,".opencode","bin","opencode.exe"),j().join(a,"opencode","bin","opencode.exe"),j().join(c,"npm","opencode.cmd"),j().join(a,"npm","opencode.cmd"),j().join(b,".bun","bin","opencode.exe"),"opencode.cmd"]}return[j().join(b,".opencode","bin","opencode"),j().join(b,".local","bin","opencode"),j().join(b,".bun","bin","opencode"),"/opt/homebrew/bin/opencode","/usr/local/bin/opencode","/usr/bin/opencode","opencode"]}();for(let b of a)if(b.includes(j().sep))try{if(h().existsSync(b))return b}catch{}return a[a.length-1]}function E(a){return new Promise(b=>{let c,e=!1,f=a=>{e||(e=!0,b(a))};try{c=(0,d.spawn)(a,C(a,["--version"]),{stdio:["ignore","pipe","ignore"],shell:A(a)})}catch{f({ok:!1,major:null});return}let g="",h=setTimeout(()=>{try{c.kill("SIGKILL")}catch{}f({ok:!1,major:null})},q.SW.versionProbeMs);h.unref&&h.unref(),c.on("error",()=>{clearTimeout(h),f({ok:!1,major:null})}),c.stdout.on("data",a=>{g=(g+a.toString("utf8")).slice(0,200)}),c.on("close",a=>{let b;clearTimeout(h),f({ok:0===a,major:(b=String(g||"").match(/(\d+)\s*\./))?Number(b[1]):null})})})}let F=null,G=null;async function H({force:a=!1}={}){let b=z("OPENCODE_TRANSPORT");if("http"===b||"off"===b)return!1;if("cli"===b||"on"===b){let a=D(),b=F?.bin===a&&null!=F.major?F.major:(await E(a)).major;return F={bin:a,ok:!0,checkedAt:Date.now(),major:b},!0}return!a&&F&&Date.now()-F.checkedAt<q.SW.availabilityTtlMs?F.ok:!a&&G?G:G=(async()=>{try{let a=D(),{ok:b,major:c}=await E(a);return F={bin:a,ok:b,checkedAt:Date.now(),major:c},b}finally{G=null}})()}function I(){return{bin:F?.bin||D(),ok:F?.ok??null,major:F?.major??null}}let J=null,K=null,L=0;async function M({ttlMs:a=q.SW.availabilityTtlMs}={}){return J&&Date.now()-J.at<a?J.ids:Date.now()-L<6e4?null:K||(K=(async()=>{try{var a;let b=await (a=I().bin,new Promise(b=>{let c,e=!1,f=a=>{e||(e=!0,b(a))};try{c=(0,d.spawn)(a,C(a,["models"]),{stdio:["ignore","pipe","ignore"],shell:A(a)})}catch{f(null);return}let g="",h=setTimeout(()=>{try{c.kill("SIGKILL")}catch{}f(null)},q.SW.versionProbeMs);h.unref&&h.unref(),c.on("error",()=>{clearTimeout(h),f(null)}),c.stdout.on("data",a=>{g+=a.toString("utf8")}),c.on("close",a=>{if(clearTimeout(h),0!==a)return f(null);let b=new Set;for(let a of g.split("\n")){let c=a.replace(/\x1b\[[0-9;]*[A-Za-z]/g,"").trim();c.startsWith(t)&&b.add(c.slice(t.length))}f(b.size?b:null)})}));if(!b)return L=Date.now(),null;return J={ids:b,at:Date.now()},b}finally{K=null}})())}async function N(a,b,c,d,e){if(!a?.length)return[];let g=j().join(b,x);return h().mkdirSync(g,{recursive:!0}),[...new Set((await Promise.all(a.map(async a=>{if(e?.aborted)return null;try{let b,e=a.mime||"";if(a.base64)b=Buffer.from(a.base64,"base64");else{if(!a.url)return null;let f=await (0,o.proxyAwareFetch)(a.url,{signal:AbortSignal.timeout(15e3)},c);if(!f.ok)throw Error(`HTTP ${f.status}`);e=(f.headers.get("content-type")||"").split(";")[0]||e;let g=Number(f.headers.get("content-length")||0);if(g>8388608)return d?.warn?.("OPENCODE",`image attachment declares ${g}B > cap → skipped`),null;let h=f.body?.getReader();if(!h)return null;let i=[],j=0;for(;;){let{done:a,value:b}=await h.read();if(a)break;if((j+=b.length)>8388608)return await h.cancel().catch(()=>{}),d?.warn?.("OPENCODE","image attachment exceeds cap mid-stream → dropped"),null;i.push(Buffer.from(b))}b=Buffer.concat(i)}if(!b?.length)return null;if(b.length>8388608)return d?.warn?.("OPENCODE",`image attachment ${b.length}B exceeds cap → dropped`),null;let i=y[e]||"png",k=f().createHash("sha1").update(b).digest("hex").slice(0,16),l=j().join(g,`${k}-${f().randomUUID().slice(0,8)}.${i}`);return h().writeFileSync(l,b,{flag:"wx"}),l}catch(a){return d?.warn?.("OPENCODE",`image attachment failed: ${a.message}`),null}}))).filter(Boolean))]}function O(a){for(let b of a)try{h().unlinkSync(b)}catch{}}function P(a){let b=a.image_url??(a.source?a.source:null);if(!b)return null;if("string"==typeof b)return{url:b};if("object"!=typeof b)return null;if("base64"===b.type&&"string"==typeof b.data)return{base64:b.data,mime:b.media_type||"image/png"};let c=b.url||b.data;if("string"!=typeof c)return null;if(c.startsWith("data:")){let a=c.match(/^data:([^;,]+);base64,(.*)$/s);return a?{base64:a[2],mime:a[1]}:null}return/^https?:\/\//i.test(c)?{url:c}:null}function Q(a,b,c){if("string"==typeof a)return a;if(!Array.isArray(a))return"";let d=[];for(let e of a)if(e){if("string"==typeof e){d.push(e);continue}switch(e.type){case"text":case"input_text":case"output_text":d.push(String(e.text||""));break;case"tool_use":d.push(`[assistant called tool ${e.name||"?"} with ${JSON.stringify(e.input??{})}]`);break;case"tool_result":d.push(`[tool result: ${"string"==typeof e.content?e.content:JSON.stringify(e.content??"")}]`);break;case"image":case"image_url":case"input_image":{let a=P(e);a&&b.length<32?(b.push({...a,turn:c}),d.push(`[image #${b.length}]`)):d.push("[image omitted]");break}default:if("string"==typeof e.text)d.push(e.text);else if(e.inlineData){let a=P({source:{type:"base64",media_type:e.inlineData.mimeType,data:e.inlineData.data}});a&&b.length<32?(b.push({...a,turn:c}),d.push(`[image #${b.length}]`)):d.push("[image omitted]")}}}return d.filter(Boolean).join("\n")}function R(a,b){if(null==a)return"";let c=Array.isArray(a)?a:Array.isArray(a?.parts)?a.parts:a;return Q(c,b,0)||("string"==typeof c?c:"")}function S(a){return a.map(a=>`${a.role}: ${a.text}`).join("\n\n")}function T(a,b){if(!a||b<=0)return"";if(Buffer.byteLength(a)<=b)return a;let c=a.split("\n"),d=0,e=c.length;for(;e>0;){let a=Buffer.byteLength(c[e-1])+ +(e!==c.length);if(d+a>b)break;d+=a,e--}return e<c.length?c.slice(e).join("\n"):U(a,b)}function U(a,b){let c=Buffer.from(a,"utf8");if(c.length<=b)return a;let d=c.length-b;for(;d<c.length&&(192&c[d])==128;)d++;return c.subarray(d).toString("utf8")}let V=new Map,W=new Map,X=setInterval(()=>{let a=Date.now();for(let[b,c]of V)a-c.lastUsed>q.v1.sessionTtlMs&&V.delete(b)},q.v1.sessionCleanupIntervalMs);function Y(a){return f().createHash("sha256").update(JSON.stringify(a.map(a=>[a.role,a.text]))).digest("hex").slice(0,24)}function Z(a,b){return`
2
2
 
3
- Note: only the last ${a} of ${b} images are attached; earlier [image #N] references have no image data.`}X.unref&&X.unref();let $=/session not found/i,_=/^ses_[0-9A-Za-z_-]{1,128}$/;function aa(a){let b=String(a||""),c=b.match(/^(.*?)\(([^()]+)\)\s*$/);return{base:(c?c[1]:b).trim(),variant:c?c[2].trim():""}}function ab({message:a,code:b,status:c}={}){let d={error:{message:String(a||"OpenCode CLI error").slice(0,600),type:w,...b?{code:String(b)}:{},...Number.isInteger(c)?{status:c}:{}}};return`data: ${JSON.stringify(d)}
3
+ Note: only the last ${a} of ${b} images are attached; earlier [image #N] references have no image data.`}X.unref&&X.unref();let $=/session not found/i,_=/^ses_[0-9A-Za-z_-]{1,128}$/;function aa(a){let b=String(a||""),c=b.match(/^(.*?)\(([^()]+)\)\s*$/);return{base:(c?c[1]:b).trim(),variant:c?c[2].trim():""}}let ab=new Set(["big-pickle","longcat-2.5-preview-free","nemotron-3-ultra-free","nemotron-3.5-lightning-free"]);function ac({message:a,code:b,status:c}={}){let d={error:{message:String(a||"OpenCode CLI error").slice(0,600),type:w,...b?{code:String(b)}:{},...Number.isInteger(c)?{status:c}:{}}};return`data: ${JSON.stringify(d)}
4
4
 
5
- `}function ac({model:a,body:b,credentials:c,providerSessionId:e,signal:g,log:i,proxyOptions:l}){var m,w;let y,z,B,D,E=function(){let a=j().join(n.n,"opencode-cli"),b=Date.now();if(r&&b-r<6e4)return a;h().mkdirSync(a,{recursive:!0}),function(a){let b;try{b=h().readdirSync(a,{withFileTypes:!0})}catch{return}let c=Date.now()-216e5;for(let d of b){if(!d.isFile())continue;let b=j().join(a,d.name);try{h().statSync(b).mtimeMs<c&&h().unlinkSync(b)}catch{}}}(j().join(a,x));let c=j().join(a,"opencode.json"),d=JSON.stringify({$schema:"https://opencode.ai/config.json",model:"opencode/nemotron-3.5-lightning-free",permission:"deny"},null,2),e=null;try{e=h().readFileSync(c,"utf8")}catch{}return e!==d&&function(a,b){let c=`${a}.${process.pid}.${f().randomBytes(4).toString("hex")}.tmp`;try{h().writeFileSync(c,b),h().renameSync(c,a)}catch(a){try{h().unlinkSync(c)}catch{}throw a}}(c,d),r=b,a}(),G=I(),H=G.bin,J=A(H);if(!s.test(String(a||"")))return ad(`OpenCode CLI: unsupported model id "${String(a||"").slice(0,60)}"`,400,"invalid_model");let{system:K,turns:L,images:M}=function(a){let b=a||{},c=Array.isArray(b.messages)?b.messages:Array.isArray(b.input)?b.input:Array.isArray(b.contents)?b.contents:"string"==typeof b.input?[{role:"user",content:b.input}]:[],d=[],e=[],f=[],g=(a,b)=>{let c=String(b||"").trim();c&&e.push({role:a,text:c})};for(let a of[b.system,b.instructions,b.systemInstruction]){let b=R(a,f);b&&d.push(b)}let h=new Map;for(let a of c){var i;if(!a||"object"!=typeof a||"reasoning"===a.type||"item_reference"===a.type)continue;let b=e.length;if("system"===a.role){let b=R(a.content,f);b&&d.push(b);continue}if("function_call"===a.type){g("assistant",`[assistant called tool ${a.name||"?"} with ${"string"==typeof a.arguments?a.arguments:JSON.stringify(a.arguments??{})}]`);continue}if("function_call_output"===a.type){g("tool",`[tool result: ${"string"==typeof a.output?a.output:JSON.stringify(a.output??"")}]`);continue}for(let b of Array.isArray(a.tool_calls)?a.tool_calls:[])b?.id&&h.set(b.id,b?.function?.name||b?.name||"?");if(Array.isArray(a.content))for(let b of a.content)b?.type==="tool_use"&&b.id&&h.set(b.id,b.name||"?");let c=a.content??a.parts??a.text;if("tool"===a.role){g("tool",`[tool result ${h.get(a.tool_call_id)||a.name||"?"}: ${Q(c,f,b)||JSON.stringify(c??"")}]`);continue}let j=Q(c,f,b),k=Array.isArray(i=a.tool_calls)?i.filter(a=>a&&"object"==typeof a).map(a=>{let b=a.function?.arguments??a.arguments??{};return`[assistant called tool ${a.function?.name||a.name||"?"} with ${"string"==typeof b?b:JSON.stringify(b)}]`}).join("\n"):"";g("assistant"===a.role||"model"===a.role?"assistant":"user",k?j?`${j}
6
- ${k}`:k:j)}return{system:d.filter(Boolean).join("\n\n"),turns:e,images:f}}(b);if(!L.length)return ad("OpenCode CLI: request contained no text to send");let P=(y=c?.connectionId||c?.id||"default",z=L?.length?(w=L[0],f().createHash("sha256").update(`${w.role}\0${w.text}`).digest("hex").slice(0,16)):"anon",`${y}:${e||"anon"}:${z}`);return m=async()=>{let c=function({key:a,system:b,turns:c,images:d=[]}){let e=V.get(a),g=f().createHash("sha256").update(b||"").digest("hex").slice(0,16);if(e?.sid&&c.length>e.reflected&&g===e.systemHash){let b=e.reflected-1;if(c[b]?.role==="assistant"&&Y(c.slice(0,b))===e.prefixHash){let b=c.slice(e.reflected),f=d.filter(a=>a.turn>=e.reflected),h=f.slice(-8),i=h.length<f.length?Z(h.length,f.length):"",j=T(S(b),v-Buffer.byteLength(i))+i;if(j.trim())return V.delete(a),e.lastUsed=Date.now(),V.set(a,e),{sid:e.sid,prompt:j,systemHash:g,replayed:b.length,images:h}}}let h=d.slice(-8),i=h.length<d.length?Z(h.length,d.length):"";return{sid:null,prompt:function(a,b,c){let d="Instructions for your reply:",e="Conversation so far:",f="Reply to this as the assistant, without describing what you would do:",g=b[b.length-1]?.text||"...",h=b.length>1?S(b.slice(0,-1)):"",i=Math.max(1,c-Buffer.byteLength(d+e+f)-8),j=U(g,i);i-=Buffer.byteLength(j);let k="";if(a){let b=U(a,i);k=`${d}
5
+ `}function ad({model:a,body:b,credentials:c,providerSessionId:e,signal:g,log:i,proxyOptions:l}){var m,w;let y,z,B,D,E=function(){let a=j().join(n.n,"opencode-cli"),b=Date.now();if(r&&b-r<6e4)return a;h().mkdirSync(a,{recursive:!0}),function(a){let b;try{b=h().readdirSync(a,{withFileTypes:!0})}catch{return}let c=Date.now()-216e5;for(let d of b){if(!d.isFile())continue;let b=j().join(a,d.name);try{h().statSync(b).mtimeMs<c&&h().unlinkSync(b)}catch{}}}(j().join(a,x));let c=j().join(a,"opencode.json"),d=JSON.stringify({$schema:"https://opencode.ai/config.json",model:"opencode/nemotron-3.5-lightning-free",permission:"deny"},null,2),e=null;try{e=h().readFileSync(c,"utf8")}catch{}return e!==d&&function(a,b){let c=`${a}.${process.pid}.${f().randomBytes(4).toString("hex")}.tmp`;try{h().writeFileSync(c,b),h().renameSync(c,a)}catch(a){try{h().unlinkSync(c)}catch{}throw a}}(c,d),r=b,a}(),G=I(),H=G.bin,J=A(H);if(!s.test(String(a||"")))return ae(`OpenCode CLI: unsupported model id "${String(a||"").slice(0,60)}"`,400,"invalid_model");let{system:K,turns:L,images:M}=function(a){let b=a||{},c=Array.isArray(b.messages)?b.messages:Array.isArray(b.input)?b.input:Array.isArray(b.contents)?b.contents:"string"==typeof b.input?[{role:"user",content:b.input}]:[],d=[],e=[],f=[],g=(a,b)=>{let c=String(b||"").trim();c&&e.push({role:a,text:c})};for(let a of[b.system,b.instructions,b.systemInstruction]){let b=R(a,f);b&&d.push(b)}let h=new Map;for(let a of c){var i;if(!a||"object"!=typeof a||"reasoning"===a.type||"item_reference"===a.type)continue;let b=e.length;if("system"===a.role){let b=R(a.content,f);b&&d.push(b);continue}if("function_call"===a.type){g("assistant",`[assistant called tool ${a.name||"?"} with ${"string"==typeof a.arguments?a.arguments:JSON.stringify(a.arguments??{})}]`);continue}if("function_call_output"===a.type){g("tool",`[tool result: ${"string"==typeof a.output?a.output:JSON.stringify(a.output??"")}]`);continue}for(let b of Array.isArray(a.tool_calls)?a.tool_calls:[])b?.id&&h.set(b.id,b?.function?.name||b?.name||"?");if(Array.isArray(a.content))for(let b of a.content)b?.type==="tool_use"&&b.id&&h.set(b.id,b.name||"?");let c=a.content??a.parts??a.text;if("tool"===a.role){g("tool",`[tool result ${h.get(a.tool_call_id)||a.name||"?"}: ${Q(c,f,b)||JSON.stringify(c??"")}]`);continue}let j=Q(c,f,b),k=Array.isArray(i=a.tool_calls)?i.filter(a=>a&&"object"==typeof a).map(a=>{let b=a.function?.arguments??a.arguments??{};return`[assistant called tool ${a.function?.name||a.name||"?"} with ${"string"==typeof b?b:JSON.stringify(b)}]`}).join("\n"):"";g("assistant"===a.role||"model"===a.role?"assistant":"user",k?j?`${j}
6
+ ${k}`:k:j)}return{system:d.filter(Boolean).join("\n\n"),turns:e,images:f}}(b);if(!L.length)return ae("OpenCode CLI: request contained no text to send");let P=(y=c?.connectionId||c?.id||"default",z=L?.length?(w=L[0],f().createHash("sha256").update(`${w.role}\0${w.text}`).digest("hex").slice(0,16)):"anon",`${y}:${e||"anon"}:${z}`);return m=async()=>{let c=function({key:a,system:b,turns:c,images:d=[]}){let e=V.get(a),g=f().createHash("sha256").update(b||"").digest("hex").slice(0,16);if(e?.sid&&c.length>e.reflected&&g===e.systemHash){let b=e.reflected-1;if(c[b]?.role==="assistant"&&Y(c.slice(0,b))===e.prefixHash){let b=c.slice(e.reflected),f=d.filter(a=>a.turn>=e.reflected),h=f.slice(-8),i=h.length<f.length?Z(h.length,f.length):"",j=T(S(b),v-Buffer.byteLength(i))+i;if(j.trim())return V.delete(a),e.lastUsed=Date.now(),V.set(a,e),{sid:e.sid,prompt:j,systemHash:g,replayed:b.length,images:h}}}let h=d.slice(-8),i=h.length<d.length?Z(h.length,d.length):"";return{sid:null,prompt:function(a,b,c){let d="Instructions for your reply:",e="Conversation so far:",f="Reply to this as the assistant, without describing what you would do:",g=b[b.length-1]?.text||"...",h=b.length>1?S(b.slice(0,-1)):"",i=Math.max(1,c-Buffer.byteLength(d+e+f)-8),j=U(g,i);i-=Buffer.byteLength(j);let k="";if(a){let b=U(a,i);k=`${d}
7
7
  ${b}`,i-=Buffer.byteLength(b)}let l=T(h,i);return[k,l&&`${e}
8
8
  ${l}`,`${f}
9
- ${j}`].filter(Boolean).join("\n\n")}(b,c,v-Buffer.byteLength(i))+i,systemHash:g,replayed:c.length,images:h}}({key:P,system:K,turns:L,images:M});if(c.prompt=c.prompt.replace(/\0/g,""),g?.aborted)return ad("OpenCode CLI: aborted by client",499);let e=await N(c.images,E,l,i,g);if(g?.aborted)return O(e),ad("OpenCode CLI: aborted by client",499);let h=c.sid||J?"":Array.from(((L||[]).find(a=>a?.role==="user")?.text||"").replace(/[\0\s]+/g," ").replace(/^[-\s]+/,"").trim()).slice(0,60).join(""),j=function({model:a,body:b,sid:c,prompt:d,files:e,title:f,cliMajor:g=null}){let{base:h,variant:i}=function(a,b){let{base:c,variant:d}=aa(a),e="string"==typeof b?.reasoning_effort?b.reasoning_effort:"string"==typeof b?.reasoning?.effort?b.reasoning.effort:"",f=d||e;if(!f||"auto"===f||"none"===f)return{base:c,variant:""};let g=(0,p.k)("opencode",c),h=f.toLowerCase().trim();if(g?.includes(h))return{base:c,variant:h};if("max"===h||"ultra"===h){let a=["xhigh","high","medium","low"].find(a=>g?.includes(a));if(a)return{base:c,variant:a}}return{base:c,variant:""}}(a,b),j=i&&g>=2,k=["run","--format","json","-m",`${t}${h}${j?`#${i}`:""}`];for(let a of(i&&!j&&k.push("--variant",i),f&&k.push("--title",f),c&&k.push("-s",c),e||[]))k.push("--file",a);return null!=d&&k.push("--",d),k}({model:a,body:b,sid:c.sid,prompt:J?null:c.prompt,files:e,title:h,cliMajor:G.major});i?.info?.("OPENCODE",`CLI ${c.sid?"continue":"new"} session model=${a} key=${P.slice(0,56)} turns=${c.replayed} images=${e.length} prompt=${Buffer.byteLength(c.prompt)}B via=${J?"stdin":"argv"}`);let m=function({bin:a,args:b,dir:c,key:e,plan:g,turns:h,model:i,signal:j,log:l,attachments:m=[],proxyOptions:n=null,stdinPrompt:p=null}){var r;let s,t=aa(i).base,v=`chatcmpl-opencode-${Date.now()}-${f().randomBytes(4).toString("hex")}`,w=Math.floor(Date.now()/1e3),x={sid:g.sid,reply:"",usage:null,roleSent:!1,done:!1},y=()=>{},z=()=>{},B=new Promise(a=>{z=a}),D=setTimeout(()=>{y(),z()},q.SW.totalMs+q.SW.killGraceMs+5e3);D.unref&&D.unref();let E=()=>{},G=new Promise(a=>{E=a}),H=!1,I=a=>{H||(H=!0,E(a||null))},J=q.SW.peekMs>0?setTimeout(()=>I(null),q.SW.peekMs):null;return J?.unref&&J.unref(),{settled:B,peeked:G,response:function(a,b={}){return Promise.resolve({response:new Response(a,{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache"}}),url:u,headers:{},responseFormat:"openai",...b})}((r=(f,i)=>{let r,s="",u="",B=null,E=(a,b=null,c)=>{let d={id:v,object:"chat.completion.chunk",created:w,model:t,choices:[{index:0,delta:a,logprobs:null,finish_reason:b}]};c&&(d.usage=c),I(null),f(`data: ${JSON.stringify(d)}
9
+ ${j}`].filter(Boolean).join("\n\n")}(b,c,v-Buffer.byteLength(i))+i,systemHash:g,replayed:c.length,images:h}}({key:P,system:K,turns:L,images:M});if(c.prompt=c.prompt.replace(/\0/g,""),g?.aborted)return ae("OpenCode CLI: aborted by client",499);let e=await N(c.images,E,l,i,g);if(g?.aborted)return O(e),ae("OpenCode CLI: aborted by client",499);let h=c.sid||J?"":Array.from(((L||[]).find(a=>a?.role==="user")?.text||"").replace(/[\0\s]+/g," ").replace(/^[-\s]+/,"").trim()).slice(0,60).join(""),j=function({model:a,body:b,sid:c,prompt:d,files:e,title:f,cliMajor:g=null}){let{base:h,variant:i}=function(a,b){let{base:c,variant:d}=aa(a);if(ab.has(c))return{base:c,variant:""};let e="string"==typeof b?.reasoning_effort?b.reasoning_effort:"string"==typeof b?.reasoning?.effort?b.reasoning.effort:"",f=d||e;if(!f||"auto"===f||"none"===f)return{base:c,variant:""};let g=(0,p.k)("opencode",c),h=f.toLowerCase().trim();if(g?.includes(h))return{base:c,variant:h};if("max"===h||"ultra"===h){let a=["xhigh","high","medium","low"].find(a=>g?.includes(a));if(a)return{base:c,variant:a}}return{base:c,variant:""}}(a,b),j=i&&g>=2,k=["run","--format","json","-m",`${t}${h}${j?`#${i}`:""}`];for(let a of(i&&!j&&k.push("--variant",i),f&&k.push("--title",f),c&&k.push("-s",c),e||[]))k.push("--file",a);return null!=d&&k.push("--",d),k}({model:a,body:b,sid:c.sid,prompt:J?null:c.prompt,files:e,title:h,cliMajor:G.major});i?.info?.("OPENCODE",`CLI ${c.sid?"continue":"new"} session model=${a} key=${P.slice(0,56)} turns=${c.replayed} images=${e.length} prompt=${Buffer.byteLength(c.prompt)}B via=${J?"stdin":"argv"}`);let m=function({bin:a,args:b,dir:c,key:e,plan:g,turns:h,model:i,signal:j,log:l,attachments:m=[],proxyOptions:n=null,stdinPrompt:p=null}){var r;let s,t=aa(i).base,v=`chatcmpl-opencode-${Date.now()}-${f().randomBytes(4).toString("hex")}`,w=Math.floor(Date.now()/1e3),x={sid:g.sid,reply:"",usage:null,roleSent:!1,done:!1},y=()=>{},z=()=>{},B=new Promise(a=>{z=a}),D=setTimeout(()=>{y(),z()},q.SW.totalMs+q.SW.killGraceMs+5e3);D.unref&&D.unref();let E=()=>{},G=new Promise(a=>{E=a}),H=!1,I=a=>{H||(H=!0,E(a||null))},J=q.SW.peekMs>0?setTimeout(()=>I(null),q.SW.peekMs):null;return J?.unref&&J.unref(),{settled:B,peeked:G,response:function(a,b={}){return Promise.resolve({response:new Response(a,{status:200,headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache"}}),url:u,headers:{},responseFormat:"openai",...b})}((r=(f,i)=>{let r,s="",u="",B=null,E=(a,b=null,c)=>{let d={id:v,object:"chat.completion.chunk",created:w,model:t,choices:[{index:0,delta:a,logprobs:null,finish_reason:b}]};c&&(d.usage=c),I(null),f(`data: ${JSON.stringify(d)}
10
10
 
11
- `)},G=({error:a=null,finishReason:b="stop"}={})=>{if(!x.done){if(x.done=!0,clearTimeout(K),clearTimeout(H),J&&clearTimeout(J),j&&j.removeEventListener("abort",M),a)x.roleSent||I("aborted"===a.code?null:a),f(ab({message:a.message,code:a.code??a.status,status:a.status}));else if(x.reply.trim())x.roleSent||E({role:"assistant",content:""}),E({},b,x.usage||void 0),f("data: [DONE]\n\n");else{let a=(s.trim()||u.trim()).slice(0,300),b={message:`OpenCode CLI returned no assistant text${a?`: ${a}`:""}`,code:"empty_reply"};x.roleSent||I(b),f(ab({message:b.message,code:"empty_reply"}))}!function({key:a,turns:b,sid:c,replyText:d,systemHash:e,error:f}){if(f&&$.test(String(f.message||"")))return V.delete(a);if(c){if(!d){let b=V.get(a);b&&(b.lastUsed=Date.now());return}V.size>=1e3&&V.delete(V.keys().next().value),V.delete(a),V.set(a,{sid:c,reflected:b.length+1,prefixHash:Y(b),systemHash:e,lastUsed:Date.now()})}}({key:e,turns:h,sid:x.sid,replyText:a?null:x.reply,systemHash:g.systemHash,error:a}),O(m),clearTimeout(D),B&&clearInterval(B),i(),z()}},H=setTimeout(()=>{H=null,l?.warn?.("OPENCODE",`CLI produced no output within ${q.SW.idleMs}ms`),y(),G({error:{message:`OpenCode CLI produced no output for ${Math.round(q.SW.idleMs/1e3)}s`}})},q.SW.idleMs);H.unref&&H.unref();let K=setTimeout(()=>{l?.warn?.("OPENCODE",`CLI exceeded ${Math.round(q.SW.totalMs/1e3)}s`),y(),G({error:{message:"OpenCode CLI timed out"}})},q.SW.totalMs);K.unref&&K.unref();let L={message:"Aborted by client",code:"aborted",status:q.gx.CLIENT_CLOSED_REQUEST},M=()=>{y(),G({error:L})};if(j){if(j.aborted)return void G({error:L});j.addEventListener("abort",M,{once:!0})}try{r=(0,d.spawn)(a,C(a,b),{cwd:c,env:function(a){let b={...process.env},c=a?.connectionProxyEnabled===!0||a?.enabled===!0?String(a?.connectionProxyUrl??a?.url??"").trim():"",d=(0,o.normalizeProxyUrl)(c)||"";if(!d||!/^https?:\/\//i.test(d))return b;b.HTTPS_PROXY=d,b.HTTP_PROXY=d,b.ALL_PROXY=d,b.https_proxy=d,b.http_proxy=d,b.all_proxy=d;let e=String(a?.connectionNoProxy??a?.noProxy??"").trim();return e&&(b.NO_PROXY=e,b.no_proxy=e),b}(n),stdio:[null!=p?"pipe":"ignore","pipe","pipe"],shell:A(a)})}catch(a){G({error:{message:`Failed to spawn opencode CLI: ${String(a?.message||a).slice(0,300)}`}});return}if(null!=p){r.stdin.on("error",()=>{});try{r.stdin.end(p)}catch{}}y=()=>{if(r.killed)return;try{r.kill("SIGTERM")}catch{}let a=setTimeout(()=>{try{r.kill("SIGKILL")}catch{}},q.SW.killGraceMs);a.unref&&a.unref()},q.SW.heartbeatMs>0&&(B=setInterval(()=>{x.done||f(": opencode is generating\n\n")},q.SW.heartbeatMs)).unref&&B.unref(),r.on("error",b=>{let c=String(b?.message||"").includes("ENOENT");F=null,G({error:{message:c?`opencode CLI not found (${a}). Install OpenCode or set CLI_OPENCODE_BIN.`:`opencode CLI spawn failed: ${b?.message}`}})});let N=a=>{let b;try{b=JSON.parse(a)}catch{u=(u+a+"\n").slice(-600);return}if(b&&"object"==typeof b){if("error"===b.type){let a=function(a){let b=a?.error||{},c=b.data||b,d=String(b.name||b.type||c.name||c.type||""),e=c.message||b.message||d||"OpenCode CLI reported an error",f="",g=c.responseBody??c.response?.body;try{f=String(JSON.parse(g)?.error?.type||"")}catch{}let h=[f||(d&&d!==e?d:""),c.ref&&`ref ${c.ref}`].filter(Boolean).join(", "),i=h?` [${h}]`:"";return{message:`${String(e).slice(0,Math.max(0,600-i.length))}${i}`,status:Number(c.statusCode??c.status)||null}}(b);l?.warn?.("OPENCODE",`CLI error event: ${a.message}`),G({error:a});return}if("string"==typeof b.sessionID&&_.test(b.sessionID)&&(x.sid=b.sessionID),"text"===b.type){let a=b.part?.text;if("string"==typeof a&&a){let b=x.reply?"\n\n":"";x.reply+=b+a,x.roleSent||(E({role:"assistant",content:""}),x.roleSent=!0),E({content:b+a})}return}if("step_finish"===b.type&&b.part?.tokens){let a=b.part.tokens,c=a.input||0,d=(a.output||0)+(a.reasoning||0),e=(a.cache?.read||0)+(a.cache?.write||0);x.usage=x.usage||{prompt_tokens:0,completion_tokens:0,total_tokens:0},x.usage.prompt_tokens+=c+e,x.usage.completion_tokens+=d,x.usage.total_tokens+=c+e+d}}},P=new k.StringDecoder("utf8"),Q=new k.StringDecoder("utf8"),R="";r.stdout.on("data",a=>{let b;if(!x.done)for(H&&(clearTimeout(H),H=null),R+=P.write(a);-1!==(b=R.indexOf("\n"));){let a=R.slice(0,b).trim();if(R=R.slice(b+1),a&&N(a),x.done)return}}),r.stderr.on("data",a=>{s=(s+Q.write(a)).slice(-600)}),r.on("close",a=>{if(R.trim()&&N(R.trim()),!x.done)if(0===a||x.roleSent)G();else{F=null;let b=s.trim()||u.trim();G({error:{message:`opencode CLI exited with code ${a}${b?`: ${b.slice(0,300)}`:""}`}})}})},s=new TextEncoder,new ReadableStream({start(a){r(b=>{try{a.enqueue(s.encode(b))}catch{}},()=>{try{a.close()}catch{}})}})),{transformedBody:{transport:"opencode-cli",model:t,session:g.sid||"new",turns:g.replayed,promptBytes:Buffer.byteLength(g.prompt)}})}}({bin:H,args:j,dir:E,key:P,plan:c,turns:L,model:a,signal:g,log:i,attachments:e,proxyOptions:l,stdinPrompt:J?c.prompt:null}),n=q.SW.peekMs>0?await m.peeked:null;return n?(await m.settled,i?.warn?.("OPENCODE",`CLI failed before any output (${n.status||n.code||"?"}): ${String(n.message).slice(0,200)}`),ad(n.message,Number(n.status)||502,n.code||"cli_failed")):{result:m.response,release:m.settled}},D=(B=(W.get(P)||Promise.resolve()).then(m,m)).then(a=>a?.release).catch(()=>void 0),W.set(P,D),D.then(()=>{W.get(P)===D&&W.delete(P)}),B.then(a=>a?.result??a)}function ad(a,b=400,c){return Promise.resolve({response:new Response(JSON.stringify({error:{message:String(a||"OpenCode CLI error").slice(0,600),type:w,code:c||(499===b?"aborted":"empty_prompt"),status:b}}),{status:b,headers:{"Content-Type":"application/json","Cache-Control":"no-cache"}}),url:u,headers:{},responseFormat:"openai",transformedBody:{transport:"opencode-cli",error:a}})}}};
11
+ `)},G=({error:a=null,finishReason:b="stop"}={})=>{if(!x.done){if(x.done=!0,clearTimeout(K),clearTimeout(H),J&&clearTimeout(J),j&&j.removeEventListener("abort",M),a)x.roleSent||I("aborted"===a.code?null:a),f(ac({message:a.message,code:a.code??a.status,status:a.status}));else if(x.reply.trim())x.roleSent||E({role:"assistant",content:""}),E({},b,x.usage||void 0),f("data: [DONE]\n\n");else{let a=(s.trim()||u.trim()).slice(0,300),b={message:`OpenCode CLI returned no assistant text${a?`: ${a}`:""}`,code:"empty_reply"};x.roleSent||I(b),f(ac({message:b.message,code:"empty_reply"}))}!function({key:a,turns:b,sid:c,replyText:d,systemHash:e,error:f}){if(f&&$.test(String(f.message||"")))return V.delete(a);if(c){if(!d){let b=V.get(a);b&&(b.lastUsed=Date.now());return}V.size>=1e3&&V.delete(V.keys().next().value),V.delete(a),V.set(a,{sid:c,reflected:b.length+1,prefixHash:Y(b),systemHash:e,lastUsed:Date.now()})}}({key:e,turns:h,sid:x.sid,replyText:a?null:x.reply,systemHash:g.systemHash,error:a}),O(m),clearTimeout(D),B&&clearInterval(B),i(),z()}},H=setTimeout(()=>{H=null,l?.warn?.("OPENCODE",`CLI produced no output within ${q.SW.idleMs}ms`),y(),G({error:{message:`OpenCode CLI produced no output for ${Math.round(q.SW.idleMs/1e3)}s`}})},q.SW.idleMs);H.unref&&H.unref();let K=setTimeout(()=>{l?.warn?.("OPENCODE",`CLI exceeded ${Math.round(q.SW.totalMs/1e3)}s`),y(),G({error:{message:"OpenCode CLI timed out"}})},q.SW.totalMs);K.unref&&K.unref();let L={message:"Aborted by client",code:"aborted",status:q.gx.CLIENT_CLOSED_REQUEST},M=()=>{y(),G({error:L})};if(j){if(j.aborted)return void G({error:L});j.addEventListener("abort",M,{once:!0})}try{r=(0,d.spawn)(a,C(a,b),{cwd:c,env:function(a){let b={...process.env},c=a?.connectionProxyEnabled===!0||a?.enabled===!0?String(a?.connectionProxyUrl??a?.url??"").trim():"",d=(0,o.normalizeProxyUrl)(c)||"";if(!d||!/^https?:\/\//i.test(d))return b;b.HTTPS_PROXY=d,b.HTTP_PROXY=d,b.ALL_PROXY=d,b.https_proxy=d,b.http_proxy=d,b.all_proxy=d;let e=String(a?.connectionNoProxy??a?.noProxy??"").trim();return e&&(b.NO_PROXY=e,b.no_proxy=e),b}(n),stdio:[null!=p?"pipe":"ignore","pipe","pipe"],shell:A(a)})}catch(a){G({error:{message:`Failed to spawn opencode CLI: ${String(a?.message||a).slice(0,300)}`}});return}if(null!=p){r.stdin.on("error",()=>{});try{r.stdin.end(p)}catch{}}y=()=>{if(r.killed)return;try{r.kill("SIGTERM")}catch{}let a=setTimeout(()=>{try{r.kill("SIGKILL")}catch{}},q.SW.killGraceMs);a.unref&&a.unref()},q.SW.heartbeatMs>0&&(B=setInterval(()=>{x.done||f(": opencode is generating\n\n")},q.SW.heartbeatMs)).unref&&B.unref(),r.on("error",b=>{let c=String(b?.message||"").includes("ENOENT");F=null,G({error:{message:c?`opencode CLI not found (${a}). Install OpenCode or set CLI_OPENCODE_BIN.`:`opencode CLI spawn failed: ${b?.message}`}})});let N=a=>{let b;try{b=JSON.parse(a)}catch{u=(u+a+"\n").slice(-600);return}if(b&&"object"==typeof b){if("error"===b.type){let a=function(a){let b=a?.error||{},c=b.data||b,d=String(b.name||b.type||c.name||c.type||""),e=c.message||b.message||d||"OpenCode CLI reported an error",f="",g=c.responseBody??c.response?.body;try{f=String(JSON.parse(g)?.error?.type||"")}catch{}let h=[f||(d&&d!==e?d:""),c.ref&&`ref ${c.ref}`].filter(Boolean).join(", "),i=h?` [${h}]`:"";return{message:`${String(e).slice(0,Math.max(0,600-i.length))}${i}`,status:Number(c.statusCode??c.status)||null}}(b);l?.warn?.("OPENCODE",`CLI error event: ${a.message}`),G({error:a});return}if("string"==typeof b.sessionID&&_.test(b.sessionID)&&(x.sid=b.sessionID),"text"===b.type){let a=b.part?.text;if("string"==typeof a&&a){let b=x.reply?"\n\n":"";x.reply+=b+a,x.roleSent||(E({role:"assistant",content:""}),x.roleSent=!0),E({content:b+a})}return}if("step_finish"===b.type&&b.part?.tokens){let a=b.part.tokens,c=a.input||0,d=(a.output||0)+(a.reasoning||0),e=(a.cache?.read||0)+(a.cache?.write||0);x.usage=x.usage||{prompt_tokens:0,completion_tokens:0,total_tokens:0},x.usage.prompt_tokens+=c+e,x.usage.completion_tokens+=d,x.usage.total_tokens+=c+e+d}}},P=new k.StringDecoder("utf8"),Q=new k.StringDecoder("utf8"),R="";r.stdout.on("data",a=>{let b;if(!x.done)for(H&&(clearTimeout(H),H=null),R+=P.write(a);-1!==(b=R.indexOf("\n"));){let a=R.slice(0,b).trim();if(R=R.slice(b+1),a&&N(a),x.done)return}}),r.stderr.on("data",a=>{s=(s+Q.write(a)).slice(-600)}),r.on("close",a=>{if(R.trim()&&N(R.trim()),!x.done)if(0===a||x.roleSent)G();else{F=null;let b=s.trim()||u.trim();G({error:{message:`opencode CLI exited with code ${a}${b?`: ${b.slice(0,300)}`:""}`}})}})},s=new TextEncoder,new ReadableStream({start(a){r(b=>{try{a.enqueue(s.encode(b))}catch{}},()=>{try{a.close()}catch{}})}})),{transformedBody:{transport:"opencode-cli",model:t,session:g.sid||"new",turns:g.replayed,promptBytes:Buffer.byteLength(g.prompt)}})}}({bin:H,args:j,dir:E,key:P,plan:c,turns:L,model:a,signal:g,log:i,attachments:e,proxyOptions:l,stdinPrompt:J?c.prompt:null}),n=q.SW.peekMs>0?await m.peeked:null;return n?(await m.settled,i?.warn?.("OPENCODE",`CLI failed before any output (${n.status||n.code||"?"}): ${String(n.message).slice(0,200)}`),ae(n.message,Number(n.status)||502,n.code||"cli_failed")):{result:m.response,release:m.settled}},D=(B=(W.get(P)||Promise.resolve()).then(m,m)).then(a=>a?.release).catch(()=>void 0),W.set(P,D),D.then(()=>{W.get(P)===D&&W.delete(P)}),B.then(a=>a?.result??a)}function ae(a,b=400,c){return Promise.resolve({response:new Response(JSON.stringify({error:{message:String(a||"OpenCode CLI error").slice(0,600),type:w,code:c||(499===b?"aborted":"empty_prompt"),status:b}}),{status:b,headers:{"Content-Type":"application/json","Cache-Control":"no-cache"}}),url:u,headers:{},responseFormat:"openai",transformedBody:{transport:"opencode-cli",error:a}})}}};
@@ -1 +1 @@
1
- "use strict";exports.id=615,exports.ids=[615],exports.modules={40615:(a,b,c)=>{c.d(b,{AI_PROVIDERS:()=>s,js:()=>w,DI:()=>n,fg:()=>k,Pd:()=>o,IS:()=>h,nJ:()=>i,zN:()=>j,JH:()=>m,jO:()=>A,wb:()=>z,br:()=>l,wG:()=>v,zt:()=>t,gb:()=>q,gC:()=>r,mq:()=>p,HQ:()=>y,rs:()=>u});var d=c(72375);let e="⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.";Object.fromEntries(d.default.filter(a=>a.display).map(a=>{let b;return[a.id,"RISK_NOTICE"===(b=a.display).deprecationNotice?{...b,deprecationNotice:e}:b]}));let f=["serviceKinds","ttsConfig","sttConfig","embeddingConfig","imageConfig","imageToTextConfig","videoConfig","musicConfig","searchViaChat","searchConfig","fetchConfig","credentialFallback","systemoneConfig","modelsFetcher","mediaPriority","hiddenKinds"],g=a=>Object.fromEntries(d.default.filter(b=>b.category===a).map(a=>[a.id,function(a){let b={};for(let c of(a.media&&Object.assign(b,a.media),f))void 0!==a[c]&&(b[c]=a[c]);let c={...a.display||{}};return"RISK_NOTICE"===c.deprecationNotice&&(c.deprecationNotice=e),{...c,id:a.id,alias:a.uiAlias||a.alias,...a.hidden?{hidden:!0}:{},...b,...void 0!==a.priority?{priority:a.priority}:{},...a.hasFree?{hasFree:!0}:{},...a.thinkingConfig?{thinkingConfig:a.thinkingConfig}:{},...a.regions?{regions:a.regions,defaultRegion:a.defaultRegion}:{},...a.hasProviderSpecificData?{hasProviderSpecificData:!0}:{},...a.noAuth?{noAuth:!0}:{},...a.passthroughModels?{passthroughModels:!0}:{},...a.hasOAuth?{hasOAuth:!0}:{},...a.authModes?{authModes:a.authModes}:{},...a.authType?{authType:a.authType}:{},...a.authHint?{authHint:a.authHint}:{},...a.apiKeyOptionalWith?{apiKeyOptionalWith:a.apiKeyOptionalWith}:{},...a.credentialForm?{credentialForm:a.credentialForm}:{}}}(a)])),h=g("free"),i=g("freeTier"),j=g("oauth"),k=g("apikey"),l=g("webCookie"),m="openai-compatible-",n="anthropic-compatible-",o="custom-embedding-";function p(a){return"string"==typeof a&&a.startsWith(m)}function q(a){return"string"==typeof a&&a.startsWith(n)}function r(a){return"string"==typeof a&&a.startsWith(o)}let s={...h,...i,...j,...k,...l};function t(a){for(let b of Object.values(s))if(b.alias===a||b.id===a)return b;return null}function u(a){let b=t(a);return b?.id||a}function v(a){let b=s[a];return b?.alias||a}let w=Object.values(s).reduce((a,b)=>(a[b.alias]=b.id,a),{});Object.values(s).reduce((a,b)=>(a[b.id]=b.alias,a),{});let x=new Set;for(let a of d.default)for(let b of[a.id,a.alias,a.uiAlias,...a.aliases||[]])b&&x.add(b);function y(a){return x.has(a)}let z=d.default.filter(a=>a.features?.usage).map(a=>a.id),A=d.default.filter(a=>a.features?.usageApikey).map(a=>a.id)}};
1
+ "use strict";exports.id=615,exports.ids=[615],exports.modules={40615:(a,b,c)=>{c.d(b,{AI_PROVIDERS:()=>s,js:()=>w,DI:()=>n,fg:()=>k,Pd:()=>o,IS:()=>h,nJ:()=>i,zN:()=>j,JH:()=>m,jO:()=>A,wb:()=>z,br:()=>l,wG:()=>v,zt:()=>t,gb:()=>q,gC:()=>r,mq:()=>p,HQ:()=>y,rs:()=>u});var d=c(82983);let e="⚠️ Risk Notice: This provider uses a subscription/OAuth session not officially licensed for proxy/router use. Account may be restricted or banned. Use at your own risk.";Object.fromEntries(d.default.filter(a=>a.display).map(a=>{let b;return[a.id,"RISK_NOTICE"===(b=a.display).deprecationNotice?{...b,deprecationNotice:e}:b]}));let f=["serviceKinds","ttsConfig","sttConfig","embeddingConfig","imageConfig","imageToTextConfig","videoConfig","musicConfig","searchViaChat","searchConfig","fetchConfig","credentialFallback","systemoneConfig","modelsFetcher","mediaPriority","hiddenKinds"],g=a=>Object.fromEntries(d.default.filter(b=>b.category===a).map(a=>[a.id,function(a){let b={};for(let c of(a.media&&Object.assign(b,a.media),f))void 0!==a[c]&&(b[c]=a[c]);let c={...a.display||{}};return"RISK_NOTICE"===c.deprecationNotice&&(c.deprecationNotice=e),{...c,id:a.id,alias:a.uiAlias||a.alias,...a.hidden?{hidden:!0}:{},...b,...void 0!==a.priority?{priority:a.priority}:{},...a.hasFree?{hasFree:!0}:{},...a.thinkingConfig?{thinkingConfig:a.thinkingConfig}:{},...a.regions?{regions:a.regions,defaultRegion:a.defaultRegion}:{},...a.hasProviderSpecificData?{hasProviderSpecificData:!0}:{},...a.noAuth?{noAuth:!0}:{},...a.passthroughModels?{passthroughModels:!0}:{},...a.hasOAuth?{hasOAuth:!0}:{},...a.authModes?{authModes:a.authModes}:{},...a.authType?{authType:a.authType}:{},...a.authHint?{authHint:a.authHint}:{},...a.apiKeyOptionalWith?{apiKeyOptionalWith:a.apiKeyOptionalWith}:{},...a.credentialForm?{credentialForm:a.credentialForm}:{}}}(a)])),h=g("free"),i=g("freeTier"),j=g("oauth"),k=g("apikey"),l=g("webCookie"),m="openai-compatible-",n="anthropic-compatible-",o="custom-embedding-";function p(a){return"string"==typeof a&&a.startsWith(m)}function q(a){return"string"==typeof a&&a.startsWith(n)}function r(a){return"string"==typeof a&&a.startsWith(o)}let s={...h,...i,...j,...k,...l};function t(a){for(let b of Object.values(s))if(b.alias===a||b.id===a)return b;return null}function u(a){let b=t(a);return b?.id||a}function v(a){let b=s[a];return b?.alias||a}let w=Object.values(s).reduce((a,b)=>(a[b.alias]=b.id,a),{});Object.values(s).reduce((a,b)=>(a[b.id]=b.alias,a),{});let x=new Set;for(let a of d.default)for(let b of[a.id,a.alias,a.uiAlias,...a.aliases||[]])b&&x.add(b);function y(a){return x.has(a)}let z=d.default.filter(a=>a.features?.usage).map(a=>a.id),A=d.default.filter(a=>a.features?.usageApikey).map(a=>a.id)}};