9router-proxy 0.5.82 → 0.5.83

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 (774) hide show
  1. package/app/.next-cli-build/BUILD_ID +1 -1
  2. package/app/.next-cli-build/app-path-routes-manifest.json +10 -10
  3. package/app/.next-cli-build/build-manifest.json +3 -3
  4. package/app/.next-cli-build/prerender-manifest.json +27 -27
  5. package/app/.next-cli-build/required-server-files.json +5 -5
  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 +2 -2
  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 +2 -2
  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 +2 -2
  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 +2 -2
  76. package/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  77. package/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  78. package/app/.next-cli-build/server/app/_global-error.html +1 -1
  79. package/app/.next-cli-build/server/app/_global-error.rsc +1 -1
  80. package/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +1 -1
  81. package/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  82. package/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  83. package/app/.next-cli-build/server/app/_not-found/page.js +1 -1
  84. package/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  85. package/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  86. package/app/.next-cli-build/server/app/_not-found.html +1 -1
  87. package/app/.next-cli-build/server/app/_not-found.rsc +4 -4
  88. package/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +4 -4
  89. package/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +4 -4
  90. package/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  91. package/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  92. package/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  93. package/app/.next-cli-build/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  94. package/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
  95. package/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  96. package/app/.next-cli-build/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  97. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  98. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  99. package/app/.next-cli-build/server/app/api/auth/oidc/callback/route_client-reference-manifest.js +1 -1
  100. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  101. package/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  102. package/app/.next-cli-build/server/app/api/auth/oidc/start/route_client-reference-manifest.js +1 -1
  103. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  104. package/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  105. package/app/.next-cli-build/server/app/api/auth/oidc/test/route_client-reference-manifest.js +1 -1
  106. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js +1 -1
  107. package/app/.next-cli-build/server/app/api/auth/reset-password/route.js.nft.json +1 -1
  108. package/app/.next-cli-build/server/app/api/auth/reset-password/route_client-reference-manifest.js +1 -1
  109. package/app/.next-cli-build/server/app/api/auth/saml/acs/route.js +1 -1
  110. package/app/.next-cli-build/server/app/api/auth/saml/acs/route.js.nft.json +1 -1
  111. package/app/.next-cli-build/server/app/api/auth/saml/acs/route_client-reference-manifest.js +1 -1
  112. package/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js +1 -1
  113. package/app/.next-cli-build/server/app/api/auth/saml/metadata/route.js.nft.json +1 -1
  114. package/app/.next-cli-build/server/app/api/auth/saml/metadata/route_client-reference-manifest.js +1 -1
  115. package/app/.next-cli-build/server/app/api/auth/saml/start/route.js +2 -2
  116. package/app/.next-cli-build/server/app/api/auth/saml/start/route.js.nft.json +1 -1
  117. package/app/.next-cli-build/server/app/api/auth/saml/start/route_client-reference-manifest.js +1 -1
  118. package/app/.next-cli-build/server/app/api/auth/saml/test/route.js +1 -1
  119. package/app/.next-cli-build/server/app/api/auth/saml/test/route.js.nft.json +1 -1
  120. package/app/.next-cli-build/server/app/api/auth/saml/test/route_client-reference-manifest.js +1 -1
  121. package/app/.next-cli-build/server/app/api/auth/status/route.js +2 -2
  122. package/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  123. package/app/.next-cli-build/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  124. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +5 -5
  125. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  126. package/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route_client-reference-manifest.js +1 -1
  127. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  128. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  129. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
  130. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  131. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  132. package/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
  133. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  134. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  135. package/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
  136. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
  137. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  138. package/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -1
  139. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  140. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  141. package/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
  142. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  143. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  144. package/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route_client-reference-manifest.js +1 -1
  145. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +1 -1
  146. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  147. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route_client-reference-manifest.js +1 -1
  148. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
  149. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  150. package/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route_client-reference-manifest.js +1 -1
  151. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +2 -2
  152. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  153. package/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route_client-reference-manifest.js +1 -1
  154. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +3 -3
  155. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  156. package/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route_client-reference-manifest.js +1 -1
  157. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js +1 -1
  158. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route.js.nft.json +1 -1
  159. package/app/.next-cli-build/server/app/api/cli-tools/devin-settings/route_client-reference-manifest.js +1 -1
  160. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +1 -1
  161. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  162. package/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
  163. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js +2 -2
  164. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route.js.nft.json +1 -1
  165. package/app/.next-cli-build/server/app/api/cli-tools/grok-build-settings/route_client-reference-manifest.js +1 -1
  166. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +2 -2
  167. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  168. package/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route_client-reference-manifest.js +1 -1
  169. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  170. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  171. package/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route_client-reference-manifest.js +1 -1
  172. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  173. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  174. package/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
  175. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  176. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  177. package/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
  178. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  179. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  180. package/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route_client-reference-manifest.js +1 -1
  181. package/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  182. package/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  183. package/app/.next-cli-build/server/app/api/combos/[id]/route_client-reference-manifest.js +1 -1
  184. package/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  185. package/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  186. package/app/.next-cli-build/server/app/api/combos/route_client-reference-manifest.js +1 -1
  187. package/app/.next-cli-build/server/app/api/headroom/extras/route.js +1 -1
  188. package/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
  189. package/app/.next-cli-build/server/app/api/headroom/extras/route_client-reference-manifest.js +1 -1
  190. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
  191. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
  192. package/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route_client-reference-manifest.js +1 -1
  193. package/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
  194. package/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
  195. package/app/.next-cli-build/server/app/api/headroom/restart/route_client-reference-manifest.js +1 -1
  196. package/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
  197. package/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  198. package/app/.next-cli-build/server/app/api/headroom/start/route_client-reference-manifest.js +1 -1
  199. package/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
  200. package/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  201. package/app/.next-cli-build/server/app/api/headroom/status/route_client-reference-manifest.js +1 -1
  202. package/app/.next-cli-build/server/app/api/headroom/stop/route.js +1 -1
  203. package/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  204. package/app/.next-cli-build/server/app/api/headroom/stop/route_client-reference-manifest.js +1 -1
  205. package/app/.next-cli-build/server/app/api/health/route.js +1 -1
  206. package/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  207. package/app/.next-cli-build/server/app/api/health/route_client-reference-manifest.js +1 -1
  208. package/app/.next-cli-build/server/app/api/init/route.js +1 -1
  209. package/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  210. package/app/.next-cli-build/server/app/api/init/route_client-reference-manifest.js +1 -1
  211. package/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  212. package/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  213. package/app/.next-cli-build/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
  214. package/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  215. package/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  216. package/app/.next-cli-build/server/app/api/keys/route_client-reference-manifest.js +1 -1
  217. package/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  218. package/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  219. package/app/.next-cli-build/server/app/api/locale/route_client-reference-manifest.js +1 -1
  220. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +1 -1
  221. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  222. package/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route_client-reference-manifest.js +1 -1
  223. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +2 -2
  224. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  225. package/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route_client-reference-manifest.js +1 -1
  226. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  227. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  228. package/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route_client-reference-manifest.js +1 -1
  229. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  230. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  231. package/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route_client-reference-manifest.js +1 -1
  232. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  233. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  234. package/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route_client-reference-manifest.js +1 -1
  235. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  236. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  237. package/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route_client-reference-manifest.js +1 -1
  238. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  239. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  240. package/app/.next-cli-build/server/app/api/media-providers/tts/voices/route_client-reference-manifest.js +1 -1
  241. package/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  242. package/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  243. package/app/.next-cli-build/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
  244. package/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
  245. package/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  246. package/app/.next-cli-build/server/app/api/models/availability/route_client-reference-manifest.js +1 -1
  247. package/app/.next-cli-build/server/app/api/models/catalog-sync/route.js +1 -1
  248. package/app/.next-cli-build/server/app/api/models/catalog-sync/route.js.nft.json +1 -1
  249. package/app/.next-cli-build/server/app/api/models/catalog-sync/route_client-reference-manifest.js +1 -1
  250. package/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  251. package/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  252. package/app/.next-cli-build/server/app/api/models/custom/route_client-reference-manifest.js +1 -1
  253. package/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  254. package/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  255. package/app/.next-cli-build/server/app/api/models/disabled/route_client-reference-manifest.js +1 -1
  256. package/app/.next-cli-build/server/app/api/models/route.js +1 -1
  257. package/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  258. package/app/.next-cli-build/server/app/api/models/route_client-reference-manifest.js +1 -1
  259. package/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  260. package/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  261. package/app/.next-cli-build/server/app/api/models/test/route_client-reference-manifest.js +1 -1
  262. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  263. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  264. package/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route_client-reference-manifest.js +1 -1
  265. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js +1 -1
  266. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route.js.nft.json +1 -1
  267. package/app/.next-cli-build/server/app/api/oauth/codex/bulk-import/route_client-reference-manifest.js +1 -1
  268. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  269. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  270. package/app/.next-cli-build/server/app/api/oauth/codex/import-token/route_client-reference-manifest.js +1 -1
  271. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +1 -1
  272. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  273. package/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +1 -1
  274. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  275. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  276. package/app/.next-cli-build/server/app/api/oauth/cursor/import/route_client-reference-manifest.js +1 -1
  277. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  278. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  279. package/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route_client-reference-manifest.js +1 -1
  280. package/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js +1 -1
  281. package/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js.nft.json +1 -1
  282. package/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route_client-reference-manifest.js +1 -1
  283. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  284. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  285. package/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route_client-reference-manifest.js +1 -1
  286. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js +1 -1
  287. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route.js.nft.json +1 -1
  288. package/app/.next-cli-build/server/app/api/oauth/kiro/api-key/route_client-reference-manifest.js +1 -1
  289. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  290. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  291. package/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.js +1 -1
  292. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  293. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  294. package/app/.next-cli-build/server/app/api/oauth/kiro/import/route_client-reference-manifest.js +1 -1
  295. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js +1 -1
  296. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route.js.nft.json +1 -1
  297. package/app/.next-cli-build/server/app/api/oauth/kiro/import-cli-proxy/route_client-reference-manifest.js +1 -1
  298. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  299. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  300. package/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.js +1 -1
  301. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  302. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  303. package/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route_client-reference-manifest.js +1 -1
  304. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/api-key/route.js +1 -1
  305. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/api-key/route.js.nft.json +1 -1
  306. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/api-key/route_client-reference-manifest.js +1 -1
  307. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route.js +2 -2
  308. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route.js.nft.json +1 -1
  309. package/app/.next-cli-build/server/app/api/oauth/xiaomi-mimo/auto-import/route_client-reference-manifest.js +1 -1
  310. package/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  311. package/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  312. package/app/.next-cli-build/server/app/api/pricing/route_client-reference-manifest.js +1 -1
  313. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  314. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  315. package/app/.next-cli-build/server/app/api/provider-nodes/[id]/route_client-reference-manifest.js +1 -1
  316. package/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  317. package/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  318. package/app/.next-cli-build/server/app/api/provider-nodes/route_client-reference-manifest.js +1 -1
  319. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  320. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  321. package/app/.next-cli-build/server/app/api/provider-nodes/validate/route_client-reference-manifest.js +1 -1
  322. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  323. package/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  324. package/app/.next-cli-build/server/app/api/providers/[id]/models/route_client-reference-manifest.js +1 -1
  325. package/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  326. package/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  327. package/app/.next-cli-build/server/app/api/providers/[id]/route_client-reference-manifest.js +1 -1
  328. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  329. package/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  330. package/app/.next-cli-build/server/app/api/providers/[id]/test/route_client-reference-manifest.js +1 -1
  331. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  332. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  333. package/app/.next-cli-build/server/app/api/providers/[id]/test-models/route_client-reference-manifest.js +1 -1
  334. package/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  335. package/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  336. package/app/.next-cli-build/server/app/api/providers/client/route_client-reference-manifest.js +1 -1
  337. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  338. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  339. package/app/.next-cli-build/server/app/api/providers/kilo/free-models/route_client-reference-manifest.js +1 -1
  340. package/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  341. package/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  342. package/app/.next-cli-build/server/app/api/providers/route_client-reference-manifest.js +1 -1
  343. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  344. package/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  345. package/app/.next-cli-build/server/app/api/providers/suggested-models/route_client-reference-manifest.js +1 -1
  346. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  347. package/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  348. package/app/.next-cli-build/server/app/api/providers/test-batch/route_client-reference-manifest.js +1 -1
  349. package/app/.next-cli-build/server/app/api/providers/validate/route.js +1 -1
  350. package/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  351. package/app/.next-cli-build/server/app/api/providers/validate/route_client-reference-manifest.js +1 -1
  352. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  353. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  354. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/route_client-reference-manifest.js +1 -1
  355. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  356. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  357. package/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route_client-reference-manifest.js +1 -1
  358. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
  359. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  360. package/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route_client-reference-manifest.js +1 -1
  361. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
  362. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  363. package/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route_client-reference-manifest.js +1 -1
  364. package/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  365. package/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  366. package/app/.next-cli-build/server/app/api/proxy-pools/route_client-reference-manifest.js +1 -1
  367. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
  368. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  369. package/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route_client-reference-manifest.js +1 -1
  370. package/app/.next-cli-build/server/app/api/pxpipe/health/route.js +2 -2
  371. package/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
  372. package/app/.next-cli-build/server/app/api/pxpipe/health/route_client-reference-manifest.js +1 -1
  373. package/app/.next-cli-build/server/app/api/pxpipe/install/route.js +2 -2
  374. package/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
  375. package/app/.next-cli-build/server/app/api/pxpipe/install/route_client-reference-manifest.js +1 -1
  376. package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js +1 -1
  377. package/app/.next-cli-build/server/app/api/pxpipe/logs/route.js.nft.json +1 -1
  378. package/app/.next-cli-build/server/app/api/pxpipe/logs/route_client-reference-manifest.js +1 -1
  379. package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js +2 -2
  380. package/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
  381. package/app/.next-cli-build/server/app/api/pxpipe/restart/route_client-reference-manifest.js +1 -1
  382. package/app/.next-cli-build/server/app/api/pxpipe/start/route.js +2 -2
  383. package/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
  384. package/app/.next-cli-build/server/app/api/pxpipe/start/route_client-reference-manifest.js +1 -1
  385. package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js +2 -2
  386. package/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
  387. package/app/.next-cli-build/server/app/api/pxpipe/stats/route_client-reference-manifest.js +1 -1
  388. package/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
  389. package/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
  390. package/app/.next-cli-build/server/app/api/pxpipe/status/route_client-reference-manifest.js +1 -1
  391. package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js +2 -2
  392. package/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
  393. package/app/.next-cli-build/server/app/api/pxpipe/stop/route_client-reference-manifest.js +1 -1
  394. package/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  395. package/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  396. package/app/.next-cli-build/server/app/api/settings/database/route_client-reference-manifest.js +1 -1
  397. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  398. package/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  399. package/app/.next-cli-build/server/app/api/settings/proxy-test/route_client-reference-manifest.js +1 -1
  400. package/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  401. package/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  402. package/app/.next-cli-build/server/app/api/settings/require-login/route_client-reference-manifest.js +1 -1
  403. package/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  404. package/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  405. package/app/.next-cli-build/server/app/api/settings/route_client-reference-manifest.js +1 -1
  406. package/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  407. package/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  408. package/app/.next-cli-build/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
  409. package/app/.next-cli-build/server/app/api/tags/route.js +1 -1
  410. package/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  411. package/app/.next-cli-build/server/app/api/tags/route_client-reference-manifest.js +1 -1
  412. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  413. package/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  414. package/app/.next-cli-build/server/app/api/translator/console-logs/route_client-reference-manifest.js +1 -1
  415. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +1 -1
  416. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  417. package/app/.next-cli-build/server/app/api/translator/console-logs/stream/route_client-reference-manifest.js +1 -1
  418. package/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  419. package/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  420. package/app/.next-cli-build/server/app/api/translator/load/route_client-reference-manifest.js +1 -1
  421. package/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  422. package/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  423. package/app/.next-cli-build/server/app/api/translator/save/route_client-reference-manifest.js +1 -1
  424. package/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  425. package/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  426. package/app/.next-cli-build/server/app/api/translator/send/route_client-reference-manifest.js +1 -1
  427. package/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  428. package/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  429. package/app/.next-cli-build/server/app/api/translator/translate/route_client-reference-manifest.js +1 -1
  430. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  431. package/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  432. package/app/.next-cli-build/server/app/api/tunnel/disable/route_client-reference-manifest.js +1 -1
  433. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  434. package/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  435. package/app/.next-cli-build/server/app/api/tunnel/enable/route_client-reference-manifest.js +1 -1
  436. package/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  437. package/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  438. package/app/.next-cli-build/server/app/api/tunnel/status/route_client-reference-manifest.js +1 -1
  439. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  440. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  441. package/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route_client-reference-manifest.js +1 -1
  442. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  443. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  444. package/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route_client-reference-manifest.js +1 -1
  445. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  446. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  447. package/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route_client-reference-manifest.js +1 -1
  448. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +2 -2
  449. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  450. package/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route_client-reference-manifest.js +1 -1
  451. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js +1 -1
  452. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route.js.nft.json +1 -1
  453. package/app/.next-cli-build/server/app/api/usage/[connectionId]/codex-reset-credits/route_client-reference-manifest.js +1 -1
  454. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  455. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  456. package/app/.next-cli-build/server/app/api/usage/[connectionId]/route_client-reference-manifest.js +1 -1
  457. package/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  458. package/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  459. package/app/.next-cli-build/server/app/api/usage/chart/route_client-reference-manifest.js +1 -1
  460. package/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  461. package/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  462. package/app/.next-cli-build/server/app/api/usage/history/route_client-reference-manifest.js +1 -1
  463. package/app/.next-cli-build/server/app/api/usage/logs/route.js +1 -1
  464. package/app/.next-cli-build/server/app/api/usage/logs/route.js.nft.json +1 -1
  465. package/app/.next-cli-build/server/app/api/usage/logs/route_client-reference-manifest.js +1 -1
  466. package/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  467. package/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  468. package/app/.next-cli-build/server/app/api/usage/providers/route_client-reference-manifest.js +1 -1
  469. package/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  470. package/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  471. package/app/.next-cli-build/server/app/api/usage/request-details/route_client-reference-manifest.js +1 -1
  472. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  473. package/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  474. package/app/.next-cli-build/server/app/api/usage/request-logs/route_client-reference-manifest.js +1 -1
  475. package/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  476. package/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  477. package/app/.next-cli-build/server/app/api/usage/stats/route_client-reference-manifest.js +1 -1
  478. package/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  479. package/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  480. package/app/.next-cli-build/server/app/api/usage/stream/route_client-reference-manifest.js +1 -1
  481. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  482. package/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  483. package/app/.next-cli-build/server/app/api/v1/api/chat/route_client-reference-manifest.js +1 -1
  484. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  485. package/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  486. package/app/.next-cli-build/server/app/api/v1/audio/speech/route_client-reference-manifest.js +1 -1
  487. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  488. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  489. package/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route_client-reference-manifest.js +1 -1
  490. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  491. package/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  492. package/app/.next-cli-build/server/app/api/v1/audio/voices/route_client-reference-manifest.js +1 -1
  493. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  494. package/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  495. package/app/.next-cli-build/server/app/api/v1/chat/completions/route_client-reference-manifest.js +1 -1
  496. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  497. package/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  498. package/app/.next-cli-build/server/app/api/v1/embeddings/route_client-reference-manifest.js +1 -1
  499. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js +1 -1
  500. package/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  501. package/app/.next-cli-build/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -1
  502. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  503. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  504. package/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.js +1 -1
  505. package/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  506. package/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  507. package/app/.next-cli-build/server/app/api/v1/messages/route_client-reference-manifest.js +1 -1
  508. package/app/.next-cli-build/server/app/api/v1/models/[...model]/route.js +1 -1
  509. package/app/.next-cli-build/server/app/api/v1/models/[...model]/route.js.nft.json +1 -1
  510. package/app/.next-cli-build/server/app/api/v1/models/[...model]/route_client-reference-manifest.js +1 -1
  511. package/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  512. package/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  513. package/app/.next-cli-build/server/app/api/v1/models/info/route_client-reference-manifest.js +1 -1
  514. package/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  515. package/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  516. package/app/.next-cli-build/server/app/api/v1/models/route_client-reference-manifest.js +1 -1
  517. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  518. package/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  519. package/app/.next-cli-build/server/app/api/v1/responses/compact/route_client-reference-manifest.js +1 -1
  520. package/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  521. package/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  522. package/app/.next-cli-build/server/app/api/v1/responses/route_client-reference-manifest.js +1 -1
  523. package/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  524. package/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  525. package/app/.next-cli-build/server/app/api/v1/route_client-reference-manifest.js +1 -1
  526. package/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  527. package/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  528. package/app/.next-cli-build/server/app/api/v1/search/route_client-reference-manifest.js +1 -1
  529. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js +1 -1
  530. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route.js.nft.json +1 -1
  531. package/app/.next-cli-build/server/app/api/v1/videos/[id]/route_client-reference-manifest.js +1 -1
  532. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js +1 -1
  533. package/app/.next-cli-build/server/app/api/v1/videos/edits/route.js.nft.json +1 -1
  534. package/app/.next-cli-build/server/app/api/v1/videos/edits/route_client-reference-manifest.js +1 -1
  535. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js +1 -1
  536. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route.js.nft.json +1 -1
  537. package/app/.next-cli-build/server/app/api/v1/videos/extensions/route_client-reference-manifest.js +1 -1
  538. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js +1 -1
  539. package/app/.next-cli-build/server/app/api/v1/videos/generations/route.js.nft.json +1 -1
  540. package/app/.next-cli-build/server/app/api/v1/videos/generations/route_client-reference-manifest.js +1 -1
  541. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  542. package/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  543. package/app/.next-cli-build/server/app/api/v1/web/fetch/route_client-reference-manifest.js +1 -1
  544. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  545. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  546. package/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route_client-reference-manifest.js +1 -1
  547. package/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  548. package/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  549. package/app/.next-cli-build/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
  550. package/app/.next-cli-build/server/app/api/version/route.js +1 -1
  551. package/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  552. package/app/.next-cli-build/server/app/api/version/route_client-reference-manifest.js +1 -1
  553. package/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  554. package/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  555. package/app/.next-cli-build/server/app/api/version/shutdown/route_client-reference-manifest.js +1 -1
  556. package/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  557. package/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  558. package/app/.next-cli-build/server/app/api/version/update/route_client-reference-manifest.js +1 -1
  559. package/app/.next-cli-build/server/app/callback/page.js +1 -1
  560. package/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  561. package/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  562. package/app/.next-cli-build/server/app/callback.html +1 -1
  563. package/app/.next-cli-build/server/app/callback.rsc +5 -5
  564. package/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +5 -5
  565. package/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +1 -1
  566. package/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +5 -5
  567. package/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  568. package/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +6 -6
  569. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +6 -6
  570. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +6 -6
  571. package/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +1 -1
  572. package/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  573. package/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +7 -7
  574. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +6 -6
  575. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +7 -7
  576. package/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
  577. package/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  578. package/app/.next-cli-build/server/app/dashboard/combos.rsc +6 -6
  579. package/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +6 -6
  580. package/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  581. package/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
  582. package/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  583. package/app/.next-cli-build/server/app/dashboard/endpoint.rsc +7 -7
  584. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +6 -6
  585. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +7 -7
  586. package/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
  587. package/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  588. package/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +6 -6
  589. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +6 -6
  590. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +6 -6
  591. package/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +1 -1
  592. package/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  593. package/app/.next-cli-build/server/app/dashboard/mitm.rsc +6 -6
  594. package/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +6 -6
  595. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +6 -6
  596. package/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +1 -1
  597. package/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  598. package/app/.next-cli-build/server/app/dashboard/profile.rsc +6 -6
  599. package/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +6 -6
  600. package/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +6 -6
  601. package/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
  602. package/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  603. package/app/.next-cli-build/server/app/dashboard/providers/new.rsc +6 -6
  604. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +6 -6
  605. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
  606. package/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
  607. package/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  608. package/app/.next-cli-build/server/app/dashboard/providers.rsc +6 -6
  609. package/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +6 -6
  610. package/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
  611. package/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
  612. package/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  613. package/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +6 -6
  614. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +6 -6
  615. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +6 -6
  616. package/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +1 -1
  617. package/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
  618. package/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +6 -6
  619. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +6 -6
  620. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +6 -6
  621. package/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +1 -1
  622. package/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  623. package/app/.next-cli-build/server/app/dashboard/quota.rsc +7 -7
  624. package/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +7 -7
  625. package/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +7 -7
  626. package/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +1 -1
  627. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +1 -1
  628. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  629. package/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  630. package/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  631. package/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +5 -5
  632. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +5 -5
  633. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
  634. package/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +5 -5
  635. package/app/.next-cli-build/server/app/dashboard/skills.html +1 -1
  636. package/app/.next-cli-build/server/app/dashboard/skills.rsc +6 -6
  637. package/app/.next-cli-build/server/app/dashboard/skills.segments/!KGRhc2hib2FyZCk/dashboard/skills/__PAGE__.segment.rsc +6 -6
  638. package/app/.next-cli-build/server/app/dashboard/skills.segments/_full.segment.rsc +6 -6
  639. package/app/.next-cli-build/server/app/dashboard/skills.segments/_tree.segment.rsc +1 -1
  640. package/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  641. package/app/.next-cli-build/server/app/dashboard/token-saver.rsc +6 -6
  642. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +6 -6
  643. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +6 -6
  644. package/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +1 -1
  645. package/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  646. package/app/.next-cli-build/server/app/dashboard/translator.rsc +6 -6
  647. package/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +6 -6
  648. package/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
  649. package/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
  650. package/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  651. package/app/.next-cli-build/server/app/dashboard/usage.rsc +6 -6
  652. package/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +6 -6
  653. package/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  654. package/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
  655. package/app/.next-cli-build/server/app/dashboard.html +1 -1
  656. package/app/.next-cli-build/server/app/dashboard.rsc +7 -7
  657. package/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +6 -6
  658. package/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +7 -7
  659. package/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +1 -1
  660. package/app/.next-cli-build/server/app/favicon.ico/route.js +1 -1
  661. package/app/.next-cli-build/server/app/favicon.ico/route.js.nft.json +1 -1
  662. package/app/.next-cli-build/server/app/index.html +1 -1
  663. package/app/.next-cli-build/server/app/index.rsc +4 -4
  664. package/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +4 -4
  665. package/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +4 -4
  666. package/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +1 -1
  667. package/app/.next-cli-build/server/app/landing/page.js +1 -1
  668. package/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  669. package/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  670. package/app/.next-cli-build/server/app/landing.html +1 -1
  671. package/app/.next-cli-build/server/app/landing.rsc +5 -5
  672. package/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +5 -5
  673. package/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +1 -1
  674. package/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +5 -5
  675. package/app/.next-cli-build/server/app/login/page.js +1 -1
  676. package/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  677. package/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  678. package/app/.next-cli-build/server/app/login.html +1 -1
  679. package/app/.next-cli-build/server/app/login.rsc +5 -5
  680. package/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +5 -5
  681. package/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +1 -1
  682. package/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +5 -5
  683. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
  684. package/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  685. package/app/.next-cli-build/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
  686. package/app/.next-cli-build/server/app/page.js +1 -1
  687. package/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  688. package/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  689. package/app/.next-cli-build/server/app-paths-manifest.json +10 -10
  690. package/app/.next-cli-build/server/chunks/1220.js +1 -1
  691. package/app/.next-cli-build/server/chunks/1478.js +1 -1
  692. package/app/.next-cli-build/server/chunks/2214.js +3 -0
  693. package/app/.next-cli-build/server/chunks/2430.js +4 -4
  694. package/app/.next-cli-build/server/chunks/2751.js +1 -0
  695. package/app/.next-cli-build/server/chunks/2870.js +1 -0
  696. package/app/.next-cli-build/server/chunks/3459.js +1 -1
  697. package/app/.next-cli-build/server/chunks/3943.js +1 -1
  698. package/app/.next-cli-build/server/chunks/4037.js +1 -1
  699. package/app/.next-cli-build/server/chunks/4123.js +1 -1
  700. package/app/.next-cli-build/server/chunks/4572.js +1 -1
  701. package/app/.next-cli-build/server/chunks/4730.js +1 -1
  702. package/app/.next-cli-build/server/chunks/8145.js +1 -1
  703. package/app/.next-cli-build/server/chunks/869.js +1 -1
  704. package/app/.next-cli-build/server/instrumentation.js.nft.json +1 -1
  705. package/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  706. package/app/.next-cli-build/server/middleware.js +3 -3
  707. package/app/.next-cli-build/server/middleware.js.nft.json +1 -1
  708. package/app/.next-cli-build/server/next-font-manifest.js +1 -1
  709. package/app/.next-cli-build/server/next-font-manifest.json +1 -1
  710. package/app/.next-cli-build/server/pages/404.html +1 -1
  711. package/app/.next-cli-build/server/pages/500.html +1 -1
  712. package/app/.next-cli-build/server/server-reference-manifest.js +1 -1
  713. package/app/.next-cli-build/server/server-reference-manifest.json +1 -1
  714. package/app/.next-cli-build/static/chunks/{1321-91f49ecab7e31497.js → 1321-338ffabac587d51a.js} +1 -1
  715. package/app/.next-cli-build/static/chunks/809-c530a61052bf57d9.js +3 -0
  716. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/{page-6d5c472d92ad4d7b.js → page-bf62957e6bf0c9b6.js} +1 -1
  717. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/{page-aedc4da9b1e64ba1.js → page-e9094f6397e3db32.js} +1 -1
  718. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/{page-6d9baf555ca7e1a9.js → page-49227e9571ca75ee.js} +1 -1
  719. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/{page-f16f14e3708413c6.js → page-22d499936f64e70d.js} +1 -1
  720. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/{page-fc64937433e2052b.js → page-5ce7e708e65d7ed2.js} +1 -1
  721. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-cf249feaa9108a4e.js +1 -0
  722. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-634c7c6009db3c9a.js → page-452f4c039beb1ff0.js} +2 -2
  723. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-fe79c701b0256560.js +1 -0
  724. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-b97c67f4e942cd35.js → page-c20828e9f181b48c.js} +1 -1
  725. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/{page-6b5e415f16f2015e.js → page-1eaf569d16f5fc95.js} +1 -1
  726. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/{page-f5773f327357e5c0.js → page-991110e90ac5b7ca.js} +1 -1
  727. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-b52bdd6de15807fc.js +1 -0
  728. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/{page-60112f6b6217c23d.js → page-1707a43605025629.js} +1 -1
  729. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-61c471f2f094e671.js → page-a1a8249b040b3fc5.js} +1 -1
  730. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/{page-b74f96b9d4217a63.js → page-378e16c550d6670d.js} +1 -1
  731. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-534cf66a5d57f5da.js +1 -0
  732. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/proxy-pools/{page-74f7c8a6eae89546.js → page-9afa902610df6eda.js} +2 -2
  733. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/pxpipe/{page-50ca788a79bff514.js → page-930edc3414aefb99.js} +1 -1
  734. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-f3e8f3d109886a92.js +1 -0
  735. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/skills/{page-a30b31b2fab6e55f.js → page-ff4999c854469b73.js} +1 -1
  736. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-a5ed9cd2ec340299.js +1 -0
  737. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/{page-6e1bf9615b110473.js → page-074f26128db0c704.js} +1 -1
  738. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-a802ce8ca6fa34c3.js +1 -0
  739. package/app/.next-cli-build/static/chunks/app/(dashboard)/{layout-235aa653589384de.js → layout-1e553b4323bf7053.js} +1 -1
  740. package/app/.next-cli-build/static/chunks/app/_not-found/page-9cb0ac70ab60eba2.js +1 -0
  741. package/app/.next-cli-build/static/chunks/app/callback/page-ee5f77ef69dd466f.js +1 -0
  742. package/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/{page-363940edf26f7293.js → page-afccf4209692aa6f.js} +1 -1
  743. package/app/.next-cli-build/static/chunks/app/landing/{page-258585580e004f81.js → page-0185c25e389af607.js} +1 -1
  744. package/app/.next-cli-build/static/chunks/app/layout-00c8624593ca90e2.js +1 -0
  745. package/app/.next-cli-build/static/chunks/app/login/{page-f028d26bd6d12748.js → page-c72141d109a846b7.js} +1 -1
  746. package/app/.next-cli-build/static/chunks/main-app-6b83f9262ea4869d.js +1 -0
  747. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/global-error-fc979617952f596f.js +1 -0
  748. package/app/package.json +1 -1
  749. package/app/server.js +1 -1
  750. package/package.json +2 -2
  751. package/app/.next-cli-build/server/chunks/3332.js +0 -1
  752. package/app/.next-cli-build/server/chunks/3956.js +0 -3
  753. package/app/.next-cli-build/server/chunks/9667.js +0 -1
  754. package/app/.next-cli-build/static/chunks/9246-3416a4e77c91f76c.js +0 -3
  755. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-bb4b4646897cd2e7.js +0 -1
  756. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-c613f178fca0d7cb.js +0 -1
  757. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-334ec5a4985a3bb1.js +0 -1
  758. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/page-6cbb5af377c79574.js +0 -1
  759. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-8a4858aa4d4c0d42.js +0 -1
  760. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-14c66e5844bef120.js +0 -1
  761. package/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-88424527e5a39243.js +0 -1
  762. package/app/.next-cli-build/static/chunks/app/_not-found/page-5b9d4fc0a96993f8.js +0 -1
  763. package/app/.next-cli-build/static/chunks/app/callback/page-4ab401c9515d534f.js +0 -1
  764. package/app/.next-cli-build/static/chunks/app/layout-0afb71a399c4e37f.js +0 -1
  765. package/app/.next-cli-build/static/chunks/main-app-f80e368a7022c830.js +0 -1
  766. package/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/global-error-a07eb5f6e9f351cd.js +0 -1
  767. package/app/cli/.build-home/.9router/db/data.sqlite +0 -0
  768. package/app/cli/.build-home/.9router/db/data.sqlite-shm +0 -0
  769. package/app/cli/.build-home/.9router/db/data.sqlite-wal +0 -0
  770. package/app/cli/.build-home/.9router/jwt-secret +0 -1
  771. package/app/cli/.build-home/.9router/machine-id +0 -1
  772. package/app/cli/.build-home/Library/Preferences/nextjs-nodejs/config.json +0 -7
  773. /package/app/.next-cli-build/static/{k0r09uWkmSpifXbwK-mnO → 3C7TjBE-6n_cSjwJbMKkM}/_buildManifest.js +0 -0
  774. /package/app/.next-cli-build/static/{k0r09uWkmSpifXbwK-mnO → 3C7TjBE-6n_cSjwJbMKkM}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ exports.id=2870,exports.ids=[2870],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")},2422:(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/UsageStats.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/UsageStats.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(2422),c(45205),c(29674),c(29354),c(33811),c(19083),c(82448),c(14285),c(87228),c(40167),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")},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")},53638:(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,54510)),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,23048)),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,59026)),Promise.resolve().then(c.bind(c,24622))},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")},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")},85182:(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,2422)),Promise.resolve().then(c.bind(c,18060))},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,4 +1,4 @@
1
- exports.id=3459,exports.ids=[3459],exports.modules={300:(a,b,c)=>{"use strict";c.d(b,{Zr:()=>e});let d=a=>b=>{try{let c=a(b);if(c instanceof Promise)return c;return{then:a=>d(a)(c),catch(a){return this}}}catch(a){return{then(a){return this},catch:b=>d(b)(a)}}},e=(a,b)=>(c,e,f)=>{let g,h={storage:function(a){let b;try{b=a()}catch(a){return}return{getItem:a=>{var c;let d=a=>null===a?null:JSON.parse(a,void 0),e=null!=(c=b.getItem(a))?c:null;return e instanceof Promise?e.then(d):d(e)},setItem:(a,c)=>b.setItem(a,JSON.stringify(c,void 0)),removeItem:a=>b.removeItem(a)}}(()=>window.localStorage),partialize:a=>a,version:0,merge:(a,b)=>({...b,...a}),...b},i=!1,j=0,k=new Set,l=new Set,m=h.storage;if(!m)return a((...a)=>{console.warn(`[zustand persist middleware] Unable to update item '${h.name}', the given storage is currently unavailable.`),c(...a)},e,f);let n=()=>{let a=h.partialize({...e()});return m.setItem(h.name,{state:a,version:h.version})},o=f.setState;f.setState=(a,b)=>(o(a,b),n());let p=a((...a)=>(c(...a),n()),e,f);f.getInitialState=()=>p;let q=()=>{var a,b;if(!m)return;let f=++j;i=!1,k.forEach(a=>{var b;return a(null!=(b=e())?b:p)});let o=(null==(b=h.onRehydrateStorage)?void 0:b.call(h,null!=(a=e())?a:p))||void 0;return d(m.getItem.bind(m))(h.name).then(a=>{if(a)if("number"!=typeof a.version||a.version===h.version)return[!1,a.state];else{if(h.migrate){let b=h.migrate(a.state,a.version);return b instanceof Promise?b.then(a=>[!0,a]):[!0,b]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}return[!1,void 0]}).then(a=>{var b;if(f!==j)return;let[d,i]=a;if(c(g=h.merge(i,null!=(b=e())?b:p),!0),d)return n()}).then(()=>{f===j&&(null==o||o(e(),void 0),g=e(),i=!0,l.forEach(a=>a(g)))}).catch(a=>{f===j&&(null==o||o(void 0,a))})};return f.persist={setOptions:a=>{h={...h,...a},a.storage&&(m=a.storage)},clearStorage:()=>{++j,null==m||m.removeItem(h.name)},getOptions:()=>h,rehydrate:()=>q(),hasHydrated:()=>i,onHydrate:a=>(k.add(a),()=>{k.delete(a)}),onFinishHydration:a=>(l.add(a),()=>{l.delete(a)})},h.skipHydration||q(),g||p}},3225:a=>{a.exports={style:{fontFamily:"'Inter', 'Inter Fallback'",fontStyle:"normal"},className:"__className_f367f3",variable:"__variable_f367f3"}},16764:(a,b,c)=>{let{createProxy:d}=c(78830);a.exports=d("/Users/xuliang/Documents/project/9router/node_modules/@next/third-parties/dist/ThirdPartyScriptEmbed.js")},19099:(a,b,c)=>{"use strict";var d=c(54839);c.o(d,"notFound")&&c.d(b,{notFound:function(){return d.notFound}}),c.o(d,"useParams")&&c.d(b,{useParams:function(){return d.useParams}}),c.o(d,"usePathname")&&c.d(b,{usePathname:function(){return d.usePathname}}),c.o(d,"useRouter")&&c.d(b,{useRouter:function(){return d.useRouter}}),c.o(d,"useSearchParams")&&c.d(b,{useSearchParams:function(){return d.useSearchParams}})},19148:function(a,b,c){"use strict";var d=this&&this.__rest||function(a,b){var c={};for(var d in a)Object.prototype.hasOwnProperty.call(a,d)&&0>b.indexOf(d)&&(c[d]=a[d]);if(null!=a&&"function"==typeof Object.getOwnPropertySymbols)for(var e=0,d=Object.getOwnPropertySymbols(a);e<d.length;e++)0>b.indexOf(d[e])&&Object.prototype.propertyIsEnumerable.call(a,d[e])&&(c[d[e]]=a[d[e]]);return c},e=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.GoogleAnalytics=void 0;let f=e(c(96780)),g=c(81052);b.GoogleAnalytics=a=>{var b=d(a,[]);return(0,g.formatData)(f.default,b)}},20349:(a,b,c)=>{let{createProxy:d}=c(78830);a.exports=d("/Users/xuliang/Documents/project/9router/node_modules/@next/third-parties/dist/google/ga.js")},28559:a=>{"use strict";a.exports=JSON.parse('{"id":"youtube-embed","description":"Embed a YouTube embed on your webpage.","website":"https://github.com/paulirish/lite-youtube-embed","html":{"element":"lite-youtube","attributes":{"videoid":null,"playlabel":null}},"stylesheets":["https://cdn.jsdelivr.net/gh/paulirish/lite-youtube-embed@master/src/lite-yt-embed.css"],"scripts":[{"url":"https://cdn.jsdelivr.net/gh/paulirish/lite-youtube-embed@master/src/lite-yt-embed.js","strategy":"idle","location":"head","action":"append"}]}')},31417:(a,b,c)=>{"use strict";c.d(b,{v:()=>g});var d=c(67484);let e=a=>{let b,c=new Set,d=(a,d)=>{let e="function"==typeof a?a(b):a;if(!Object.is(e,b)){let a=b;b=(null!=d?d:"object"!=typeof e||null===e)?e:Object.assign({},b,e),c.forEach(c=>c(b,a))}},e=()=>b,f={setState:d,getState:e,getInitialState:()=>g,subscribe:a=>(c.add(a),()=>c.delete(a))},g=b=a(d,e,f);return f},f=a=>{let b=a?e(a):e,c=a=>(function(a,b=a=>a){let c=d.useSyncExternalStore(a.subscribe,d.useCallback(()=>b(a.getState()),[a,b]),d.useCallback(()=>b(a.getInitialState()),[a,b]));return d.useDebugValue(c),c})(b,a);return Object.assign(c,b),c},g=a=>a?f(a):f},31935:(a,b,c)=>{let{createProxy:d}=c(78830);a.exports=d("/Users/xuliang/Documents/project/9router/node_modules/@next/third-parties/dist/google/gtm.js")},33071:(a,b,c)=>{let{createProxy:d}=c(78830);a.exports=d("/Users/xuliang/Documents/project/9router/node_modules/next/dist/client/script.js")},35687:function(a,b,c){"use strict";var d=this&&this.__rest||function(a,b){var c={};for(var d in a)Object.prototype.hasOwnProperty.call(a,d)&&0>b.indexOf(d)&&(c[d]=a[d]);if(null!=a&&"function"==typeof Object.getOwnPropertySymbols)for(var e=0,d=Object.getOwnPropertySymbols(a);e<d.length;e++)0>b.indexOf(d[e])&&Object.prototype.propertyIsEnumerable.call(a,d[e])&&(c[d[e]]=a[d[e]]);return c},e=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.GoogleMapsEmbed=void 0;let f=e(c(39235)),g=c(81052);b.GoogleMapsEmbed=a=>{var b=d(a,[]);return(0,g.formatData)(f.default,b)}},36497:()=>{},39235:a=>{"use strict";a.exports=JSON.parse('{"id":"google-maps-embed","description":"Embed a Google Maps embed on your webpage","website":"https://developers.google.com/maps/documentation/embed/get-started","html":{"element":"iframe","attributes":{"loading":"lazy","src":{"url":"https://www.google.com/maps/embed/v1/place","slugParam":"mode","params":["key","q","center","zoom","maptype","language","region"]},"referrerpolicy":"no-referrer-when-downgrade","frameborder":"0","style":"border:0","allowfullscreen":true,"width":null,"height":null}}}')},40862:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var c={cancelIdleCallback:function(){return f},requestIdleCallback:function(){return e}};for(var d in c)Object.defineProperty(b,d,{enumerable:!0,get:c[d]});let e="u">typeof self&&self.requestIdleCallback&&self.requestIdleCallback.bind(window)||function(a){let b=Date.now();return self.setTimeout(function(){a({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-b))}})},1)},f="u">typeof self&&self.cancelIdleCallback&&self.cancelIdleCallback.bind(window)||function(a){return clearTimeout(a)};("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},47300:function(a,b,c){"use strict";var d=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.default=function(a){let{apiKey:b,...c}=a,d={...c,key:b},{html:h}=(0,f.GoogleMapsEmbed)(d);return(0,e.jsx)(g.default,{height:d.height||null,width:d.width||null,html:h,dataNtpc:"GoogleMapsEmbed"})};let e=c(5735),f=c(93166),g=d(c(16764))},54718:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>e.a});var d=c(90929),e=c.n(d),f={};for(let a in d)"default"!==a&&(f[a]=()=>d[a]);c.d(b,f)},55091:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return f}});let d=c(5735),e=c(22675);function f(){return(0,d.jsx)(e.HTTPAccessErrorFallback,{status:404,message:"This page could not be found."})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},59537:function(a,b,c){"use strict";var d=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.sendGAEvent=b.GoogleAnalytics=b.sendGTMEvent=b.GoogleTagManager=b.YouTubeEmbed=b.GoogleMapsEmbed=void 0;var e=c(47300);Object.defineProperty(b,"GoogleMapsEmbed",{enumerable:!0,get:function(){return d(e).default}});var f=c(73992);Object.defineProperty(b,"YouTubeEmbed",{enumerable:!0,get:function(){return d(f).default}});var g=c(31935);Object.defineProperty(b,"GoogleTagManager",{enumerable:!0,get:function(){return g.GoogleTagManager}}),Object.defineProperty(b,"sendGTMEvent",{enumerable:!0,get:function(){return g.sendGTMEvent}});var h=c(20349);Object.defineProperty(b,"GoogleAnalytics",{enumerable:!0,get:function(){return h.GoogleAnalytics}}),Object.defineProperty(b,"sendGAEvent",{enumerable:!0,get:function(){return h.sendGAEvent}})},60002:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"setAttributesFromProps",{enumerable:!0,get:function(){return f}});let c={acceptCharset:"accept-charset",className:"class",htmlFor:"for",httpEquiv:"http-equiv",noModule:"noModule"},d=["onLoad","onReady","dangerouslySetInnerHTML","children","onError","strategy","stylesheets"];function e(a){return["async","defer","noModule"].includes(a)}function f(a,b){for(let[f,g]of Object.entries(b)){if(!b.hasOwnProperty(f)||d.includes(f)||void 0===g)continue;let h=c[f]||f.toLowerCase();"SCRIPT"===a.tagName&&e(h)?a[h]=!!g:a.setAttribute(h,String(g)),(!1===g||"SCRIPT"===a.tagName&&e(h)&&(!g||"false"===g))&&(a.setAttribute(h,""),a.removeAttribute(h))}}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},63419:function(a,b,c){"use strict";var d=this&&this.__rest||function(a,b){var c={};for(var d in a)Object.prototype.hasOwnProperty.call(a,d)&&0>b.indexOf(d)&&(c[d]=a[d]);if(null!=a&&"function"==typeof Object.getOwnPropertySymbols)for(var e=0,d=Object.getOwnPropertySymbols(a);e<d.length;e++)0>b.indexOf(d[e])&&Object.prototype.propertyIsEnumerable.call(a,d[e])&&(c[d[e]]=a[d[e]]);return c},e=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.YouTubeEmbed=void 0;let f=e(c(28559)),g=c(81052);b.YouTubeEmbed=a=>{var b=d(a,[]);return(0,g.formatData)(f.default,b)}},69566:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var c={ESCAPE_REGEX:function(){return f},htmlEscapeAttributeString:function(){return j},htmlEscapeJsonString:function(){return i}};for(var d in c)Object.defineProperty(b,d,{enumerable:!0,get:c[d]});let e={"&":"\\u0026",">":"\\u003e","<":"\\u003c","\u2028":"\\u2028","\u2029":"\\u2029"},f=/[&><\u2028\u2029]/g,g={"&":"&amp;",'"':"&quot;","'":"&#39;","<":"&lt;",">":"&gt;"},h=/[&"'<>]/g;function i(a){return a.replace(f,a=>e[a])}function j(a){return a.replace(h,a=>g[a])}},73992:function(a,b,c){"use strict";var d=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.default=function(a){let{html:b,scripts:c,stylesheets:d}=(0,g.YouTubeEmbed)(a);return(0,e.jsx)(h.default,{height:a.height||null,width:a.width||null,html:b,dataNtpc:"YouTubeEmbed",children:null==c?void 0:c.map(a=>(0,e.jsx)(f.default,{src:a.url,strategy:i[a.strategy],stylesheets:d},a.url))})};let e=c(5735),f=d(c(93968)),g=c(93166),h=d(c(16764)),i={server:"beforeInteractive",client:"afterInteractive",idle:"lazyOnload",worker:"worker"}},74281:(a,b,c)=>{"use strict";var d;Object.defineProperty(b,"__esModule",{value:!0}),b.sendGTMEvent=void 0,b.GoogleTagManager=function(a){let{gtmId:b,gtmScriptUrl:c,dataLayerName:d="dataLayer",auth:i,preview:j,dataLayer:k,nonce:l}=a;h=d;let m=new URL(c||"https://www.googletagmanager.com/gtm.js");return b&&m.searchParams.set("id",b),"dataLayer"!==d&&m.searchParams.set("l",d),i&&m.searchParams.set("gtm_auth",i),j&&(m.searchParams.set("gtm_preview",j),m.searchParams.set("gtm_cookies_win","x")),(0,f.useEffect)(()=>{performance.mark("mark_feature_usage",{detail:{feature:"next-third-parties-gtm"}})},[]),(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(g.default,{id:"_next-gtm-init",dangerouslySetInnerHTML:{__html:`
1
+ exports.id=3459,exports.ids=[3459],exports.modules={300:(a,b,c)=>{"use strict";c.d(b,{Zr:()=>e});let d=a=>b=>{try{let c=a(b);if(c instanceof Promise)return c;return{then:a=>d(a)(c),catch(a){return this}}}catch(a){return{then(a){return this},catch:b=>d(b)(a)}}},e=(a,b)=>(c,e,f)=>{let g,h={storage:function(a){let b;try{b=a()}catch(a){return}return{getItem:a=>{var c;let d=a=>null===a?null:JSON.parse(a,void 0),e=null!=(c=b.getItem(a))?c:null;return e instanceof Promise?e.then(d):d(e)},setItem:(a,c)=>b.setItem(a,JSON.stringify(c,void 0)),removeItem:a=>b.removeItem(a)}}(()=>window.localStorage),partialize:a=>a,version:0,merge:(a,b)=>({...b,...a}),...b},i=!1,j=0,k=new Set,l=new Set,m=h.storage;if(!m)return a((...a)=>{console.warn(`[zustand persist middleware] Unable to update item '${h.name}', the given storage is currently unavailable.`),c(...a)},e,f);let n=()=>{let a=h.partialize({...e()});return m.setItem(h.name,{state:a,version:h.version})},o=f.setState;f.setState=(a,b)=>(o(a,b),n());let p=a((...a)=>(c(...a),n()),e,f);f.getInitialState=()=>p;let q=()=>{var a,b;if(!m)return;let f=++j;i=!1,k.forEach(a=>{var b;return a(null!=(b=e())?b:p)});let o=(null==(b=h.onRehydrateStorage)?void 0:b.call(h,null!=(a=e())?a:p))||void 0;return d(m.getItem.bind(m))(h.name).then(a=>{if(a)if("number"!=typeof a.version||a.version===h.version)return[!1,a.state];else{if(h.migrate){let b=h.migrate(a.state,a.version);return b instanceof Promise?b.then(a=>[!0,a]):[!0,b]}console.error("State loaded from storage couldn't be migrated since no migrate function was provided")}return[!1,void 0]}).then(a=>{var b;if(f!==j)return;let[d,i]=a;if(c(g=h.merge(i,null!=(b=e())?b:p),!0),d)return n()}).then(()=>{f===j&&(null==o||o(e(),void 0),g=e(),i=!0,l.forEach(a=>a(g)))}).catch(a=>{f===j&&(null==o||o(void 0,a))})};return f.persist={setOptions:a=>{h={...h,...a},a.storage&&(m=a.storage)},clearStorage:()=>{++j,null==m||m.removeItem(h.name)},getOptions:()=>h,rehydrate:()=>q(),hasHydrated:()=>i,onHydrate:a=>(k.add(a),()=>{k.delete(a)}),onFinishHydration:a=>(l.add(a),()=>{l.delete(a)})},h.skipHydration||q(),g||p}},3225:a=>{a.exports={style:{fontFamily:"'Inter', 'Inter Fallback'",fontStyle:"normal"},className:"__className_f367f3",variable:"__variable_f367f3"}},16764:(a,b,c)=>{let{createProxy:d}=c(78830);a.exports=d("/home/runner/work/9router/9router/node_modules/@next/third-parties/dist/ThirdPartyScriptEmbed.js")},19099:(a,b,c)=>{"use strict";var d=c(54839);c.o(d,"notFound")&&c.d(b,{notFound:function(){return d.notFound}}),c.o(d,"useParams")&&c.d(b,{useParams:function(){return d.useParams}}),c.o(d,"usePathname")&&c.d(b,{usePathname:function(){return d.usePathname}}),c.o(d,"useRouter")&&c.d(b,{useRouter:function(){return d.useRouter}}),c.o(d,"useSearchParams")&&c.d(b,{useSearchParams:function(){return d.useSearchParams}})},19148:function(a,b,c){"use strict";var d=this&&this.__rest||function(a,b){var c={};for(var d in a)Object.prototype.hasOwnProperty.call(a,d)&&0>b.indexOf(d)&&(c[d]=a[d]);if(null!=a&&"function"==typeof Object.getOwnPropertySymbols)for(var e=0,d=Object.getOwnPropertySymbols(a);e<d.length;e++)0>b.indexOf(d[e])&&Object.prototype.propertyIsEnumerable.call(a,d[e])&&(c[d[e]]=a[d[e]]);return c},e=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.GoogleAnalytics=void 0;let f=e(c(96780)),g=c(81052);b.GoogleAnalytics=a=>{var b=d(a,[]);return(0,g.formatData)(f.default,b)}},20349:(a,b,c)=>{let{createProxy:d}=c(78830);a.exports=d("/home/runner/work/9router/9router/node_modules/@next/third-parties/dist/google/ga.js")},28559:a=>{"use strict";a.exports=JSON.parse('{"id":"youtube-embed","description":"Embed a YouTube embed on your webpage.","website":"https://github.com/paulirish/lite-youtube-embed","html":{"element":"lite-youtube","attributes":{"videoid":null,"playlabel":null}},"stylesheets":["https://cdn.jsdelivr.net/gh/paulirish/lite-youtube-embed@master/src/lite-yt-embed.css"],"scripts":[{"url":"https://cdn.jsdelivr.net/gh/paulirish/lite-youtube-embed@master/src/lite-yt-embed.js","strategy":"idle","location":"head","action":"append"}]}')},31417:(a,b,c)=>{"use strict";c.d(b,{v:()=>g});var d=c(67484);let e=a=>{let b,c=new Set,d=(a,d)=>{let e="function"==typeof a?a(b):a;if(!Object.is(e,b)){let a=b;b=(null!=d?d:"object"!=typeof e||null===e)?e:Object.assign({},b,e),c.forEach(c=>c(b,a))}},e=()=>b,f={setState:d,getState:e,getInitialState:()=>g,subscribe:a=>(c.add(a),()=>c.delete(a))},g=b=a(d,e,f);return f},f=a=>{let b=a?e(a):e,c=a=>(function(a,b=a=>a){let c=d.useSyncExternalStore(a.subscribe,d.useCallback(()=>b(a.getState()),[a,b]),d.useCallback(()=>b(a.getInitialState()),[a,b]));return d.useDebugValue(c),c})(b,a);return Object.assign(c,b),c},g=a=>a?f(a):f},31935:(a,b,c)=>{let{createProxy:d}=c(78830);a.exports=d("/home/runner/work/9router/9router/node_modules/@next/third-parties/dist/google/gtm.js")},33071:(a,b,c)=>{let{createProxy:d}=c(78830);a.exports=d("/home/runner/work/9router/9router/node_modules/next/dist/client/script.js")},35687:function(a,b,c){"use strict";var d=this&&this.__rest||function(a,b){var c={};for(var d in a)Object.prototype.hasOwnProperty.call(a,d)&&0>b.indexOf(d)&&(c[d]=a[d]);if(null!=a&&"function"==typeof Object.getOwnPropertySymbols)for(var e=0,d=Object.getOwnPropertySymbols(a);e<d.length;e++)0>b.indexOf(d[e])&&Object.prototype.propertyIsEnumerable.call(a,d[e])&&(c[d[e]]=a[d[e]]);return c},e=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.GoogleMapsEmbed=void 0;let f=e(c(39235)),g=c(81052);b.GoogleMapsEmbed=a=>{var b=d(a,[]);return(0,g.formatData)(f.default,b)}},36497:()=>{},39235:a=>{"use strict";a.exports=JSON.parse('{"id":"google-maps-embed","description":"Embed a Google Maps embed on your webpage","website":"https://developers.google.com/maps/documentation/embed/get-started","html":{"element":"iframe","attributes":{"loading":"lazy","src":{"url":"https://www.google.com/maps/embed/v1/place","slugParam":"mode","params":["key","q","center","zoom","maptype","language","region"]},"referrerpolicy":"no-referrer-when-downgrade","frameborder":"0","style":"border:0","allowfullscreen":true,"width":null,"height":null}}}')},40862:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var c={cancelIdleCallback:function(){return f},requestIdleCallback:function(){return e}};for(var d in c)Object.defineProperty(b,d,{enumerable:!0,get:c[d]});let e="u">typeof self&&self.requestIdleCallback&&self.requestIdleCallback.bind(window)||function(a){let b=Date.now();return self.setTimeout(function(){a({didTimeout:!1,timeRemaining:function(){return Math.max(0,50-(Date.now()-b))}})},1)},f="u">typeof self&&self.cancelIdleCallback&&self.cancelIdleCallback.bind(window)||function(a){return clearTimeout(a)};("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},47300:function(a,b,c){"use strict";var d=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.default=function(a){let{apiKey:b,...c}=a,d={...c,key:b},{html:h}=(0,f.GoogleMapsEmbed)(d);return(0,e.jsx)(g.default,{height:d.height||null,width:d.width||null,html:h,dataNtpc:"GoogleMapsEmbed"})};let e=c(5735),f=c(93166),g=d(c(16764))},54718:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>e.a});var d=c(90929),e=c.n(d),f={};for(let a in d)"default"!==a&&(f[a]=()=>d[a]);c.d(b,f)},55091:(a,b,c)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"default",{enumerable:!0,get:function(){return f}});let d=c(5735),e=c(22675);function f(){return(0,d.jsx)(e.HTTPAccessErrorFallback,{status:404,message:"This page could not be found."})}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},59537:function(a,b,c){"use strict";var d=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.sendGAEvent=b.GoogleAnalytics=b.sendGTMEvent=b.GoogleTagManager=b.YouTubeEmbed=b.GoogleMapsEmbed=void 0;var e=c(47300);Object.defineProperty(b,"GoogleMapsEmbed",{enumerable:!0,get:function(){return d(e).default}});var f=c(73992);Object.defineProperty(b,"YouTubeEmbed",{enumerable:!0,get:function(){return d(f).default}});var g=c(31935);Object.defineProperty(b,"GoogleTagManager",{enumerable:!0,get:function(){return g.GoogleTagManager}}),Object.defineProperty(b,"sendGTMEvent",{enumerable:!0,get:function(){return g.sendGTMEvent}});var h=c(20349);Object.defineProperty(b,"GoogleAnalytics",{enumerable:!0,get:function(){return h.GoogleAnalytics}}),Object.defineProperty(b,"sendGAEvent",{enumerable:!0,get:function(){return h.sendGAEvent}})},60002:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0}),Object.defineProperty(b,"setAttributesFromProps",{enumerable:!0,get:function(){return f}});let c={acceptCharset:"accept-charset",className:"class",htmlFor:"for",httpEquiv:"http-equiv",noModule:"noModule"},d=["onLoad","onReady","dangerouslySetInnerHTML","children","onError","strategy","stylesheets"];function e(a){return["async","defer","noModule"].includes(a)}function f(a,b){for(let[f,g]of Object.entries(b)){if(!b.hasOwnProperty(f)||d.includes(f)||void 0===g)continue;let h=c[f]||f.toLowerCase();"SCRIPT"===a.tagName&&e(h)?a[h]=!!g:a.setAttribute(h,String(g)),(!1===g||"SCRIPT"===a.tagName&&e(h)&&(!g||"false"===g))&&(a.setAttribute(h,""),a.removeAttribute(h))}}("function"==typeof b.default||"object"==typeof b.default&&null!==b.default)&&void 0===b.default.__esModule&&(Object.defineProperty(b.default,"__esModule",{value:!0}),Object.assign(b.default,b),a.exports=b.default)},63419:function(a,b,c){"use strict";var d=this&&this.__rest||function(a,b){var c={};for(var d in a)Object.prototype.hasOwnProperty.call(a,d)&&0>b.indexOf(d)&&(c[d]=a[d]);if(null!=a&&"function"==typeof Object.getOwnPropertySymbols)for(var e=0,d=Object.getOwnPropertySymbols(a);e<d.length;e++)0>b.indexOf(d[e])&&Object.prototype.propertyIsEnumerable.call(a,d[e])&&(c[d[e]]=a[d[e]]);return c},e=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.YouTubeEmbed=void 0;let f=e(c(28559)),g=c(81052);b.YouTubeEmbed=a=>{var b=d(a,[]);return(0,g.formatData)(f.default,b)}},69566:(a,b)=>{"use strict";Object.defineProperty(b,"__esModule",{value:!0});var c={ESCAPE_REGEX:function(){return f},htmlEscapeAttributeString:function(){return j},htmlEscapeJsonString:function(){return i}};for(var d in c)Object.defineProperty(b,d,{enumerable:!0,get:c[d]});let e={"&":"\\u0026",">":"\\u003e","<":"\\u003c","\u2028":"\\u2028","\u2029":"\\u2029"},f=/[&><\u2028\u2029]/g,g={"&":"&amp;",'"':"&quot;","'":"&#39;","<":"&lt;",">":"&gt;"},h=/[&"'<>]/g;function i(a){return a.replace(f,a=>e[a])}function j(a){return a.replace(h,a=>g[a])}},73992:function(a,b,c){"use strict";var d=this&&this.__importDefault||function(a){return a&&a.__esModule?a:{default:a}};Object.defineProperty(b,"__esModule",{value:!0}),b.default=function(a){let{html:b,scripts:c,stylesheets:d}=(0,g.YouTubeEmbed)(a);return(0,e.jsx)(h.default,{height:a.height||null,width:a.width||null,html:b,dataNtpc:"YouTubeEmbed",children:null==c?void 0:c.map(a=>(0,e.jsx)(f.default,{src:a.url,strategy:i[a.strategy],stylesheets:d},a.url))})};let e=c(5735),f=d(c(93968)),g=c(93166),h=d(c(16764)),i={server:"beforeInteractive",client:"afterInteractive",idle:"lazyOnload",worker:"worker"}},74281:(a,b,c)=>{"use strict";var d;Object.defineProperty(b,"__esModule",{value:!0}),b.sendGTMEvent=void 0,b.GoogleTagManager=function(a){let{gtmId:b,gtmScriptUrl:c,dataLayerName:d="dataLayer",auth:i,preview:j,dataLayer:k,nonce:l}=a;h=d;let m=new URL(c||"https://www.googletagmanager.com/gtm.js");return b&&m.searchParams.set("id",b),"dataLayer"!==d&&m.searchParams.set("l",d),i&&m.searchParams.set("gtm_auth",i),j&&(m.searchParams.set("gtm_preview",j),m.searchParams.set("gtm_cookies_win","x")),(0,f.useEffect)(()=>{performance.mark("mark_feature_usage",{detail:{feature:"next-third-parties-gtm"}})},[]),(0,e.jsxs)(e.Fragment,{children:[(0,e.jsx)(g.default,{id:"_next-gtm-init",dangerouslySetInnerHTML:{__html:`
2
2
  (function(w,l){
3
3
  w[l]=w[l]||[];
4
4
  w[l].push({'gtm.start': new Date().getTime(),event:'gtm.js'});
@@ -1 +1 @@
1
- "use strict";exports.id=3943,exports.ids=[3943],exports.modules={8521:(a,b,c)=>{c.d(b,{oD:()=>C,Og:()=>E,jT:()=>D,Sc:()=>F,Wm:()=>r,jR:()=>w,I9:()=>q,Ql:()=>t,$B:()=>K,pb:()=>H,qZ:()=>L});var d=c(35024),e=c(75924),f=c(39609);let g=new Map;async function h(a,b,c,d){if(!b)return c();let e=`${a}:${b}`,f=g.get(e);if(f){if(f.promise)return d?.info?.("TOKEN_REFRESH",`Reusing in-flight refresh for ${a}`),f.promise;if(f.expiresAt>Date.now())return d?.info?.("TOKEN_REFRESH",`Reusing recent refresh result for ${a}`),f.result;g.delete(e)}let h=(async()=>{try{let a=await c();return g.set(e,{result:a,expiresAt:Date.now()+1e4}),a}catch(a){throw g.delete(e),a}})();return g.set(e,{promise:h}),h}var i=c(18080);let j=null;async function k(a,b){return a?h("xai",a,async()=>{try{j||(j=new(await Promise.all([c.e(5615),c.e(4730)]).then(c.bind(c,62349))).XaiService);let b=await j.refreshAccessToken(a);return{accessToken:b.access_token,refreshToken:b.refresh_token||a,expiresIn:b.expires_in,idToken:b.id_token}}catch(c){b?.warn?.("TOKEN_REFRESH",`xai refresh failed: ${c?.message||c}`);let a=String(c?.message||"");if(a.includes("invalid_grant")||a.includes("invalid_request"))return{error:"invalid_grant"};return null}},b):null}let l={claude:{bodyFormat:"json",includeClientSecret:!1,url:()=>e.NA.anthropic.token,dedupKey:"claude"},iflow:{url:()=>e.NA.iflow.token,dedupKey:"iflow",extraHeaders:(a,b)=>({Authorization:`Basic ${btoa(`${b.clientId}:${b.clientSecret}`)}`})},github:{url:()=>e.NA.github.token,dedupKey:"github",includeClientSecret:a=>!!a?.clientSecret},kimi:{dedupKey:"kimi",extraHeaders:a=>(0,e.buildKimiHeaders)(a?.providerSpecificData?.deviceId)}};async function m(a,b,c,e){let f=d.xq[a],g=l[a]||{},i=function(a,b,c){if(c?.url)try{return c.url()}catch{}return b?.refreshUrl||d.sr[a]?.tokenUrl||null}(a,f,g);return f&&i?b?h(g.dedupKey||a,b,async()=>{try{let d,h,j,{format:k,body:l}=(d=g?.bodyFormat==="json"?"json":"form",h=g?.includeClientSecret===void 0||("function"==typeof g.includeClientSecret?g.includeClientSecret(f):g.includeClientSecret),j={grant_type:"refresh_token",refresh_token:b,client_id:f.clientId},(h&&f.clientSecret&&(j.client_secret=f.clientSecret),"json"===d)?{format:"json",body:JSON.stringify(j)}:{format:"form",body:new URLSearchParams(j)}),m={"Content-Type":"json"===k?"application/json":"application/x-www-form-urlencoded",Accept:"application/json",...g.extraHeaders&&g.extraHeaders(c,f)||{}},n=await fetch(i,{method:"POST",headers:m,body:l});if(!n.ok){let b=await n.text();return e?.error?.("TOKEN_REFRESH",`Failed to refresh token for ${a}`,{status:n.status,error:b}),null}let o=await n.json();return e?.info?.("TOKEN_REFRESH",`Successfully refreshed token for ${a}`,{hasNewAccessToken:!!o.access_token,hasNewRefreshToken:!!o.refresh_token,expiresIn:o.expires_in}),{accessToken:o.access_token,refreshToken:o.refresh_token||b,expiresIn:o.expires_in,...g.parse&&g.parse(o)||{}}}catch(b){return e?.error?.("TOKEN_REFRESH",`Error refreshing token for ${a}`,{error:b.message}),null}},e):(e?.warn?.("TOKEN_REFRESH",`No refresh token available for provider: ${a}`),null):(e?.warn?.("TOKEN_REFRESH",`No refresh URL configured for provider: ${a}`),null)}async function n(a,b,c){return m("kimi",a,b,c)}async function o(a,b){return a?h("cline",a,async()=>{try{let c=await fetch(d.xq.cline?.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:a,grantType:"refresh_token",clientType:"extension"})});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Cline token",{status:c.status,error:a}),null}let e=await c.json(),f=e?.data||e;if(!f?.accessToken)return null;let g=f.expiresAt?Math.max(1,Math.floor((new Date(f.expiresAt).getTime()-Date.now())/1e3)):f.expiresIn||f.expires_in||3600;return{accessToken:f.accessToken,refreshToken:f.refreshToken||a,expiresIn:g}}catch(a){return b?.error?.("TOKEN_REFRESH",`Error refreshing Cline token: ${a.message}`),null}},b):null}async function p(a,b){return m("claude",a,{},b)}async function q(a,b,c,d){return a?h(`google:${b}`,a,async()=>{try{let f=await fetch(e.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:b,client_secret:c})});if(!f.ok){let a=await f.text();return d?.error?.("TOKEN_REFRESH","Failed to refresh Google token",{status:f.status,error:a}),null}let g=await f.json();return d?.info?.("TOKEN_REFRESH","Successfully refreshed Google token",{hasNewAccessToken:!!g.access_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}catch(a){return d?.error?.("TOKEN_REFRESH",`Network error refreshing Google token: ${a.message}`),null}},d):null}async function r(a,b){return a?h("codex",a,async()=>{try{let c=await fetch(e.NA.openai.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({client_id:d.xq.codex.clientId,grant_type:"refresh_token",refresh_token:a})});if(!c.ok){let a=await c.text(),d=function(a="",b=0){let c=null;try{c=a?JSON.parse(a):null}catch{c=null}let d=c?.error?.code||c?.error||c?.error_code||"",e=c?.error_description||c?.message||a||"",f=`${d} ${e}`.toLowerCase();return{status:b,code:d,description:e,permanent:["refresh_token_expired","refresh_token_reused","refresh_token_invalidated","invalid_grant"].some(a=>f.includes(a))}}(a,c.status);if(d.permanent)return b?.error?.("TOKEN_REFRESH","Codex refresh token already used or invalid. Re-auth required.",{status:c.status,code:d.code}),{error:"unrecoverable_refresh_error",code:d.code};return b?.error?.("TOKEN_REFRESH","Failed to refresh Codex token",{status:c.status,error:a,code:d.code,permanent:d.permanent}),null}let f=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Codex token",{hasNewAccessToken:!!f.access_token,hasNewRefreshToken:!!f.refresh_token,hasIdToken:!!f.id_token,expiresIn:f.expires_in}),{accessToken:f.access_token,refreshToken:f.refresh_token||a,idToken:f.id_token,expiresIn:f.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Codex token: ${a.message}`),null}},b):null}async function s(a,b,d){if(a?.profileArn)return{};let e=d?.trim?.()||null;if(!e){let{fetchKiroProfileArn:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(3225),c.e(6922),c.e(1329),c.e(8499),c.e(318),c.e(8895),c.e(4049),c.e(3535)]).then(c.bind(c,74177));e=await a(b)}return e?{providerSpecificData:{profileArn:e}}:{}}async function t(a,b,c,e=null){return a?h("kiro",a,async()=>{let g=b?.authMethod,h=b?.clientId,j=b?.clientSecret,k=b?.region;if("external_idp"===g){let d;try{d=(0,i.uo)(a,b)}catch(a){return c?.warn?.("TOKEN_REFRESH",`Invalid Kiro external_idp refresh config: ${a.message}`),null}let g=await (0,f.proxyAwareFetch)(d.tokenEndpoint,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:d.body},e);if(!g.ok){let a=await g.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro external_idp token",{status:g.status,error:a}),null}let h=await g.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro external_idp token",{hasNewAccessToken:!!h.access_token,hasNewRefreshToken:!!h.refresh_token,expiresIn:h.expires_in}),{accessToken:h.access_token,refreshToken:h.refresh_token||a,expiresIn:h.expires_in,providerSpecificData:d.providerSpecificData}}if(h&&j){let d="idc"===g&&k?`https://oidc.${k}.amazonaws.com/token`:"https://oidc.us-east-1.amazonaws.com/token",i=await (0,f.proxyAwareFetch)(d,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:h,clientSecret:j,refreshToken:a,grantType:"refresh_token"})},e);if(!i.ok){let a=await i.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro AWS token",{status:i.status,error:a}),null}let l=await i.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro AWS token",{hasNewAccessToken:!!l.accessToken,expiresIn:l.expiresIn}),{accessToken:l.accessToken,refreshToken:l.refreshToken||a,expiresIn:l.expiresIn,...await s(b,l.accessToken,l.profileArn)}}let l=await (0,f.proxyAwareFetch)(d.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a})},e);if(!l.ok){let a=await l.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro social token",{status:l.status,error:a}),null}let m=await l.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro social token",{hasNewAccessToken:!!m.accessToken,expiresIn:m.expiresIn}),{accessToken:m.accessToken,refreshToken:m.refreshToken||a,expiresIn:m.expiresIn,...await s(b,m.accessToken,m.profileArn)}},c):null}async function u(a,b){return m("iflow",a,{},b)}async function v(a,b){return m("github",a,{},b)}async function w(a,b){return a?h("copilot",a,async()=>{try{let c=await fetch(d.sr.github?.copilotTokenUrl,{headers:{Authorization:`token ${a}`,"User-Agent":e.x0.USER_AGENT,"Editor-Version":`vscode/${e.x0.VSCODE_VERSION}`,"Editor-Plugin-Version":`copilot-chat/${e.x0.COPILOT_CHAT_VERSION}`,Accept:"application/json","x-github-api-version":e.x0.API_VERSION}});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Copilot token",{status:c.status,error:a}),null}let f=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Copilot token",{hasToken:!!f.token,expiresAt:f.expires_at}),{token:f.token,expiresAt:f.expires_at}}catch(a){return b?.error?.("TOKEN_REFRESH","Error refreshing Copilot token",{error:a.message}),null}},b):null}async function x(a,b){return a?h("codebuddy-cn",a,async()=>{let c=d.sr["codebuddy-cn"]||{},e=await fetch(c.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":c.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-Refresh-Token":a,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"});if(!e.ok){let a=await e.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh CodeBuddy token",{status:e.status,error:a}),null}let f=await e.json();return 0===f.code&&f.data?.accessToken?(b?.info?.("TOKEN_REFRESH","Successfully refreshed CodeBuddy token",{hasNewAccessToken:!!f.data.accessToken,hasNewRefreshToken:!!f.data.refreshToken,expiresIn:f.data.expiresIn}),{accessToken:f.data.accessToken,refreshToken:f.data.refreshToken||a,expiresIn:f.data.expiresIn}):(b?.error?.("TOKEN_REFRESH","CodeBuddy token refresh returned no token",{code:f.code,msg:f.msg}),null)},b):null}async function y(a,b){return a?h("codebuddy-intl",a,async()=>{let c=d.sr["codebuddy-intl"]||{},e=await fetch(c.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":c.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"www.codebuddy.ai","X-Refresh-Token":a,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"});if(!e.ok){let a=await e.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh CodeBuddy intl token",{status:e.status,error:a}),null}let f=await e.json();return 0===f.code&&f.data?.accessToken?(b?.info?.("TOKEN_REFRESH","Successfully refreshed CodeBuddy intl token",{hasNewAccessToken:!!f.data.accessToken,hasNewRefreshToken:!!f.data.refreshToken,expiresIn:f.data.expiresIn}),{accessToken:f.data.accessToken,refreshToken:f.data.refreshToken||a,expiresIn:f.data.expiresIn}):(b?.error?.("TOKEN_REFRESH","CodeBuddy intl token refresh returned no token",{code:f.code,msg:f.msg}),null)},b):null}async function z(a,b,c,e="trae"){if(!a)return null;let f=d.sr[e]||{},g=f.exchangeTokenUrl||f.tokenUrl;return g?h(e,a,async()=>{try{let b,d=await fetch(g,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"Trae/1.0.0 antigravity-cockpit-tools"},body:JSON.stringify({ClientID:f.clientId||"ono9krqynydwx5",RefreshToken:a,ClientSecret:f.clientSecret||"-",UserID:""})});if(!d.ok){let a=await d.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Trae token",{status:d.status,error:a}),null}let e=await d.json(),h=e?.Result||e?.Data||e?.result||e,i=h?.AccessToken||h?.Token||h?.accessToken;if(!i)return c?.error?.("TOKEN_REFRESH","Trae refresh returned no AccessToken",{payload:e}),null;let j=h?.RefreshToken||h?.refreshToken||a,k=h?.ExpiresAt||h?.TokenExpireAt||h?.expiresAt;if("number"==typeof k){let a=k>1e12?Math.floor(k/1e3):k;b=Math.max(1,a-Math.floor(Date.now()/1e3))}else if("string"==typeof k){let a=new Date(k).getTime()-Date.now();b=a>0?Math.floor(a/1e3):void 0}return c?.info?.("TOKEN_REFRESH","Successfully refreshed Trae token",{hasNewAccessToken:!!i,hasNewRefreshToken:j!==a,expiresIn:b}),{accessToken:i,refreshToken:j,expiresIn:b}}catch(a){return c?.error?.("TOKEN_REFRESH",`Error refreshing Trae token: ${a.message}`),null}},c):(c?.warn?.("TOKEN_REFRESH","No Trae exchangeTokenUrl configured"),null)}async function A(a,b){return b?.info?.("TOKEN_REFRESH","windsurf: apiKey is long-lived (no refresh_token flow) — skipping"),null}var B=c(71547);let C=3e5;function D(a){return a&&"object"==typeof a&&("unrecoverable_refresh_error"===a.error||"refresh_token_reused"===a.error||"invalid_request"===a.error||"invalid_grant"===a.error)}function E(a){return e.Wu[a]?e.Wu[a]:"kimi-coding"===a&&e.Wu.kimi?e.Wu.kimi:C}function F(a){if("string"!=typeof a)return null;try{let b=JSON.parse(a);if("service_account"===b.type&&b.client_email&&b.private_key&&b.project_id)return b;return null}catch{return null}}let G=new Map;async function H(a,b){let d=a.client_email,f=G.get(d);if(f&&f.expiresAt-Date.now()>3e5)return{accessToken:f.token,expiresAt:f.expiresAt};try{let{SignJWT:f,importPKCS8:g}=await Promise.all([c.e(8292),c.e(1455)]).then(c.bind(c,71455));b?.debug?.("TOKEN_REFRESH",`Vertex minting token for ${a.client_email}`);let h=await g(a.private_key.replace(/\\n/g,"\n"),"RS256"),i=Math.floor(Date.now()/1e3),j=await new f({scope:"https://www.googleapis.com/auth/cloud-platform"}).setProtectedHeader({alg:"RS256"}).setIssuer(a.client_email).setAudience(e.NA.google.token).setIssuedAt(i).setExpirationTime(i+3600).sign(h),k=await fetch(e.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:j})});if(!k.ok){let a=await k.text();return b?.error?.("TOKEN_REFRESH",`Vertex token mint failed: ${a}`),null}let{access_token:l,expires_in:m}=await k.json(),n=Date.now()+(m??3600)*1e3;return G.set(d,{token:l,expiresAt:n}),b?.info?.("TOKEN_REFRESH",`Vertex token minted for ${a.client_email}`),{accessToken:l,expiresAt:n}}catch(a){return b?.error?.("TOKEN_REFRESH",`Vertex token error: ${a.message}`),null}}function I(a,b){let c=F(a.apiKey);return c?H(c,b):null}let J={"gemini-cli":(a,b)=>q(a.refreshToken,d.xq["gemini-cli"].clientId,d.xq["gemini-cli"].clientSecret,b),antigravity:(a,b)=>q(a.refreshToken,d.xq.antigravity.clientId,d.xq.antigravity.clientSecret,b),claude:(a,b)=>p(a.refreshToken,b),codex:(a,b)=>r(a.refreshToken,b),iflow:(a,b)=>u(a.refreshToken,b),github:(a,b)=>v(a.refreshToken,b),kiro:(a,b)=>t(a.refreshToken,a.providerSpecificData,b),xai:(a,b)=>k(a.refreshToken,b),"grok-cli":(a,b)=>k(a.refreshToken,b),gcli:(a,b)=>k(a.refreshToken,b),"codebuddy-cn":(a,b)=>x(a.refreshToken,b),"codebuddy-intl":(a,b)=>y(a.refreshToken,b),codearts:(a,b)=>(0,B.J9)(a,{log:b}),trae:(a,b)=>z(a.refreshToken,a,b,"trae"),"trae-enterprise":(a,b)=>z(a.refreshToken,a,b,"trae-enterprise"),cline:(a,b)=>o(a.refreshToken,b),clinepass:(a,b)=>o(a.refreshToken,b),zed:()=>null,windsurf:(a,b)=>A(a,b),kimi:(a,b)=>n(a.refreshToken,a,b),"kimi-coding":(a,b)=>n(a.refreshToken,a,b),vertex:I,"vertex-partner":I};async function K(a,b,c){if(!b.refreshToken)return null;let d=J[a];return d?d(b,c):m(a,b.refreshToken,b,c)}async function L(a,b=3,c=null){for(let d=0;d<b;d++){if(d>0){let a=1e3*d;c?.debug?.("TOKEN_REFRESH",`Retry ${d}/${b} after ${a}ms`),await new Promise(b=>setTimeout(b,a))}try{let b=await a();if(b)return b}catch(a){c?.warn?.("TOKEN_REFRESH",`Attempt ${d+1}/${b} failed: ${a.message}`)}}return c?.error?.("TOKEN_REFRESH",`All ${b} retry attempts failed`),null}},18080:(a,b,c)=>{c.d(b,{Xj:()=>i,uo:()=>j});let d=new Set(["login.microsoftonline.com","login.microsoft.com","login.windows.net"]);function e(a){return"string"==typeof a?a.trim():""}function f(a){let b,c=e(a);if(!c)throw Error("token_endpoint is required");try{b=new URL(c)}catch{throw Error("token_endpoint must be a valid URL")}if("https:"!==b.protocol)throw Error("token_endpoint must use https");let f=b.hostname.toLowerCase();if(!d.has(f))throw Error("token_endpoint must be a Microsoft login endpoint");return b.toString()}function g(a){return Array.isArray(a)?a.map(e).filter(Boolean).join(" "):e(a)}function h(a){try{if(!a||"string"!=typeof a)return null;let b=a.split(".");if(3!==b.length)return null;let c=b[1].replace(/-/g,"+").replace(/_/g,"/"),d=(4-c.length%4)%4;return JSON.parse(Buffer.from(`${c}${"=".repeat(d)}`,"base64").toString("utf8"))}catch{return null}}function i(a){let b=a;if("string"==typeof b)try{b=JSON.parse(b)}catch{throw Error("CLIProxyAPI auth JSON is invalid")}if(!b||"object"!=typeof b)throw Error("CLIProxyAPI auth JSON is required");let c=e(b.auth_method||b.authMethod);if(c&&"external_idp"!==c)throw Error("Only external_idp Kiro auth is supported by this importer");let d=e(b.access_token||b.accessToken),i=e(b.refresh_token||b.refreshToken),j=e(b.client_id||b.clientId),k=f(b.token_endpoint||b.tokenEndpoint),l=e(b.profile_arn||b.profileArn),m=e(b.region)||"us-east-1",n=g(b.scopes||b.scope);if(!d)throw Error("access_token is required");if(!i)throw Error("refresh_token is required");if(!j)throw Error("client_id is required");if(!n)throw Error("scopes is required");if(!l)throw Error("profile_arn is required");let o=h(d),p=b.email||o?.email||o?.preferred_username||o?.upn||o?.sub||null;return{accessToken:d,refreshToken:i,expiresAt:function(a){let b=a.expired||a.expires_at||a.expiresAt;if(b){let a=new Date(b).getTime();if(Number.isFinite(a))return new Date(a).toISOString()}let c=Number(a.expires_in||a.expiresIn||0);if(Number.isFinite(c)&&c>0)return new Date(Date.now()+1e3*c).toISOString();let d=h(a.access_token||a.accessToken);return d?.exp?new Date(1e3*d.exp).toISOString():new Date(Date.now()+36e5).toISOString()}(b),email:p,providerSpecificData:{profileArn:l,region:m,authMethod:"external_idp",provider:"CLIProxyAPI",clientId:j,tokenEndpoint:k,scope:n}}}function j(a,b={}){let c=e(b.clientId||b.client_id),d=f(b.tokenEndpoint||b.token_endpoint),h=g(b.scope||b.scopes);if(!a)throw Error("refresh token is required");if(!c)throw Error("clientId is required for external_idp refresh");if(!h)throw Error("scope is required for external_idp refresh");return{tokenEndpoint:d,body:new URLSearchParams({grant_type:"refresh_token",client_id:c,refresh_token:a,scope:h}),providerSpecificData:{...b,authMethod:"external_idp",clientId:c,tokenEndpoint:d,scope:h}}}},71547:(a,b,c)=>{c.d(b,{DK:()=>h,Ew:()=>s,HW:()=>t,J9:()=>w,Qi:()=>j,a_:()=>v,ox:()=>l,xj:()=>n,yn:()=>o,zx:()=>m});var d=c(77598),e=c.n(d),f=c(39609);let g="https://sts.cn-north-4.myhuaweicloud.com",h="https://snap-access.cn-north-4.myhuaweicloud.com",i="CodeArts_Tui",j="codearts/26.9.3";function k(a){return Buffer.from(JSON.stringify(a),"utf8").toString("base64url")}function l(){return e().randomBytes(32).toString("hex")}function m(){let{privateKey:a,publicKey:b}=e().generateKeyPairSync("ec",{namedCurve:"prime256v1"});return{privateKeyJwk:a.export({format:"jwk"}),publicKeyJwk:b.export({format:"jwk"})}}function n({redirectUri:a,codeChallenge:b,ticketId:c,locale:d="zh-cn",portalBase:e="https://codearts.huaweicloud.com/portal"}){let{port:f}=new URL(a),g=new URLSearchParams({locale:d,client_id:i,port:f,code_challenge:b,code_challenge_method:"SHA-256",ticket_id:c});return`${e.replace(/\/+$/,"")}/authorize?${g.toString()}`}function o(a,b="127.0.0.1"){return`http://${b}:${a}/oauth/callback`}async function p(a,b,{extraHeaders:c=null,proxyOptions:d=null,stsBase:h=g}={}){let i=`${h.replace(/\/+$/,"")}/v1/oauth2/tokens`,l=await (0,f.proxyAwareFetch)(i,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json","User-Agent":j,DPoP:function(a,b,c,d=Math.floor(Date.now()/1e3)){if(!a?.privateKeyJwk||!a?.publicKeyJwk)throw Error("CodeArts DPoP key pair is missing; restart the login flow");let f={alg:"ES256",typ:"dpop+jwt",jwk:{crv:"P-256",ext:!0,key_ops:["verify"],kty:"EC",x:a.publicKeyJwk.x,y:a.publicKeyJwk.y}},g={htm:String(b).toUpperCase(),htu:c,iat:d,jti:e().randomBytes(16).toString("hex")},h=`${k(f)}.${k(g)}`,i=e().createPrivateKey({key:a.privateKeyJwk,format:"jwk"}),j=e().sign("sha256",Buffer.from(h),{key:i,dsaEncoding:"ieee-p1363"});return`${h}.${j.toString("base64url")}`}(b,"POST",i),...c||{}},body:new URLSearchParams(a).toString()},d),m=await l.text().catch(()=>""),n=null;try{n=m?JSON.parse(m):null}catch{n=null}if(!l.ok){var o,q;let a;throw o=l.status,q=n,(a=Error(q?.error_description||q?.error?.message||q?.error||`CodeArts token request failed: HTTP ${o} ${(m||"").slice(0,200)}`)).status=o,(400===o||401===o||403===o)&&(a.authFailed=!0),a}return n}function q({accessKeyId:a,secretAccessKey:b,securityToken:c,expiration:d,refreshToken:e,keyPair:f}){if(!a||!b)return null;let g=Date.parse(d||"");return{accessKeyId:a,secretAccessKey:b,securityToken:c||"",expiresAt:Number.isFinite(g)?g:Date.now()+36e5,refreshToken:e||null,dpopKeyPair:f}}function r(a,b){let c=a?.credentials||a?.Credential||{};return q({accessKeyId:c.access_key_id||c.accessKeyId,secretAccessKey:c.secret_access_key||c.secretAccessKey,securityToken:c.security_token||c.securityToken,expiration:c.expiration,refreshToken:a?.refresh_token||a?.refreshToken,keyPair:b})}async function s({code:a,codeVerifier:b,redirectUri:c,keyPair:d,proxyOptions:e=null,stsBase:f=g}){let h=await p({client_id:i,code:a,code_verifier:b,grant_type:"authorization_code",redirect_uri:c},d,{proxyOptions:e,stsBase:f}),j=r(h,d);if(!j)throw Error("CodeArts token exchange returned no credentials "+JSON.stringify(h?.error||h?.error_description||Object.keys(h||{})));return j}async function t({ticketId:a,secret:b,keyPair:c=null,attempts:d=10,intervalMs:e=1e3,sleep:g=a=>new Promise(b=>setTimeout(b,a)),proxyOptions:i=null,apiBase:k=h}={}){if(!a||!b)throw Error("CodeArts login secret needs its ticket_id");let l=`${k.replace(/\/+$/,"")}/snap-manager/v1/login/ticket?${new URLSearchParams({ticket_id:a,secret:b})}`,m=0;for(let a=1;a<=d;a++){await g(e);let b=await (0,f.proxyAwareFetch)(l,{method:"GET",headers:{Accept:"application/json","User-Agent":j}},i).catch(b=>(m=0,console.log(`[CodeArts] ticket poll ${a}/${d} failed: ${b?.message||b}`),null));if(!b)continue;if(m=b.status,!b.ok){console.log(`[CodeArts] ticket poll ${a}/${d}: HTTP ${b.status}`);continue}let h=await b.text().catch(()=>""),k=null;try{k=h?JSON.parse(h):null}catch{k=null}let n=function(a,b){let c=a?.credential||a?.credentials||{};return q({accessKeyId:c.access||c.access_key_id,secretAccessKey:c.secret||c.secret_access_key,securityToken:c.securitytoken||c.security_token,expiration:c.expires_at||c.expiration,refreshToken:a?.refresh_token,keyPair:b})}(k,c);if(n)return n;console.log(`[CodeArts] ticket poll ${a}/${d}: no credentials in payload`)}throw Error(`CodeArts login ticket never returned credentials (last HTTP ${m||"network error"})`)}async function u({refreshToken:a,accountId:b="",keyPair:c,proxyOptions:d=null,stsBase:e=g}){let f=r(await p({client_id:i,refresh_token:a,grant_type:"refresh_token"},c,{extraHeaders:{"x-agent-user-account":String(b||"")},proxyOptions:d,stsBase:e}),c);if(!f)throw Error("CodeArts refresh returned no credentials");return f.refreshToken||(f.refreshToken=a),f}function v(a,b={}){let c=Math.max(60,Math.floor((a.expiresAt-Date.now())/1e3));return{accessToken:a.securityToken,refreshToken:a.refreshToken||null,expiresIn:c,providerSpecificData:{authMethod:"oauth",accessKeyId:a.accessKeyId,secretAccessKey:a.secretAccessKey,securityToken:a.securityToken,accountId:a.accountId??b.accountId??"",dpopKeyPair:a.dpopKeyPair||b.dpopKeyPair||null,tokenExpiresAt:new Date(a.expiresAt).toISOString(),...b.userId?{userId:b.userId}:{},...b.domainId?{domainId:b.domainId}:{},...b.userName?{userName:b.userName}:{}}}}async function w(a,{proxyOptions:b=null,log:c=null}={}){let d,e={accessKeyId:(d=a?.providerSpecificData||{}).accessKeyId||"",secretAccessKey:d.secretAccessKey||"",securityToken:d.securityToken||a?.accessToken||"",refreshToken:a?.refreshToken||d.refreshToken||"",accountId:d.accountId||"",dpopKeyPair:d.dpopKeyPair||null};if(!e.refreshToken)return c?.warn?.("TOKEN_REFRESH","CodeArts: connection has no refresh token"),{error:"invalid_grant",message:"CodeArts refresh token missing — reconnect the account"};if(!e.dpopKeyPair?.privateKeyJwk)return c?.warn?.("TOKEN_REFRESH","CodeArts: DPoP key pair was not persisted with the connection"),{error:"invalid_grant",message:"CodeArts DPoP key pair missing — reconnect the account"};try{let a=await u({refreshToken:e.refreshToken,accountId:e.accountId,keyPair:e.dpopKeyPair,proxyOptions:b});if(a.accountId=e.accountId,!a.securityToken)return c?.warn?.("TOKEN_REFRESH","CodeArts refresh returned credentials without a security token"),null;return c?.info?.("TOKEN_REFRESH",`CodeArts AK/SK renewed until ${new Date(a.expiresAt).toISOString()}`),v(a)}catch(a){if(c?.error?.("TOKEN_REFRESH",`CodeArts refresh failed: ${a.message}`),a.authFailed)return{error:"invalid_grant",message:a.message};return null}}},93943:(a,b,c)=>{c.d(b,{Dz:()=>i,MF:()=>k,Vq:()=>l,fp:()=>j});var d=c(8521),e=c(26070);let f=e.sr.codex?.maxRefreshAgeMs,g=new Map;function h(a){if(null==a||""===a)return null;if("number"==typeof a)return a<1e12?1e3*a:a;let b=new Date(a).getTime();return Number.isFinite(b)?b:null}function i(a){return h(a?.expiresAt??a?.tokenExpiresAt)}function j(a,b,c=Date.now()){if(!b)return!1;let g=i(b);if(null!==g&&g-c<(0,d.Og)(a))return!0;let k=e.sr[a]?.maxRefreshAgeMs;return!!(k&&b.refreshToken&&function(a,b=Date.now(),c=f){let d=h(a?.lastRefreshAt??a?.lastRefresh??a?.providerSpecificData?.lastRefreshAt);return!d||b-d>=c}(b,c,k))}async function k(a,b,c){let d,e=(d=b?.connectionId||b?.id||b?.email||b?.name||b?.refreshToken?.slice?.(-16)||"default",`${a}:${d}`),f=g.get(e);if(f)return f;let h=Promise.resolve().then(c).finally(()=>{g.delete(e)});return g.set(e,h),h}async function l(a,b,c){return b?k(a,b,async()=>{let f=await (0,d.$B)(a,b,c);return function(a,b,c,f=Date.now()){var g,h;if(!c)return null;if((0,d.jT)(c))return c;let i={},j=new Date(f).toISOString();c.accessToken&&(i.accessToken=c.accessToken),c.apiKey&&(i.apiKey=c.apiKey),c.token&&(i.token=c.token);let k=c.refreshToken??b?.refreshToken;k&&(i.refreshToken=k);let l=c.idToken??b?.idToken;return l&&(i.idToken=l),c.expiresIn?(i.expiresIn=c.expiresIn,i.expiresAt=function(a,b=Date.now()){return a?new Date(b+1e3*a).toISOString():null}(c.expiresIn,f)):c.expiresAt&&(i.expiresAt=c.expiresAt),c.projectId&&(i.projectId=c.projectId),c.providerSpecificData&&(g=b?.providerSpecificData,i.providerSpecificData=(h=c.providerSpecificData)&&"object"==typeof h?{...g||{},...h}:g),c.copilotToken&&(i.copilotToken=c.copilotToken),c.copilotTokenExpiresAt&&(i.copilotTokenExpiresAt=c.copilotTokenExpiresAt),(e.sr[a]?.trackRefreshAt||i.accessToken||i.apiKey||i.token||i.refreshToken||i.copilotToken)&&(i.lastRefreshAt=c.lastRefreshAt||j),i}(a,b,f)}):null}}};
1
+ "use strict";exports.id=3943,exports.ids=[3943],exports.modules={8521:(a,b,c)=>{c.d(b,{oD:()=>C,Og:()=>E,jT:()=>D,Sc:()=>F,Wm:()=>r,jR:()=>w,I9:()=>q,Ql:()=>t,$B:()=>K,pb:()=>H,qZ:()=>L});var d=c(35024),e=c(75924),f=c(39609);let g=new Map;async function h(a,b,c,d){if(!b)return c();let e=`${a}:${b}`,f=g.get(e);if(f){if(f.promise)return d?.info?.("TOKEN_REFRESH",`Reusing in-flight refresh for ${a}`),f.promise;if(f.expiresAt>Date.now())return d?.info?.("TOKEN_REFRESH",`Reusing recent refresh result for ${a}`),f.result;g.delete(e)}let h=(async()=>{try{let a=await c();return g.set(e,{result:a,expiresAt:Date.now()+1e4}),a}catch(a){throw g.delete(e),a}})();return g.set(e,{promise:h}),h}var i=c(18080);let j=null;async function k(a,b){return a?h("xai",a,async()=>{try{j||(j=new(await Promise.all([c.e(5615),c.e(4730)]).then(c.bind(c,84730))).XaiService);let b=await j.refreshAccessToken(a);return{accessToken:b.access_token,refreshToken:b.refresh_token||a,expiresIn:b.expires_in,idToken:b.id_token}}catch(c){b?.warn?.("TOKEN_REFRESH",`xai refresh failed: ${c?.message||c}`);let a=String(c?.message||"");if(a.includes("invalid_grant")||a.includes("invalid_request"))return{error:"invalid_grant"};return null}},b):null}let l={claude:{bodyFormat:"json",includeClientSecret:!1,url:()=>e.NA.anthropic.token,dedupKey:"claude"},iflow:{url:()=>e.NA.iflow.token,dedupKey:"iflow",extraHeaders:(a,b)=>({Authorization:`Basic ${btoa(`${b.clientId}:${b.clientSecret}`)}`})},github:{url:()=>e.NA.github.token,dedupKey:"github",includeClientSecret:a=>!!a?.clientSecret},kimi:{dedupKey:"kimi",extraHeaders:a=>(0,e.buildKimiHeaders)(a?.providerSpecificData?.deviceId)}};async function m(a,b,c,e){let f=d.xq[a],g=l[a]||{},i=function(a,b,c){if(c?.url)try{return c.url()}catch{}return b?.refreshUrl||d.sr[a]?.tokenUrl||null}(a,f,g);return f&&i?b?h(g.dedupKey||a,b,async()=>{try{let d,h,j,{format:k,body:l}=(d=g?.bodyFormat==="json"?"json":"form",h=g?.includeClientSecret===void 0||("function"==typeof g.includeClientSecret?g.includeClientSecret(f):g.includeClientSecret),j={grant_type:"refresh_token",refresh_token:b,client_id:f.clientId},(h&&f.clientSecret&&(j.client_secret=f.clientSecret),"json"===d)?{format:"json",body:JSON.stringify(j)}:{format:"form",body:new URLSearchParams(j)}),m={"Content-Type":"json"===k?"application/json":"application/x-www-form-urlencoded",Accept:"application/json",...g.extraHeaders&&g.extraHeaders(c,f)||{}},n=await fetch(i,{method:"POST",headers:m,body:l});if(!n.ok){let b=await n.text();return e?.error?.("TOKEN_REFRESH",`Failed to refresh token for ${a}`,{status:n.status,error:b}),null}let o=await n.json();return e?.info?.("TOKEN_REFRESH",`Successfully refreshed token for ${a}`,{hasNewAccessToken:!!o.access_token,hasNewRefreshToken:!!o.refresh_token,expiresIn:o.expires_in}),{accessToken:o.access_token,refreshToken:o.refresh_token||b,expiresIn:o.expires_in,...g.parse&&g.parse(o)||{}}}catch(b){return e?.error?.("TOKEN_REFRESH",`Error refreshing token for ${a}`,{error:b.message}),null}},e):(e?.warn?.("TOKEN_REFRESH",`No refresh token available for provider: ${a}`),null):(e?.warn?.("TOKEN_REFRESH",`No refresh URL configured for provider: ${a}`),null)}async function n(a,b,c){return m("kimi",a,b,c)}async function o(a,b){return a?h("cline",a,async()=>{try{let c=await fetch(d.xq.cline?.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:a,grantType:"refresh_token",clientType:"extension"})});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Cline token",{status:c.status,error:a}),null}let e=await c.json(),f=e?.data||e;if(!f?.accessToken)return null;let g=f.expiresAt?Math.max(1,Math.floor((new Date(f.expiresAt).getTime()-Date.now())/1e3)):f.expiresIn||f.expires_in||3600;return{accessToken:f.accessToken,refreshToken:f.refreshToken||a,expiresIn:g}}catch(a){return b?.error?.("TOKEN_REFRESH",`Error refreshing Cline token: ${a.message}`),null}},b):null}async function p(a,b){return m("claude",a,{},b)}async function q(a,b,c,d){return a?h(`google:${b}`,a,async()=>{try{let f=await fetch(e.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:b,client_secret:c})});if(!f.ok){let a=await f.text();return d?.error?.("TOKEN_REFRESH","Failed to refresh Google token",{status:f.status,error:a}),null}let g=await f.json();return d?.info?.("TOKEN_REFRESH","Successfully refreshed Google token",{hasNewAccessToken:!!g.access_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}}catch(a){return d?.error?.("TOKEN_REFRESH",`Network error refreshing Google token: ${a.message}`),null}},d):null}async function r(a,b){return a?h("codex",a,async()=>{try{let c=await fetch(e.NA.openai.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({client_id:d.xq.codex.clientId,grant_type:"refresh_token",refresh_token:a})});if(!c.ok){let a=await c.text(),d=function(a="",b=0){let c=null;try{c=a?JSON.parse(a):null}catch{c=null}let d=c?.error?.code||c?.error||c?.error_code||"",e=c?.error_description||c?.message||a||"",f=`${d} ${e}`.toLowerCase();return{status:b,code:d,description:e,permanent:["refresh_token_expired","refresh_token_reused","refresh_token_invalidated","invalid_grant"].some(a=>f.includes(a))}}(a,c.status);if(d.permanent)return b?.error?.("TOKEN_REFRESH","Codex refresh token already used or invalid. Re-auth required.",{status:c.status,code:d.code}),{error:"unrecoverable_refresh_error",code:d.code};return b?.error?.("TOKEN_REFRESH","Failed to refresh Codex token",{status:c.status,error:a,code:d.code,permanent:d.permanent}),null}let f=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Codex token",{hasNewAccessToken:!!f.access_token,hasNewRefreshToken:!!f.refresh_token,hasIdToken:!!f.id_token,expiresIn:f.expires_in}),{accessToken:f.access_token,refreshToken:f.refresh_token||a,idToken:f.id_token,expiresIn:f.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Codex token: ${a.message}`),null}},b):null}async function s(a,b,d){if(a?.profileArn)return{};let e=d?.trim?.()||null;if(!e){let{fetchKiroProfileArn:a}=await Promise.all([c.e(7774),c.e(5433),c.e(8920),c.e(24),c.e(3225),c.e(6922),c.e(1329),c.e(8499),c.e(318),c.e(8895),c.e(4049),c.e(3535)]).then(c.bind(c,74177));e=await a(b)}return e?{providerSpecificData:{profileArn:e}}:{}}async function t(a,b,c,e=null){return a?h("kiro",a,async()=>{let g=b?.authMethod,h=b?.clientId,j=b?.clientSecret,k=b?.region;if("external_idp"===g){let d;try{d=(0,i.uo)(a,b)}catch(a){return c?.warn?.("TOKEN_REFRESH",`Invalid Kiro external_idp refresh config: ${a.message}`),null}let g=await (0,f.proxyAwareFetch)(d.tokenEndpoint,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:d.body},e);if(!g.ok){let a=await g.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro external_idp token",{status:g.status,error:a}),null}let h=await g.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro external_idp token",{hasNewAccessToken:!!h.access_token,hasNewRefreshToken:!!h.refresh_token,expiresIn:h.expires_in}),{accessToken:h.access_token,refreshToken:h.refresh_token||a,expiresIn:h.expires_in,providerSpecificData:d.providerSpecificData}}if(h&&j){let d="idc"===g&&k?`https://oidc.${k}.amazonaws.com/token`:"https://oidc.us-east-1.amazonaws.com/token",i=await (0,f.proxyAwareFetch)(d,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:h,clientSecret:j,refreshToken:a,grantType:"refresh_token"})},e);if(!i.ok){let a=await i.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro AWS token",{status:i.status,error:a}),null}let l=await i.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro AWS token",{hasNewAccessToken:!!l.accessToken,expiresIn:l.expiresIn}),{accessToken:l.accessToken,refreshToken:l.refreshToken||a,expiresIn:l.expiresIn,...await s(b,l.accessToken,l.profileArn)}}let l=await (0,f.proxyAwareFetch)(d.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/1.0.0"},body:JSON.stringify({refreshToken:a})},e);if(!l.ok){let a=await l.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro social token",{status:l.status,error:a}),null}let m=await l.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro social token",{hasNewAccessToken:!!m.accessToken,expiresIn:m.expiresIn}),{accessToken:m.accessToken,refreshToken:m.refreshToken||a,expiresIn:m.expiresIn,...await s(b,m.accessToken,m.profileArn)}},c):null}async function u(a,b){return m("iflow",a,{},b)}async function v(a,b){return m("github",a,{},b)}async function w(a,b){return a?h("copilot",a,async()=>{try{let c=await fetch(d.sr.github?.copilotTokenUrl,{headers:{Authorization:`token ${a}`,"User-Agent":e.x0.USER_AGENT,"Editor-Version":`vscode/${e.x0.VSCODE_VERSION}`,"Editor-Plugin-Version":`copilot-chat/${e.x0.COPILOT_CHAT_VERSION}`,Accept:"application/json","x-github-api-version":e.x0.API_VERSION}});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Copilot token",{status:c.status,error:a}),null}let f=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Copilot token",{hasToken:!!f.token,expiresAt:f.expires_at}),{token:f.token,expiresAt:f.expires_at}}catch(a){return b?.error?.("TOKEN_REFRESH","Error refreshing Copilot token",{error:a.message}),null}},b):null}async function x(a,b){return a?h("codebuddy-cn",a,async()=>{let c=d.sr["codebuddy-cn"]||{},e=await fetch(c.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":c.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"copilot.tencent.com","X-Refresh-Token":a,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"});if(!e.ok){let a=await e.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh CodeBuddy token",{status:e.status,error:a}),null}let f=await e.json();return 0===f.code&&f.data?.accessToken?(b?.info?.("TOKEN_REFRESH","Successfully refreshed CodeBuddy token",{hasNewAccessToken:!!f.data.accessToken,hasNewRefreshToken:!!f.data.refreshToken,expiresIn:f.data.expiresIn}),{accessToken:f.data.accessToken,refreshToken:f.data.refreshToken||a,expiresIn:f.data.expiresIn}):(b?.error?.("TOKEN_REFRESH","CodeBuddy token refresh returned no token",{code:f.code,msg:f.msg}),null)},b):null}async function y(a,b){return a?h("codebuddy-intl",a,async()=>{let c=d.sr["codebuddy-intl"]||{},e=await fetch(c.refreshUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":c.userAgent,"X-Requested-With":"XMLHttpRequest","X-Domain":"www.codebuddy.ai","X-Refresh-Token":a,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"});if(!e.ok){let a=await e.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh CodeBuddy intl token",{status:e.status,error:a}),null}let f=await e.json();return 0===f.code&&f.data?.accessToken?(b?.info?.("TOKEN_REFRESH","Successfully refreshed CodeBuddy intl token",{hasNewAccessToken:!!f.data.accessToken,hasNewRefreshToken:!!f.data.refreshToken,expiresIn:f.data.expiresIn}),{accessToken:f.data.accessToken,refreshToken:f.data.refreshToken||a,expiresIn:f.data.expiresIn}):(b?.error?.("TOKEN_REFRESH","CodeBuddy intl token refresh returned no token",{code:f.code,msg:f.msg}),null)},b):null}async function z(a,b,c,e="trae"){if(!a)return null;let f=d.sr[e]||{},g=f.exchangeTokenUrl||f.tokenUrl;return g?h(e,a,async()=>{try{let b,d=await fetch(g,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"Trae/1.0.0 antigravity-cockpit-tools"},body:JSON.stringify({ClientID:f.clientId||"ono9krqynydwx5",RefreshToken:a,ClientSecret:f.clientSecret||"-",UserID:""})});if(!d.ok){let a=await d.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Trae token",{status:d.status,error:a}),null}let e=await d.json(),h=e?.Result||e?.Data||e?.result||e,i=h?.AccessToken||h?.Token||h?.accessToken;if(!i)return c?.error?.("TOKEN_REFRESH","Trae refresh returned no AccessToken",{payload:e}),null;let j=h?.RefreshToken||h?.refreshToken||a,k=h?.ExpiresAt||h?.TokenExpireAt||h?.expiresAt;if("number"==typeof k){let a=k>1e12?Math.floor(k/1e3):k;b=Math.max(1,a-Math.floor(Date.now()/1e3))}else if("string"==typeof k){let a=new Date(k).getTime()-Date.now();b=a>0?Math.floor(a/1e3):void 0}return c?.info?.("TOKEN_REFRESH","Successfully refreshed Trae token",{hasNewAccessToken:!!i,hasNewRefreshToken:j!==a,expiresIn:b}),{accessToken:i,refreshToken:j,expiresIn:b}}catch(a){return c?.error?.("TOKEN_REFRESH",`Error refreshing Trae token: ${a.message}`),null}},c):(c?.warn?.("TOKEN_REFRESH","No Trae exchangeTokenUrl configured"),null)}async function A(a,b){return b?.info?.("TOKEN_REFRESH","windsurf: apiKey is long-lived (no refresh_token flow) — skipping"),null}var B=c(71547);let C=3e5;function D(a){return a&&"object"==typeof a&&("unrecoverable_refresh_error"===a.error||"refresh_token_reused"===a.error||"invalid_request"===a.error||"invalid_grant"===a.error)}function E(a){return e.Wu[a]?e.Wu[a]:"kimi-coding"===a&&e.Wu.kimi?e.Wu.kimi:C}function F(a){if("string"!=typeof a)return null;try{let b=JSON.parse(a);if("service_account"===b.type&&b.client_email&&b.private_key&&b.project_id)return b;return null}catch{return null}}let G=new Map;async function H(a,b){let d=a.client_email,f=G.get(d);if(f&&f.expiresAt-Date.now()>3e5)return{accessToken:f.token,expiresAt:f.expiresAt};try{let{SignJWT:f,importPKCS8:g}=await Promise.all([c.e(8292),c.e(1455)]).then(c.bind(c,71455));b?.debug?.("TOKEN_REFRESH",`Vertex minting token for ${a.client_email}`);let h=await g(a.private_key.replace(/\\n/g,"\n"),"RS256"),i=Math.floor(Date.now()/1e3),j=await new f({scope:"https://www.googleapis.com/auth/cloud-platform"}).setProtectedHeader({alg:"RS256"}).setIssuer(a.client_email).setAudience(e.NA.google.token).setIssuedAt(i).setExpirationTime(i+3600).sign(h),k=await fetch(e.NA.google.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams({grant_type:"urn:ietf:params:oauth:grant-type:jwt-bearer",assertion:j})});if(!k.ok){let a=await k.text();return b?.error?.("TOKEN_REFRESH",`Vertex token mint failed: ${a}`),null}let{access_token:l,expires_in:m}=await k.json(),n=Date.now()+(m??3600)*1e3;return G.set(d,{token:l,expiresAt:n}),b?.info?.("TOKEN_REFRESH",`Vertex token minted for ${a.client_email}`),{accessToken:l,expiresAt:n}}catch(a){return b?.error?.("TOKEN_REFRESH",`Vertex token error: ${a.message}`),null}}function I(a,b){let c=F(a.apiKey);return c?H(c,b):null}let J={"gemini-cli":(a,b)=>q(a.refreshToken,d.xq["gemini-cli"].clientId,d.xq["gemini-cli"].clientSecret,b),antigravity:(a,b)=>q(a.refreshToken,d.xq.antigravity.clientId,d.xq.antigravity.clientSecret,b),claude:(a,b)=>p(a.refreshToken,b),codex:(a,b)=>r(a.refreshToken,b),iflow:(a,b)=>u(a.refreshToken,b),github:(a,b)=>v(a.refreshToken,b),kiro:(a,b)=>t(a.refreshToken,a.providerSpecificData,b),xai:(a,b)=>k(a.refreshToken,b),"grok-cli":(a,b)=>k(a.refreshToken,b),gcli:(a,b)=>k(a.refreshToken,b),"codebuddy-cn":(a,b)=>x(a.refreshToken,b),"codebuddy-intl":(a,b)=>y(a.refreshToken,b),codearts:(a,b)=>(0,B.J9)(a,{log:b}),trae:(a,b)=>z(a.refreshToken,a,b,"trae"),"trae-enterprise":(a,b)=>z(a.refreshToken,a,b,"trae-enterprise"),cline:(a,b)=>o(a.refreshToken,b),clinepass:(a,b)=>o(a.refreshToken,b),zed:()=>null,windsurf:(a,b)=>A(a,b),kimi:(a,b)=>n(a.refreshToken,a,b),"kimi-coding":(a,b)=>n(a.refreshToken,a,b),vertex:I,"vertex-partner":I};async function K(a,b,c){if(!b.refreshToken)return null;let d=J[a];return d?d(b,c):m(a,b.refreshToken,b,c)}async function L(a,b=3,c=null){for(let d=0;d<b;d++){if(d>0){let a=1e3*d;c?.debug?.("TOKEN_REFRESH",`Retry ${d}/${b} after ${a}ms`),await new Promise(b=>setTimeout(b,a))}try{let b=await a();if(b)return b}catch(a){c?.warn?.("TOKEN_REFRESH",`Attempt ${d+1}/${b} failed: ${a.message}`)}}return c?.error?.("TOKEN_REFRESH",`All ${b} retry attempts failed`),null}},18080:(a,b,c)=>{c.d(b,{Xj:()=>i,uo:()=>j});let d=new Set(["login.microsoftonline.com","login.microsoft.com","login.windows.net"]);function e(a){return"string"==typeof a?a.trim():""}function f(a){let b,c=e(a);if(!c)throw Error("token_endpoint is required");try{b=new URL(c)}catch{throw Error("token_endpoint must be a valid URL")}if("https:"!==b.protocol)throw Error("token_endpoint must use https");let f=b.hostname.toLowerCase();if(!d.has(f))throw Error("token_endpoint must be a Microsoft login endpoint");return b.toString()}function g(a){return Array.isArray(a)?a.map(e).filter(Boolean).join(" "):e(a)}function h(a){try{if(!a||"string"!=typeof a)return null;let b=a.split(".");if(3!==b.length)return null;let c=b[1].replace(/-/g,"+").replace(/_/g,"/"),d=(4-c.length%4)%4;return JSON.parse(Buffer.from(`${c}${"=".repeat(d)}`,"base64").toString("utf8"))}catch{return null}}function i(a){let b=a;if("string"==typeof b)try{b=JSON.parse(b)}catch{throw Error("CLIProxyAPI auth JSON is invalid")}if(!b||"object"!=typeof b)throw Error("CLIProxyAPI auth JSON is required");let c=e(b.auth_method||b.authMethod);if(c&&"external_idp"!==c)throw Error("Only external_idp Kiro auth is supported by this importer");let d=e(b.access_token||b.accessToken),i=e(b.refresh_token||b.refreshToken),j=e(b.client_id||b.clientId),k=f(b.token_endpoint||b.tokenEndpoint),l=e(b.profile_arn||b.profileArn),m=e(b.region)||"us-east-1",n=g(b.scopes||b.scope);if(!d)throw Error("access_token is required");if(!i)throw Error("refresh_token is required");if(!j)throw Error("client_id is required");if(!n)throw Error("scopes is required");if(!l)throw Error("profile_arn is required");let o=h(d),p=b.email||o?.email||o?.preferred_username||o?.upn||o?.sub||null;return{accessToken:d,refreshToken:i,expiresAt:function(a){let b=a.expired||a.expires_at||a.expiresAt;if(b){let a=new Date(b).getTime();if(Number.isFinite(a))return new Date(a).toISOString()}let c=Number(a.expires_in||a.expiresIn||0);if(Number.isFinite(c)&&c>0)return new Date(Date.now()+1e3*c).toISOString();let d=h(a.access_token||a.accessToken);return d?.exp?new Date(1e3*d.exp).toISOString():new Date(Date.now()+36e5).toISOString()}(b),email:p,providerSpecificData:{profileArn:l,region:m,authMethod:"external_idp",provider:"CLIProxyAPI",clientId:j,tokenEndpoint:k,scope:n}}}function j(a,b={}){let c=e(b.clientId||b.client_id),d=f(b.tokenEndpoint||b.token_endpoint),h=g(b.scope||b.scopes);if(!a)throw Error("refresh token is required");if(!c)throw Error("clientId is required for external_idp refresh");if(!h)throw Error("scope is required for external_idp refresh");return{tokenEndpoint:d,body:new URLSearchParams({grant_type:"refresh_token",client_id:c,refresh_token:a,scope:h}),providerSpecificData:{...b,authMethod:"external_idp",clientId:c,tokenEndpoint:d,scope:h}}}},71547:(a,b,c)=>{c.d(b,{DK:()=>h,Ew:()=>s,HW:()=>t,J9:()=>w,Qi:()=>j,a_:()=>v,ox:()=>l,xj:()=>n,yn:()=>o,zx:()=>m});var d=c(77598),e=c.n(d),f=c(39609);let g="https://sts.cn-north-4.myhuaweicloud.com",h="https://snap-access.cn-north-4.myhuaweicloud.com",i="CodeArts_Tui",j="codearts/26.9.3";function k(a){return Buffer.from(JSON.stringify(a),"utf8").toString("base64url")}function l(){return e().randomBytes(32).toString("hex")}function m(){let{privateKey:a,publicKey:b}=e().generateKeyPairSync("ec",{namedCurve:"prime256v1"});return{privateKeyJwk:a.export({format:"jwk"}),publicKeyJwk:b.export({format:"jwk"})}}function n({redirectUri:a,codeChallenge:b,ticketId:c,locale:d="zh-cn",portalBase:e="https://codearts.huaweicloud.com/portal"}){let{port:f}=new URL(a),g=new URLSearchParams({locale:d,client_id:i,port:f,code_challenge:b,code_challenge_method:"SHA-256",ticket_id:c});return`${e.replace(/\/+$/,"")}/authorize?${g.toString()}`}function o(a,b="127.0.0.1"){return`http://${b}:${a}/oauth/callback`}async function p(a,b,{extraHeaders:c=null,proxyOptions:d=null,stsBase:h=g}={}){let i=`${h.replace(/\/+$/,"")}/v1/oauth2/tokens`,l=await (0,f.proxyAwareFetch)(i,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json","User-Agent":j,DPoP:function(a,b,c,d=Math.floor(Date.now()/1e3)){if(!a?.privateKeyJwk||!a?.publicKeyJwk)throw Error("CodeArts DPoP key pair is missing; restart the login flow");let f={alg:"ES256",typ:"dpop+jwt",jwk:{crv:"P-256",ext:!0,key_ops:["verify"],kty:"EC",x:a.publicKeyJwk.x,y:a.publicKeyJwk.y}},g={htm:String(b).toUpperCase(),htu:c,iat:d,jti:e().randomBytes(16).toString("hex")},h=`${k(f)}.${k(g)}`,i=e().createPrivateKey({key:a.privateKeyJwk,format:"jwk"}),j=e().sign("sha256",Buffer.from(h),{key:i,dsaEncoding:"ieee-p1363"});return`${h}.${j.toString("base64url")}`}(b,"POST",i),...c||{}},body:new URLSearchParams(a).toString()},d),m=await l.text().catch(()=>""),n=null;try{n=m?JSON.parse(m):null}catch{n=null}if(!l.ok){var o,q;let a;throw o=l.status,q=n,(a=Error(q?.error_description||q?.error?.message||q?.error||`CodeArts token request failed: HTTP ${o} ${(m||"").slice(0,200)}`)).status=o,(400===o||401===o||403===o)&&(a.authFailed=!0),a}return n}function q({accessKeyId:a,secretAccessKey:b,securityToken:c,expiration:d,refreshToken:e,keyPair:f}){if(!a||!b)return null;let g=Date.parse(d||"");return{accessKeyId:a,secretAccessKey:b,securityToken:c||"",expiresAt:Number.isFinite(g)?g:Date.now()+36e5,refreshToken:e||null,dpopKeyPair:f}}function r(a,b){let c=a?.credentials||a?.Credential||{};return q({accessKeyId:c.access_key_id||c.accessKeyId,secretAccessKey:c.secret_access_key||c.secretAccessKey,securityToken:c.security_token||c.securityToken,expiration:c.expiration,refreshToken:a?.refresh_token||a?.refreshToken,keyPair:b})}async function s({code:a,codeVerifier:b,redirectUri:c,keyPair:d,proxyOptions:e=null,stsBase:f=g}){let h=await p({client_id:i,code:a,code_verifier:b,grant_type:"authorization_code",redirect_uri:c},d,{proxyOptions:e,stsBase:f}),j=r(h,d);if(!j)throw Error("CodeArts token exchange returned no credentials "+JSON.stringify(h?.error||h?.error_description||Object.keys(h||{})));return j}async function t({ticketId:a,secret:b,keyPair:c=null,attempts:d=10,intervalMs:e=1e3,sleep:g=a=>new Promise(b=>setTimeout(b,a)),proxyOptions:i=null,apiBase:k=h}={}){if(!a||!b)throw Error("CodeArts login secret needs its ticket_id");let l=`${k.replace(/\/+$/,"")}/snap-manager/v1/login/ticket?${new URLSearchParams({ticket_id:a,secret:b})}`,m=0;for(let a=1;a<=d;a++){await g(e);let b=await (0,f.proxyAwareFetch)(l,{method:"GET",headers:{Accept:"application/json","User-Agent":j}},i).catch(b=>(m=0,console.log(`[CodeArts] ticket poll ${a}/${d} failed: ${b?.message||b}`),null));if(!b)continue;if(m=b.status,!b.ok){console.log(`[CodeArts] ticket poll ${a}/${d}: HTTP ${b.status}`);continue}let h=await b.text().catch(()=>""),k=null;try{k=h?JSON.parse(h):null}catch{k=null}let n=function(a,b){let c=a?.credential||a?.credentials||{};return q({accessKeyId:c.access||c.access_key_id,secretAccessKey:c.secret||c.secret_access_key,securityToken:c.securitytoken||c.security_token,expiration:c.expires_at||c.expiration,refreshToken:a?.refresh_token,keyPair:b})}(k,c);if(n)return n;console.log(`[CodeArts] ticket poll ${a}/${d}: no credentials in payload`)}throw Error(`CodeArts login ticket never returned credentials (last HTTP ${m||"network error"})`)}async function u({refreshToken:a,accountId:b="",keyPair:c,proxyOptions:d=null,stsBase:e=g}){let f=r(await p({client_id:i,refresh_token:a,grant_type:"refresh_token"},c,{extraHeaders:{"x-agent-user-account":String(b||"")},proxyOptions:d,stsBase:e}),c);if(!f)throw Error("CodeArts refresh returned no credentials");return f.refreshToken||(f.refreshToken=a),f}function v(a,b={}){let c=Math.max(60,Math.floor((a.expiresAt-Date.now())/1e3));return{accessToken:a.securityToken,refreshToken:a.refreshToken||null,expiresIn:c,providerSpecificData:{authMethod:"oauth",accessKeyId:a.accessKeyId,secretAccessKey:a.secretAccessKey,securityToken:a.securityToken,accountId:a.accountId??b.accountId??"",dpopKeyPair:a.dpopKeyPair||b.dpopKeyPair||null,tokenExpiresAt:new Date(a.expiresAt).toISOString(),...b.userId?{userId:b.userId}:{},...b.domainId?{domainId:b.domainId}:{},...b.userName?{userName:b.userName}:{}}}}async function w(a,{proxyOptions:b=null,log:c=null}={}){let d,e={accessKeyId:(d=a?.providerSpecificData||{}).accessKeyId||"",secretAccessKey:d.secretAccessKey||"",securityToken:d.securityToken||a?.accessToken||"",refreshToken:a?.refreshToken||d.refreshToken||"",accountId:d.accountId||"",dpopKeyPair:d.dpopKeyPair||null};if(!e.refreshToken)return c?.warn?.("TOKEN_REFRESH","CodeArts: connection has no refresh token"),{error:"invalid_grant",message:"CodeArts refresh token missing — reconnect the account"};if(!e.dpopKeyPair?.privateKeyJwk)return c?.warn?.("TOKEN_REFRESH","CodeArts: DPoP key pair was not persisted with the connection"),{error:"invalid_grant",message:"CodeArts DPoP key pair missing — reconnect the account"};try{let a=await u({refreshToken:e.refreshToken,accountId:e.accountId,keyPair:e.dpopKeyPair,proxyOptions:b});if(a.accountId=e.accountId,!a.securityToken)return c?.warn?.("TOKEN_REFRESH","CodeArts refresh returned credentials without a security token"),null;return c?.info?.("TOKEN_REFRESH",`CodeArts AK/SK renewed until ${new Date(a.expiresAt).toISOString()}`),v(a)}catch(a){if(c?.error?.("TOKEN_REFRESH",`CodeArts refresh failed: ${a.message}`),a.authFailed)return{error:"invalid_grant",message:a.message};return null}}},93943:(a,b,c)=>{c.d(b,{Dz:()=>i,MF:()=>k,Vq:()=>l,fp:()=>j});var d=c(8521),e=c(26070);let f=e.sr.codex?.maxRefreshAgeMs,g=new Map;function h(a){if(null==a||""===a)return null;if("number"==typeof a)return a<1e12?1e3*a:a;let b=new Date(a).getTime();return Number.isFinite(b)?b:null}function i(a){return h(a?.expiresAt??a?.tokenExpiresAt)}function j(a,b,c=Date.now()){if(!b)return!1;let g=i(b);if(null!==g&&g-c<(0,d.Og)(a))return!0;let k=e.sr[a]?.maxRefreshAgeMs;return!!(k&&b.refreshToken&&function(a,b=Date.now(),c=f){let d=h(a?.lastRefreshAt??a?.lastRefresh??a?.providerSpecificData?.lastRefreshAt);return!d||b-d>=c}(b,c,k))}async function k(a,b,c){let d,e=(d=b?.connectionId||b?.id||b?.email||b?.name||b?.refreshToken?.slice?.(-16)||"default",`${a}:${d}`),f=g.get(e);if(f)return f;let h=Promise.resolve().then(c).finally(()=>{g.delete(e)});return g.set(e,h),h}async function l(a,b,c){return b?k(a,b,async()=>{let f=await (0,d.$B)(a,b,c);return function(a,b,c,f=Date.now()){var g,h;if(!c)return null;if((0,d.jT)(c))return c;let i={},j=new Date(f).toISOString();c.accessToken&&(i.accessToken=c.accessToken),c.apiKey&&(i.apiKey=c.apiKey),c.token&&(i.token=c.token);let k=c.refreshToken??b?.refreshToken;k&&(i.refreshToken=k);let l=c.idToken??b?.idToken;return l&&(i.idToken=l),c.expiresIn?(i.expiresIn=c.expiresIn,i.expiresAt=function(a,b=Date.now()){return a?new Date(b+1e3*a).toISOString():null}(c.expiresIn,f)):c.expiresAt&&(i.expiresAt=c.expiresAt),c.projectId&&(i.projectId=c.projectId),c.providerSpecificData&&(g=b?.providerSpecificData,i.providerSpecificData=(h=c.providerSpecificData)&&"object"==typeof h?{...g||{},...h}:g),c.copilotToken&&(i.copilotToken=c.copilotToken),c.copilotTokenExpiresAt&&(i.copilotTokenExpiresAt=c.copilotTokenExpiresAt),(e.sr[a]?.trackRefreshAt||i.accessToken||i.apiKey||i.token||i.refreshToken||i.copilotToken)&&(i.lastRefreshAt=c.lastRefreshAt||j),i}(a,b,f)}):null}}};
@@ -1 +1 @@
1
- "use strict";exports.id=4037,exports.ids=[3662,4037],exports.modules={3256:(a,b,c)=>{c.r(b),c.d(b,{BACKGROUND_REFRESH_LEAD_MS:()=>g,runBackgroundTokenRefreshTick:()=>p,selectConnectionsNeedingRefresh:()=>m,startBackgroundTokenRefresh:()=>q,stopBackgroundTokenRefresh:()=>r});var d=c(7803),e=c(8521),f=c(93943);let g=18e5,h=new Set(["antigravity","gemini-cli"]),i=!1,j=null,k=null,l=!1;function m(a,b=Date.now()){if(!Array.isArray(a)||0===a.length)return[];let c=[];for(let d of a){if(!d||"oauth"!==String(d.authType||"").toLowerCase().replace(/_/g,"")||!d.refreshToken)continue;let a=(0,f.Dz)(d);if(null===a)continue;let h=(0,e.Og)(d.provider);a-b<Math.max(Number.isFinite(h)?h:0,g)&&c.push(d)}return c}async function n(){let{getProviderConnections:a}=await Promise.resolve().then(c.bind(c,5781));return a({isActive:!0})}async function o(a){let{checkAndRefreshToken:b}=await c.e(7828).then(c.bind(c,67828));return b(a.provider,a,{force:!0})}async function p(a={}){if(!l){l=!0;try{let b=a.loadConnections||n,c=a.refreshConnection||o,e=a.sleep||(a=>new Promise(b=>setTimeout(b,a))),f=await b(),g=m(f,Date.now());if(0===g.length)return;let i=Number(process.env.BG_REFRESH_GOOGLE_DELAY_MS)||12e3,j=Number(process.env.BG_REFRESH_DELAY_MS)||1500;for(let a=0;a<g.length;a++){let b=g[a];try{await c(b),d.info("BG_TOKEN_REFRESH","Connection refresh finished",{id:b.id,email:b.email||b.name||b.id,provider:b.provider})}catch(a){d.warn("BG_TOKEN_REFRESH","Connection refresh failed (swallowed)",{id:b?.id,email:b?.email||b?.name||b?.id,provider:b?.provider,error:a?.message??String(a)})}if(a<g.length-1){let a=h.has(b.provider),c=a?i:j,d=a?Math.floor(4e3*Math.random()):200;await e(c+d)}}}catch(a){d.warn("BG_TOKEN_REFRESH","Tick failed (swallowed)",{error:a?.message??String(a)})}finally{l=!1}}}function q({intervalMs:a}={}){let b;if(i||function(a){if(null==a||""===a)return!1;let b=String(a).trim().toLowerCase();return"1"===b||"true"===b||"yes"===b||"on"===b}(process.env.DISABLE_BACKGROUND_TOKEN_REFRESH)||"phase-production-build"===(b=process.env.NEXT_PHASE||"")||"phase-export"===b||"phase-static"===b)return!1;i=!0;let c=Number.isFinite(a)&&a>0?a:3e5,e=()=>{p().catch(a=>{d.warn("BG_TOKEN_REFRESH","Unhandled tick rejection (swallowed)",{error:a?.message??String(a)})})};return(k=setTimeout(e,1e4)).unref&&k.unref(),(j=setInterval(e,c)).unref&&j.unref(),!0}function r(){k&&(clearTimeout(k),k=null),j&&(clearInterval(j),j=null),i&&(i=!1)}},3662:(a,b,c)=>{c.d(b,{EQ:()=>f,LY:()=>d,O:()=>e,fh:()=>h,t2:()=>i,wf:()=>g});let d={400:{type:"invalid_request_error",code:"bad_request"},401:{type:"authentication_error",code:"invalid_api_key"},402:{type:"billing_error",code:"payment_required"},403:{type:"permission_error",code:"insufficient_quota"},404:{type:"invalid_request_error",code:"model_not_found"},406:{type:"invalid_request_error",code:"model_not_supported"},429:{type:"rate_limit_error",code:"rate_limit_exceeded"},500:{type:"server_error",code:"internal_server_error"},502:{type:"server_error",code:"bad_gateway"},503:{type:"server_error",code:"service_unavailable"},504:{type:"server_error",code:"gateway_timeout"}},e={400:"Bad request",401:"Invalid API key provided",402:"Payment required",403:"You exceeded your current quota",404:"Model not found",406:"Model not supported",429:"Rate limit exceeded",500:"Internal server error",502:"Bad gateway - upstream provider error",503:"Service temporarily unavailable",504:"Gateway timeout"},f={base:2e3,max:3e5,maxLevel:15},g=3e4,h=18e5,i=[{text:"no credentials",cooldownMs:12e4},{text:"request not allowed",cooldownMs:5e3},{text:"improperly formed request",cooldownMs:12e4},{text:"rate limit",backoff:!0},{text:"too many requests",backoff:!0},{text:"quota exceeded",backoff:!0},{text:"capacity",backoff:!0},{text:"overloaded",backoff:!0},{status:401,cooldownMs:12e4},{status:402,cooldownMs:12e4},{status:403,cooldownMs:12e4},{status:404,cooldownMs:12e4},{status:429,backoff:!0}]},7803:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>o,error:()=>r,errorLine:()=>l,fmtThink:()=>m,info:()=>p,line:()=>k,maskKey:()=>v,nextTag:()=>i,request:()=>s,response:()=>t,stream:()=>u,tagForSession:()=>j,warn:()=>q});let d={DEBUG:0,INFO:1,WARN:2,ERROR:3},e=d[process.env.LOG_LEVEL?.toUpperCase?.()]??d.INFO;function f(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}let g=["\uD83D\uDFE2","\uD83D\uDD35","\uD83D\uDFE3","\uD83D\uDFE1","\uD83D\uDFE0","\uD83D\uDD34","⚪","\uD83D\uDFE4"],h=0;function i(){let a=g[h%g.length];return h++,a}function j(a){if(!a)return i();let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)|0;return g[Math.abs(b)%g.length]}function k(a,b,c){e>d.INFO||console.log(`[${f()}] ${a} ${b} ${c}`)}function l(a,b,c){console.log(`[${f()}] ${a} ${b} ${c}`)}function m(a){return a&&a.mode?"none"===a.mode?"off":"auto"===a.mode?"auto":"budget"===a.mode?a.budget>=1e3?`${Math.round(a.budget/1e3)}k`:`${a.budget}`:"level"===a.mode?a.level:null:null}function n(a){if(!a)return"";if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}function o(a,b,c){if(e<=d.DEBUG){let d=c?` ${n(c)}`:"";console.log(`[${f()}] 🔍 [${a}] ${b}${d}`)}}function p(a,b,c){if(e<=d.INFO){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ℹ️ [${a}] ${b}${d}`)}}function q(a,b,c){if(e<=d.WARN){let d=c?` ${n(c)}`:"";console.warn(`[${f()}] ⚠️ [${a}] ${b}${d}`)}}function r(a,b,c){if(e<=d.ERROR){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ❌ [${a}] ${b}${d}`)}}function s(a,b,c){let d=c?` ${n(c)}`:"";console.log(`\x1b[36m[${f()}] 📥 ${a} ${b}${d}\x1b[0m`)}function t(a,b,c){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ${a<400?"\uD83D\uDCE4":"\uD83D\uDCA5"} ${a} (${b}ms)${d}`)}function u(a,b){let c=b?` ${n(b)}`:"";console.log(`[${f()}] 🌊 [STREAM] ${a}${c}`)}function v(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}},35024:(a,b,c)=>{c.d(b,{Ak:()=>e,Yg:()=>h,sr:()=>d.sr,xq:()=>d.xq});var d=c(26070);function e(a){return(a?.providerSpecificData?.baseUrl?.trim()||"http://localhost:11434").replace(/\/$/,"")}let f=d.xq["xiaomi-tokenplan"]?.regions||{},g=d.xq["xiaomi-tokenplan"]?.defaultRegion;function h(a){return f[a?.providerSpecificData?.region]||f[g]}},39006:a=>{a.exports={rE:"0.5.82"}}};
1
+ "use strict";exports.id=4037,exports.ids=[3662,4037],exports.modules={3256:(a,b,c)=>{c.r(b),c.d(b,{BACKGROUND_REFRESH_LEAD_MS:()=>g,runBackgroundTokenRefreshTick:()=>p,selectConnectionsNeedingRefresh:()=>m,startBackgroundTokenRefresh:()=>q,stopBackgroundTokenRefresh:()=>r});var d=c(7803),e=c(8521),f=c(93943);let g=18e5,h=new Set(["antigravity","gemini-cli"]),i=!1,j=null,k=null,l=!1;function m(a,b=Date.now()){if(!Array.isArray(a)||0===a.length)return[];let c=[];for(let d of a){if(!d||"oauth"!==String(d.authType||"").toLowerCase().replace(/_/g,"")||!d.refreshToken)continue;let a=(0,f.Dz)(d);if(null===a)continue;let h=(0,e.Og)(d.provider);a-b<Math.max(Number.isFinite(h)?h:0,g)&&c.push(d)}return c}async function n(){let{getProviderConnections:a}=await Promise.resolve().then(c.bind(c,5781));return a({isActive:!0})}async function o(a){let{checkAndRefreshToken:b}=await c.e(7828).then(c.bind(c,67828));return b(a.provider,a,{force:!0})}async function p(a={}){if(!l){l=!0;try{let b=a.loadConnections||n,c=a.refreshConnection||o,e=a.sleep||(a=>new Promise(b=>setTimeout(b,a))),f=await b(),g=m(f,Date.now());if(0===g.length)return;let i=Number(process.env.BG_REFRESH_GOOGLE_DELAY_MS)||12e3,j=Number(process.env.BG_REFRESH_DELAY_MS)||1500;for(let a=0;a<g.length;a++){let b=g[a];try{await c(b),d.info("BG_TOKEN_REFRESH","Connection refresh finished",{id:b.id,email:b.email||b.name||b.id,provider:b.provider})}catch(a){d.warn("BG_TOKEN_REFRESH","Connection refresh failed (swallowed)",{id:b?.id,email:b?.email||b?.name||b?.id,provider:b?.provider,error:a?.message??String(a)})}if(a<g.length-1){let a=h.has(b.provider),c=a?i:j,d=a?Math.floor(4e3*Math.random()):200;await e(c+d)}}}catch(a){d.warn("BG_TOKEN_REFRESH","Tick failed (swallowed)",{error:a?.message??String(a)})}finally{l=!1}}}function q({intervalMs:a}={}){let b;if(i||function(a){if(null==a||""===a)return!1;let b=String(a).trim().toLowerCase();return"1"===b||"true"===b||"yes"===b||"on"===b}(process.env.DISABLE_BACKGROUND_TOKEN_REFRESH)||"phase-production-build"===(b=process.env.NEXT_PHASE||"")||"phase-export"===b||"phase-static"===b)return!1;i=!0;let c=Number.isFinite(a)&&a>0?a:3e5,e=()=>{p().catch(a=>{d.warn("BG_TOKEN_REFRESH","Unhandled tick rejection (swallowed)",{error:a?.message??String(a)})})};return(k=setTimeout(e,1e4)).unref&&k.unref(),(j=setInterval(e,c)).unref&&j.unref(),!0}function r(){k&&(clearTimeout(k),k=null),j&&(clearInterval(j),j=null),i&&(i=!1)}},3662:(a,b,c)=>{c.d(b,{EQ:()=>f,LY:()=>d,O:()=>e,fh:()=>h,t2:()=>i,wf:()=>g});let d={400:{type:"invalid_request_error",code:"bad_request"},401:{type:"authentication_error",code:"invalid_api_key"},402:{type:"billing_error",code:"payment_required"},403:{type:"permission_error",code:"insufficient_quota"},404:{type:"invalid_request_error",code:"model_not_found"},406:{type:"invalid_request_error",code:"model_not_supported"},429:{type:"rate_limit_error",code:"rate_limit_exceeded"},500:{type:"server_error",code:"internal_server_error"},502:{type:"server_error",code:"bad_gateway"},503:{type:"server_error",code:"service_unavailable"},504:{type:"server_error",code:"gateway_timeout"}},e={400:"Bad request",401:"Invalid API key provided",402:"Payment required",403:"You exceeded your current quota",404:"Model not found",406:"Model not supported",429:"Rate limit exceeded",500:"Internal server error",502:"Bad gateway - upstream provider error",503:"Service temporarily unavailable",504:"Gateway timeout"},f={base:2e3,max:3e5,maxLevel:15},g=3e4,h=18e5,i=[{text:"no credentials",cooldownMs:12e4},{text:"request not allowed",cooldownMs:5e3},{text:"improperly formed request",cooldownMs:12e4},{text:"rate limit",backoff:!0},{text:"too many requests",backoff:!0},{text:"quota exceeded",backoff:!0},{text:"capacity",backoff:!0},{text:"overloaded",backoff:!0},{status:401,cooldownMs:12e4},{status:402,cooldownMs:12e4},{status:403,cooldownMs:12e4},{status:404,cooldownMs:12e4},{status:429,backoff:!0}]},7803:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>o,error:()=>r,errorLine:()=>l,fmtThink:()=>m,info:()=>p,line:()=>k,maskKey:()=>v,nextTag:()=>i,request:()=>s,response:()=>t,stream:()=>u,tagForSession:()=>j,warn:()=>q});let d={DEBUG:0,INFO:1,WARN:2,ERROR:3},e=d[process.env.LOG_LEVEL?.toUpperCase?.()]??d.INFO;function f(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}let g=["\uD83D\uDFE2","\uD83D\uDD35","\uD83D\uDFE3","\uD83D\uDFE1","\uD83D\uDFE0","\uD83D\uDD34","⚪","\uD83D\uDFE4"],h=0;function i(){let a=g[h%g.length];return h++,a}function j(a){if(!a)return i();let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)|0;return g[Math.abs(b)%g.length]}function k(a,b,c){e>d.INFO||console.log(`[${f()}] ${a} ${b} ${c}`)}function l(a,b,c){console.log(`[${f()}] ${a} ${b} ${c}`)}function m(a){return a&&a.mode?"none"===a.mode?"off":"auto"===a.mode?"auto":"budget"===a.mode?a.budget>=1e3?`${Math.round(a.budget/1e3)}k`:`${a.budget}`:"level"===a.mode?a.level:null:null}function n(a){if(!a)return"";if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}function o(a,b,c){if(e<=d.DEBUG){let d=c?` ${n(c)}`:"";console.log(`[${f()}] 🔍 [${a}] ${b}${d}`)}}function p(a,b,c){if(e<=d.INFO){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ℹ️ [${a}] ${b}${d}`)}}function q(a,b,c){if(e<=d.WARN){let d=c?` ${n(c)}`:"";console.warn(`[${f()}] ⚠️ [${a}] ${b}${d}`)}}function r(a,b,c){if(e<=d.ERROR){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ❌ [${a}] ${b}${d}`)}}function s(a,b,c){let d=c?` ${n(c)}`:"";console.log(`\x1b[36m[${f()}] 📥 ${a} ${b}${d}\x1b[0m`)}function t(a,b,c){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ${a<400?"\uD83D\uDCE4":"\uD83D\uDCA5"} ${a} (${b}ms)${d}`)}function u(a,b){let c=b?` ${n(b)}`:"";console.log(`[${f()}] 🌊 [STREAM] ${a}${c}`)}function v(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}},35024:(a,b,c)=>{c.d(b,{Ak:()=>e,Yg:()=>h,sr:()=>d.sr,xq:()=>d.xq});var d=c(26070);function e(a){return(a?.providerSpecificData?.baseUrl?.trim()||"http://localhost:11434").replace(/\/$/,"")}let f=d.xq["xiaomi-tokenplan"]?.regions||{},g=d.xq["xiaomi-tokenplan"]?.defaultRegion;function h(a){return f[a?.providerSpecificData?.region]||f[g]}},39006:a=>{a.exports={rE:"0.5.83"}}};
@@ -4,4 +4,4 @@
4
4
  data: ${d}
5
5
 
6
6
  `)}catch{}}}),f.stderr.on("data",b=>console.log(`[mcp:${a}]`,b.toString().trim())),f.on("exit",c=>{console.log(`[mcp:${a}] exited`,c),b.delete(a)}),c}a.exports={getOrSpawn:j,registerSession:function(a,b){let c=j(a),d=e.randomUUID();return c.sessions.set(d,b),d},unregisterSession:function(a,b){let c=h().get(a);if(c&&(c.sessions.delete(b),0===c.sessions.size)){try{c.proc.kill()}catch{}h().delete(a)}},sendToChild:function(a,b){let c=h().get(a);if(!c?.proc?.stdin?.writable)throw Error(`Bridge not running: ${a}`);c.proc.stdin.write(`${JSON.stringify(b)}
7
- `)},isRunning:function(a){let b=h().get(a);return!!(b?.proc&&!b.proc.killed&&null===b.proc.exitCode)},findPlugin:i,killAllBridges:function(){let a=h();for(let[b,c]of a){try{c.proc.kill()}catch{}a.delete(b)}}}},28286:a=>{a.exports={DEFAULT_PLUGINS:[{name:"exa",title:"Exa",description:"Real-time web search and code documentation",url:"https://mcp.exa.ai/mcp",transport:"http",oauth:!1,toolNames:["web_search_exa","web_fetch_exa"]},{name:"tavily",title:"Tavily",description:"Real-time web search optimized for LLM agents",url:"https://mcp.tavily.com/mcp",transport:"http",oauth:!0,toolNames:["tavily_search","tavily_extract","tavily_crawl","tavily_map"]}],LOCAL_STDIO_PLUGINS:[{name:"browsermcp",title:"Browser MCP",description:"Control your running Chrome (requires Chrome extension)",extensionUrl:"https://chromewebstore.google.com/detail/browser-mcp-automate-your/bjfgambnhccakkhmkepdoekmckoijdlc",command:"npx",args:["-y","@browsermcp/mcp@latest"],toolNames:["browser_navigate","browser_snapshot","browser_click","browser_type","browser_screenshot","browser_get_console_logs","browser_wait","browser_press_key","browser_go_back","browser_go_forward"]}],buildManagedMcpServers:function(a){let b=Array.isArray(a)?a:[],c=[],d=new Set;for(let a of b){if(!a?.name||!a?.url||d.has(a.name))continue;d.add(a.name);let b={name:a.name,url:a.url,transport:a.transport||(/\/sse(\b|\/)/i.test(a.url)?"sse":"http")};if(a.oauth&&(b.oauth=!0),Array.isArray(a.toolNames)&&a.toolNames.length>0){let c=`${a.name}-`,d=new Set;for(let b of a.toolNames){if("string"!=typeof b||!b)continue;let a=b;for(;a.startsWith(c);)a=a.slice(c.length);d.add(a)}let e={};for(let a of d)e[a]="allow",e[`${c}${a}`]="allow";b.toolPolicy=e}c.push(b)}return c}}},76476:(a,b,c)=>{c.d(b,{N:()=>n,v:()=>m});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(21820),i=c.n(h);let j=process.env.DATA_DIR||("win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),"9router"):g().join(i().homedir(),".9router")),k=g().join(j,"mitm","aliases.json");function l(a){let b=g().dirname(k);e().mkdirSync(b,{recursive:!0});let c=`${k}.tmp`;e().writeFileSync(c,JSON.stringify(a,null,2),"utf8"),e().renameSync(c,k)}async function m(){try{let{getMitmAlias:a}=await Promise.resolve().then(c.bind(c,9460)),b=await a();l(b||{})}catch(a){console.log("[mitmAliasCache] sync failed:",a.message)}}function n(a,b){try{let c={};if(e().existsSync(k))try{c=JSON.parse(e().readFileSync(k,"utf8"))}catch{}c[a]=b||{},l(c)}catch(a){console.log("[mitmAliasCache] write failed:",a.message)}}},94123:(a,b,c)=>{c.d(b,{Ay:()=>v,Zh:()=>u});var d=c(21820),e=c.n(d),f=c(1932),g=c(33873),h=c(29021),i=c(89718),j=c(66457),k=c(96182),l=c(76476),m=c(17113);if(!process.env.MITM_SERVER_PATH)try{let a=(0,f.fileURLToPath)("file:///Users/xuliang/Documents/project/9router/src/shared/services/initializeApp.js"),b=(0,g.dirname)((0,g.dirname)(a)),c=(0,g.join)(b,"mitm","server.js");(0,h.existsSync)(c)&&(process.env.MITM_SERVER_PATH=c)}catch{}try{(0,k.initDbHooks)(i.mt,i.Xx)}catch{}process.setMaxListeners(20);let n=global.__appSingleton??={signalHandlersRegistered:!1,watchdogInterval:null,networkMonitorInterval:null,lastNetworkFingerprint:null,lastWatchdogTick:Date.now(),lastOnline:null,mitmStartInProgress:!1,tunnelAutoResumed:!1,tailscaleAutoResumed:!1};async function o(){var a;await (0,i.bI)();let b=await (0,i.mt)();b.tunnelEnabled&&!n.tunnelAutoResumed&&(n.tunnelAutoResumed=!0,console.log("[InitApp] Tunnel was enabled, auto-resuming..."),r("startup").catch(a=>console.log("[InitApp] Tunnel resume failed:",a.message))),b.tailscaleEnabled&&!n.tailscaleAutoResumed&&(n.tailscaleAutoResumed=!0,console.log("[InitApp] Tailscale was enabled, auto-resuming..."),s("startup").catch(a=>console.log("[InitApp] Tailscale resume failed:",a.message))),b.tunnelEnabled&&(0,j.Al)().catch(()=>{}),b.mitmEnabled&&((0,l.v)().catch(()=>{}),p(b)),u(b),a=b,[a?.claudeAutoPing,a?.codexAutoPing].some(a=>Object.values(a?.connections||{}).some(Boolean))&&Promise.all([c.e(7774),c.e(8843),c.e(6070),c.e(869),c.e(8920),c.e(436),c.e(3943),c.e(24),c.e(3225),c.e(6922),c.e(1329),c.e(8499),c.e(318),c.e(8416),c.e(8895),c.e(7211),c.e(8363)]).then(c.bind(c,1133)).then(({startQuotaAutoPing:a})=>a()).catch(a=>console.log("[AutoPing] scheduler start failed:",a.message)),Promise.all([c.e(8843),c.e(6070),c.e(436),c.e(3943),c.e(4037)]).then(c.bind(c,3256)).then(({startBackgroundTokenRefresh:a})=>a()).catch(a=>console.log("[BackgroundTokenRefresh] scheduler start failed:",a.message))}async function p(a){if(!n.mitmStartInProgress){n.mitmStartInProgress=!0;try{if(!a.mitmEnabled||(await (0,k.getMitmStatus)()).running)return;let b=await (0,k.loadEncryptedPassword)();if(!b&&"win32"!==process.platform)return void console.log("[InitApp] MITM was enabled but no saved password found, skipping auto-start");let c=(await (0,i.PX)()).find(a=>!1!==a.isActive);console.log("[InitApp] MITM was enabled, auto-starting..."),await (0,k.startMitm)(c?.key||"sk_9router",b),console.log("[InitApp] MITM auto-started");try{await (0,k.restoreToolDNS)(b),console.log("[InitApp] DNS restored from saved state")}catch(a){console.log("[InitApp] DNS restore failed:",a.message)}}catch(a){console.log("[InitApp] MITM auto-start failed:",a.message)}finally{n.mitmStartInProgress=!1}}}let q=/^(startup|netchange|sleep|sleep\+netchange|online|unexpected-exit)$/;async function r(a){let b=(0,j.Qn)();if(!(await (0,i.mt)()).tunnelEnabled||b.cancelToken.cancelled||b.spawnInProgress)return;let c=q.test(a);if(!(0,j.nN)()){if(!c&&Date.now()-b.lastRestartAt<j.Lh)return void console.log(`[Tunnel] degraded but cooldown active, skip (${a})`);if(await (0,j.u7)()){console.log(`[Tunnel] safeRestart (${a}) — tunnel unreachable${c?" [force]":""}`);try{await (0,j.cb)(),b.lastRestartAt=Date.now(),console.log("[Tunnel] restart success")}catch(a){/cloudflared killed|tunnel cancelled/.test(a.message)||console.log("[Tunnel] restart failed:",a.message)}}}}async function s(a){let b=(0,j.oN)();if(!(await (0,i.mt)()).tailscaleEnabled||b.cancelToken.cancelled||b.spawnInProgress||("startup"===a?await (0,j.hp)():(0,j.Kp)()))return;if((0,j.si)()&&b.activeLocalPort){try{await (0,j.LC)(b.activeLocalPort),b.lastRestartAt=Date.now(),console.log("[Tailscale] funnel re-established (daemon alive)")}catch(a){console.log("[Tailscale] funnel recovery failed:",a.message)}return}let c=q.test(a);if(!c&&Date.now()-b.lastRestartAt<j.Lh)return void console.log(`[Tailscale] degraded but cooldown active, skip (${a})`);if(await (0,j.u7)()){console.log(`[Tailscale] safeRestart (${a}) — daemon not running${c?" [force]":""}`);try{await (0,j.mh)(),b.lastRestartAt=Date.now(),console.log("[Tailscale] restart success")}catch(a){console.log("[Tailscale] restart failed:",a.message)}}}function t(){let a=e().networkInterfaces(),b=[];for(let[c,d]of Object.entries(a))if(d&&!j.Lx.test(c))for(let a of d)a.internal||"IPv4"!==a.family||b.push(`${c}:${a.address}`);return b.sort().join("|")}function u(a){if(a?.tunnelEnabled||a?.tailscaleEnabled){!n.watchdogInterval&&(n.watchdogInterval=setInterval(()=>{r("watchdog").catch(()=>{}),s("watchdog").catch(()=>{})},j.DA),n.watchdogInterval.unref&&n.watchdogInterval.unref()),!n.networkMonitorInterval&&(n.lastNetworkFingerprint=t(),n.lastWatchdogTick=Date.now(),n.lastOnline=null,n.networkMonitorInterval=setInterval(async()=>{try{let a=Date.now(),b=a-n.lastWatchdogTick;n.lastWatchdogTick=a;let c=t(),d=c!==n.lastNetworkFingerprint,e=b>6*j.rI;d&&(n.lastNetworkFingerprint=c);let f=await (0,j.u7)(),g=!1===n.lastOnline;if(n.lastOnline=f,!f||!d&&!e&&!g)return;await new Promise(a=>setTimeout(a,j.cw));let h=g?"online":e&&d?"sleep+netchange":e?"sleep":"netchange";r(h).catch(()=>{}),s(h).catch(()=>{})}catch(a){console.log("[NetworkMonitor] error:",a.message)}},j.rI),n.networkMonitorInterval.unref&&n.networkMonitorInterval.unref());return}n.watchdogInterval&&(clearInterval(n.watchdogInterval),n.watchdogInterval=null),n.networkMonitorInterval&&(clearInterval(n.networkMonitorInterval),n.networkMonitorInterval=null,n.lastNetworkFingerprint=null,n.lastOnline=null)}let v=async function a(){try{if(!n.signalHandlersRegistered){let a=()=>{try{(0,k.removeAllDNSEntriesSync)()}catch{}try{(0,m.killAllBridges)()}catch{}(0,j.ss)(),process.exit()};process.on("SIGINT",a),process.on("SIGTERM",a),process.on("exit",()=>{try{(0,k.removeAllDNSEntriesSync)()}catch{}}),n.signalHandlersRegistered=!0}(0,j.X$)(()=>{r("unexpected-exit").catch(()=>{})}),setTimeout(()=>{o().catch(a=>console.error("[InitApp] deferred startup failed:",a.message))},3e3)}catch(a){console.error("[InitApp] Error:",a)}}}};
7
+ `)},isRunning:function(a){let b=h().get(a);return!!(b?.proc&&!b.proc.killed&&null===b.proc.exitCode)},findPlugin:i,killAllBridges:function(){let a=h();for(let[b,c]of a){try{c.proc.kill()}catch{}a.delete(b)}}}},28286:a=>{a.exports={DEFAULT_PLUGINS:[{name:"exa",title:"Exa",description:"Real-time web search and code documentation",url:"https://mcp.exa.ai/mcp",transport:"http",oauth:!1,toolNames:["web_search_exa","web_fetch_exa"]},{name:"tavily",title:"Tavily",description:"Real-time web search optimized for LLM agents",url:"https://mcp.tavily.com/mcp",transport:"http",oauth:!0,toolNames:["tavily_search","tavily_extract","tavily_crawl","tavily_map"]}],LOCAL_STDIO_PLUGINS:[{name:"browsermcp",title:"Browser MCP",description:"Control your running Chrome (requires Chrome extension)",extensionUrl:"https://chromewebstore.google.com/detail/browser-mcp-automate-your/bjfgambnhccakkhmkepdoekmckoijdlc",command:"npx",args:["-y","@browsermcp/mcp@latest"],toolNames:["browser_navigate","browser_snapshot","browser_click","browser_type","browser_screenshot","browser_get_console_logs","browser_wait","browser_press_key","browser_go_back","browser_go_forward"]}],buildManagedMcpServers:function(a){let b=Array.isArray(a)?a:[],c=[],d=new Set;for(let a of b){if(!a?.name||!a?.url||d.has(a.name))continue;d.add(a.name);let b={name:a.name,url:a.url,transport:a.transport||(/\/sse(\b|\/)/i.test(a.url)?"sse":"http")};if(a.oauth&&(b.oauth=!0),Array.isArray(a.toolNames)&&a.toolNames.length>0){let c=`${a.name}-`,d=new Set;for(let b of a.toolNames){if("string"!=typeof b||!b)continue;let a=b;for(;a.startsWith(c);)a=a.slice(c.length);d.add(a)}let e={};for(let a of d)e[a]="allow",e[`${c}${a}`]="allow";b.toolPolicy=e}c.push(b)}return c}}},76476:(a,b,c)=>{c.d(b,{N:()=>n,v:()=>m});var d=c(29021),e=c.n(d),f=c(33873),g=c.n(f),h=c(21820),i=c.n(h);let j=process.env.DATA_DIR||("win32"===process.platform?g().join(process.env.APPDATA||g().join(i().homedir(),"AppData","Roaming"),"9router"):g().join(i().homedir(),".9router")),k=g().join(j,"mitm","aliases.json");function l(a){let b=g().dirname(k);e().mkdirSync(b,{recursive:!0});let c=`${k}.tmp`;e().writeFileSync(c,JSON.stringify(a,null,2),"utf8"),e().renameSync(c,k)}async function m(){try{let{getMitmAlias:a}=await Promise.resolve().then(c.bind(c,9460)),b=await a();l(b||{})}catch(a){console.log("[mitmAliasCache] sync failed:",a.message)}}function n(a,b){try{let c={};if(e().existsSync(k))try{c=JSON.parse(e().readFileSync(k,"utf8"))}catch{}c[a]=b||{},l(c)}catch(a){console.log("[mitmAliasCache] write failed:",a.message)}}},94123:(a,b,c)=>{c.d(b,{Ay:()=>v,Zh:()=>u});var d=c(21820),e=c.n(d),f=c(1932),g=c(33873),h=c(29021),i=c(89718),j=c(66457),k=c(96182),l=c(76476),m=c(17113);if(!process.env.MITM_SERVER_PATH)try{let a=(0,f.fileURLToPath)("file:///home/runner/work/9router/9router/src/shared/services/initializeApp.js"),b=(0,g.dirname)((0,g.dirname)(a)),c=(0,g.join)(b,"mitm","server.js");(0,h.existsSync)(c)&&(process.env.MITM_SERVER_PATH=c)}catch{}try{(0,k.initDbHooks)(i.mt,i.Xx)}catch{}process.setMaxListeners(20);let n=global.__appSingleton??={signalHandlersRegistered:!1,watchdogInterval:null,networkMonitorInterval:null,lastNetworkFingerprint:null,lastWatchdogTick:Date.now(),lastOnline:null,mitmStartInProgress:!1,tunnelAutoResumed:!1,tailscaleAutoResumed:!1};async function o(){var a;await (0,i.bI)();let b=await (0,i.mt)();b.tunnelEnabled&&!n.tunnelAutoResumed&&(n.tunnelAutoResumed=!0,console.log("[InitApp] Tunnel was enabled, auto-resuming..."),r("startup").catch(a=>console.log("[InitApp] Tunnel resume failed:",a.message))),b.tailscaleEnabled&&!n.tailscaleAutoResumed&&(n.tailscaleAutoResumed=!0,console.log("[InitApp] Tailscale was enabled, auto-resuming..."),s("startup").catch(a=>console.log("[InitApp] Tailscale resume failed:",a.message))),b.tunnelEnabled&&(0,j.Al)().catch(()=>{}),b.mitmEnabled&&((0,l.v)().catch(()=>{}),p(b)),u(b),a=b,[a?.claudeAutoPing,a?.codexAutoPing].some(a=>Object.values(a?.connections||{}).some(Boolean))&&Promise.all([c.e(7774),c.e(8843),c.e(6070),c.e(869),c.e(8920),c.e(436),c.e(3943),c.e(24),c.e(3225),c.e(6922),c.e(1329),c.e(8499),c.e(318),c.e(8416),c.e(8895),c.e(7211),c.e(8363)]).then(c.bind(c,1133)).then(({startQuotaAutoPing:a})=>a()).catch(a=>console.log("[AutoPing] scheduler start failed:",a.message)),Promise.all([c.e(8843),c.e(6070),c.e(436),c.e(3943),c.e(4037)]).then(c.bind(c,3256)).then(({startBackgroundTokenRefresh:a})=>a()).catch(a=>console.log("[BackgroundTokenRefresh] scheduler start failed:",a.message))}async function p(a){if(!n.mitmStartInProgress){n.mitmStartInProgress=!0;try{if(!a.mitmEnabled||(await (0,k.getMitmStatus)()).running)return;let b=await (0,k.loadEncryptedPassword)();if(!b&&"win32"!==process.platform)return void console.log("[InitApp] MITM was enabled but no saved password found, skipping auto-start");let c=(await (0,i.PX)()).find(a=>!1!==a.isActive);console.log("[InitApp] MITM was enabled, auto-starting..."),await (0,k.startMitm)(c?.key||"sk_9router",b),console.log("[InitApp] MITM auto-started");try{await (0,k.restoreToolDNS)(b),console.log("[InitApp] DNS restored from saved state")}catch(a){console.log("[InitApp] DNS restore failed:",a.message)}}catch(a){console.log("[InitApp] MITM auto-start failed:",a.message)}finally{n.mitmStartInProgress=!1}}}let q=/^(startup|netchange|sleep|sleep\+netchange|online|unexpected-exit)$/;async function r(a){let b=(0,j.Qn)();if(!(await (0,i.mt)()).tunnelEnabled||b.cancelToken.cancelled||b.spawnInProgress)return;let c=q.test(a);if(!(0,j.nN)()){if(!c&&Date.now()-b.lastRestartAt<j.Lh)return void console.log(`[Tunnel] degraded but cooldown active, skip (${a})`);if(await (0,j.u7)()){console.log(`[Tunnel] safeRestart (${a}) — tunnel unreachable${c?" [force]":""}`);try{await (0,j.cb)(),b.lastRestartAt=Date.now(),console.log("[Tunnel] restart success")}catch(a){/cloudflared killed|tunnel cancelled/.test(a.message)||console.log("[Tunnel] restart failed:",a.message)}}}}async function s(a){let b=(0,j.oN)();if(!(await (0,i.mt)()).tailscaleEnabled||b.cancelToken.cancelled||b.spawnInProgress||("startup"===a?await (0,j.hp)():(0,j.Kp)()))return;if((0,j.si)()&&b.activeLocalPort){try{await (0,j.LC)(b.activeLocalPort),b.lastRestartAt=Date.now(),console.log("[Tailscale] funnel re-established (daemon alive)")}catch(a){console.log("[Tailscale] funnel recovery failed:",a.message)}return}let c=q.test(a);if(!c&&Date.now()-b.lastRestartAt<j.Lh)return void console.log(`[Tailscale] degraded but cooldown active, skip (${a})`);if(await (0,j.u7)()){console.log(`[Tailscale] safeRestart (${a}) — daemon not running${c?" [force]":""}`);try{await (0,j.mh)(),b.lastRestartAt=Date.now(),console.log("[Tailscale] restart success")}catch(a){console.log("[Tailscale] restart failed:",a.message)}}}function t(){let a=e().networkInterfaces(),b=[];for(let[c,d]of Object.entries(a))if(d&&!j.Lx.test(c))for(let a of d)a.internal||"IPv4"!==a.family||b.push(`${c}:${a.address}`);return b.sort().join("|")}function u(a){if(a?.tunnelEnabled||a?.tailscaleEnabled){!n.watchdogInterval&&(n.watchdogInterval=setInterval(()=>{r("watchdog").catch(()=>{}),s("watchdog").catch(()=>{})},j.DA),n.watchdogInterval.unref&&n.watchdogInterval.unref()),!n.networkMonitorInterval&&(n.lastNetworkFingerprint=t(),n.lastWatchdogTick=Date.now(),n.lastOnline=null,n.networkMonitorInterval=setInterval(async()=>{try{let a=Date.now(),b=a-n.lastWatchdogTick;n.lastWatchdogTick=a;let c=t(),d=c!==n.lastNetworkFingerprint,e=b>6*j.rI;d&&(n.lastNetworkFingerprint=c);let f=await (0,j.u7)(),g=!1===n.lastOnline;if(n.lastOnline=f,!f||!d&&!e&&!g)return;await new Promise(a=>setTimeout(a,j.cw));let h=g?"online":e&&d?"sleep+netchange":e?"sleep":"netchange";r(h).catch(()=>{}),s(h).catch(()=>{})}catch(a){console.log("[NetworkMonitor] error:",a.message)}},j.rI),n.networkMonitorInterval.unref&&n.networkMonitorInterval.unref());return}n.watchdogInterval&&(clearInterval(n.watchdogInterval),n.watchdogInterval=null),n.networkMonitorInterval&&(clearInterval(n.networkMonitorInterval),n.networkMonitorInterval=null,n.lastNetworkFingerprint=null,n.lastOnline=null)}let v=async function a(){try{if(!n.signalHandlersRegistered){let a=()=>{try{(0,k.removeAllDNSEntriesSync)()}catch{}try{(0,m.killAllBridges)()}catch{}(0,j.ss)(),process.exit()};process.on("SIGINT",a),process.on("SIGTERM",a),process.on("exit",()=>{try{(0,k.removeAllDNSEntriesSync)()}catch{}}),n.signalHandlersRegistered=!0}(0,j.X$)(()=>{r("unexpected-exit").catch(()=>{})}),setTimeout(()=>{o().catch(a=>console.error("[InitApp] deferred startup failed:",a.message))},3e3)}catch(a){console.error("[InitApp] Error:",a)}}}};
@@ -1 +1 @@
1
- "use strict";exports.id=4572,exports.ids=[615,3662,4572],exports.modules={3662:(a,b,c)=>{c.d(b,{EQ:()=>f,LY:()=>d,O:()=>e,fh:()=>h,t2:()=>i,wf:()=>g});let d={400:{type:"invalid_request_error",code:"bad_request"},401:{type:"authentication_error",code:"invalid_api_key"},402:{type:"billing_error",code:"payment_required"},403:{type:"permission_error",code:"insufficient_quota"},404:{type:"invalid_request_error",code:"model_not_found"},406:{type:"invalid_request_error",code:"model_not_supported"},429:{type:"rate_limit_error",code:"rate_limit_exceeded"},500:{type:"server_error",code:"internal_server_error"},502:{type:"server_error",code:"bad_gateway"},503:{type:"server_error",code:"service_unavailable"},504:{type:"server_error",code:"gateway_timeout"}},e={400:"Bad request",401:"Invalid API key provided",402:"Payment required",403:"You exceeded your current quota",404:"Model not found",406:"Model not supported",429:"Rate limit exceeded",500:"Internal server error",502:"Bad gateway - upstream provider error",503:"Service temporarily unavailable",504:"Gateway timeout"},f={base:2e3,max:3e5,maxLevel:15},g=3e4,h=18e5,i=[{text:"no credentials",cooldownMs:12e4},{text:"request not allowed",cooldownMs:5e3},{text:"improperly formed request",cooldownMs:12e4},{text:"rate limit",backoff:!0},{text:"too many requests",backoff:!0},{text:"quota exceeded",backoff:!0},{text:"capacity",backoff:!0},{text:"overloaded",backoff:!0},{status:401,cooldownMs:12e4},{status:402,cooldownMs:12e4},{status:403,cooldownMs:12e4},{status:404,cooldownMs:12e4},{status:429,backoff:!0}]},7803:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>o,error:()=>r,errorLine:()=>l,fmtThink:()=>m,info:()=>p,line:()=>k,maskKey:()=>v,nextTag:()=>i,request:()=>s,response:()=>t,stream:()=>u,tagForSession:()=>j,warn:()=>q});let d={DEBUG:0,INFO:1,WARN:2,ERROR:3},e=d[process.env.LOG_LEVEL?.toUpperCase?.()]??d.INFO;function f(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}let g=["\uD83D\uDFE2","\uD83D\uDD35","\uD83D\uDFE3","\uD83D\uDFE1","\uD83D\uDFE0","\uD83D\uDD34","⚪","\uD83D\uDFE4"],h=0;function i(){let a=g[h%g.length];return h++,a}function j(a){if(!a)return i();let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)|0;return g[Math.abs(b)%g.length]}function k(a,b,c){e>d.INFO||console.log(`[${f()}] ${a} ${b} ${c}`)}function l(a,b,c){console.log(`[${f()}] ${a} ${b} ${c}`)}function m(a){return a&&a.mode?"none"===a.mode?"off":"auto"===a.mode?"auto":"budget"===a.mode?a.budget>=1e3?`${Math.round(a.budget/1e3)}k`:`${a.budget}`:"level"===a.mode?a.level:null:null}function n(a){if(!a)return"";if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}function o(a,b,c){if(e<=d.DEBUG){let d=c?` ${n(c)}`:"";console.log(`[${f()}] 🔍 [${a}] ${b}${d}`)}}function p(a,b,c){if(e<=d.INFO){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ℹ️ [${a}] ${b}${d}`)}}function q(a,b,c){if(e<=d.WARN){let d=c?` ${n(c)}`:"";console.warn(`[${f()}] ⚠️ [${a}] ${b}${d}`)}}function r(a,b,c){if(e<=d.ERROR){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ❌ [${a}] ${b}${d}`)}}function s(a,b,c){let d=c?` ${n(c)}`:"";console.log(`\x1b[36m[${f()}] 📥 ${a} ${b}${d}\x1b[0m`)}function t(a,b,c){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ${a<400?"\uD83D\uDCE4":"\uD83D\uDCA5"} ${a} (${b}ms)${d}`)}function u(a,b){let c=b?` ${n(b)}`:"";console.log(`[${f()}] 🌊 [STREAM] ${a}${c}`)}function v(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}},12557:(a,b,c)=>{c.d(b,{Bl:()=>j,Qo:()=>f,S5:()=>l,hk:()=>e,kJ:()=>k});var d=c(3662);function e(a,b,c=0){let f=b?("string"==typeof b?b:JSON.stringify(b)).toLowerCase():"";for(let b of d.t2)if(b.text&&f&&f.includes(b.text)||b.status&&b.status===a){if(b.backoff){let a=Math.min(c+1,d.EQ.maxLevel);return{shouldFallback:!0,cooldownMs:function(a=0){let b=Math.max(0,a-1);return Math.min(d.EQ.base*Math.pow(2,b),d.EQ.max)}(a),newBackoffLevel:a}}return{shouldFallback:!0,cooldownMs:b.cooldownMs}}return a>=400&&a<500&&401!==a&&402!==a&&403!==a&&429!==a?{shouldFallback:!1,cooldownMs:0}:{shouldFallback:!0,cooldownMs:d.wf}}function f(a){if(!a)return"";let b=new Date(a).getTime()-Date.now();if(b<=0)return"reset after 0s";let c=Math.ceil(b/1e3),d=Math.floor(c/3600),e=Math.floor(c%3600/60),f=c%60,g=[];return d>0&&g.push(`${d}h`),e>0&&g.push(`${e}m`),(f>0||0===g.length)&&g.push(`${f}s`),`reset after ${g.join(" ")}`}let g="modelLock_",h=`${g}__all`;function i(a){return a?`${g}${a}`:h}function j(a,b){let c=a[i(b)]||a[h];return!!c&&new Date(c).getTime()>Date.now()}function k(a){if(!a)return null;let b=null,c=Date.now();for(let[d,e]of Object.entries(a)){if(!d.startsWith(g)||!e)continue;let a=new Date(e).getTime();a<=c||(!b||a<b)&&(b=a)}return b?new Date(b).toISOString():null}function l(a,b){return{[i(a)]:new Date(Date.now()+b).toISOString()}}},35024:(a,b,c)=>{c.d(b,{Ak:()=>e,Yg:()=>h,sr:()=>d.sr,xq:()=>d.xq});var d=c(26070);function e(a){return(a?.providerSpecificData?.baseUrl?.trim()||"http://localhost:11434").replace(/\/$/,"")}let f=d.xq["xiaomi-tokenplan"]?.regions||{},g=d.xq["xiaomi-tokenplan"]?.defaultRegion;function h(a){return f[a?.providerSpecificData?.region]||f[g]}},39006:a=>{a.exports={rE:"0.5.82"}},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:()=>y,wb:()=>x,br:()=>l,wG:()=>v,zt:()=>t,gb:()=>q,gC:()=>r,mq:()=>p,rs:()=>u});var d=c(8843);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","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)])),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=d.default.filter(a=>a.features?.usage).map(a=>a.id),y=d.default.filter(a=>a.features?.usageApikey).map(a=>a.id)},43659:(a,b,c)=>{c.d(b,{A1:()=>h,lR:()=>j,wO:()=>i,xJ:()=>e,yj:()=>f,zL:()=>g});var d=c(3662);function e(a,b){let c=d.LY[a]||(a>=500?{type:"server_error",code:"internal_server_error"}:{type:"invalid_request_error",code:""});return{error:{message:b||d.O[a]||"An error occurred",type:c.type,code:c.code}}}function f(a,b){return new Response(JSON.stringify(e(a,b)),{status:a,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}async function g(a,b=null){let c="";try{c=await a.text()}catch{c=""}if(b&&"function"==typeof b.parseError)try{let e=b.parseError(a,c);if(e&&"object"==typeof e){let b=e.message||d.O[a.status]||`Upstream error: ${a.status}`;return{statusCode:e.status||a.status,message:b,resetsAtMs:e.resetsAtMs}}}catch{}let e="";try{let a=JSON.parse(c);e=a.error?.message||a.message||a.error||c}catch{e=c}let f=("string"==typeof e?e:JSON.stringify(e))||d.O[a.status]||`Upstream error: ${a.status}`;return{statusCode:a.status,message:f}}function h(a,b,c){return{success:!1,status:a,error:b,resetsAtMs:c,response:f(a,b)}}function i(a,b,c,d){let e=Math.max(Math.ceil((new Date(c).getTime()-Date.now())/1e3),1);return new Response(JSON.stringify({error:{message:`${b} (${d})`}}),{status:a,headers:{"Content-Type":"application/json","Retry-After":String(e)}})}function j(a,b,c,d){let e=d||a.code||"FETCH_FAILED",f=a.message||"Unknown error",g=a.cause?.code,h=a.cause?.message,i=g||h?` (cause: ${[g,h].filter(Boolean).join(": ")})`:"";return`[${e}]: ${f}${i}`}},45974:(a,b,c)=>{c.d(b,{XJ:()=>p,d0:()=>m,vO:()=>l});var d=c(39326),e=c(91211),f=c(7803);let g=new Map,h=new Map,i=new Map,j=new Map,k=new Map;function l(a,b){let c=`${a}|${b}`;j.delete(c);let d=k.get(c);if(void 0===d)return;k.delete(c);let e=g.get(a);e?.[b]?.resetAt===new Date(d).toISOString()&&(delete e[b],g.set(a,e))}function m(){return g}async function n(a,b,c){let d=Date.now(),e=i.get(a);if(e)return e;let j=h.get(a)||0;if(d-j<3e4)return f.debug("AG_QUOTA",`${a.slice(0,8)} | skip refresh (${Math.round((d-j)/1e3)}s ago)`),g.get(a)||null;h.set(a,d);let k=o(a,b,c,d);i.set(a,k);try{return await k}finally{i.delete(a)}}async function o(a,b,c,h){try{let f=await (0,d.B)(c||{}),h={connectionProxyEnabled:!0===f.connectionProxyEnabled,connectionProxyUrl:f.connectionProxyUrl||"",connectionNoProxy:f.connectionNoProxy||"",vercelRelayUrl:f.vercelRelayUrl||"",strictProxy:!0===f.strictProxy},i=await (0,e.c)(b,c,h);if(!i?.quotas||i.message)return null;return g.set(a,function(a,b){let c=Date.now();for(let[d,e]of k)if(d.startsWith(`${a}|`)){if(e<=c){k.delete(d);continue}b[d.slice(a.length+1)]={remainingPercentage:0,resetAt:new Date(e).toISOString()}}return b}(a,i.quotas)),i.quotas}catch(b){return f.warn("AG_QUOTA",`${a.slice(0,8)} | refresh failed: ${b.message}`),null}}async function p(a,b,c,d,e){f.info("AG_QUOTA",`${a.slice(0,8)} | ${b} on ${c} — refreshing quota`);let h=(await n(a,d,e))?.[c];if(!h||h.remainingPercentage>0){let d=`${a}|${c}`,e=Date.now(),i=j.get(d),l=i&&e-i.windowStart<=6e4?i.windowStart:e,m=i&&l===i.windowStart?i.count+1:1;if(j.set(d,{count:m,windowStart:l}),m>=3){j.delete(d);let i=e+9e5,l=h?`${Math.round(h.remainingPercentage)}%`:"unknown";f.warn("AG_QUOTA",`${a.slice(0,8)} | STRIKE_${b} ${c} — ${m}x 429 (quota ${l}); CACHE_BLOCK 15m`);let n=g.get(a)||{};return n[c]={remainingPercentage:0,resetAt:new Date(i).toISOString()},g.set(a,n),k.set(d,i),i}return null}if(j.delete(`${a}|${c}`),!h.resetAt)return null;let i=new Date(h.resetAt).getTime();return i<=Date.now()?null:(f.warn("AG_QUOTA",`${a.slice(0,8)} | UPSTREAM_${b} ${c} — quota exhausted; CACHE_BLOCK until ${h.resetAt}`),i)}},80238:(a,b,c)=>{c.d(b,{Pt:()=>n,Tr:()=>o,c1:()=>l,kI:()=>p,vk:()=>m});var d=c(89718),e=c(39326),f=c(12557),g=c(3662),h=c(40615),i=c(45974),j=c(7803);let k=Promise.resolve();async function l(a,b=null,c=null,g={}){let m,n=b instanceof Set?b:b?new Set([b]):new Set,o=g?.preferredConnectionId||null,p=k;k=new Promise(a=>{m=a});try{let b;await p;let g=(0,h.rs)(a);if(h.IS[g]?.noAuth){let a=((await (0,d.mt)()).providerStrategies||{})[g]||{},b=a.rotateStrategy||"none",c=a.proxyPoolId||null;if("none"!==b){let a=(await (0,d.ui)({isActive:!0})).filter(a=>a.proxyUrl).map(a=>a.id);c=(0,e.p)(a,b,g)}let f=await (0,e.B)({proxyPoolId:c||""});return{id:"noauth",connectionName:"Public",isActive:!0,accessToken:"public",providerSpecificData:{connectionProxyEnabled:f.connectionProxyEnabled,connectionProxyUrl:f.connectionProxyUrl,connectionNoProxy:f.connectionNoProxy,connectionProxyPoolId:f.proxyPoolId||null,vercelRelayUrl:f.vercelRelayUrl||""}}}let k=await (0,d.getProviderConnections)({provider:g,isActive:!0});if(j.debug("AUTH",`${a} | total connections: ${k.length}, excludeIds: ${n.size>0?[...n].join(","):"none"}, model: ${c||"any"}`),0===k.length)return j.warn("AUTH",`No credentials for ${a}`),null;let l="antigravity"===g,m=l&&c?(0,i.d0)():null,q=k.filter(a=>{if(n.has(a.id)||(0,f.Bl)(a,c))return!1;if(l&&c&&m){let b=m.get(a.id)?.[c];if(b&&b.remainingPercentage<=0&&b.resetAt&&new Date(b.resetAt).getTime()>Date.now()){let d=a.id?.slice(0,8)||"unknown";return j.info("AG_QUOTA",`${d} | CACHE_BLOCK ${c} — skip upstream until ${b.resetAt}`),!1}}return!0});if(j.debug("AUTH",`${a} | available: ${q.length}/${k.length}`),k.forEach(a=>{let b=n.has(a.id),d=(0,f.Bl)(a,c);if(b||d){let e=(0,f.kJ)(a);j.debug("AUTH",` → ${a.id?.slice(0,8)} | ${b?"excluded":""} ${d?`modelLocked(${c}) until ${e}`:""}`)}}),0===q.length){let b=k.filter(a=>(0,f.Bl)(a,c)),d=b.map(a=>(0,f.kJ)(a)).filter(Boolean);l&&c&&m&&k.forEach(a=>{let b=m.get(a.id)?.[c]?.resetAt;b&&new Date(b).getTime()>Date.now()&&d.push(b)});let e=d.sort()[0]||null;if(e){let d=b[0];return j.warn("AUTH",`${a} | all ${k.length} accounts locked for ${c||"all"} (${(0,f.Qo)(e)}) | lastError=${d?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:e,retryAfterHuman:(0,f.Qo)(e),lastError:d?.lastError||null,lastErrorCode:d?.errorCode||null}}return j.warn("AUTH",`${a} | all ${k.length} accounts unavailable`),null}let r=await (0,d.mt)(),s=(r.providerStrategies||{})[g]||{},t=s.fallbackStrategy||r.fallbackStrategy||"fill-first";if(o&&(b=q.find(a=>a.id===o))&&j.info("AUTH",`${a} | pinned to ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`),b);else if("round-robin"===t){let a=s.stickyRoundRobinLimit||r.stickyRoundRobinLimit||3,c=[...q].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt)-new Date(a.lastUsedAt):-1:1:(a.priority||999)-(b.priority||999))[0],e=c?.consecutiveUseCount||0;c&&c.lastUsedAt&&e<a?(b=c,await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:(b.consecutiveUseCount||0)+1})):(b=[...q].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt)-new Date(b.lastUsedAt):1:-1:(a.priority||999)-(b.priority||999))[0],await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1}))}else b=q[0];let u=await (0,e.B)(b.providerSpecificData||{});return{authType:b.authType,apiKey:b.apiKey,accessToken:b.accessToken,refreshToken:b.refreshToken,idToken:b.idToken,expiresAt:b.expiresAt,expiresIn:b.expiresIn,lastRefreshAt:b.lastRefreshAt,projectId:b.projectId,connectionName:b.displayName||b.name||b.email||b.id,copilotToken:b.providerSpecificData?.copilotToken,providerSpecificData:{...b.providerSpecificData||{},connectionProxyEnabled:u.connectionProxyEnabled,connectionProxyUrl:u.connectionProxyUrl,connectionNoProxy:u.connectionNoProxy,connectionProxyPoolId:u.proxyPoolId||null,vercelRelayUrl:u.vercelRelayUrl||""},connectionId:b.id,testStatus:b.testStatus,lastError:b.lastError,_connection:b}}finally{m&&m()}}async function m(a,b,c,e=null,i=null,k=null){let l,n,o;if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let p=(await (0,d.getProviderConnections)({provider:e})).find(b=>b.id===a),q=p?.backoffLevel||0,r=function(a,b,c){if("github"!==(0,h.rs)(c)||402!==Number(a)||!String(b||"").toLowerCase().includes("you've reached your additional usage limit for your plan"))return null;let d=new Date;return Date.UTC(d.getUTCFullYear(),d.getUTCMonth()+1,1)}(b,c,e);if(r?(l=!0,n=r-Date.now(),o=0):k&&k>Date.now()?(l=!0,n="antigravity"===(0,h.rs)(e)?k-Date.now():Math.min(k-Date.now(),g.fh),o=0):{shouldFallback:l,cooldownMs:n,newBackoffLevel:o}=(0,f.hk)(b,c,q),!l)return{shouldFallback:!1,cooldownMs:0};let s="string"==typeof c?c.slice(0,200):"Provider error",t=(0,f.S5)(r?null:i,n);await (0,d.updateProviderConnection)(a,{...t,testStatus:"unavailable",lastError:s,errorCode:b,lastErrorAt:new Date().toISOString(),backoffLevel:o??q});let u=Object.keys(t)[0],v=p?.displayName||p?.name||p?.email||a.slice(0,8);return j.warn("AUTH",`${v} locked ${u} for ${Math.round(n/1e3)}s [${b}]`),e&&b&&s&&console.error(`❌ ${e} [${b}]: ${s}`),{shouldFallback:!0,cooldownMs:n}}async function n(a,b,c=null){if(!a||"noauth"===a)return;let e=b._connection||b,f=Date.now(),g=Object.keys(e).filter(a=>a.startsWith("modelLock_"));if(!e.testStatus&&!e.lastError&&0===g.length)return;let h=g.filter(a=>{if(c&&a===`modelLock_${c}`||c&&"modelLock___all"===a)return!0;let b=e[a];return b&&new Date(b).getTime()<=f});if(0===h.length&&"unavailable"!==e.testStatus&&!e.lastError)return;let i=g.filter(a=>{if(h.includes(a))return!1;let b=e[a];return b&&new Date(b).getTime()>f}),j=Object.fromEntries(h.map(a=>[a,null]));0===i.length&&Object.assign(j,{testStatus:"active",lastError:null,errorCode:null,lastErrorAt:null,backoffLevel:0}),await (0,d.updateProviderConnection)(a,j)}function o(a){let b=a.headers.get("Authorization");if(b?.startsWith("Bearer "))return b.slice(7);let c=a.headers.get("x-api-key");return c||null}async function p(a){return!!a&&await (0,d.ek)(a)}},89718:(a,b,c)=>{c.d(b,{CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,K1:()=>d.K1,KJ:()=>d.KJ,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,OM:()=>d.OM,PX:()=>d.PX,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Xx:()=>d.Xx,Yd:()=>d.Yd,ZO:()=>d.ZO,bI:()=>d.bI,c:()=>d.c,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,mt:()=>d.mt,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,r4:()=>d.r4,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,uv:()=>d.uv,yF:()=>d.yF,yg:()=>d.yg,zP:()=>d.zP});var d=c(9248)}};
1
+ "use strict";exports.id=4572,exports.ids=[615,3662,4572],exports.modules={3662:(a,b,c)=>{c.d(b,{EQ:()=>f,LY:()=>d,O:()=>e,fh:()=>h,t2:()=>i,wf:()=>g});let d={400:{type:"invalid_request_error",code:"bad_request"},401:{type:"authentication_error",code:"invalid_api_key"},402:{type:"billing_error",code:"payment_required"},403:{type:"permission_error",code:"insufficient_quota"},404:{type:"invalid_request_error",code:"model_not_found"},406:{type:"invalid_request_error",code:"model_not_supported"},429:{type:"rate_limit_error",code:"rate_limit_exceeded"},500:{type:"server_error",code:"internal_server_error"},502:{type:"server_error",code:"bad_gateway"},503:{type:"server_error",code:"service_unavailable"},504:{type:"server_error",code:"gateway_timeout"}},e={400:"Bad request",401:"Invalid API key provided",402:"Payment required",403:"You exceeded your current quota",404:"Model not found",406:"Model not supported",429:"Rate limit exceeded",500:"Internal server error",502:"Bad gateway - upstream provider error",503:"Service temporarily unavailable",504:"Gateway timeout"},f={base:2e3,max:3e5,maxLevel:15},g=3e4,h=18e5,i=[{text:"no credentials",cooldownMs:12e4},{text:"request not allowed",cooldownMs:5e3},{text:"improperly formed request",cooldownMs:12e4},{text:"rate limit",backoff:!0},{text:"too many requests",backoff:!0},{text:"quota exceeded",backoff:!0},{text:"capacity",backoff:!0},{text:"overloaded",backoff:!0},{status:401,cooldownMs:12e4},{status:402,cooldownMs:12e4},{status:403,cooldownMs:12e4},{status:404,cooldownMs:12e4},{status:429,backoff:!0}]},7803:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>o,error:()=>r,errorLine:()=>l,fmtThink:()=>m,info:()=>p,line:()=>k,maskKey:()=>v,nextTag:()=>i,request:()=>s,response:()=>t,stream:()=>u,tagForSession:()=>j,warn:()=>q});let d={DEBUG:0,INFO:1,WARN:2,ERROR:3},e=d[process.env.LOG_LEVEL?.toUpperCase?.()]??d.INFO;function f(){return new Date().toLocaleTimeString("en-US",{hour12:!1})}let g=["\uD83D\uDFE2","\uD83D\uDD35","\uD83D\uDFE3","\uD83D\uDFE1","\uD83D\uDFE0","\uD83D\uDD34","⚪","\uD83D\uDFE4"],h=0;function i(){let a=g[h%g.length];return h++,a}function j(a){if(!a)return i();let b=0;for(let c=0;c<a.length;c++)b=31*b+a.charCodeAt(c)|0;return g[Math.abs(b)%g.length]}function k(a,b,c){e>d.INFO||console.log(`[${f()}] ${a} ${b} ${c}`)}function l(a,b,c){console.log(`[${f()}] ${a} ${b} ${c}`)}function m(a){return a&&a.mode?"none"===a.mode?"off":"auto"===a.mode?"auto":"budget"===a.mode?a.budget>=1e3?`${Math.round(a.budget/1e3)}k`:`${a.budget}`:"level"===a.mode?a.level:null:null}function n(a){if(!a)return"";if("string"==typeof a)return a;try{return JSON.stringify(a)}catch{return String(a)}}function o(a,b,c){if(e<=d.DEBUG){let d=c?` ${n(c)}`:"";console.log(`[${f()}] 🔍 [${a}] ${b}${d}`)}}function p(a,b,c){if(e<=d.INFO){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ℹ️ [${a}] ${b}${d}`)}}function q(a,b,c){if(e<=d.WARN){let d=c?` ${n(c)}`:"";console.warn(`[${f()}] ⚠️ [${a}] ${b}${d}`)}}function r(a,b,c){if(e<=d.ERROR){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ❌ [${a}] ${b}${d}`)}}function s(a,b,c){let d=c?` ${n(c)}`:"";console.log(`\x1b[36m[${f()}] 📥 ${a} ${b}${d}\x1b[0m`)}function t(a,b,c){let d=c?` ${n(c)}`:"";console.log(`[${f()}] ${a<400?"\uD83D\uDCE4":"\uD83D\uDCA5"} ${a} (${b}ms)${d}`)}function u(a,b){let c=b?` ${n(b)}`:"";console.log(`[${f()}] 🌊 [STREAM] ${a}${c}`)}function v(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}},12557:(a,b,c)=>{c.d(b,{Bl:()=>j,Qo:()=>f,S5:()=>l,hk:()=>e,kJ:()=>k});var d=c(3662);function e(a,b,c=0){let f=b?("string"==typeof b?b:JSON.stringify(b)).toLowerCase():"";for(let b of d.t2)if(b.text&&f&&f.includes(b.text)||b.status&&b.status===a){if(b.backoff){let a=Math.min(c+1,d.EQ.maxLevel);return{shouldFallback:!0,cooldownMs:function(a=0){let b=Math.max(0,a-1);return Math.min(d.EQ.base*Math.pow(2,b),d.EQ.max)}(a),newBackoffLevel:a}}return{shouldFallback:!0,cooldownMs:b.cooldownMs}}return a>=400&&a<500&&401!==a&&402!==a&&403!==a&&429!==a?{shouldFallback:!1,cooldownMs:0}:{shouldFallback:!0,cooldownMs:d.wf}}function f(a){if(!a)return"";let b=new Date(a).getTime()-Date.now();if(b<=0)return"reset after 0s";let c=Math.ceil(b/1e3),d=Math.floor(c/3600),e=Math.floor(c%3600/60),f=c%60,g=[];return d>0&&g.push(`${d}h`),e>0&&g.push(`${e}m`),(f>0||0===g.length)&&g.push(`${f}s`),`reset after ${g.join(" ")}`}let g="modelLock_",h=`${g}__all`;function i(a){return a?`${g}${a}`:h}function j(a,b){let c=a[i(b)]||a[h];return!!c&&new Date(c).getTime()>Date.now()}function k(a){if(!a)return null;let b=null,c=Date.now();for(let[d,e]of Object.entries(a)){if(!d.startsWith(g)||!e)continue;let a=new Date(e).getTime();a<=c||(!b||a<b)&&(b=a)}return b?new Date(b).toISOString():null}function l(a,b){return{[i(a)]:new Date(Date.now()+b).toISOString()}}},35024:(a,b,c)=>{c.d(b,{Ak:()=>e,Yg:()=>h,sr:()=>d.sr,xq:()=>d.xq});var d=c(26070);function e(a){return(a?.providerSpecificData?.baseUrl?.trim()||"http://localhost:11434").replace(/\/$/,"")}let f=d.xq["xiaomi-tokenplan"]?.regions||{},g=d.xq["xiaomi-tokenplan"]?.defaultRegion;function h(a){return f[a?.providerSpecificData?.region]||f[g]}},39006:a=>{a.exports={rE:"0.5.83"}},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:()=>y,wb:()=>x,br:()=>l,wG:()=>v,zt:()=>t,gb:()=>q,gC:()=>r,mq:()=>p,rs:()=>u});var d=c(8843);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","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)])),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=d.default.filter(a=>a.features?.usage).map(a=>a.id),y=d.default.filter(a=>a.features?.usageApikey).map(a=>a.id)},43659:(a,b,c)=>{c.d(b,{A1:()=>h,lR:()=>j,wO:()=>i,xJ:()=>e,yj:()=>f,zL:()=>g});var d=c(3662);function e(a,b){let c=d.LY[a]||(a>=500?{type:"server_error",code:"internal_server_error"}:{type:"invalid_request_error",code:""});return{error:{message:b||d.O[a]||"An error occurred",type:c.type,code:c.code}}}function f(a,b){return new Response(JSON.stringify(e(a,b)),{status:a,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}async function g(a,b=null){let c="";try{c=await a.text()}catch{c=""}if(b&&"function"==typeof b.parseError)try{let e=b.parseError(a,c);if(e&&"object"==typeof e){let b=e.message||d.O[a.status]||`Upstream error: ${a.status}`;return{statusCode:e.status||a.status,message:b,resetsAtMs:e.resetsAtMs}}}catch{}let e="";try{let a=JSON.parse(c);e=a.error?.message||a.message||a.error||c}catch{e=c}let f=("string"==typeof e?e:JSON.stringify(e))||d.O[a.status]||`Upstream error: ${a.status}`;return{statusCode:a.status,message:f}}function h(a,b,c){return{success:!1,status:a,error:b,resetsAtMs:c,response:f(a,b)}}function i(a,b,c,d){let e=Math.max(Math.ceil((new Date(c).getTime()-Date.now())/1e3),1);return new Response(JSON.stringify({error:{message:`${b} (${d})`}}),{status:a,headers:{"Content-Type":"application/json","Retry-After":String(e)}})}function j(a,b,c,d){let e=d||a.code||"FETCH_FAILED",f=a.message||"Unknown error",g=a.cause?.code,h=a.cause?.message,i=g||h?` (cause: ${[g,h].filter(Boolean).join(": ")})`:"";return`[${e}]: ${f}${i}`}},45974:(a,b,c)=>{c.d(b,{XJ:()=>p,d0:()=>m,vO:()=>l});var d=c(39326),e=c(91211),f=c(7803);let g=new Map,h=new Map,i=new Map,j=new Map,k=new Map;function l(a,b){let c=`${a}|${b}`;j.delete(c);let d=k.get(c);if(void 0===d)return;k.delete(c);let e=g.get(a);e?.[b]?.resetAt===new Date(d).toISOString()&&(delete e[b],g.set(a,e))}function m(){return g}async function n(a,b,c){let d=Date.now(),e=i.get(a);if(e)return e;let j=h.get(a)||0;if(d-j<3e4)return f.debug("AG_QUOTA",`${a.slice(0,8)} | skip refresh (${Math.round((d-j)/1e3)}s ago)`),g.get(a)||null;h.set(a,d);let k=o(a,b,c,d);i.set(a,k);try{return await k}finally{i.delete(a)}}async function o(a,b,c,h){try{let f=await (0,d.B)(c||{}),h={connectionProxyEnabled:!0===f.connectionProxyEnabled,connectionProxyUrl:f.connectionProxyUrl||"",connectionNoProxy:f.connectionNoProxy||"",vercelRelayUrl:f.vercelRelayUrl||"",strictProxy:!0===f.strictProxy},i=await (0,e.c)(b,c,h);if(!i?.quotas||i.message)return null;return g.set(a,function(a,b){let c=Date.now();for(let[d,e]of k)if(d.startsWith(`${a}|`)){if(e<=c){k.delete(d);continue}b[d.slice(a.length+1)]={remainingPercentage:0,resetAt:new Date(e).toISOString()}}return b}(a,i.quotas)),i.quotas}catch(b){return f.warn("AG_QUOTA",`${a.slice(0,8)} | refresh failed: ${b.message}`),null}}async function p(a,b,c,d,e){f.info("AG_QUOTA",`${a.slice(0,8)} | ${b} on ${c} — refreshing quota`);let h=(await n(a,d,e))?.[c];if(!h||h.remainingPercentage>0){let d=`${a}|${c}`,e=Date.now(),i=j.get(d),l=i&&e-i.windowStart<=6e4?i.windowStart:e,m=i&&l===i.windowStart?i.count+1:1;if(j.set(d,{count:m,windowStart:l}),m>=3){j.delete(d);let i=e+9e5,l=h?`${Math.round(h.remainingPercentage)}%`:"unknown";f.warn("AG_QUOTA",`${a.slice(0,8)} | STRIKE_${b} ${c} — ${m}x 429 (quota ${l}); CACHE_BLOCK 15m`);let n=g.get(a)||{};return n[c]={remainingPercentage:0,resetAt:new Date(i).toISOString()},g.set(a,n),k.set(d,i),i}return null}if(j.delete(`${a}|${c}`),!h.resetAt)return null;let i=new Date(h.resetAt).getTime();return i<=Date.now()?null:(f.warn("AG_QUOTA",`${a.slice(0,8)} | UPSTREAM_${b} ${c} — quota exhausted; CACHE_BLOCK until ${h.resetAt}`),i)}},80238:(a,b,c)=>{c.d(b,{Pt:()=>n,Tr:()=>o,c1:()=>l,kI:()=>p,vk:()=>m});var d=c(89718),e=c(39326),f=c(12557),g=c(3662),h=c(40615),i=c(45974),j=c(7803);let k=Promise.resolve();async function l(a,b=null,c=null,g={}){let m,n=b instanceof Set?b:b?new Set([b]):new Set,o=g?.preferredConnectionId||null,p=k;k=new Promise(a=>{m=a});try{let b;await p;let g=(0,h.rs)(a);if(h.IS[g]?.noAuth){let a=((await (0,d.mt)()).providerStrategies||{})[g]||{},b=a.rotateStrategy||"none",c=a.proxyPoolId||null;if("none"!==b){let a=(await (0,d.ui)({isActive:!0})).filter(a=>a.proxyUrl).map(a=>a.id);c=(0,e.p)(a,b,g)}let f=await (0,e.B)({proxyPoolId:c||""});return{id:"noauth",connectionName:"Public",isActive:!0,accessToken:"public",providerSpecificData:{connectionProxyEnabled:f.connectionProxyEnabled,connectionProxyUrl:f.connectionProxyUrl,connectionNoProxy:f.connectionNoProxy,connectionProxyPoolId:f.proxyPoolId||null,vercelRelayUrl:f.vercelRelayUrl||""}}}let k=await (0,d.getProviderConnections)({provider:g,isActive:!0});if(j.debug("AUTH",`${a} | total connections: ${k.length}, excludeIds: ${n.size>0?[...n].join(","):"none"}, model: ${c||"any"}`),0===k.length)return j.warn("AUTH",`No credentials for ${a}`),null;let l="antigravity"===g,m=l&&c?(0,i.d0)():null,q=k.filter(a=>{if(n.has(a.id)||(0,f.Bl)(a,c))return!1;if(l&&c&&m){let b=m.get(a.id)?.[c];if(b&&b.remainingPercentage<=0&&b.resetAt&&new Date(b.resetAt).getTime()>Date.now()){let d=a.id?.slice(0,8)||"unknown";return j.info("AG_QUOTA",`${d} | CACHE_BLOCK ${c} — skip upstream until ${b.resetAt}`),!1}}return!0});if(j.debug("AUTH",`${a} | available: ${q.length}/${k.length}`),k.forEach(a=>{let b=n.has(a.id),d=(0,f.Bl)(a,c);if(b||d){let e=(0,f.kJ)(a);j.debug("AUTH",` → ${a.id?.slice(0,8)} | ${b?"excluded":""} ${d?`modelLocked(${c}) until ${e}`:""}`)}}),0===q.length){let b=k.filter(a=>(0,f.Bl)(a,c)),d=b.map(a=>(0,f.kJ)(a)).filter(Boolean);l&&c&&m&&k.forEach(a=>{let b=m.get(a.id)?.[c]?.resetAt;b&&new Date(b).getTime()>Date.now()&&d.push(b)});let e=d.sort()[0]||null;if(e){let d=b[0];return j.warn("AUTH",`${a} | all ${k.length} accounts locked for ${c||"all"} (${(0,f.Qo)(e)}) | lastError=${d?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:e,retryAfterHuman:(0,f.Qo)(e),lastError:d?.lastError||null,lastErrorCode:d?.errorCode||null}}return j.warn("AUTH",`${a} | all ${k.length} accounts unavailable`),null}let r=await (0,d.mt)(),s=(r.providerStrategies||{})[g]||{},t=s.fallbackStrategy||r.fallbackStrategy||"fill-first";if(o&&(b=q.find(a=>a.id===o))&&j.info("AUTH",`${a} | pinned to ${b.id?.slice(0,8)} (${b.name||b.email||"unnamed"})`),b);else if("round-robin"===t){let a=s.stickyRoundRobinLimit||r.stickyRoundRobinLimit||3,c=[...q].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt)-new Date(a.lastUsedAt):-1:1:(a.priority||999)-(b.priority||999))[0],e=c?.consecutiveUseCount||0;c&&c.lastUsedAt&&e<a?(b=c,await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:(b.consecutiveUseCount||0)+1})):(b=[...q].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt)-new Date(b.lastUsedAt):1:-1:(a.priority||999)-(b.priority||999))[0],await (0,d.updateProviderConnection)(b.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1}))}else b=q[0];let u=await (0,e.B)(b.providerSpecificData||{});return{authType:b.authType,apiKey:b.apiKey,accessToken:b.accessToken,refreshToken:b.refreshToken,idToken:b.idToken,expiresAt:b.expiresAt,expiresIn:b.expiresIn,lastRefreshAt:b.lastRefreshAt,projectId:b.projectId,connectionName:b.displayName||b.name||b.email||b.id,copilotToken:b.providerSpecificData?.copilotToken,providerSpecificData:{...b.providerSpecificData||{},connectionProxyEnabled:u.connectionProxyEnabled,connectionProxyUrl:u.connectionProxyUrl,connectionNoProxy:u.connectionNoProxy,connectionProxyPoolId:u.proxyPoolId||null,vercelRelayUrl:u.vercelRelayUrl||""},connectionId:b.id,testStatus:b.testStatus,lastError:b.lastError,_connection:b}}finally{m&&m()}}async function m(a,b,c,e=null,i=null,k=null){let l,n,o;if(!a||"noauth"===a)return{shouldFallback:!1,cooldownMs:0};let p=(await (0,d.getProviderConnections)({provider:e})).find(b=>b.id===a),q=p?.backoffLevel||0,r=function(a,b,c){if("github"!==(0,h.rs)(c)||402!==Number(a)||!String(b||"").toLowerCase().includes("you've reached your additional usage limit for your plan"))return null;let d=new Date;return Date.UTC(d.getUTCFullYear(),d.getUTCMonth()+1,1)}(b,c,e);if(r?(l=!0,n=r-Date.now(),o=0):k&&k>Date.now()?(l=!0,n="antigravity"===(0,h.rs)(e)?k-Date.now():Math.min(k-Date.now(),g.fh),o=0):{shouldFallback:l,cooldownMs:n,newBackoffLevel:o}=(0,f.hk)(b,c,q),!l)return{shouldFallback:!1,cooldownMs:0};let s="string"==typeof c?c.slice(0,200):"Provider error",t=(0,f.S5)(r?null:i,n);await (0,d.updateProviderConnection)(a,{...t,testStatus:"unavailable",lastError:s,errorCode:b,lastErrorAt:new Date().toISOString(),backoffLevel:o??q});let u=Object.keys(t)[0],v=p?.displayName||p?.name||p?.email||a.slice(0,8);return j.warn("AUTH",`${v} locked ${u} for ${Math.round(n/1e3)}s [${b}]`),e&&b&&s&&console.error(`❌ ${e} [${b}]: ${s}`),{shouldFallback:!0,cooldownMs:n}}async function n(a,b,c=null){if(!a||"noauth"===a)return;let e=b._connection||b,f=Date.now(),g=Object.keys(e).filter(a=>a.startsWith("modelLock_"));if(!e.testStatus&&!e.lastError&&0===g.length)return;let h=g.filter(a=>{if(c&&a===`modelLock_${c}`||c&&"modelLock___all"===a)return!0;let b=e[a];return b&&new Date(b).getTime()<=f});if(0===h.length&&"unavailable"!==e.testStatus&&!e.lastError)return;let i=g.filter(a=>{if(h.includes(a))return!1;let b=e[a];return b&&new Date(b).getTime()>f}),j=Object.fromEntries(h.map(a=>[a,null]));0===i.length&&Object.assign(j,{testStatus:"active",lastError:null,errorCode:null,lastErrorAt:null,backoffLevel:0}),await (0,d.updateProviderConnection)(a,j)}function o(a){let b=a.headers.get("Authorization");if(b?.startsWith("Bearer "))return b.slice(7);let c=a.headers.get("x-api-key");return c||null}async function p(a){return!!a&&await (0,d.ek)(a)}},89718:(a,b,c)=>{c.d(b,{CG:()=>d.CG,Dj:()=>d.Dj,Fh:()=>d.Fh,Iq:()=>d.Iq,K1:()=>d.K1,KJ:()=>d.KJ,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,OM:()=>d.OM,PX:()=>d.PX,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Uv:()=>d.Uv,VT:()=>d.VT,XW:()=>d.XW,Xx:()=>d.Xx,Yd:()=>d.Yd,ZO:()=>d.ZO,bI:()=>d.bI,c:()=>d.c,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,iE:()=>d.iE,jd:()=>d.jd,mt:()=>d.mt,o5:()=>d.o5,oG:()=>d.oG,op:()=>d.op,r4:()=>d.r4,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,uv:()=>d.uv,yF:()=>d.yF,yg:()=>d.yg,zP:()=>d.zP});var d=c(9248)}};