zevairouter 1.0.122 → 1.0.124

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 (1632) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/cli/app/.next-cli-build/BUILD_ID +1 -1
  3. package/cli/app/.next-cli-build/app-path-routes-manifest.json +7 -7
  4. package/cli/app/.next-cli-build/build-manifest.json +6 -6
  5. package/cli/app/.next-cli-build/prerender-manifest.json +3 -3
  6. package/cli/app/.next-cli-build/react-loadable-manifest.json +2 -2
  7. package/cli/app/.next-cli-build/required-server-files.json +4 -4
  8. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js +2 -2
  9. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page.js.nft.json +1 -1
  10. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/automation/page_client-reference-manifest.js +1 -1
  11. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js +2 -2
  12. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page.js.nft.json +1 -1
  13. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/basic-chat/page_client-reference-manifest.js +1 -1
  14. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js +3 -3
  15. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page.js.nft.json +1 -1
  16. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/[toolId]/page_client-reference-manifest.js +1 -1
  17. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js +2 -2
  18. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  19. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  20. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  21. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  22. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  23. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js +2 -2
  24. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page.js.nft.json +1 -1
  25. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/console-log/page_client-reference-manifest.js +1 -1
  26. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js +2 -2
  27. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page.js.nft.json +1 -1
  28. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/context/page_client-reference-manifest.js +1 -1
  29. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  30. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  31. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  32. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js +3 -3
  33. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page.js.nft.json +1 -1
  34. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/[id]/page_client-reference-manifest.js +1 -1
  35. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js +2 -2
  36. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page.js.nft.json +1 -1
  37. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/[kind]/page_client-reference-manifest.js +1 -1
  38. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js +3 -3
  39. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page.js.nft.json +1 -1
  40. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/combo/[id]/page_client-reference-manifest.js +1 -1
  41. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js +2 -2
  42. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page.js.nft.json +1 -1
  43. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/media-providers/web/page_client-reference-manifest.js +1 -1
  44. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js +2 -2
  45. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page.js.nft.json +1 -1
  46. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/mitm/page_client-reference-manifest.js +1 -1
  47. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js +2 -2
  48. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  49. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  50. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js +2 -2
  51. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page.js.nft.json +1 -1
  52. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/playground/page_client-reference-manifest.js +1 -1
  53. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  54. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  55. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  56. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js +3 -3
  57. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  58. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  59. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  60. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  61. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  62. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  63. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  64. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  65. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js +3 -3
  66. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page.js.nft.json +1 -1
  67. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/proxy-pools/page_client-reference-manifest.js +1 -1
  68. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js +2 -2
  69. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page.js.nft.json +1 -1
  70. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/pxpipe/page_client-reference-manifest.js +1 -1
  71. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js +2 -2
  72. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page.js.nft.json +1 -1
  73. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/quota/page_client-reference-manifest.js +1 -1
  74. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page.js +4 -4
  75. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page.js.nft.json +1 -1
  76. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/terminal/page_client-reference-manifest.js +1 -1
  77. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js +2 -2
  78. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page.js.nft.json +1 -1
  79. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/token-saver/page_client-reference-manifest.js +1 -1
  80. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js +2 -2
  81. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  82. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  83. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  84. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  85. package/cli/app/.next-cli-build/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  86. package/cli/app/.next-cli-build/server/app/_global-error/page.js +3 -3
  87. package/cli/app/.next-cli-build/server/app/_global-error/page.js.nft.json +1 -1
  88. package/cli/app/.next-cli-build/server/app/_global-error/page_client-reference-manifest.js +1 -1
  89. package/cli/app/.next-cli-build/server/app/_global-error.html +1 -1
  90. package/cli/app/.next-cli-build/server/app/_global-error.rsc +7 -7
  91. package/cli/app/.next-cli-build/server/app/_global-error.segments/_full.segment.rsc +7 -7
  92. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +2 -2
  93. package/cli/app/.next-cli-build/server/app/_global-error.segments/_global-error.segment.rsc +3 -3
  94. package/cli/app/.next-cli-build/server/app/_global-error.segments/_head.segment.rsc +3 -3
  95. package/cli/app/.next-cli-build/server/app/_global-error.segments/_index.segment.rsc +3 -3
  96. package/cli/app/.next-cli-build/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  97. package/cli/app/.next-cli-build/server/app/_not-found/page.js +2 -2
  98. package/cli/app/.next-cli-build/server/app/_not-found/page.js.nft.json +1 -1
  99. package/cli/app/.next-cli-build/server/app/_not-found/page_client-reference-manifest.js +1 -1
  100. package/cli/app/.next-cli-build/server/app/_not-found.html +1 -1
  101. package/cli/app/.next-cli-build/server/app/_not-found.rsc +11 -11
  102. package/cli/app/.next-cli-build/server/app/_not-found.segments/_full.segment.rsc +11 -11
  103. package/cli/app/.next-cli-build/server/app/_not-found.segments/_head.segment.rsc +4 -4
  104. package/cli/app/.next-cli-build/server/app/_not-found.segments/_index.segment.rsc +6 -6
  105. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  106. package/cli/app/.next-cli-build/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  107. package/cli/app/.next-cli-build/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  108. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js +1 -1
  109. package/cli/app/.next-cli-build/server/app/api/auth/login/route.js.nft.json +1 -1
  110. package/cli/app/.next-cli-build/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  111. package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js +1 -1
  112. package/cli/app/.next-cli-build/server/app/api/auth/logout/route.js.nft.json +1 -1
  113. package/cli/app/.next-cli-build/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  114. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js +1 -1
  115. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route.js.nft.json +1 -1
  116. package/cli/app/.next-cli-build/server/app/api/auth/oidc/callback/route_client-reference-manifest.js +1 -1
  117. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js +1 -1
  118. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route.js.nft.json +1 -1
  119. package/cli/app/.next-cli-build/server/app/api/auth/oidc/start/route_client-reference-manifest.js +1 -1
  120. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js +1 -1
  121. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route.js.nft.json +1 -1
  122. package/cli/app/.next-cli-build/server/app/api/auth/oidc/test/route_client-reference-manifest.js +1 -1
  123. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js +1 -1
  124. package/cli/app/.next-cli-build/server/app/api/auth/status/route.js.nft.json +1 -1
  125. package/cli/app/.next-cli-build/server/app/api/auth/status/route_client-reference-manifest.js +1 -1
  126. package/cli/app/.next-cli-build/server/app/api/cache/stats/route.js +1 -1
  127. package/cli/app/.next-cli-build/server/app/api/cache/stats/route.js.nft.json +1 -1
  128. package/cli/app/.next-cli-build/server/app/api/cache/stats/route_client-reference-manifest.js +1 -1
  129. package/cli/app/.next-cli-build/server/app/api/changelog/route.js +1 -1
  130. package/cli/app/.next-cli-build/server/app/api/changelog/route.js.nft.json +1 -1
  131. package/cli/app/.next-cli-build/server/app/api/changelog/route_client-reference-manifest.js +1 -1
  132. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js +4 -4
  133. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route.js.nft.json +1 -1
  134. package/cli/app/.next-cli-build/server/app/api/cli-tools/all-statuses/route_client-reference-manifest.js +1 -1
  135. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  136. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  137. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
  138. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js +1 -1
  139. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  140. package/cli/app/.next-cli-build/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
  141. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js +2 -2
  142. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route.js.nft.json +1 -1
  143. package/cli/app/.next-cli-build/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
  144. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js +2 -2
  145. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route.js.nft.json +1 -1
  146. package/cli/app/.next-cli-build/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -1
  147. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js +1 -1
  148. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route.js.nft.json +1 -1
  149. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-gateway/accounts/route_client-reference-manifest.js +1 -1
  150. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js +1 -1
  151. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route.js.nft.json +1 -1
  152. package/cli/app/.next-cli-build/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
  153. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js +2 -2
  154. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route.js.nft.json +1 -1
  155. package/cli/app/.next-cli-build/server/app/api/cli-tools/copilot-settings/route_client-reference-manifest.js +1 -1
  156. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js +2 -2
  157. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route.js.nft.json +1 -1
  158. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-registry/route_client-reference-manifest.js +1 -1
  159. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js +2 -2
  160. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route.js.nft.json +1 -1
  161. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-mcp-tools/route_client-reference-manifest.js +1 -1
  162. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js +2 -2
  163. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route.js.nft.json +1 -1
  164. package/cli/app/.next-cli-build/server/app/api/cli-tools/cowork-settings/route_client-reference-manifest.js +1 -1
  165. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js +3 -3
  166. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route.js.nft.json +1 -1
  167. package/cli/app/.next-cli-build/server/app/api/cli-tools/deepseek-tui-settings/route_client-reference-manifest.js +1 -1
  168. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js +2 -2
  169. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route.js.nft.json +1 -1
  170. package/cli/app/.next-cli-build/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
  171. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js +3 -3
  172. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route.js.nft.json +1 -1
  173. package/cli/app/.next-cli-build/server/app/api/cli-tools/hermes-settings/route_client-reference-manifest.js +1 -1
  174. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js +2 -2
  175. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route.js.nft.json +1 -1
  176. package/cli/app/.next-cli-build/server/app/api/cli-tools/jcode-settings/route_client-reference-manifest.js +1 -1
  177. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  178. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route.js.nft.json +1 -1
  179. package/cli/app/.next-cli-build/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
  180. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  181. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route.js.nft.json +1 -1
  182. package/cli/app/.next-cli-build/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
  183. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js +2 -2
  184. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route.js.nft.json +1 -1
  185. package/cli/app/.next-cli-build/server/app/api/cli-tools/opencode-settings/route_client-reference-manifest.js +1 -1
  186. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js +1 -1
  187. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route.js.nft.json +1 -1
  188. package/cli/app/.next-cli-build/server/app/api/combos/[id]/route_client-reference-manifest.js +1 -1
  189. package/cli/app/.next-cli-build/server/app/api/combos/route.js +1 -1
  190. package/cli/app/.next-cli-build/server/app/api/combos/route.js.nft.json +1 -1
  191. package/cli/app/.next-cli-build/server/app/api/combos/route_client-reference-manifest.js +1 -1
  192. package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js +1 -1
  193. package/cli/app/.next-cli-build/server/app/api/context/[id]/route.js.nft.json +1 -1
  194. package/cli/app/.next-cli-build/server/app/api/context/[id]/route_client-reference-manifest.js +1 -1
  195. package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js +1 -1
  196. package/cli/app/.next-cli-build/server/app/api/context/bulk/route.js.nft.json +1 -1
  197. package/cli/app/.next-cli-build/server/app/api/context/bulk/route_client-reference-manifest.js +1 -1
  198. package/cli/app/.next-cli-build/server/app/api/context/route.js +1 -1
  199. package/cli/app/.next-cli-build/server/app/api/context/route.js.nft.json +1 -1
  200. package/cli/app/.next-cli-build/server/app/api/context/route_client-reference-manifest.js +1 -1
  201. package/cli/app/.next-cli-build/server/app/api/dashboard/chat/completions/route.js +1 -1
  202. package/cli/app/.next-cli-build/server/app/api/dashboard/chat/completions/route.js.nft.json +1 -1
  203. package/cli/app/.next-cli-build/server/app/api/dashboard/chat/completions/route_client-reference-manifest.js +1 -1
  204. package/cli/app/.next-cli-build/server/app/api/headroom/extras/route.js +1 -1
  205. package/cli/app/.next-cli-build/server/app/api/headroom/extras/route.js.nft.json +1 -1
  206. package/cli/app/.next-cli-build/server/app/api/headroom/extras/route_client-reference-manifest.js +1 -1
  207. package/cli/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js +1 -1
  208. package/cli/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route.js.nft.json +1 -1
  209. package/cli/app/.next-cli-build/server/app/api/headroom/proxy/[...path]/route_client-reference-manifest.js +1 -1
  210. package/cli/app/.next-cli-build/server/app/api/headroom/restart/route.js +1 -1
  211. package/cli/app/.next-cli-build/server/app/api/headroom/restart/route.js.nft.json +1 -1
  212. package/cli/app/.next-cli-build/server/app/api/headroom/restart/route_client-reference-manifest.js +1 -1
  213. package/cli/app/.next-cli-build/server/app/api/headroom/start/route.js +1 -1
  214. package/cli/app/.next-cli-build/server/app/api/headroom/start/route.js.nft.json +1 -1
  215. package/cli/app/.next-cli-build/server/app/api/headroom/start/route_client-reference-manifest.js +1 -1
  216. package/cli/app/.next-cli-build/server/app/api/headroom/status/route.js +1 -1
  217. package/cli/app/.next-cli-build/server/app/api/headroom/status/route.js.nft.json +1 -1
  218. package/cli/app/.next-cli-build/server/app/api/headroom/status/route_client-reference-manifest.js +1 -1
  219. package/cli/app/.next-cli-build/server/app/api/headroom/stop/route.js +1 -1
  220. package/cli/app/.next-cli-build/server/app/api/headroom/stop/route.js.nft.json +1 -1
  221. package/cli/app/.next-cli-build/server/app/api/headroom/stop/route_client-reference-manifest.js +1 -1
  222. package/cli/app/.next-cli-build/server/app/api/health/ready/route.js +1 -1
  223. package/cli/app/.next-cli-build/server/app/api/health/ready/route.js.nft.json +1 -1
  224. package/cli/app/.next-cli-build/server/app/api/health/ready/route_client-reference-manifest.js +1 -1
  225. package/cli/app/.next-cli-build/server/app/api/health/route.js +1 -1
  226. package/cli/app/.next-cli-build/server/app/api/health/route.js.nft.json +1 -1
  227. package/cli/app/.next-cli-build/server/app/api/health/route_client-reference-manifest.js +1 -1
  228. package/cli/app/.next-cli-build/server/app/api/init/route.js +1 -1
  229. package/cli/app/.next-cli-build/server/app/api/init/route.js.nft.json +1 -1
  230. package/cli/app/.next-cli-build/server/app/api/init/route_client-reference-manifest.js +1 -1
  231. package/cli/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js +1 -1
  232. package/cli/app/.next-cli-build/server/app/api/keys/[id]/rotate/route.js.nft.json +1 -1
  233. package/cli/app/.next-cli-build/server/app/api/keys/[id]/rotate/route_client-reference-manifest.js +1 -1
  234. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js +1 -1
  235. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route.js.nft.json +1 -1
  236. package/cli/app/.next-cli-build/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
  237. package/cli/app/.next-cli-build/server/app/api/keys/route.js +1 -1
  238. package/cli/app/.next-cli-build/server/app/api/keys/route.js.nft.json +1 -1
  239. package/cli/app/.next-cli-build/server/app/api/keys/route_client-reference-manifest.js +1 -1
  240. package/cli/app/.next-cli-build/server/app/api/locale/route.js +1 -1
  241. package/cli/app/.next-cli-build/server/app/api/locale/route.js.nft.json +1 -1
  242. package/cli/app/.next-cli-build/server/app/api/locale/route_client-reference-manifest.js +1 -1
  243. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js +2 -2
  244. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route.js.nft.json +1 -1
  245. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/message/route_client-reference-manifest.js +1 -1
  246. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js +2 -2
  247. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route.js.nft.json +1 -1
  248. package/cli/app/.next-cli-build/server/app/api/mcp/[plugin]/sse/route_client-reference-manifest.js +1 -1
  249. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js +1 -1
  250. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route.js.nft.json +1 -1
  251. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/deepgram/voices/route_client-reference-manifest.js +1 -1
  252. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js +1 -1
  253. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route.js.nft.json +1 -1
  254. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/elevenlabs/voices/route_client-reference-manifest.js +1 -1
  255. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js +1 -1
  256. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route.js.nft.json +1 -1
  257. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/inworld/voices/route_client-reference-manifest.js +1 -1
  258. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js +1 -1
  259. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route.js.nft.json +1 -1
  260. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/minimax/voices/route_client-reference-manifest.js +1 -1
  261. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js +1 -1
  262. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route.js.nft.json +1 -1
  263. package/cli/app/.next-cli-build/server/app/api/media-providers/tts/voices/route_client-reference-manifest.js +1 -1
  264. package/cli/app/.next-cli-build/server/app/api/metrics/route.js +2 -2
  265. package/cli/app/.next-cli-build/server/app/api/metrics/route.js.nft.json +1 -1
  266. package/cli/app/.next-cli-build/server/app/api/metrics/route_client-reference-manifest.js +1 -1
  267. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js +1 -1
  268. package/cli/app/.next-cli-build/server/app/api/models/alias/route.js.nft.json +1 -1
  269. package/cli/app/.next-cli-build/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
  270. package/cli/app/.next-cli-build/server/app/api/models/availability/route.js +1 -1
  271. package/cli/app/.next-cli-build/server/app/api/models/availability/route.js.nft.json +1 -1
  272. package/cli/app/.next-cli-build/server/app/api/models/availability/route_client-reference-manifest.js +1 -1
  273. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js +1 -1
  274. package/cli/app/.next-cli-build/server/app/api/models/custom/route.js.nft.json +1 -1
  275. package/cli/app/.next-cli-build/server/app/api/models/custom/route_client-reference-manifest.js +1 -1
  276. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js +1 -1
  277. package/cli/app/.next-cli-build/server/app/api/models/disabled/route.js.nft.json +1 -1
  278. package/cli/app/.next-cli-build/server/app/api/models/disabled/route_client-reference-manifest.js +1 -1
  279. package/cli/app/.next-cli-build/server/app/api/models/route.js +1 -1
  280. package/cli/app/.next-cli-build/server/app/api/models/route.js.nft.json +1 -1
  281. package/cli/app/.next-cli-build/server/app/api/models/route_client-reference-manifest.js +1 -1
  282. package/cli/app/.next-cli-build/server/app/api/models/test/route.js +1 -1
  283. package/cli/app/.next-cli-build/server/app/api/models/test/route.js.nft.json +1 -1
  284. package/cli/app/.next-cli-build/server/app/api/models/test/route_client-reference-manifest.js +1 -1
  285. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js +1 -1
  286. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  287. package/cli/app/.next-cli-build/server/app/api/oauth/[provider]/[action]/route_client-reference-manifest.js +1 -1
  288. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js +1 -1
  289. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  290. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route_client-reference-manifest.js +1 -1
  291. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  292. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  293. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route_client-reference-manifest.js +1 -1
  294. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js +1 -1
  295. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route.js.nft.json +1 -1
  296. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/[jobId]/route_client-reference-manifest.js +1 -1
  297. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js +1 -1
  298. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route.js.nft.json +1 -1
  299. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/latest/route_client-reference-manifest.js +1 -1
  300. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js +1 -1
  301. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route.js.nft.json +1 -1
  302. package/cli/app/.next-cli-build/server/app/api/oauth/antigravity/bulk-import/route_client-reference-manifest.js +1 -1
  303. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route.js +1 -1
  304. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  305. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route_client-reference-manifest.js +1 -1
  306. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  307. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  308. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route_client-reference-manifest.js +1 -1
  309. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/route.js +1 -1
  310. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/route.js.nft.json +1 -1
  311. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/[jobId]/route_client-reference-manifest.js +1 -1
  312. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/latest/route.js +1 -1
  313. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/latest/route.js.nft.json +1 -1
  314. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/latest/route_client-reference-manifest.js +1 -1
  315. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/route.js +1 -1
  316. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/route.js.nft.json +1 -1
  317. package/cli/app/.next-cli-build/server/app/api/oauth/autoclaw/bulk-import/route_client-reference-manifest.js +1 -1
  318. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route.js +1 -1
  319. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  320. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route_client-reference-manifest.js +1 -1
  321. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  322. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  323. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route_client-reference-manifest.js +1 -1
  324. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route.js +1 -1
  325. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route.js.nft.json +1 -1
  326. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route_client-reference-manifest.js +1 -1
  327. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/latest/route.js +1 -1
  328. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/latest/route.js.nft.json +1 -1
  329. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/latest/route_client-reference-manifest.js +1 -1
  330. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/route.js +1 -1
  331. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/route.js.nft.json +1 -1
  332. package/cli/app/.next-cli-build/server/app/api/oauth/cloudflare-ai/bulk-import/route_client-reference-manifest.js +1 -1
  333. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js +1 -1
  334. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  335. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route_client-reference-manifest.js +1 -1
  336. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  337. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  338. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route_client-reference-manifest.js +1 -1
  339. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js +1 -1
  340. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route.js.nft.json +1 -1
  341. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/[jobId]/route_client-reference-manifest.js +1 -1
  342. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js +1 -1
  343. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route.js.nft.json +1 -1
  344. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/latest/route_client-reference-manifest.js +1 -1
  345. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js +1 -1
  346. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route.js.nft.json +1 -1
  347. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-import/route_client-reference-manifest.js +1 -1
  348. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js +1 -1
  349. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route.js.nft.json +1 -1
  350. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/bulk-token/route_client-reference-manifest.js +1 -1
  351. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js +1 -1
  352. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route.js.nft.json +1 -1
  353. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy/quota-cookie/route_client-reference-manifest.js +1 -1
  354. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js +1 -1
  355. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  356. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route_client-reference-manifest.js +1 -1
  357. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  358. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  359. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route_client-reference-manifest.js +1 -1
  360. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js +1 -1
  361. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route.js.nft.json +1 -1
  362. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route_client-reference-manifest.js +1 -1
  363. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js +1 -1
  364. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route.js.nft.json +1 -1
  365. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/latest/route_client-reference-manifest.js +1 -1
  366. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js +1 -1
  367. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route.js.nft.json +1 -1
  368. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-import/route_client-reference-manifest.js +1 -1
  369. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js +1 -1
  370. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route.js.nft.json +1 -1
  371. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/bulk-token/route_client-reference-manifest.js +1 -1
  372. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route.js +1 -1
  373. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route.js.nft.json +1 -1
  374. package/cli/app/.next-cli-build/server/app/api/oauth/codebuddy-cn/quota-cookie/route_client-reference-manifest.js +1 -1
  375. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js +1 -1
  376. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route.js.nft.json +1 -1
  377. package/cli/app/.next-cli-build/server/app/api/oauth/codex/import-token/route_client-reference-manifest.js +1 -1
  378. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js +2 -2
  379. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route.js.nft.json +1 -1
  380. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +1 -1
  381. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js +1 -1
  382. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  383. package/cli/app/.next-cli-build/server/app/api/oauth/cursor/import/route_client-reference-manifest.js +1 -1
  384. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js +1 -1
  385. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route.js.nft.json +1 -1
  386. package/cli/app/.next-cli-build/server/app/api/oauth/gitlab/pat/route_client-reference-manifest.js +1 -1
  387. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route.js +1 -1
  388. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  389. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route_client-reference-manifest.js +1 -1
  390. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  391. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  392. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route_client-reference-manifest.js +1 -1
  393. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/route.js +1 -1
  394. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/route.js.nft.json +1 -1
  395. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/[jobId]/route_client-reference-manifest.js +1 -1
  396. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/latest/route.js +1 -1
  397. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/latest/route.js.nft.json +1 -1
  398. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/latest/route_client-reference-manifest.js +1 -1
  399. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js +1 -1
  400. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route.js.nft.json +1 -1
  401. package/cli/app/.next-cli-build/server/app/api/oauth/grok-cli/bulk-import/route_client-reference-manifest.js +1 -1
  402. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js +1 -1
  403. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route.js.nft.json +1 -1
  404. package/cli/app/.next-cli-build/server/app/api/oauth/iflow/cookie/route_client-reference-manifest.js +1 -1
  405. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  406. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route.js.nft.json +1 -1
  407. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.js +1 -1
  408. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js +1 -1
  409. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  410. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route_client-reference-manifest.js +1 -1
  411. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  412. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  413. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route_client-reference-manifest.js +1 -1
  414. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js +1 -1
  415. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route.js.nft.json +1 -1
  416. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/[jobId]/route_client-reference-manifest.js +1 -1
  417. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js +1 -1
  418. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route.js.nft.json +1 -1
  419. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/latest/route_client-reference-manifest.js +1 -1
  420. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js +1 -1
  421. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route.js.nft.json +1 -1
  422. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/bulk-import/route_client-reference-manifest.js +1 -1
  423. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js +1 -1
  424. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  425. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/import/route_client-reference-manifest.js +1 -1
  426. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  427. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route.js.nft.json +1 -1
  428. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.js +1 -1
  429. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  430. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  431. package/cli/app/.next-cli-build/server/app/api/oauth/kiro/social-exchange/route_client-reference-manifest.js +1 -1
  432. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js +1 -1
  433. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route.js.nft.json +1 -1
  434. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route_client-reference-manifest.js +1 -1
  435. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js +1 -1
  436. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route.js.nft.json +1 -1
  437. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route_client-reference-manifest.js +1 -1
  438. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js +1 -1
  439. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route.js.nft.json +1 -1
  440. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/[jobId]/route_client-reference-manifest.js +1 -1
  441. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js +1 -1
  442. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route.js.nft.json +1 -1
  443. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/latest/route_client-reference-manifest.js +1 -1
  444. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js +1 -1
  445. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route.js.nft.json +1 -1
  446. package/cli/app/.next-cli-build/server/app/api/oauth/qoder/bulk-import/route_client-reference-manifest.js +1 -1
  447. package/cli/app/.next-cli-build/server/app/api/pricing/route.js +1 -1
  448. package/cli/app/.next-cli-build/server/app/api/pricing/route.js.nft.json +1 -1
  449. package/cli/app/.next-cli-build/server/app/api/pricing/route_client-reference-manifest.js +1 -1
  450. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js +1 -1
  451. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  452. package/cli/app/.next-cli-build/server/app/api/provider-nodes/[id]/route_client-reference-manifest.js +1 -1
  453. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js +1 -1
  454. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route.js.nft.json +1 -1
  455. package/cli/app/.next-cli-build/server/app/api/provider-nodes/route_client-reference-manifest.js +1 -1
  456. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js +1 -1
  457. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route.js.nft.json +1 -1
  458. package/cli/app/.next-cli-build/server/app/api/provider-nodes/validate/route_client-reference-manifest.js +1 -1
  459. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js +1 -1
  460. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  461. package/cli/app/.next-cli-build/server/app/api/providers/[id]/models/route_client-reference-manifest.js +1 -1
  462. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js +1 -1
  463. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route.js.nft.json +1 -1
  464. package/cli/app/.next-cli-build/server/app/api/providers/[id]/route_client-reference-manifest.js +1 -1
  465. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js +1 -1
  466. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  467. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test/route_client-reference-manifest.js +1 -1
  468. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js +1 -1
  469. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route.js.nft.json +1 -1
  470. package/cli/app/.next-cli-build/server/app/api/providers/[id]/test-models/route_client-reference-manifest.js +1 -1
  471. package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js +1 -1
  472. package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route.js.nft.json +1 -1
  473. package/cli/app/.next-cli-build/server/app/api/providers/bulk-delete/route_client-reference-manifest.js +1 -1
  474. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js +1 -1
  475. package/cli/app/.next-cli-build/server/app/api/providers/client/route.js.nft.json +1 -1
  476. package/cli/app/.next-cli-build/server/app/api/providers/client/route_client-reference-manifest.js +1 -1
  477. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js +1 -1
  478. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route.js.nft.json +1 -1
  479. package/cli/app/.next-cli-build/server/app/api/providers/kilo/free-models/route_client-reference-manifest.js +1 -1
  480. package/cli/app/.next-cli-build/server/app/api/providers/route.js +1 -1
  481. package/cli/app/.next-cli-build/server/app/api/providers/route.js.nft.json +1 -1
  482. package/cli/app/.next-cli-build/server/app/api/providers/route_client-reference-manifest.js +1 -1
  483. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js +1 -1
  484. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route.js.nft.json +1 -1
  485. package/cli/app/.next-cli-build/server/app/api/providers/suggested-models/route_client-reference-manifest.js +1 -1
  486. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js +1 -1
  487. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  488. package/cli/app/.next-cli-build/server/app/api/providers/test-batch/route_client-reference-manifest.js +1 -1
  489. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js +2 -2
  490. package/cli/app/.next-cli-build/server/app/api/providers/validate/route.js.nft.json +1 -1
  491. package/cli/app/.next-cli-build/server/app/api/providers/validate/route_client-reference-manifest.js +1 -1
  492. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js +1 -1
  493. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route.js.nft.json +1 -1
  494. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/route_client-reference-manifest.js +1 -1
  495. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js +1 -1
  496. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route.js.nft.json +1 -1
  497. package/cli/app/.next-cli-build/server/app/api/proxy-pools/[id]/test/route_client-reference-manifest.js +1 -1
  498. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js +2 -2
  499. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route.js.nft.json +1 -1
  500. package/cli/app/.next-cli-build/server/app/api/proxy-pools/cloudflare-deploy/route_client-reference-manifest.js +1 -1
  501. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js +2 -2
  502. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route.js.nft.json +1 -1
  503. package/cli/app/.next-cli-build/server/app/api/proxy-pools/deno-deploy/route_client-reference-manifest.js +1 -1
  504. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js +1 -1
  505. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route.js.nft.json +1 -1
  506. package/cli/app/.next-cli-build/server/app/api/proxy-pools/route_client-reference-manifest.js +1 -1
  507. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js +2 -2
  508. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route.js.nft.json +1 -1
  509. package/cli/app/.next-cli-build/server/app/api/proxy-pools/vercel-deploy/route_client-reference-manifest.js +1 -1
  510. package/cli/app/.next-cli-build/server/app/api/pxpipe/health/route.js +2 -2
  511. package/cli/app/.next-cli-build/server/app/api/pxpipe/health/route.js.nft.json +1 -1
  512. package/cli/app/.next-cli-build/server/app/api/pxpipe/health/route_client-reference-manifest.js +1 -1
  513. package/cli/app/.next-cli-build/server/app/api/pxpipe/install/route.js +2 -2
  514. package/cli/app/.next-cli-build/server/app/api/pxpipe/install/route.js.nft.json +1 -1
  515. package/cli/app/.next-cli-build/server/app/api/pxpipe/install/route_client-reference-manifest.js +1 -1
  516. package/cli/app/.next-cli-build/server/app/api/pxpipe/restart/route.js +2 -2
  517. package/cli/app/.next-cli-build/server/app/api/pxpipe/restart/route.js.nft.json +1 -1
  518. package/cli/app/.next-cli-build/server/app/api/pxpipe/restart/route_client-reference-manifest.js +1 -1
  519. package/cli/app/.next-cli-build/server/app/api/pxpipe/start/route.js +2 -2
  520. package/cli/app/.next-cli-build/server/app/api/pxpipe/start/route.js.nft.json +1 -1
  521. package/cli/app/.next-cli-build/server/app/api/pxpipe/start/route_client-reference-manifest.js +1 -1
  522. package/cli/app/.next-cli-build/server/app/api/pxpipe/stats/route.js +2 -2
  523. package/cli/app/.next-cli-build/server/app/api/pxpipe/stats/route.js.nft.json +1 -1
  524. package/cli/app/.next-cli-build/server/app/api/pxpipe/stats/route_client-reference-manifest.js +1 -1
  525. package/cli/app/.next-cli-build/server/app/api/pxpipe/status/route.js +2 -2
  526. package/cli/app/.next-cli-build/server/app/api/pxpipe/status/route.js.nft.json +1 -1
  527. package/cli/app/.next-cli-build/server/app/api/pxpipe/status/route_client-reference-manifest.js +1 -1
  528. package/cli/app/.next-cli-build/server/app/api/pxpipe/stop/route.js +2 -2
  529. package/cli/app/.next-cli-build/server/app/api/pxpipe/stop/route.js.nft.json +1 -1
  530. package/cli/app/.next-cli-build/server/app/api/pxpipe/stop/route_client-reference-manifest.js +1 -1
  531. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js +1 -1
  532. package/cli/app/.next-cli-build/server/app/api/settings/database/route.js.nft.json +1 -1
  533. package/cli/app/.next-cli-build/server/app/api/settings/database/route_client-reference-manifest.js +1 -1
  534. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js +1 -1
  535. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route.js.nft.json +1 -1
  536. package/cli/app/.next-cli-build/server/app/api/settings/proxy-test/route_client-reference-manifest.js +1 -1
  537. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js +1 -1
  538. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route.js.nft.json +1 -1
  539. package/cli/app/.next-cli-build/server/app/api/settings/require-login/route_client-reference-manifest.js +1 -1
  540. package/cli/app/.next-cli-build/server/app/api/settings/route.js +1 -1
  541. package/cli/app/.next-cli-build/server/app/api/settings/route.js.nft.json +1 -1
  542. package/cli/app/.next-cli-build/server/app/api/settings/route_client-reference-manifest.js +1 -1
  543. package/cli/app/.next-cli-build/server/app/api/shutdown/route.js +1 -1
  544. package/cli/app/.next-cli-build/server/app/api/shutdown/route.js.nft.json +1 -1
  545. package/cli/app/.next-cli-build/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
  546. package/cli/app/.next-cli-build/server/app/api/tags/route.js +1 -1
  547. package/cli/app/.next-cli-build/server/app/api/tags/route.js.nft.json +1 -1
  548. package/cli/app/.next-cli-build/server/app/api/tags/route_client-reference-manifest.js +1 -1
  549. package/cli/app/.next-cli-build/server/app/api/terminal/auth/setup/route.js +1 -1
  550. package/cli/app/.next-cli-build/server/app/api/terminal/auth/setup/route.js.nft.json +1 -1
  551. package/cli/app/.next-cli-build/server/app/api/terminal/auth/setup/route_client-reference-manifest.js +1 -1
  552. package/cli/app/.next-cli-build/server/app/api/terminal/auth/status/route.js +1 -1
  553. package/cli/app/.next-cli-build/server/app/api/terminal/auth/status/route.js.nft.json +1 -1
  554. package/cli/app/.next-cli-build/server/app/api/terminal/auth/status/route_client-reference-manifest.js +1 -1
  555. package/cli/app/.next-cli-build/server/app/api/terminal/auth/unlock/route.js +1 -1
  556. package/cli/app/.next-cli-build/server/app/api/terminal/auth/unlock/route.js.nft.json +1 -1
  557. package/cli/app/.next-cli-build/server/app/api/terminal/auth/unlock/route_client-reference-manifest.js +1 -1
  558. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/input/route.js +1 -1
  559. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/input/route.js.nft.json +1 -1
  560. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/input/route_client-reference-manifest.js +1 -1
  561. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/resize/route.js +1 -1
  562. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/resize/route.js.nft.json +1 -1
  563. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/resize/route_client-reference-manifest.js +1 -1
  564. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/route.js +1 -1
  565. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/route.js.nft.json +1 -1
  566. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/route_client-reference-manifest.js +1 -1
  567. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/stream/route.js +2 -2
  568. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/stream/route.js.nft.json +1 -1
  569. package/cli/app/.next-cli-build/server/app/api/terminal/session/[id]/stream/route_client-reference-manifest.js +1 -1
  570. package/cli/app/.next-cli-build/server/app/api/terminal/session/route.js +1 -1
  571. package/cli/app/.next-cli-build/server/app/api/terminal/session/route.js.nft.json +1 -1
  572. package/cli/app/.next-cli-build/server/app/api/terminal/session/route_client-reference-manifest.js +1 -1
  573. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js +1 -1
  574. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route.js.nft.json +1 -1
  575. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/route_client-reference-manifest.js +1 -1
  576. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js +2 -2
  577. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route.js.nft.json +1 -1
  578. package/cli/app/.next-cli-build/server/app/api/translator/console-logs/stream/route_client-reference-manifest.js +1 -1
  579. package/cli/app/.next-cli-build/server/app/api/translator/load/route.js +1 -1
  580. package/cli/app/.next-cli-build/server/app/api/translator/load/route.js.nft.json +1 -1
  581. package/cli/app/.next-cli-build/server/app/api/translator/load/route_client-reference-manifest.js +1 -1
  582. package/cli/app/.next-cli-build/server/app/api/translator/save/route.js +1 -1
  583. package/cli/app/.next-cli-build/server/app/api/translator/save/route.js.nft.json +1 -1
  584. package/cli/app/.next-cli-build/server/app/api/translator/save/route_client-reference-manifest.js +1 -1
  585. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js +1 -1
  586. package/cli/app/.next-cli-build/server/app/api/translator/send/route.js.nft.json +1 -1
  587. package/cli/app/.next-cli-build/server/app/api/translator/send/route_client-reference-manifest.js +1 -1
  588. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js +1 -1
  589. package/cli/app/.next-cli-build/server/app/api/translator/translate/route.js.nft.json +1 -1
  590. package/cli/app/.next-cli-build/server/app/api/translator/translate/route_client-reference-manifest.js +1 -1
  591. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js +1 -1
  592. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route.js.nft.json +1 -1
  593. package/cli/app/.next-cli-build/server/app/api/tunnel/disable/route_client-reference-manifest.js +1 -1
  594. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js +1 -1
  595. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route.js.nft.json +1 -1
  596. package/cli/app/.next-cli-build/server/app/api/tunnel/enable/route_client-reference-manifest.js +1 -1
  597. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js +1 -1
  598. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route.js.nft.json +1 -1
  599. package/cli/app/.next-cli-build/server/app/api/tunnel/status/route_client-reference-manifest.js +1 -1
  600. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js +1 -1
  601. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route.js.nft.json +1 -1
  602. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-check/route_client-reference-manifest.js +1 -1
  603. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js +1 -1
  604. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route.js.nft.json +1 -1
  605. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-disable/route_client-reference-manifest.js +1 -1
  606. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js +1 -1
  607. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route.js.nft.json +1 -1
  608. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-enable/route_client-reference-manifest.js +1 -1
  609. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js +3 -3
  610. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route.js.nft.json +1 -1
  611. package/cli/app/.next-cli-build/server/app/api/tunnel/tailscale-install/route_client-reference-manifest.js +1 -1
  612. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js +1 -1
  613. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  614. package/cli/app/.next-cli-build/server/app/api/usage/[connectionId]/route_client-reference-manifest.js +1 -1
  615. package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js +1 -1
  616. package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route.js.nft.json +1 -1
  617. package/cli/app/.next-cli-build/server/app/api/usage/aggregate/route_client-reference-manifest.js +1 -1
  618. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js +1 -1
  619. package/cli/app/.next-cli-build/server/app/api/usage/chart/route.js.nft.json +1 -1
  620. package/cli/app/.next-cli-build/server/app/api/usage/chart/route_client-reference-manifest.js +1 -1
  621. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js +1 -1
  622. package/cli/app/.next-cli-build/server/app/api/usage/history/route.js.nft.json +1 -1
  623. package/cli/app/.next-cli-build/server/app/api/usage/history/route_client-reference-manifest.js +1 -1
  624. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js +1 -1
  625. package/cli/app/.next-cli-build/server/app/api/usage/providers/route.js.nft.json +1 -1
  626. package/cli/app/.next-cli-build/server/app/api/usage/providers/route_client-reference-manifest.js +1 -1
  627. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js +1 -1
  628. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route.js.nft.json +1 -1
  629. package/cli/app/.next-cli-build/server/app/api/usage/request-details/route_client-reference-manifest.js +1 -1
  630. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js +1 -1
  631. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  632. package/cli/app/.next-cli-build/server/app/api/usage/request-logs/route_client-reference-manifest.js +1 -1
  633. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js +1 -1
  634. package/cli/app/.next-cli-build/server/app/api/usage/stats/route.js.nft.json +1 -1
  635. package/cli/app/.next-cli-build/server/app/api/usage/stats/route_client-reference-manifest.js +1 -1
  636. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js +2 -2
  637. package/cli/app/.next-cli-build/server/app/api/usage/stream/route.js.nft.json +1 -1
  638. package/cli/app/.next-cli-build/server/app/api/usage/stream/route_client-reference-manifest.js +1 -1
  639. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js +1 -1
  640. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  641. package/cli/app/.next-cli-build/server/app/api/v1/api/chat/route_client-reference-manifest.js +1 -1
  642. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js +1 -1
  643. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  644. package/cli/app/.next-cli-build/server/app/api/v1/audio/speech/route_client-reference-manifest.js +1 -1
  645. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js +1 -1
  646. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  647. package/cli/app/.next-cli-build/server/app/api/v1/audio/transcriptions/route_client-reference-manifest.js +1 -1
  648. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js +1 -1
  649. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route.js.nft.json +1 -1
  650. package/cli/app/.next-cli-build/server/app/api/v1/audio/voices/route_client-reference-manifest.js +1 -1
  651. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js +1 -1
  652. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  653. package/cli/app/.next-cli-build/server/app/api/v1/chat/completions/route_client-reference-manifest.js +1 -1
  654. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js +1 -1
  655. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  656. package/cli/app/.next-cli-build/server/app/api/v1/embeddings/route_client-reference-manifest.js +1 -1
  657. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js +2 -2
  658. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  659. package/cli/app/.next-cli-build/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -1
  660. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js +1 -1
  661. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route.js.nft.json +1 -1
  662. package/cli/app/.next-cli-build/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.js +1 -1
  663. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js +1 -1
  664. package/cli/app/.next-cli-build/server/app/api/v1/messages/route.js.nft.json +1 -1
  665. package/cli/app/.next-cli-build/server/app/api/v1/messages/route_client-reference-manifest.js +1 -1
  666. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js +1 -1
  667. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route.js.nft.json +1 -1
  668. package/cli/app/.next-cli-build/server/app/api/v1/models/[kind]/route_client-reference-manifest.js +1 -1
  669. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js +1 -1
  670. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route.js.nft.json +1 -1
  671. package/cli/app/.next-cli-build/server/app/api/v1/models/info/route_client-reference-manifest.js +1 -1
  672. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js +1 -1
  673. package/cli/app/.next-cli-build/server/app/api/v1/models/route.js.nft.json +1 -1
  674. package/cli/app/.next-cli-build/server/app/api/v1/models/route_client-reference-manifest.js +1 -1
  675. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js +1 -1
  676. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route.js.nft.json +1 -1
  677. package/cli/app/.next-cli-build/server/app/api/v1/responses/compact/route_client-reference-manifest.js +1 -1
  678. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js +1 -1
  679. package/cli/app/.next-cli-build/server/app/api/v1/responses/route.js.nft.json +1 -1
  680. package/cli/app/.next-cli-build/server/app/api/v1/responses/route_client-reference-manifest.js +1 -1
  681. package/cli/app/.next-cli-build/server/app/api/v1/route.js +1 -1
  682. package/cli/app/.next-cli-build/server/app/api/v1/route.js.nft.json +1 -1
  683. package/cli/app/.next-cli-build/server/app/api/v1/route_client-reference-manifest.js +1 -1
  684. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js +1 -1
  685. package/cli/app/.next-cli-build/server/app/api/v1/search/route.js.nft.json +1 -1
  686. package/cli/app/.next-cli-build/server/app/api/v1/search/route_client-reference-manifest.js +1 -1
  687. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js +1 -1
  688. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route.js.nft.json +1 -1
  689. package/cli/app/.next-cli-build/server/app/api/v1/web/fetch/route_client-reference-manifest.js +1 -1
  690. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js +1 -1
  691. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  692. package/cli/app/.next-cli-build/server/app/api/v1beta/models/[...path]/route_client-reference-manifest.js +1 -1
  693. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js +1 -1
  694. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route.js.nft.json +1 -1
  695. package/cli/app/.next-cli-build/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
  696. package/cli/app/.next-cli-build/server/app/api/version/route.js +1 -1
  697. package/cli/app/.next-cli-build/server/app/api/version/route.js.nft.json +1 -1
  698. package/cli/app/.next-cli-build/server/app/api/version/route_client-reference-manifest.js +1 -1
  699. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js +1 -1
  700. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route.js.nft.json +1 -1
  701. package/cli/app/.next-cli-build/server/app/api/version/shutdown/route_client-reference-manifest.js +1 -1
  702. package/cli/app/.next-cli-build/server/app/api/version/update/route.js +1 -1
  703. package/cli/app/.next-cli-build/server/app/api/version/update/route.js.nft.json +1 -1
  704. package/cli/app/.next-cli-build/server/app/api/version/update/route_client-reference-manifest.js +1 -1
  705. package/cli/app/.next-cli-build/server/app/callback/page.js +2 -2
  706. package/cli/app/.next-cli-build/server/app/callback/page.js.nft.json +1 -1
  707. package/cli/app/.next-cli-build/server/app/callback/page_client-reference-manifest.js +1 -1
  708. package/cli/app/.next-cli-build/server/app/callback.html +1 -1
  709. package/cli/app/.next-cli-build/server/app/callback.rsc +13 -13
  710. package/cli/app/.next-cli-build/server/app/callback.segments/_full.segment.rsc +13 -13
  711. package/cli/app/.next-cli-build/server/app/callback.segments/_head.segment.rsc +4 -4
  712. package/cli/app/.next-cli-build/server/app/callback.segments/_index.segment.rsc +6 -6
  713. package/cli/app/.next-cli-build/server/app/callback.segments/_tree.segment.rsc +2 -2
  714. package/cli/app/.next-cli-build/server/app/callback.segments/callback/__PAGE__.segment.rsc +4 -4
  715. package/cli/app/.next-cli-build/server/app/callback.segments/callback.segment.rsc +3 -3
  716. package/cli/app/.next-cli-build/server/app/dashboard/automation.html +1 -1
  717. package/cli/app/.next-cli-build/server/app/dashboard/automation.rsc +14 -14
  718. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation/__PAGE__.segment.rsc +4 -4
  719. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard/automation.segment.rsc +3 -3
  720. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  721. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  722. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_full.segment.rsc +14 -14
  723. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_head.segment.rsc +4 -4
  724. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_index.segment.rsc +6 -6
  725. package/cli/app/.next-cli-build/server/app/dashboard/automation.segments/_tree.segment.rsc +2 -2
  726. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.html +1 -1
  727. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.rsc +13 -13
  728. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat/__PAGE__.segment.rsc +3 -3
  729. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard/basic-chat.segment.rsc +3 -3
  730. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  731. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  732. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_full.segment.rsc +13 -13
  733. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_head.segment.rsc +4 -4
  734. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_index.segment.rsc +6 -6
  735. package/cli/app/.next-cli-build/server/app/dashboard/basic-chat.segments/_tree.segment.rsc +2 -2
  736. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.html +1 -1
  737. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.rsc +13 -13
  738. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +3 -3
  739. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +3 -3
  740. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  741. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  742. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_full.segment.rsc +13 -13
  743. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_head.segment.rsc +4 -4
  744. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_index.segment.rsc +6 -6
  745. package/cli/app/.next-cli-build/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +2 -2
  746. package/cli/app/.next-cli-build/server/app/dashboard/combos.html +1 -1
  747. package/cli/app/.next-cli-build/server/app/dashboard/combos.rsc +14 -14
  748. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +4 -4
  749. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +3 -3
  750. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  751. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  752. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_full.segment.rsc +14 -14
  753. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_head.segment.rsc +4 -4
  754. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_index.segment.rsc +6 -6
  755. package/cli/app/.next-cli-build/server/app/dashboard/combos.segments/_tree.segment.rsc +2 -2
  756. package/cli/app/.next-cli-build/server/app/dashboard/context.html +1 -1
  757. package/cli/app/.next-cli-build/server/app/dashboard/context.rsc +14 -14
  758. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context/__PAGE__.segment.rsc +4 -4
  759. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard/context.segment.rsc +3 -3
  760. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  761. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  762. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_full.segment.rsc +14 -14
  763. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_head.segment.rsc +4 -4
  764. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_index.segment.rsc +6 -6
  765. package/cli/app/.next-cli-build/server/app/dashboard/context.segments/_tree.segment.rsc +2 -2
  766. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.html +1 -1
  767. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.rsc +13 -13
  768. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +3 -3
  769. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +3 -3
  770. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  771. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  772. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_full.segment.rsc +13 -13
  773. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_head.segment.rsc +4 -4
  774. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_index.segment.rsc +6 -6
  775. package/cli/app/.next-cli-build/server/app/dashboard/endpoint.segments/_tree.segment.rsc +2 -2
  776. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.html +1 -1
  777. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.rsc +14 -14
  778. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web/__PAGE__.segment.rsc +4 -4
  779. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers/web.segment.rsc +3 -3
  780. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard/media-providers.segment.rsc +3 -3
  781. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  782. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  783. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_full.segment.rsc +14 -14
  784. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_head.segment.rsc +4 -4
  785. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_index.segment.rsc +6 -6
  786. package/cli/app/.next-cli-build/server/app/dashboard/media-providers/web.segments/_tree.segment.rsc +2 -2
  787. package/cli/app/.next-cli-build/server/app/dashboard/mitm.html +1 -1
  788. package/cli/app/.next-cli-build/server/app/dashboard/mitm.rsc +13 -13
  789. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm/__PAGE__.segment.rsc +3 -3
  790. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard/mitm.segment.rsc +3 -3
  791. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  792. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  793. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_full.segment.rsc +13 -13
  794. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_head.segment.rsc +4 -4
  795. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_index.segment.rsc +6 -6
  796. package/cli/app/.next-cli-build/server/app/dashboard/mitm.segments/_tree.segment.rsc +2 -2
  797. package/cli/app/.next-cli-build/server/app/dashboard/playground.html +1 -1
  798. package/cli/app/.next-cli-build/server/app/dashboard/playground.rsc +13 -13
  799. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard/playground/__PAGE__.segment.rsc +3 -3
  800. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard/playground.segment.rsc +3 -3
  801. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  802. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  803. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_full.segment.rsc +13 -13
  804. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_head.segment.rsc +4 -4
  805. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_index.segment.rsc +6 -6
  806. package/cli/app/.next-cli-build/server/app/dashboard/playground.segments/_tree.segment.rsc +2 -2
  807. package/cli/app/.next-cli-build/server/app/dashboard/profile.html +1 -1
  808. package/cli/app/.next-cli-build/server/app/dashboard/profile.rsc +14 -14
  809. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +4 -4
  810. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +3 -3
  811. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  812. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  813. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_full.segment.rsc +14 -14
  814. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_head.segment.rsc +4 -4
  815. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_index.segment.rsc +6 -6
  816. package/cli/app/.next-cli-build/server/app/dashboard/profile.segments/_tree.segment.rsc +2 -2
  817. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.html +1 -1
  818. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.rsc +14 -14
  819. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +4 -4
  820. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +3 -3
  821. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +3 -3
  822. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  823. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  824. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_full.segment.rsc +14 -14
  825. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_head.segment.rsc +4 -4
  826. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_index.segment.rsc +6 -6
  827. package/cli/app/.next-cli-build/server/app/dashboard/providers/new.segments/_tree.segment.rsc +2 -2
  828. package/cli/app/.next-cli-build/server/app/dashboard/providers.html +1 -1
  829. package/cli/app/.next-cli-build/server/app/dashboard/providers.rsc +14 -14
  830. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +4 -4
  831. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +3 -3
  832. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  833. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  834. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_full.segment.rsc +14 -14
  835. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_head.segment.rsc +4 -4
  836. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_index.segment.rsc +6 -6
  837. package/cli/app/.next-cli-build/server/app/dashboard/providers.segments/_tree.segment.rsc +2 -2
  838. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.html +1 -1
  839. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.rsc +14 -14
  840. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools/__PAGE__.segment.rsc +4 -4
  841. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard/proxy-pools.segment.rsc +3 -3
  842. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  843. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  844. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_full.segment.rsc +14 -14
  845. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_head.segment.rsc +4 -4
  846. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_index.segment.rsc +6 -6
  847. package/cli/app/.next-cli-build/server/app/dashboard/proxy-pools.segments/_tree.segment.rsc +2 -2
  848. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.html +1 -1
  849. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.rsc +13 -13
  850. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe/__PAGE__.segment.rsc +3 -3
  851. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard/pxpipe.segment.rsc +3 -3
  852. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  853. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  854. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_full.segment.rsc +13 -13
  855. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_head.segment.rsc +4 -4
  856. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_index.segment.rsc +6 -6
  857. package/cli/app/.next-cli-build/server/app/dashboard/pxpipe.segments/_tree.segment.rsc +2 -2
  858. package/cli/app/.next-cli-build/server/app/dashboard/quota.html +2 -2
  859. package/cli/app/.next-cli-build/server/app/dashboard/quota.rsc +14 -14
  860. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota/__PAGE__.segment.rsc +4 -4
  861. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard/quota.segment.rsc +3 -3
  862. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  863. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  864. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_full.segment.rsc +14 -14
  865. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_head.segment.rsc +4 -4
  866. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_index.segment.rsc +6 -6
  867. package/cli/app/.next-cli-build/server/app/dashboard/quota.segments/_tree.segment.rsc +2 -2
  868. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js +2 -2
  869. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page.js.nft.json +1 -1
  870. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  871. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.html +1 -1
  872. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.rsc +13 -13
  873. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +13 -13
  874. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +4 -4
  875. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +6 -6
  876. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +2 -2
  877. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing/__PAGE__.segment.rsc +4 -4
  878. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings/pricing.segment.rsc +3 -3
  879. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard/settings.segment.rsc +3 -3
  880. package/cli/app/.next-cli-build/server/app/dashboard/settings/pricing.segments/dashboard.segment.rsc +3 -3
  881. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.html +1 -1
  882. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.rsc +13 -13
  883. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver/__PAGE__.segment.rsc +3 -3
  884. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard/token-saver.segment.rsc +3 -3
  885. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  886. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  887. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_full.segment.rsc +13 -13
  888. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_head.segment.rsc +4 -4
  889. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_index.segment.rsc +6 -6
  890. package/cli/app/.next-cli-build/server/app/dashboard/token-saver.segments/_tree.segment.rsc +2 -2
  891. package/cli/app/.next-cli-build/server/app/dashboard/translator.html +1 -1
  892. package/cli/app/.next-cli-build/server/app/dashboard/translator.rsc +14 -14
  893. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +4 -4
  894. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +3 -3
  895. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  896. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  897. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_full.segment.rsc +14 -14
  898. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_head.segment.rsc +4 -4
  899. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_index.segment.rsc +6 -6
  900. package/cli/app/.next-cli-build/server/app/dashboard/translator.segments/_tree.segment.rsc +2 -2
  901. package/cli/app/.next-cli-build/server/app/dashboard/usage.html +1 -1
  902. package/cli/app/.next-cli-build/server/app/dashboard/usage.rsc +14 -14
  903. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +4 -4
  904. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +3 -3
  905. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  906. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  907. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_full.segment.rsc +14 -14
  908. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_head.segment.rsc +4 -4
  909. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_index.segment.rsc +6 -6
  910. package/cli/app/.next-cli-build/server/app/dashboard/usage.segments/_tree.segment.rsc +2 -2
  911. package/cli/app/.next-cli-build/server/app/dashboard.html +1 -1
  912. package/cli/app/.next-cli-build/server/app/dashboard.rsc +13 -13
  913. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard/__PAGE__.segment.rsc +3 -3
  914. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +3 -3
  915. package/cli/app/.next-cli-build/server/app/dashboard.segments/!KGRhc2hib2FyZCk.segment.rsc +4 -4
  916. package/cli/app/.next-cli-build/server/app/dashboard.segments/_full.segment.rsc +13 -13
  917. package/cli/app/.next-cli-build/server/app/dashboard.segments/_head.segment.rsc +4 -4
  918. package/cli/app/.next-cli-build/server/app/dashboard.segments/_index.segment.rsc +6 -6
  919. package/cli/app/.next-cli-build/server/app/dashboard.segments/_tree.segment.rsc +2 -2
  920. package/cli/app/.next-cli-build/server/app/index.html +1 -1
  921. package/cli/app/.next-cli-build/server/app/index.rsc +11 -11
  922. package/cli/app/.next-cli-build/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  923. package/cli/app/.next-cli-build/server/app/index.segments/_full.segment.rsc +11 -11
  924. package/cli/app/.next-cli-build/server/app/index.segments/_head.segment.rsc +4 -4
  925. package/cli/app/.next-cli-build/server/app/index.segments/_index.segment.rsc +6 -6
  926. package/cli/app/.next-cli-build/server/app/index.segments/_tree.segment.rsc +2 -2
  927. package/cli/app/.next-cli-build/server/app/landing/page.js +2 -2
  928. package/cli/app/.next-cli-build/server/app/landing/page.js.nft.json +1 -1
  929. package/cli/app/.next-cli-build/server/app/landing/page_client-reference-manifest.js +1 -1
  930. package/cli/app/.next-cli-build/server/app/landing.html +1 -1
  931. package/cli/app/.next-cli-build/server/app/landing.rsc +13 -13
  932. package/cli/app/.next-cli-build/server/app/landing.segments/_full.segment.rsc +13 -13
  933. package/cli/app/.next-cli-build/server/app/landing.segments/_head.segment.rsc +4 -4
  934. package/cli/app/.next-cli-build/server/app/landing.segments/_index.segment.rsc +6 -6
  935. package/cli/app/.next-cli-build/server/app/landing.segments/_tree.segment.rsc +2 -2
  936. package/cli/app/.next-cli-build/server/app/landing.segments/landing/__PAGE__.segment.rsc +4 -4
  937. package/cli/app/.next-cli-build/server/app/landing.segments/landing.segment.rsc +3 -3
  938. package/cli/app/.next-cli-build/server/app/login/page.js +2 -2
  939. package/cli/app/.next-cli-build/server/app/login/page.js.nft.json +1 -1
  940. package/cli/app/.next-cli-build/server/app/login/page_client-reference-manifest.js +1 -1
  941. package/cli/app/.next-cli-build/server/app/login.html +1 -1
  942. package/cli/app/.next-cli-build/server/app/login.rsc +13 -13
  943. package/cli/app/.next-cli-build/server/app/login.segments/_full.segment.rsc +13 -13
  944. package/cli/app/.next-cli-build/server/app/login.segments/_head.segment.rsc +4 -4
  945. package/cli/app/.next-cli-build/server/app/login.segments/_index.segment.rsc +6 -6
  946. package/cli/app/.next-cli-build/server/app/login.segments/_tree.segment.rsc +2 -2
  947. package/cli/app/.next-cli-build/server/app/login.segments/login/__PAGE__.segment.rsc +4 -4
  948. package/cli/app/.next-cli-build/server/app/login.segments/login.segment.rsc +3 -3
  949. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js +2 -2
  950. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route.js.nft.json +1 -1
  951. package/cli/app/.next-cli-build/server/app/manifest.webmanifest/route_client-reference-manifest.js +1 -1
  952. package/cli/app/.next-cli-build/server/app/page.js +2 -2
  953. package/cli/app/.next-cli-build/server/app/page.js.nft.json +1 -1
  954. package/cli/app/.next-cli-build/server/app/page_client-reference-manifest.js +1 -1
  955. package/cli/app/.next-cli-build/server/app-paths-manifest.json +7 -7
  956. package/cli/app/.next-cli-build/server/chunks/{3159.js → 1023.js} +1 -1
  957. package/cli/app/.next-cli-build/server/chunks/1046.js +1 -0
  958. package/cli/app/.next-cli-build/server/chunks/{4055.js → 1167.js} +1 -1
  959. package/cli/app/.next-cli-build/server/chunks/1237.js +51 -0
  960. package/cli/app/.next-cli-build/server/chunks/{6844.js → 1469.js} +1 -1
  961. package/cli/app/.next-cli-build/server/chunks/{1188.js → 1500.js} +1 -1
  962. package/cli/app/.next-cli-build/server/chunks/1536.js +1 -0
  963. package/cli/app/.next-cli-build/server/chunks/1586.js +7 -0
  964. package/cli/app/.next-cli-build/server/chunks/1637.js +3 -0
  965. package/cli/app/.next-cli-build/server/chunks/{4229.js → 1776.js} +1 -1
  966. package/cli/app/.next-cli-build/server/chunks/{1019.js → 1779.js} +1 -1
  967. package/cli/app/.next-cli-build/server/chunks/2027.js +1 -0
  968. package/cli/app/.next-cli-build/server/chunks/2282.js +1 -0
  969. package/cli/app/.next-cli-build/server/chunks/23.js +63 -0
  970. package/cli/app/.next-cli-build/server/chunks/{3593.js → 2417.js} +1 -1
  971. package/cli/app/.next-cli-build/server/chunks/2423.js +1 -0
  972. package/cli/app/.next-cli-build/server/chunks/2674.js +121 -0
  973. package/cli/app/.next-cli-build/server/chunks/{6036.js → 2909.js} +1 -1
  974. package/cli/app/.next-cli-build/server/chunks/3174.js +19 -0
  975. package/cli/app/.next-cli-build/server/chunks/3538.js +1 -0
  976. package/cli/app/.next-cli-build/server/chunks/{4136.js → 3552.js} +1 -1
  977. package/cli/app/.next-cli-build/server/chunks/3560.js +7 -0
  978. package/cli/app/.next-cli-build/server/chunks/{5236.js → 3580.js} +1 -1
  979. package/cli/app/.next-cli-build/server/chunks/3833.js +1 -0
  980. package/cli/app/.next-cli-build/server/chunks/3871.js +60 -0
  981. package/cli/app/.next-cli-build/server/chunks/{5681.js → 3881.js} +1 -1
  982. package/cli/app/.next-cli-build/server/chunks/3972.js +1 -0
  983. package/cli/app/.next-cli-build/server/chunks/4014.js +1 -0
  984. package/cli/app/.next-cli-build/server/chunks/4088.js +1 -0
  985. package/cli/app/.next-cli-build/server/chunks/4293.js +1 -0
  986. package/cli/app/.next-cli-build/server/chunks/{7341.js → 4341.js} +1 -1
  987. package/cli/app/.next-cli-build/server/chunks/4350.js +1 -0
  988. package/cli/app/.next-cli-build/server/chunks/{4739.js → 4395.js} +1 -1
  989. package/cli/app/.next-cli-build/server/chunks/4441.js +24 -0
  990. package/cli/app/.next-cli-build/server/chunks/{2693.js → 4493.js} +1 -1
  991. package/cli/app/.next-cli-build/server/chunks/{5000.js → 4499.js} +2 -2
  992. package/cli/app/.next-cli-build/server/chunks/4539.js +1 -0
  993. package/cli/app/.next-cli-build/server/chunks/46.js +17 -0
  994. package/cli/app/.next-cli-build/server/chunks/4607.js +18 -0
  995. package/cli/app/.next-cli-build/server/chunks/{3331.js → 4619.js} +1 -1
  996. package/cli/app/.next-cli-build/server/chunks/4693.js +1 -0
  997. package/cli/app/.next-cli-build/server/chunks/{7965.js → 4880.js} +1 -1
  998. package/cli/app/.next-cli-build/server/chunks/{1998.js → 4934.js} +1 -1
  999. package/cli/app/.next-cli-build/server/chunks/4959.js +1 -0
  1000. package/cli/app/.next-cli-build/server/chunks/497.js +1 -0
  1001. package/cli/app/.next-cli-build/server/chunks/5015.js +67 -0
  1002. package/cli/app/.next-cli-build/server/chunks/5337.js +1 -0
  1003. package/cli/app/.next-cli-build/server/chunks/{6802.js → 5370.js} +1 -1
  1004. package/cli/app/.next-cli-build/server/chunks/{2030.js → 5614.js} +5 -5
  1005. package/cli/app/.next-cli-build/server/chunks/5747.js +1 -0
  1006. package/cli/app/.next-cli-build/server/chunks/5956.js +1 -0
  1007. package/cli/app/.next-cli-build/server/chunks/{4404.js → 6041.js} +1 -1
  1008. package/cli/app/.next-cli-build/server/chunks/6170.js +3 -0
  1009. package/cli/app/.next-cli-build/server/chunks/6220.js +1 -0
  1010. package/cli/app/.next-cli-build/server/chunks/6372.js +1 -0
  1011. package/cli/app/.next-cli-build/server/chunks/6408.js +43 -0
  1012. package/cli/app/.next-cli-build/server/chunks/6673.js +1 -0
  1013. package/cli/app/.next-cli-build/server/chunks/6714.js +1 -0
  1014. package/cli/app/.next-cli-build/server/chunks/{6108.js → 6744.js} +1 -1
  1015. package/cli/app/.next-cli-build/server/chunks/733.js +1 -0
  1016. package/cli/app/.next-cli-build/server/chunks/{1531.js → 7667.js} +1 -1
  1017. package/cli/app/.next-cli-build/server/chunks/7716.js +1 -0
  1018. package/cli/app/.next-cli-build/server/chunks/7729.js +1 -0
  1019. package/cli/app/.next-cli-build/server/chunks/{9528.js → 7741.js} +3 -3
  1020. package/cli/app/.next-cli-build/server/chunks/7806.js +1 -0
  1021. package/cli/app/.next-cli-build/server/chunks/7870.js +1 -0
  1022. package/cli/app/.next-cli-build/server/chunks/{2007.js → 8031.js} +1 -1
  1023. package/cli/app/.next-cli-build/server/chunks/8180.js +1 -0
  1024. package/cli/app/.next-cli-build/server/chunks/8182.js +1 -0
  1025. package/cli/app/.next-cli-build/server/chunks/8183.js +1 -0
  1026. package/cli/app/.next-cli-build/server/chunks/8227.js +1 -0
  1027. package/cli/app/.next-cli-build/server/chunks/83.js +45 -0
  1028. package/cli/app/.next-cli-build/server/chunks/8341.js +1 -0
  1029. package/cli/app/.next-cli-build/server/chunks/857.js +1 -0
  1030. package/cli/app/.next-cli-build/server/chunks/{6457.js → 8578.js} +2 -2
  1031. package/cli/app/.next-cli-build/server/chunks/8669.js +1 -0
  1032. package/cli/app/.next-cli-build/server/chunks/8779.js +1 -0
  1033. package/cli/app/.next-cli-build/server/chunks/{4013.js → 8953.js} +1 -1
  1034. package/cli/app/.next-cli-build/server/chunks/9001.js +1 -0
  1035. package/cli/app/.next-cli-build/server/chunks/906.js +183 -0
  1036. package/cli/app/.next-cli-build/server/chunks/{2722.js → 9293.js} +25 -25
  1037. package/cli/app/.next-cli-build/server/chunks/9345.js +1 -0
  1038. package/cli/app/.next-cli-build/server/chunks/{5258.js → 9570.js} +1 -1
  1039. package/cli/app/.next-cli-build/server/chunks/9901.js +1 -0
  1040. package/cli/app/.next-cli-build/server/chunks/9992.js +66 -0
  1041. package/cli/app/.next-cli-build/server/middleware-build-manifest.js +1 -1
  1042. package/cli/app/.next-cli-build/server/middleware-react-loadable-manifest.js +1 -1
  1043. package/cli/app/.next-cli-build/server/middleware.js +22 -22
  1044. package/cli/app/.next-cli-build/server/next-font-manifest.js +1 -1
  1045. package/cli/app/.next-cli-build/server/next-font-manifest.json +1 -1
  1046. package/cli/app/.next-cli-build/server/pages/404.html +1 -1
  1047. package/cli/app/.next-cli-build/server/pages/500.html +1 -1
  1048. package/cli/app/.next-cli-build/server/server-reference-manifest.js +1 -1
  1049. package/cli/app/.next-cli-build/server/server-reference-manifest.json +1 -1
  1050. package/cli/app/.next-cli-build/server/webpack-runtime.js +1 -1
  1051. package/cli/app/.next-cli-build/static/chunks/{4bd1b696-e356ca5ba0218e27.js → 0937d497-33e2049988b7c22e.js} +1 -1
  1052. package/cli/app/.next-cli-build/static/chunks/1096-6d775ecc28cf6340.js +1 -0
  1053. package/cli/app/.next-cli-build/static/chunks/1554-f9422191725f4f61.js +1 -0
  1054. package/cli/app/.next-cli-build/static/chunks/{8202.1ffc6ce531e066ce.js → 1768.ad4675e8c839dd60.js} +1 -1
  1055. package/cli/app/.next-cli-build/static/chunks/1858-5de22f4a0f7873ea.js +32 -0
  1056. package/cli/app/.next-cli-build/static/chunks/2b9ff8ee-8330dc76023de107.js +1 -0
  1057. package/cli/app/.next-cli-build/static/chunks/{6069-6bce779705f69e62.js → 3539-25f16e696f32ccdf.js} +5 -5
  1058. package/cli/app/.next-cli-build/static/chunks/4391-0e471d2e761014ea.js +3 -0
  1059. package/cli/app/.next-cli-build/static/chunks/6656-0ca5257ec474f863.js +66 -0
  1060. package/cli/app/.next-cli-build/static/chunks/7783-7a4ed0063ec0fecc.js +7 -0
  1061. package/cli/app/.next-cli-build/static/chunks/7813-e1ba7449a3791419.js +1 -0
  1062. package/cli/app/.next-cli-build/static/chunks/{1992-b492aa3235a8c259.js → 8434-db0f0049d0262e2e.js} +1 -1
  1063. package/cli/app/.next-cli-build/static/chunks/8689-ee86215b9a3eb108.js +1 -0
  1064. package/cli/app/.next-cli-build/static/chunks/888-1894db92ff847dbb.js +1 -0
  1065. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/automation/page-2ee85b86d7597651.js +1 -0
  1066. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/page-bad8ff5503e4f0b7.js +1 -0
  1067. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-3fb4f7227c4ab57f.js +1 -0
  1068. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/page-9459e82acdd078ac.js +1 -0
  1069. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-f411959991f96990.js +1 -0
  1070. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-1a77fd86f2a4922a.js +1 -0
  1071. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/context/page-63e5ceb81d87c300.js +1 -0
  1072. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-1a097de73412d440.js +1 -0
  1073. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/[id]/{page-0fafff8a72986a98.js → page-2365f7b85dd8967d.js} +2 -2
  1074. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-7427ee87015d1113.js +1 -0
  1075. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/combo/[id]/{page-85e7b6f5b4af1dd4.js → page-939421769eec6d3b.js} +2 -2
  1076. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/page-ca761e638d38dae4.js +1 -0
  1077. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/page-eeb71d37d39b3586.js +1 -0
  1078. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-1c1a986664906bea.js +1 -0
  1079. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/playground/page-284542c819665387.js +1 -0
  1080. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-30229a682f3cb8df.js +1 -0
  1081. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/[id]/{page-6deaa1a0e3ad0eb6.js → page-4bfe29eb86322368.js} +2 -2
  1082. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/page-71ca5c61fe011c5b.js +1 -0
  1083. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/{page-5ab697596491a658.js → page-fa8e4cba2691a844.js} +1 -1
  1084. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/proxy-pools/{page-eb11e852f7a314c9.js → page-69eefaf477523b7d.js} +2 -2
  1085. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/pxpipe/{page-f1c47c7778f23895.js → page-930e38c563b5c8a1.js} +1 -1
  1086. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-fb96c1c4474868b3.js +1 -0
  1087. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/terminal/{page-a3689f5a124bc27a.js → page-8da3399a4ed0af0d.js} +2 -2
  1088. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-ef6d294917d01201.js +1 -0
  1089. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/page-86b61948afed34e8.js +1 -0
  1090. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-b4939c80e73c7dfd.js +1 -0
  1091. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/layout-2e14da9e57c3e171.js +1 -0
  1092. package/cli/app/.next-cli-build/static/chunks/app/_global-error/{page-0958b3b629c68bd2.js → page-63a0542d75a38025.js} +1 -1
  1093. package/cli/app/.next-cli-build/static/chunks/app/_not-found/page-85ef61223793be87.js +1 -0
  1094. package/cli/app/.next-cli-build/static/chunks/app/api/auth/login/{route-0958b3b629c68bd2.js → route-63a0542d75a38025.js} +1 -1
  1095. package/cli/app/.next-cli-build/static/chunks/app/api/auth/logout/{route-0958b3b629c68bd2.js → route-63a0542d75a38025.js} +1 -1
  1096. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/callback/{route-0958b3b629c68bd2.js → route-63a0542d75a38025.js} +1 -1
  1097. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-63a0542d75a38025.js +1 -0
  1098. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-63a0542d75a38025.js +1 -0
  1099. package/cli/app/.next-cli-build/static/chunks/app/api/auth/status/route-63a0542d75a38025.js +1 -0
  1100. package/cli/app/.next-cli-build/static/chunks/app/api/cache/stats/route-63a0542d75a38025.js +1 -0
  1101. package/cli/app/.next-cli-build/static/chunks/app/api/changelog/route-63a0542d75a38025.js +1 -0
  1102. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-63a0542d75a38025.js +1 -0
  1103. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-63a0542d75a38025.js +1 -0
  1104. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-63a0542d75a38025.js +1 -0
  1105. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-63a0542d75a38025.js +1 -0
  1106. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-63a0542d75a38025.js +1 -0
  1107. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-gateway/accounts/route-63a0542d75a38025.js +1 -0
  1108. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-63a0542d75a38025.js +1 -0
  1109. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-63a0542d75a38025.js +1 -0
  1110. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-63a0542d75a38025.js +1 -0
  1111. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-63a0542d75a38025.js +1 -0
  1112. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-63a0542d75a38025.js +1 -0
  1113. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-63a0542d75a38025.js +1 -0
  1114. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-63a0542d75a38025.js +1 -0
  1115. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-63a0542d75a38025.js +1 -0
  1116. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-63a0542d75a38025.js +1 -0
  1117. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-63a0542d75a38025.js +1 -0
  1118. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-63a0542d75a38025.js +1 -0
  1119. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-63a0542d75a38025.js +1 -0
  1120. package/cli/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-63a0542d75a38025.js +1 -0
  1121. package/cli/app/.next-cli-build/static/chunks/app/api/combos/route-63a0542d75a38025.js +1 -0
  1122. package/cli/app/.next-cli-build/static/chunks/app/api/context/[id]/route-63a0542d75a38025.js +1 -0
  1123. package/cli/app/.next-cli-build/static/chunks/app/api/context/bulk/route-63a0542d75a38025.js +1 -0
  1124. package/cli/app/.next-cli-build/static/chunks/app/api/context/route-63a0542d75a38025.js +1 -0
  1125. package/cli/app/.next-cli-build/static/chunks/app/api/dashboard/chat/completions/route-63a0542d75a38025.js +1 -0
  1126. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-63a0542d75a38025.js +1 -0
  1127. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-63a0542d75a38025.js +1 -0
  1128. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-63a0542d75a38025.js +1 -0
  1129. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/start/route-63a0542d75a38025.js +1 -0
  1130. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/status/route-63a0542d75a38025.js +1 -0
  1131. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-63a0542d75a38025.js +1 -0
  1132. package/cli/app/.next-cli-build/static/chunks/app/api/health/ready/route-63a0542d75a38025.js +1 -0
  1133. package/cli/app/.next-cli-build/static/chunks/app/api/health/route-63a0542d75a38025.js +1 -0
  1134. package/cli/app/.next-cli-build/static/chunks/app/api/init/route-63a0542d75a38025.js +1 -0
  1135. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/rotate/route-63a0542d75a38025.js +1 -0
  1136. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-63a0542d75a38025.js +1 -0
  1137. package/cli/app/.next-cli-build/static/chunks/app/api/keys/route-63a0542d75a38025.js +1 -0
  1138. package/cli/app/.next-cli-build/static/chunks/app/api/locale/route-63a0542d75a38025.js +1 -0
  1139. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-63a0542d75a38025.js +1 -0
  1140. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-63a0542d75a38025.js +1 -0
  1141. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-63a0542d75a38025.js +1 -0
  1142. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-63a0542d75a38025.js +1 -0
  1143. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-63a0542d75a38025.js +1 -0
  1144. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-63a0542d75a38025.js +1 -0
  1145. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-63a0542d75a38025.js +1 -0
  1146. package/cli/app/.next-cli-build/static/chunks/app/api/metrics/route-63a0542d75a38025.js +1 -0
  1147. package/cli/app/.next-cli-build/static/chunks/app/api/models/alias/route-63a0542d75a38025.js +1 -0
  1148. package/cli/app/.next-cli-build/static/chunks/app/api/models/availability/route-63a0542d75a38025.js +1 -0
  1149. package/cli/app/.next-cli-build/static/chunks/app/api/models/custom/route-63a0542d75a38025.js +1 -0
  1150. package/cli/app/.next-cli-build/static/chunks/app/api/models/disabled/route-63a0542d75a38025.js +1 -0
  1151. package/cli/app/.next-cli-build/static/chunks/app/api/models/route-63a0542d75a38025.js +1 -0
  1152. package/cli/app/.next-cli-build/static/chunks/app/api/models/test/route-63a0542d75a38025.js +1 -0
  1153. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-63a0542d75a38025.js +1 -0
  1154. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route-63a0542d75a38025.js +1 -0
  1155. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route-63a0542d75a38025.js +1 -0
  1156. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/route-63a0542d75a38025.js +1 -0
  1157. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/latest/route-63a0542d75a38025.js +1 -0
  1158. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/route-63a0542d75a38025.js +1 -0
  1159. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route-63a0542d75a38025.js +1 -0
  1160. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route-63a0542d75a38025.js +1 -0
  1161. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/route-63a0542d75a38025.js +1 -0
  1162. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/latest/route-63a0542d75a38025.js +1 -0
  1163. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/route-63a0542d75a38025.js +1 -0
  1164. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route-63a0542d75a38025.js +1 -0
  1165. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route-63a0542d75a38025.js +1 -0
  1166. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route-63a0542d75a38025.js +1 -0
  1167. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/latest/route-63a0542d75a38025.js +1 -0
  1168. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/route-63a0542d75a38025.js +1 -0
  1169. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route-63a0542d75a38025.js +1 -0
  1170. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route-63a0542d75a38025.js +1 -0
  1171. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/route-63a0542d75a38025.js +1 -0
  1172. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/latest/route-63a0542d75a38025.js +1 -0
  1173. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/route-63a0542d75a38025.js +1 -0
  1174. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-token/route-63a0542d75a38025.js +1 -0
  1175. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/quota-cookie/route-63a0542d75a38025.js +1 -0
  1176. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route-63a0542d75a38025.js +1 -0
  1177. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route-63a0542d75a38025.js +1 -0
  1178. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route-63a0542d75a38025.js +1 -0
  1179. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/latest/route-63a0542d75a38025.js +1 -0
  1180. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/route-63a0542d75a38025.js +1 -0
  1181. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-token/route-63a0542d75a38025.js +1 -0
  1182. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/quota-cookie/route-63a0542d75a38025.js +1 -0
  1183. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-63a0542d75a38025.js +1 -0
  1184. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-63a0542d75a38025.js +1 -0
  1185. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-63a0542d75a38025.js +1 -0
  1186. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-63a0542d75a38025.js +1 -0
  1187. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route-63a0542d75a38025.js +1 -0
  1188. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route-63a0542d75a38025.js +1 -0
  1189. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/route-63a0542d75a38025.js +1 -0
  1190. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/latest/route-63a0542d75a38025.js +1 -0
  1191. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/route-63a0542d75a38025.js +1 -0
  1192. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-63a0542d75a38025.js +1 -0
  1193. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-63a0542d75a38025.js +1 -0
  1194. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route-63a0542d75a38025.js +1 -0
  1195. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route-63a0542d75a38025.js +1 -0
  1196. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/route-63a0542d75a38025.js +1 -0
  1197. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/latest/route-63a0542d75a38025.js +1 -0
  1198. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/route-63a0542d75a38025.js +1 -0
  1199. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-63a0542d75a38025.js +1 -0
  1200. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-63a0542d75a38025.js +1 -0
  1201. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-63a0542d75a38025.js +1 -0
  1202. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route-63a0542d75a38025.js +1 -0
  1203. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route-63a0542d75a38025.js +1 -0
  1204. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/route-63a0542d75a38025.js +1 -0
  1205. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/latest/route-63a0542d75a38025.js +1 -0
  1206. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/route-63a0542d75a38025.js +1 -0
  1207. package/cli/app/.next-cli-build/static/chunks/app/api/pricing/route-63a0542d75a38025.js +1 -0
  1208. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-63a0542d75a38025.js +1 -0
  1209. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-63a0542d75a38025.js +1 -0
  1210. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-63a0542d75a38025.js +1 -0
  1211. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-63a0542d75a38025.js +1 -0
  1212. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-63a0542d75a38025.js +1 -0
  1213. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-63a0542d75a38025.js +1 -0
  1214. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-63a0542d75a38025.js +1 -0
  1215. package/cli/app/.next-cli-build/static/chunks/app/api/providers/bulk-delete/route-63a0542d75a38025.js +1 -0
  1216. package/cli/app/.next-cli-build/static/chunks/app/api/providers/client/route-63a0542d75a38025.js +1 -0
  1217. package/cli/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-63a0542d75a38025.js +1 -0
  1218. package/cli/app/.next-cli-build/static/chunks/app/api/providers/route-63a0542d75a38025.js +1 -0
  1219. package/cli/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-63a0542d75a38025.js +1 -0
  1220. package/cli/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-63a0542d75a38025.js +1 -0
  1221. package/cli/app/.next-cli-build/static/chunks/app/api/providers/validate/route-63a0542d75a38025.js +1 -0
  1222. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-63a0542d75a38025.js +1 -0
  1223. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-63a0542d75a38025.js +1 -0
  1224. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-63a0542d75a38025.js +1 -0
  1225. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-63a0542d75a38025.js +1 -0
  1226. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-63a0542d75a38025.js +1 -0
  1227. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-63a0542d75a38025.js +1 -0
  1228. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-63a0542d75a38025.js +1 -0
  1229. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-63a0542d75a38025.js +1 -0
  1230. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-63a0542d75a38025.js +1 -0
  1231. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-63a0542d75a38025.js +1 -0
  1232. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-63a0542d75a38025.js +1 -0
  1233. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-63a0542d75a38025.js +1 -0
  1234. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-63a0542d75a38025.js +1 -0
  1235. package/cli/app/.next-cli-build/static/chunks/app/api/settings/database/route-63a0542d75a38025.js +1 -0
  1236. package/cli/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-63a0542d75a38025.js +1 -0
  1237. package/cli/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-63a0542d75a38025.js +1 -0
  1238. package/cli/app/.next-cli-build/static/chunks/app/api/settings/route-63a0542d75a38025.js +1 -0
  1239. package/cli/app/.next-cli-build/static/chunks/app/api/shutdown/route-63a0542d75a38025.js +1 -0
  1240. package/cli/app/.next-cli-build/static/chunks/app/api/tags/route-63a0542d75a38025.js +1 -0
  1241. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/setup/route-63a0542d75a38025.js +1 -0
  1242. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/status/route-63a0542d75a38025.js +1 -0
  1243. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/unlock/route-63a0542d75a38025.js +1 -0
  1244. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/input/route-63a0542d75a38025.js +1 -0
  1245. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/resize/route-63a0542d75a38025.js +1 -0
  1246. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/route-63a0542d75a38025.js +1 -0
  1247. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/stream/route-63a0542d75a38025.js +1 -0
  1248. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/route-63a0542d75a38025.js +1 -0
  1249. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-63a0542d75a38025.js +1 -0
  1250. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-63a0542d75a38025.js +1 -0
  1251. package/cli/app/.next-cli-build/static/chunks/app/api/translator/load/route-63a0542d75a38025.js +1 -0
  1252. package/cli/app/.next-cli-build/static/chunks/app/api/translator/save/route-63a0542d75a38025.js +1 -0
  1253. package/cli/app/.next-cli-build/static/chunks/app/api/translator/send/route-63a0542d75a38025.js +1 -0
  1254. package/cli/app/.next-cli-build/static/chunks/app/api/translator/translate/route-63a0542d75a38025.js +1 -0
  1255. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-63a0542d75a38025.js +1 -0
  1256. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-63a0542d75a38025.js +1 -0
  1257. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-63a0542d75a38025.js +1 -0
  1258. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-63a0542d75a38025.js +1 -0
  1259. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-63a0542d75a38025.js +1 -0
  1260. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-63a0542d75a38025.js +1 -0
  1261. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-63a0542d75a38025.js +1 -0
  1262. package/cli/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-63a0542d75a38025.js +1 -0
  1263. package/cli/app/.next-cli-build/static/chunks/app/api/usage/aggregate/route-63a0542d75a38025.js +1 -0
  1264. package/cli/app/.next-cli-build/static/chunks/app/api/usage/chart/route-63a0542d75a38025.js +1 -0
  1265. package/cli/app/.next-cli-build/static/chunks/app/api/usage/history/route-63a0542d75a38025.js +1 -0
  1266. package/cli/app/.next-cli-build/static/chunks/app/api/usage/providers/route-63a0542d75a38025.js +1 -0
  1267. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-63a0542d75a38025.js +1 -0
  1268. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-63a0542d75a38025.js +1 -0
  1269. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stats/route-63a0542d75a38025.js +1 -0
  1270. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stream/route-63a0542d75a38025.js +1 -0
  1271. package/cli/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-63a0542d75a38025.js +1 -0
  1272. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-63a0542d75a38025.js +1 -0
  1273. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-63a0542d75a38025.js +1 -0
  1274. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-63a0542d75a38025.js +1 -0
  1275. package/cli/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-63a0542d75a38025.js +1 -0
  1276. package/cli/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-63a0542d75a38025.js +1 -0
  1277. package/cli/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-63a0542d75a38025.js +1 -0
  1278. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-63a0542d75a38025.js +1 -0
  1279. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/route-63a0542d75a38025.js +1 -0
  1280. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-63a0542d75a38025.js +1 -0
  1281. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-63a0542d75a38025.js +1 -0
  1282. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/route-63a0542d75a38025.js +1 -0
  1283. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-63a0542d75a38025.js +1 -0
  1284. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/route-63a0542d75a38025.js +1 -0
  1285. package/cli/app/.next-cli-build/static/chunks/app/api/v1/route-63a0542d75a38025.js +1 -0
  1286. package/cli/app/.next-cli-build/static/chunks/app/api/v1/search/route-63a0542d75a38025.js +1 -0
  1287. package/cli/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-63a0542d75a38025.js +1 -0
  1288. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-63a0542d75a38025.js +1 -0
  1289. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-63a0542d75a38025.js +1 -0
  1290. package/cli/app/.next-cli-build/static/chunks/app/api/version/route-63a0542d75a38025.js +1 -0
  1291. package/cli/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-63a0542d75a38025.js +1 -0
  1292. package/cli/app/.next-cli-build/static/chunks/app/api/version/update/route-63a0542d75a38025.js +1 -0
  1293. package/cli/app/.next-cli-build/static/chunks/app/callback/page-747616215eaffcc5.js +1 -0
  1294. package/cli/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/page-fc0526db0d6faea4.js +1 -0
  1295. package/cli/app/.next-cli-build/static/chunks/app/landing/page-a972ff4fc204488f.js +1 -0
  1296. package/cli/app/.next-cli-build/static/chunks/app/layout-195d8bc39318cb3f.js +1 -0
  1297. package/cli/app/.next-cli-build/static/chunks/app/login/page-ec9730458515625e.js +1 -0
  1298. package/cli/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-63a0542d75a38025.js +1 -0
  1299. package/cli/app/.next-cli-build/static/chunks/app/page-63a0542d75a38025.js +1 -0
  1300. package/cli/app/.next-cli-build/static/chunks/{e868780c-9fd397bedad188d4.js → fcafe1ac-fb00beefde649e9f.js} +1 -1
  1301. package/cli/app/.next-cli-build/static/chunks/framework-6b10028fc45b4fba.js +1 -0
  1302. package/cli/app/.next-cli-build/static/chunks/main-af2e4cf487829313.js +5 -0
  1303. package/cli/app/.next-cli-build/static/chunks/main-app-5349704f9863330d.js +1 -0
  1304. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-63a0542d75a38025.js +1 -0
  1305. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-63a0542d75a38025.js +1 -0
  1306. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/global-error-79da82ac351d0af0.js +1 -0
  1307. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-63a0542d75a38025.js +1 -0
  1308. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-63a0542d75a38025.js +1 -0
  1309. package/cli/app/.next-cli-build/static/chunks/{webpack-948b910ed7afd0b8.js → webpack-9c203f4468cc2f7c.js} +1 -1
  1310. package/cli/app/.next-cli-build/static/css/e42a53c7486ca4f0.css +1 -0
  1311. package/cli/app/CHANGELOG.md +15 -0
  1312. package/cli/app/cli/hooks/postinstall.js +1 -45
  1313. package/cli/app/package.json +3 -2
  1314. package/cli/app/server.js +1 -1
  1315. package/cli/app/src/lib/oauth/services/socksHttpBridge.js +15 -7
  1316. package/cli/hooks/postinstall.js +1 -45
  1317. package/cli/package.json +1 -1
  1318. package/package.json +3 -2
  1319. package/src/app/(dashboard)/dashboard/automation/page.js +3 -3
  1320. package/src/app/api/oauth/grok-cli/bulk-import/route.js +1 -1
  1321. package/src/lib/oauth/services/bulkImportBrowserEngine.js +38 -35
  1322. package/src/lib/oauth/services/grokCliBulkImportManager.js +13 -14
  1323. package/src/lib/oauth/services/kiroBulkImportManager.js +30 -19
  1324. package/src/lib/oauth/services/socksHttpBridge.js +15 -7
  1325. package/src/shared/components/BulkAccountAutomationModal.js +2 -24
  1326. package/cli/app/.next-cli-build/server/chunks/1396.js +0 -1
  1327. package/cli/app/.next-cli-build/server/chunks/1656.js +0 -1
  1328. package/cli/app/.next-cli-build/server/chunks/1813.js +0 -1
  1329. package/cli/app/.next-cli-build/server/chunks/1818.js +0 -1
  1330. package/cli/app/.next-cli-build/server/chunks/2130.js +0 -1
  1331. package/cli/app/.next-cli-build/server/chunks/2409.js +0 -1
  1332. package/cli/app/.next-cli-build/server/chunks/241.js +0 -1
  1333. package/cli/app/.next-cli-build/server/chunks/2478.js +0 -1
  1334. package/cli/app/.next-cli-build/server/chunks/2540.js +0 -1
  1335. package/cli/app/.next-cli-build/server/chunks/3104.js +0 -43
  1336. package/cli/app/.next-cli-build/server/chunks/3110.js +0 -19
  1337. package/cli/app/.next-cli-build/server/chunks/3155.js +0 -60
  1338. package/cli/app/.next-cli-build/server/chunks/318.js +0 -183
  1339. package/cli/app/.next-cli-build/server/chunks/319.js +0 -45
  1340. package/cli/app/.next-cli-build/server/chunks/3407.js +0 -1
  1341. package/cli/app/.next-cli-build/server/chunks/3487.js +0 -1
  1342. package/cli/app/.next-cli-build/server/chunks/412.js +0 -7
  1343. package/cli/app/.next-cli-build/server/chunks/415.js +0 -1
  1344. package/cli/app/.next-cli-build/server/chunks/4177.js +0 -1
  1345. package/cli/app/.next-cli-build/server/chunks/4253.js +0 -3
  1346. package/cli/app/.next-cli-build/server/chunks/4491.js +0 -1
  1347. package/cli/app/.next-cli-build/server/chunks/4632.js +0 -1
  1348. package/cli/app/.next-cli-build/server/chunks/4650.js +0 -17
  1349. package/cli/app/.next-cli-build/server/chunks/4741.js +0 -18
  1350. package/cli/app/.next-cli-build/server/chunks/4746.js +0 -7
  1351. package/cli/app/.next-cli-build/server/chunks/4765.js +0 -24
  1352. package/cli/app/.next-cli-build/server/chunks/4780.js +0 -1
  1353. package/cli/app/.next-cli-build/server/chunks/5024.js +0 -1
  1354. package/cli/app/.next-cli-build/server/chunks/507.js +0 -1
  1355. package/cli/app/.next-cli-build/server/chunks/5217.js +0 -1
  1356. package/cli/app/.next-cli-build/server/chunks/5433.js +0 -1
  1357. package/cli/app/.next-cli-build/server/chunks/5469.js +0 -1
  1358. package/cli/app/.next-cli-build/server/chunks/5573.js +0 -1
  1359. package/cli/app/.next-cli-build/server/chunks/5949.js +0 -81
  1360. package/cli/app/.next-cli-build/server/chunks/6269.js +0 -1
  1361. package/cli/app/.next-cli-build/server/chunks/6652.js +0 -1
  1362. package/cli/app/.next-cli-build/server/chunks/6935.js +0 -1
  1363. package/cli/app/.next-cli-build/server/chunks/698.js +0 -1
  1364. package/cli/app/.next-cli-build/server/chunks/7774.js +0 -121
  1365. package/cli/app/.next-cli-build/server/chunks/7828.js +0 -1
  1366. package/cli/app/.next-cli-build/server/chunks/8157.js +0 -1
  1367. package/cli/app/.next-cli-build/server/chunks/8242.js +0 -3
  1368. package/cli/app/.next-cli-build/server/chunks/8255.js +0 -1
  1369. package/cli/app/.next-cli-build/server/chunks/8371.js +0 -1
  1370. package/cli/app/.next-cli-build/server/chunks/8450.js +0 -1
  1371. package/cli/app/.next-cli-build/server/chunks/8520.js +0 -1
  1372. package/cli/app/.next-cli-build/server/chunks/8590.js +0 -1
  1373. package/cli/app/.next-cli-build/server/chunks/8895.js +0 -67
  1374. package/cli/app/.next-cli-build/server/chunks/891.js +0 -1
  1375. package/cli/app/.next-cli-build/server/chunks/8971.js +0 -1
  1376. package/cli/app/.next-cli-build/server/chunks/915.js +0 -63
  1377. package/cli/app/.next-cli-build/server/chunks/9372.js +0 -1
  1378. package/cli/app/.next-cli-build/server/chunks/9476.js +0 -66
  1379. package/cli/app/.next-cli-build/server/chunks/9489.js +0 -1
  1380. package/cli/app/.next-cli-build/server/chunks/9609.js +0 -1
  1381. package/cli/app/.next-cli-build/server/chunks/9613.js +0 -1
  1382. package/cli/app/.next-cli-build/static/chunks/1a258343-bc0b514c079d8898.js +0 -1
  1383. package/cli/app/.next-cli-build/static/chunks/3794-c66b3d8325973459.js +0 -32
  1384. package/cli/app/.next-cli-build/static/chunks/4343-ccad00872974a61b.js +0 -66
  1385. package/cli/app/.next-cli-build/static/chunks/523-81108e84df92e883.js +0 -3
  1386. package/cli/app/.next-cli-build/static/chunks/5242-bb1a1a7ec3bfb62f.js +0 -1
  1387. package/cli/app/.next-cli-build/static/chunks/5472-544ea4e7aa338d84.js +0 -1
  1388. package/cli/app/.next-cli-build/static/chunks/5497-d429a9dfbc0518b5.js +0 -7
  1389. package/cli/app/.next-cli-build/static/chunks/7055-e60e20f43bfbe5f8.js +0 -1
  1390. package/cli/app/.next-cli-build/static/chunks/85-38f4ef417047ac0e.js +0 -1
  1391. package/cli/app/.next-cli-build/static/chunks/9126-9e1755f122b943cd.js +0 -1
  1392. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/automation/page-a3939b72418749b7.js +0 -1
  1393. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/basic-chat/page-fa9d3452d69f2fc7.js +0 -1
  1394. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/[toolId]/page-2361fd82cdac58f9.js +0 -1
  1395. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/cli-tools/page-0186f028c4f68aa9.js +0 -1
  1396. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/combos/page-81c25ef219dfc38b.js +0 -1
  1397. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/console-log/page-b055dfe6fb0c0172.js +0 -1
  1398. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/context/page-fb93d56bfaccdc19.js +0 -1
  1399. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/endpoint/page-09e6213a0742752b.js +0 -1
  1400. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/[kind]/page-7b6e1ef525e44bd1.js +0 -1
  1401. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/media-providers/web/page-29893b095259085d.js +0 -1
  1402. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/mitm/page-c03ae64868d6bc4d.js +0 -1
  1403. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/page-fd2453044462eb4f.js +0 -1
  1404. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/playground/page-13833a8f417b8d7e.js +0 -1
  1405. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/profile/page-e95034d5b34bc360.js +0 -1
  1406. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/providers/new/page-c38381db33d5aafc.js +0 -1
  1407. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/quota/page-ac445dab96ac6223.js +0 -1
  1408. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/token-saver/page-26d372726ae6df38.js +0 -1
  1409. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/translator/page-a408f0954e4812ab.js +0 -1
  1410. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/dashboard/usage/page-2de7b12af94b8721.js +0 -1
  1411. package/cli/app/.next-cli-build/static/chunks/app/(dashboard)/layout-2ae824d2d09c81ea.js +0 -1
  1412. package/cli/app/.next-cli-build/static/chunks/app/_not-found/page-499de2bdd91e139f.js +0 -1
  1413. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/start/route-0958b3b629c68bd2.js +0 -1
  1414. package/cli/app/.next-cli-build/static/chunks/app/api/auth/oidc/test/route-0958b3b629c68bd2.js +0 -1
  1415. package/cli/app/.next-cli-build/static/chunks/app/api/auth/status/route-0958b3b629c68bd2.js +0 -1
  1416. package/cli/app/.next-cli-build/static/chunks/app/api/cache/stats/route-0958b3b629c68bd2.js +0 -1
  1417. package/cli/app/.next-cli-build/static/chunks/app/api/changelog/route-0958b3b629c68bd2.js +0 -1
  1418. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/all-statuses/route-0958b3b629c68bd2.js +0 -1
  1419. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/alias/route-0958b3b629c68bd2.js +0 -1
  1420. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/antigravity-mitm/route-0958b3b629c68bd2.js +0 -1
  1421. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/claude-settings/route-0958b3b629c68bd2.js +0 -1
  1422. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cline-settings/route-0958b3b629c68bd2.js +0 -1
  1423. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-gateway/accounts/route-0958b3b629c68bd2.js +0 -1
  1424. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/codex-settings/route-0958b3b629c68bd2.js +0 -1
  1425. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/copilot-settings/route-0958b3b629c68bd2.js +0 -1
  1426. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-registry/route-0958b3b629c68bd2.js +0 -1
  1427. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-mcp-tools/route-0958b3b629c68bd2.js +0 -1
  1428. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/cowork-settings/route-0958b3b629c68bd2.js +0 -1
  1429. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/deepseek-tui-settings/route-0958b3b629c68bd2.js +0 -1
  1430. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/droid-settings/route-0958b3b629c68bd2.js +0 -1
  1431. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/hermes-settings/route-0958b3b629c68bd2.js +0 -1
  1432. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/jcode-settings/route-0958b3b629c68bd2.js +0 -1
  1433. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/kilo-settings/route-0958b3b629c68bd2.js +0 -1
  1434. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/openclaw-settings/route-0958b3b629c68bd2.js +0 -1
  1435. package/cli/app/.next-cli-build/static/chunks/app/api/cli-tools/opencode-settings/route-0958b3b629c68bd2.js +0 -1
  1436. package/cli/app/.next-cli-build/static/chunks/app/api/combos/[id]/route-0958b3b629c68bd2.js +0 -1
  1437. package/cli/app/.next-cli-build/static/chunks/app/api/combos/route-0958b3b629c68bd2.js +0 -1
  1438. package/cli/app/.next-cli-build/static/chunks/app/api/context/[id]/route-0958b3b629c68bd2.js +0 -1
  1439. package/cli/app/.next-cli-build/static/chunks/app/api/context/bulk/route-0958b3b629c68bd2.js +0 -1
  1440. package/cli/app/.next-cli-build/static/chunks/app/api/context/route-0958b3b629c68bd2.js +0 -1
  1441. package/cli/app/.next-cli-build/static/chunks/app/api/dashboard/chat/completions/route-0958b3b629c68bd2.js +0 -1
  1442. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/extras/route-0958b3b629c68bd2.js +0 -1
  1443. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/proxy/[...path]/route-0958b3b629c68bd2.js +0 -1
  1444. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/restart/route-0958b3b629c68bd2.js +0 -1
  1445. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/start/route-0958b3b629c68bd2.js +0 -1
  1446. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/status/route-0958b3b629c68bd2.js +0 -1
  1447. package/cli/app/.next-cli-build/static/chunks/app/api/headroom/stop/route-0958b3b629c68bd2.js +0 -1
  1448. package/cli/app/.next-cli-build/static/chunks/app/api/health/ready/route-0958b3b629c68bd2.js +0 -1
  1449. package/cli/app/.next-cli-build/static/chunks/app/api/health/route-0958b3b629c68bd2.js +0 -1
  1450. package/cli/app/.next-cli-build/static/chunks/app/api/init/route-0958b3b629c68bd2.js +0 -1
  1451. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/rotate/route-0958b3b629c68bd2.js +0 -1
  1452. package/cli/app/.next-cli-build/static/chunks/app/api/keys/[id]/route-0958b3b629c68bd2.js +0 -1
  1453. package/cli/app/.next-cli-build/static/chunks/app/api/keys/route-0958b3b629c68bd2.js +0 -1
  1454. package/cli/app/.next-cli-build/static/chunks/app/api/locale/route-0958b3b629c68bd2.js +0 -1
  1455. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/message/route-0958b3b629c68bd2.js +0 -1
  1456. package/cli/app/.next-cli-build/static/chunks/app/api/mcp/[plugin]/sse/route-0958b3b629c68bd2.js +0 -1
  1457. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/deepgram/voices/route-0958b3b629c68bd2.js +0 -1
  1458. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/elevenlabs/voices/route-0958b3b629c68bd2.js +0 -1
  1459. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/inworld/voices/route-0958b3b629c68bd2.js +0 -1
  1460. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/minimax/voices/route-0958b3b629c68bd2.js +0 -1
  1461. package/cli/app/.next-cli-build/static/chunks/app/api/media-providers/tts/voices/route-0958b3b629c68bd2.js +0 -1
  1462. package/cli/app/.next-cli-build/static/chunks/app/api/metrics/route-0958b3b629c68bd2.js +0 -1
  1463. package/cli/app/.next-cli-build/static/chunks/app/api/models/alias/route-0958b3b629c68bd2.js +0 -1
  1464. package/cli/app/.next-cli-build/static/chunks/app/api/models/availability/route-0958b3b629c68bd2.js +0 -1
  1465. package/cli/app/.next-cli-build/static/chunks/app/api/models/custom/route-0958b3b629c68bd2.js +0 -1
  1466. package/cli/app/.next-cli-build/static/chunks/app/api/models/disabled/route-0958b3b629c68bd2.js +0 -1
  1467. package/cli/app/.next-cli-build/static/chunks/app/api/models/route-0958b3b629c68bd2.js +0 -1
  1468. package/cli/app/.next-cli-build/static/chunks/app/api/models/test/route-0958b3b629c68bd2.js +0 -1
  1469. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/[provider]/[action]/route-0958b3b629c68bd2.js +0 -1
  1470. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +0 -1
  1471. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +0 -1
  1472. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/[jobId]/route-0958b3b629c68bd2.js +0 -1
  1473. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/latest/route-0958b3b629c68bd2.js +0 -1
  1474. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/antigravity/bulk-import/route-0958b3b629c68bd2.js +0 -1
  1475. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +0 -1
  1476. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +0 -1
  1477. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/[jobId]/route-0958b3b629c68bd2.js +0 -1
  1478. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/latest/route-0958b3b629c68bd2.js +0 -1
  1479. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/autoclaw/bulk-import/route-0958b3b629c68bd2.js +0 -1
  1480. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +0 -1
  1481. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +0 -1
  1482. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/[jobId]/route-0958b3b629c68bd2.js +0 -1
  1483. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/latest/route-0958b3b629c68bd2.js +0 -1
  1484. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cloudflare-ai/bulk-import/route-0958b3b629c68bd2.js +0 -1
  1485. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +0 -1
  1486. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +0 -1
  1487. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/[jobId]/route-0958b3b629c68bd2.js +0 -1
  1488. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/latest/route-0958b3b629c68bd2.js +0 -1
  1489. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-import/route-0958b3b629c68bd2.js +0 -1
  1490. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/bulk-token/route-0958b3b629c68bd2.js +0 -1
  1491. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy/quota-cookie/route-0958b3b629c68bd2.js +0 -1
  1492. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +0 -1
  1493. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +0 -1
  1494. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/[jobId]/route-0958b3b629c68bd2.js +0 -1
  1495. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/latest/route-0958b3b629c68bd2.js +0 -1
  1496. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-import/route-0958b3b629c68bd2.js +0 -1
  1497. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/bulk-token/route-0958b3b629c68bd2.js +0 -1
  1498. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codebuddy-cn/quota-cookie/route-0958b3b629c68bd2.js +0 -1
  1499. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/codex/import-token/route-0958b3b629c68bd2.js +0 -1
  1500. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/auto-import/route-0958b3b629c68bd2.js +0 -1
  1501. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/cursor/import/route-0958b3b629c68bd2.js +0 -1
  1502. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/gitlab/pat/route-0958b3b629c68bd2.js +0 -1
  1503. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +0 -1
  1504. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +0 -1
  1505. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/[jobId]/route-0958b3b629c68bd2.js +0 -1
  1506. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/latest/route-0958b3b629c68bd2.js +0 -1
  1507. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/grok-cli/bulk-import/route-0958b3b629c68bd2.js +0 -1
  1508. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/iflow/cookie/route-0958b3b629c68bd2.js +0 -1
  1509. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/auto-import/route-0958b3b629c68bd2.js +0 -1
  1510. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +0 -1
  1511. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +0 -1
  1512. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/[jobId]/route-0958b3b629c68bd2.js +0 -1
  1513. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/latest/route-0958b3b629c68bd2.js +0 -1
  1514. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/bulk-import/route-0958b3b629c68bd2.js +0 -1
  1515. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/import/route-0958b3b629c68bd2.js +0 -1
  1516. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-authorize/route-0958b3b629c68bd2.js +0 -1
  1517. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/kiro/social-exchange/route-0958b3b629c68bd2.js +0 -1
  1518. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/cancel/route-0958b3b629c68bd2.js +0 -1
  1519. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/manual/[workerId]/route-0958b3b629c68bd2.js +0 -1
  1520. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/[jobId]/route-0958b3b629c68bd2.js +0 -1
  1521. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/latest/route-0958b3b629c68bd2.js +0 -1
  1522. package/cli/app/.next-cli-build/static/chunks/app/api/oauth/qoder/bulk-import/route-0958b3b629c68bd2.js +0 -1
  1523. package/cli/app/.next-cli-build/static/chunks/app/api/pricing/route-0958b3b629c68bd2.js +0 -1
  1524. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/[id]/route-0958b3b629c68bd2.js +0 -1
  1525. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/route-0958b3b629c68bd2.js +0 -1
  1526. package/cli/app/.next-cli-build/static/chunks/app/api/provider-nodes/validate/route-0958b3b629c68bd2.js +0 -1
  1527. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/models/route-0958b3b629c68bd2.js +0 -1
  1528. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/route-0958b3b629c68bd2.js +0 -1
  1529. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test/route-0958b3b629c68bd2.js +0 -1
  1530. package/cli/app/.next-cli-build/static/chunks/app/api/providers/[id]/test-models/route-0958b3b629c68bd2.js +0 -1
  1531. package/cli/app/.next-cli-build/static/chunks/app/api/providers/bulk-delete/route-0958b3b629c68bd2.js +0 -1
  1532. package/cli/app/.next-cli-build/static/chunks/app/api/providers/client/route-0958b3b629c68bd2.js +0 -1
  1533. package/cli/app/.next-cli-build/static/chunks/app/api/providers/kilo/free-models/route-0958b3b629c68bd2.js +0 -1
  1534. package/cli/app/.next-cli-build/static/chunks/app/api/providers/route-0958b3b629c68bd2.js +0 -1
  1535. package/cli/app/.next-cli-build/static/chunks/app/api/providers/suggested-models/route-0958b3b629c68bd2.js +0 -1
  1536. package/cli/app/.next-cli-build/static/chunks/app/api/providers/test-batch/route-0958b3b629c68bd2.js +0 -1
  1537. package/cli/app/.next-cli-build/static/chunks/app/api/providers/validate/route-0958b3b629c68bd2.js +0 -1
  1538. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/route-0958b3b629c68bd2.js +0 -1
  1539. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/[id]/test/route-0958b3b629c68bd2.js +0 -1
  1540. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/cloudflare-deploy/route-0958b3b629c68bd2.js +0 -1
  1541. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/deno-deploy/route-0958b3b629c68bd2.js +0 -1
  1542. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/route-0958b3b629c68bd2.js +0 -1
  1543. package/cli/app/.next-cli-build/static/chunks/app/api/proxy-pools/vercel-deploy/route-0958b3b629c68bd2.js +0 -1
  1544. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/health/route-0958b3b629c68bd2.js +0 -1
  1545. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/install/route-0958b3b629c68bd2.js +0 -1
  1546. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/restart/route-0958b3b629c68bd2.js +0 -1
  1547. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/start/route-0958b3b629c68bd2.js +0 -1
  1548. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stats/route-0958b3b629c68bd2.js +0 -1
  1549. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/status/route-0958b3b629c68bd2.js +0 -1
  1550. package/cli/app/.next-cli-build/static/chunks/app/api/pxpipe/stop/route-0958b3b629c68bd2.js +0 -1
  1551. package/cli/app/.next-cli-build/static/chunks/app/api/settings/database/route-0958b3b629c68bd2.js +0 -1
  1552. package/cli/app/.next-cli-build/static/chunks/app/api/settings/proxy-test/route-0958b3b629c68bd2.js +0 -1
  1553. package/cli/app/.next-cli-build/static/chunks/app/api/settings/require-login/route-0958b3b629c68bd2.js +0 -1
  1554. package/cli/app/.next-cli-build/static/chunks/app/api/settings/route-0958b3b629c68bd2.js +0 -1
  1555. package/cli/app/.next-cli-build/static/chunks/app/api/shutdown/route-0958b3b629c68bd2.js +0 -1
  1556. package/cli/app/.next-cli-build/static/chunks/app/api/tags/route-0958b3b629c68bd2.js +0 -1
  1557. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/setup/route-0958b3b629c68bd2.js +0 -1
  1558. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/status/route-0958b3b629c68bd2.js +0 -1
  1559. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/auth/unlock/route-0958b3b629c68bd2.js +0 -1
  1560. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/input/route-0958b3b629c68bd2.js +0 -1
  1561. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/resize/route-0958b3b629c68bd2.js +0 -1
  1562. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/route-0958b3b629c68bd2.js +0 -1
  1563. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/[id]/stream/route-0958b3b629c68bd2.js +0 -1
  1564. package/cli/app/.next-cli-build/static/chunks/app/api/terminal/session/route-0958b3b629c68bd2.js +0 -1
  1565. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/route-0958b3b629c68bd2.js +0 -1
  1566. package/cli/app/.next-cli-build/static/chunks/app/api/translator/console-logs/stream/route-0958b3b629c68bd2.js +0 -1
  1567. package/cli/app/.next-cli-build/static/chunks/app/api/translator/load/route-0958b3b629c68bd2.js +0 -1
  1568. package/cli/app/.next-cli-build/static/chunks/app/api/translator/save/route-0958b3b629c68bd2.js +0 -1
  1569. package/cli/app/.next-cli-build/static/chunks/app/api/translator/send/route-0958b3b629c68bd2.js +0 -1
  1570. package/cli/app/.next-cli-build/static/chunks/app/api/translator/translate/route-0958b3b629c68bd2.js +0 -1
  1571. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/disable/route-0958b3b629c68bd2.js +0 -1
  1572. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/enable/route-0958b3b629c68bd2.js +0 -1
  1573. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/status/route-0958b3b629c68bd2.js +0 -1
  1574. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-check/route-0958b3b629c68bd2.js +0 -1
  1575. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-disable/route-0958b3b629c68bd2.js +0 -1
  1576. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-enable/route-0958b3b629c68bd2.js +0 -1
  1577. package/cli/app/.next-cli-build/static/chunks/app/api/tunnel/tailscale-install/route-0958b3b629c68bd2.js +0 -1
  1578. package/cli/app/.next-cli-build/static/chunks/app/api/usage/[connectionId]/route-0958b3b629c68bd2.js +0 -1
  1579. package/cli/app/.next-cli-build/static/chunks/app/api/usage/aggregate/route-0958b3b629c68bd2.js +0 -1
  1580. package/cli/app/.next-cli-build/static/chunks/app/api/usage/chart/route-0958b3b629c68bd2.js +0 -1
  1581. package/cli/app/.next-cli-build/static/chunks/app/api/usage/history/route-0958b3b629c68bd2.js +0 -1
  1582. package/cli/app/.next-cli-build/static/chunks/app/api/usage/providers/route-0958b3b629c68bd2.js +0 -1
  1583. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-details/route-0958b3b629c68bd2.js +0 -1
  1584. package/cli/app/.next-cli-build/static/chunks/app/api/usage/request-logs/route-0958b3b629c68bd2.js +0 -1
  1585. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stats/route-0958b3b629c68bd2.js +0 -1
  1586. package/cli/app/.next-cli-build/static/chunks/app/api/usage/stream/route-0958b3b629c68bd2.js +0 -1
  1587. package/cli/app/.next-cli-build/static/chunks/app/api/v1/api/chat/route-0958b3b629c68bd2.js +0 -1
  1588. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/speech/route-0958b3b629c68bd2.js +0 -1
  1589. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/transcriptions/route-0958b3b629c68bd2.js +0 -1
  1590. package/cli/app/.next-cli-build/static/chunks/app/api/v1/audio/voices/route-0958b3b629c68bd2.js +0 -1
  1591. package/cli/app/.next-cli-build/static/chunks/app/api/v1/chat/completions/route-0958b3b629c68bd2.js +0 -1
  1592. package/cli/app/.next-cli-build/static/chunks/app/api/v1/embeddings/route-0958b3b629c68bd2.js +0 -1
  1593. package/cli/app/.next-cli-build/static/chunks/app/api/v1/images/generations/route-0958b3b629c68bd2.js +0 -1
  1594. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/count_tokens/route-0958b3b629c68bd2.js +0 -1
  1595. package/cli/app/.next-cli-build/static/chunks/app/api/v1/messages/route-0958b3b629c68bd2.js +0 -1
  1596. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/[kind]/route-0958b3b629c68bd2.js +0 -1
  1597. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/info/route-0958b3b629c68bd2.js +0 -1
  1598. package/cli/app/.next-cli-build/static/chunks/app/api/v1/models/route-0958b3b629c68bd2.js +0 -1
  1599. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/compact/route-0958b3b629c68bd2.js +0 -1
  1600. package/cli/app/.next-cli-build/static/chunks/app/api/v1/responses/route-0958b3b629c68bd2.js +0 -1
  1601. package/cli/app/.next-cli-build/static/chunks/app/api/v1/route-0958b3b629c68bd2.js +0 -1
  1602. package/cli/app/.next-cli-build/static/chunks/app/api/v1/search/route-0958b3b629c68bd2.js +0 -1
  1603. package/cli/app/.next-cli-build/static/chunks/app/api/v1/web/fetch/route-0958b3b629c68bd2.js +0 -1
  1604. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/[...path]/route-0958b3b629c68bd2.js +0 -1
  1605. package/cli/app/.next-cli-build/static/chunks/app/api/v1beta/models/route-0958b3b629c68bd2.js +0 -1
  1606. package/cli/app/.next-cli-build/static/chunks/app/api/version/route-0958b3b629c68bd2.js +0 -1
  1607. package/cli/app/.next-cli-build/static/chunks/app/api/version/shutdown/route-0958b3b629c68bd2.js +0 -1
  1608. package/cli/app/.next-cli-build/static/chunks/app/api/version/update/route-0958b3b629c68bd2.js +0 -1
  1609. package/cli/app/.next-cli-build/static/chunks/app/callback/page-8cb1045c2ddcdffa.js +0 -1
  1610. package/cli/app/.next-cli-build/static/chunks/app/dashboard/settings/pricing/page-1ea7bc18570814a7.js +0 -1
  1611. package/cli/app/.next-cli-build/static/chunks/app/landing/page-a5bcf36367dce737.js +0 -1
  1612. package/cli/app/.next-cli-build/static/chunks/app/layout-2aaca42ecdf3a056.js +0 -1
  1613. package/cli/app/.next-cli-build/static/chunks/app/login/page-b5822dd005b1f5c2.js +0 -1
  1614. package/cli/app/.next-cli-build/static/chunks/app/manifest.webmanifest/route-0958b3b629c68bd2.js +0 -1
  1615. package/cli/app/.next-cli-build/static/chunks/app/page-0958b3b629c68bd2.js +0 -1
  1616. package/cli/app/.next-cli-build/static/chunks/framework-711ef29bc66f648c.js +0 -1
  1617. package/cli/app/.next-cli-build/static/chunks/main-80834ff47b003167.js +0 -5
  1618. package/cli/app/.next-cli-build/static/chunks/main-app-5a6578c0256da676.js +0 -1
  1619. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/app-error-0958b3b629c68bd2.js +0 -1
  1620. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/forbidden-0958b3b629c68bd2.js +0 -1
  1621. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/global-error-06f8cd887d9b83e5.js +0 -1
  1622. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/not-found-0958b3b629c68bd2.js +0 -1
  1623. package/cli/app/.next-cli-build/static/chunks/next/dist/client/components/builtin/unauthorized-0958b3b629c68bd2.js +0 -1
  1624. package/cli/app/.next-cli-build/static/css/23b2adee98b8b6de.css +0 -1
  1625. package/cli/app/.openclaude/worktrees/agent-a54d8692/.next/standalone/src/lib/terminal/ptyBridge.py +0 -163
  1626. package/cli/app/.openclaude/worktrees/agent-a54d8692/src/lib/terminal/ptyBridge.py +0 -163
  1627. package/cli/app/.openclaude/worktrees/agent-a63139fb/src/lib/terminal/ptyBridge.py +0 -163
  1628. package/cli/app/.openclaude/worktrees/agent-a785ba58/src/lib/terminal/ptyBridge.py +0 -163
  1629. package/cli/app/.openclaude/worktrees/agent-aa0a3950/src/lib/terminal/ptyBridge.py +0 -163
  1630. package/cli/app/.openclaude/worktrees/agent-aeb70241/src/lib/terminal/ptyBridge.py +0 -163
  1631. /package/cli/app/.next-cli-build/static/{Kyq-jFDZnAoA-3Fgr0Csv → YyXkaMCJ50p0A8GqlWRS_}/_buildManifest.js +0 -0
  1632. /package/cli/app/.next-cli-build/static/{Kyq-jFDZnAoA-3Fgr0Csv → YyXkaMCJ50p0A8GqlWRS_}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- "use strict";exports.id=7828,exports.ids=[7828],exports.modules={38160:(a,b,c)=>{c.d(b,{Ou:()=>k,eG:()=>i,gQ:()=>j});var d=c(75924);let e=new Map,f=new Map,g=null;function h(a){return"string"==typeof a?a.trim()||null:a&&"object"==typeof a&&"string"==typeof a.id&&a.id.trim()||null}async function i(a,b,c={}){if(!a||!b)return null;let d=h(c.preferredProjectId),g=e.get(a);if(g&&Date.now()-g.fetchedAt<36e5&&(!d||d===g.projectId))return g.projectId;let j=d?`${a}::${d}`:a;if(f.has(j))return f.get(j).promise;let k=new AbortController,m=(async()=>{try{let c=await l(b,k.signal,{preferredProjectId:d});if(c)return e.set(a,{projectId:c,fetchedAt:Date.now()}),c;return console.warn("[ProjectId] could not fetch projectId for connection",a.slice(0,8)),null}catch(a){return console.warn(`[ProjectId] Error fetching project ID: ${a.message}`),null}finally{f.delete(j)}})();return f.set(j,{promise:m,controller:k,startedAt:Date.now()}),m}async function j(a,b={}){if(!a)return{projectId:null,tierId:null,requiresUserProject:!1,error:"missing access token"};try{return await m(a,void 0,b)}catch(a){return{projectId:null,tierId:null,requiresUserProject:!1,error:a?.message||String(a)}}}function k(a){e.delete(a)}async function l(a,b,c={}){return(await m(a,b,c)).projectId}async function m(a,b,c={}){let e=h(c.preferredProjectId),f=await fetch(d.nZ.loadCodeAssist,{method:"POST",headers:{...d.Ic,Authorization:`Bearer ${a}`},body:JSON.stringify({metadata:d.zv}),signal:b});if(!f.ok){let a=await f.text().catch(()=>"");throw Error(`loadCodeAssist failed: HTTP ${f.status} ${a.slice(0,200)}`)}let g=await f.json(),i=function(a){if(!a)return null;if("string"==typeof a.cloudaicompanionProject){let b=a.cloudaicompanionProject.trim();if(b)return b}if(a.cloudaicompanionProject&&"object"==typeof a.cloudaicompanionProject){let b=a.cloudaicompanionProject.id;if("string"==typeof b&&b.trim())return b.trim()}return null}(g);if(i)return{projectId:i,tierId:o(g).tierId||null,requiresUserProject:!1,loadRaw:g};let j=o(g),k=j.tierId||"free-tier";if(j.userDefined)return e?{projectId:await n(a,k,b,e)||e,tierId:k,requiresUserProject:!0,loadRaw:g,error:void 0}:(console.warn("[ProjectId] GSuite/DASHER has no free-tier project from loadCodeAssist; caller should reuse a stored/peer managed project id."),{projectId:null,tierId:k,requiresUserProject:!0,loadRaw:g,error:"no managed project on account; use stored or peer projectId"});let l=await n(a,k,b,null);return{projectId:l,tierId:k,requiresUserProject:!1,loadRaw:g,error:l?void 0:"onboardUser did not return a project id"}}async function n(a,b,c,e=null){console.log(`[ProjectId] Onboarding user with tier: ${b}`+(e?` project=${e}`:""));let f={tierId:b,metadata:d.zv};e&&(f.cloudaicompanionProject=e);for(let b=1;b<=5&&!c?.aborted;b++){let g=new AbortController,h=setTimeout(()=>g.abort(),3e4),i=()=>g.abort();c?.addEventListener("abort",i);try{let c=await fetch(d.nZ.onboardUser,{method:"POST",headers:{...d.Ic,Authorization:`Bearer ${a}`},body:JSON.stringify(f),signal:g.signal});if(clearTimeout(h),!c.ok){let a=await c.text().catch(()=>"");throw Error(`onboardUser HTTP ${c.status}: ${a.slice(0,200)}`)}let i=await c.json();if(!0===i.done){let a=function(a){if(!a?.response)return null;let b=a.response.cloudaicompanionProject;if("string"==typeof b){let a=b.trim();if(a)return a}if(b&&"object"==typeof b){let a=b.id;if("string"==typeof a&&a.trim())return a.trim()}return null}(i);if(a)return console.log(`[ProjectId] Successfully onboarded, project ID: ${a}`),a;if(e)return console.log(`[ProjectId] onboard done without id; using preferred project ${e}`),e;throw Error("onboardUser done but no project_id in response")}console.log(`[ProjectId] Onboard attempt ${b}/5: not done yet, waiting...`),await new Promise(a=>setTimeout(a,2e3))}catch(a){if(clearTimeout(h),"AbortError"===a.name){if(console.warn(`[ProjectId] onboardUser attempt ${b} aborted (timeout or connection removed)`),c?.aborted)return null;continue}if(5===b)return console.warn(`[ProjectId] onboardUser failed after 5 attempts: ${a.message}`),null;console.warn(`[ProjectId] onboardUser attempt ${b} failed: ${a.message}, retrying...`),await new Promise(a=>setTimeout(a,2e3))}finally{clearTimeout(h),c?.removeEventListener("abort",i)}}return null}function o(a){let b=null,c=!1;if(a?.currentTier?.id&&"string"==typeof a.currentTier.id&&(b=a.currentTier.id.trim(),c=!!a.currentTier.userDefinedCloudaicompanionProject),Array.isArray(a?.allowedTiers)){for(let d of a.allowedTiers)if(d&&"object"==typeof d&&!0===d.isDefault&&d.id){b=String(d.id).trim(),c=!!d.userDefinedCloudaicompanionProject;break}if(!b){let d=a.allowedTiers.find(a=>a?.id==="free-tier");d?(b="free-tier",c=!!d.userDefinedCloudaicompanionProject):a.allowedTiers[0]?.id&&(b=String(a.allowedTiers[0].id).trim(),c=!!a.allowedTiers[0].userDefinedCloudaicompanionProject)}}return"free-tier"===b&&(c=!1),{tierId:b,userDefined:c}}g=setInterval(()=>{try{let a=Date.now();for(let[b,c]of e)(!c||a-c.fetchedAt>=36e5)&&e.delete(b);for(let[b,c]of f){if(!c||"number"!=typeof c.startedAt){f.delete(b);continue}if(a-c.startedAt>12e4){try{c.controller.abort()}catch(a){}f.delete(b)}}}catch(a){console.warn("[ProjectId] cleanup sweep error:",a?.message??a)}},6e5),g?.unref?.()},67828:(a,b,c)=>{c.d(b,{I9:()=>j,eU:()=>n,vN:()=>m});var d=c(7803),e=c(89718),f=c(38160),g=c(8590),h=c(93943);let i=g.oD,j=(a,b,c)=>(0,g.I9)(a,b,c,d);function k(a){return new Date(Date.now()+1e3*a).toISOString()}function l(a){if(!a)return null;let b=new Date(a);return Number.isFinite(b.getTime())?b.toISOString():null}async function m(a,b){try{let c={};if(b.accessToken&&(c.accessToken=b.accessToken),b.refreshToken&&(c.refreshToken=b.refreshToken),b.idToken&&(c.idToken=b.idToken),b.lastRefreshAt&&(c.lastRefreshAt=b.lastRefreshAt),b.expiresAt&&(c.expiresAt=b.expiresAt),b.expiresIn)c.expiresAt=k(b.expiresIn),c.expiresIn=b.expiresIn;else if(b.expiresAt){let a=l(b.expiresAt);a&&(c.expiresAt=a,c.expiresIn=Math.max(1,Math.floor((new Date(a).getTime()-Date.now())/1e3)))}b.providerSpecificData&&(c.providerSpecificData={...b.existingProviderSpecificData||{},...b.providerSpecificData}),(b.copilotToken||b.copilotTokenExpiresAt)&&(c.providerSpecificData={...c.providerSpecificData||b.existingProviderSpecificData||{},...b.copilotToken?{copilotToken:b.copilotToken}:{},...b.copilotTokenExpiresAt?{copilotTokenExpiresAt:b.copilotTokenExpiresAt}:{}}),b.projectId&&(c.projectId=b.projectId);let f=await (0,e.updateProviderConnection)(a,c);return d.info("TOKEN_REFRESH","Credentials updated in localDb",{connectionId:a,success:!!f}),!!f}catch(b){return d.error("TOKEN_REFRESH","Error updating credentials in localDb",{connectionId:a,error:b.message}),!1}}async function n(a,b){let c={...b};if((0,h.fp)(a,c)){let b=c.expiresAt?new Date(c.expiresAt).getTime():null,e=b?b-Date.now():null,i=(0,g.Og)(a);d.info("TOKEN_REFRESH","Refreshing provider credentials proactively",{provider:a,expiresIn:null===e?null:Math.round(e/1e3),refreshLeadMs:i,lastRefreshAt:c.lastRefreshAt||null});let j=await (0,h.Vq)(a,c,d);if(j?.accessToken||j?.apiKey||j?.copilotToken){let b={...j,existingProviderSpecificData:c.providerSpecificData};await m(c.connectionId,b),function(a,b,c){("antigravity"===a||"gemini-cli"===a)&&b&&c&&((0,f.Ou)(b),(0,f.eG)(b,c).then(a=>{a&&m(b,{projectId:a}).catch(a=>{d.debug("TOKEN_REFRESH","Failed to persist refreshed projectId",{connectionId:b,error:a?.message??a})})}).catch(a=>{d.debug("TOKEN_REFRESH","Failed to fetch projectId after token refresh",{connectionId:b,error:a?.message??a})}))}(a,(c={...c,...j,expiresAt:j.expiresIn?k(j.expiresIn):l(j.expiresAt)||j.expiresAt||c.expiresAt,providerSpecificData:j.providerSpecificData?{...c.providerSpecificData,...j.providerSpecificData}:c.providerSpecificData}).connectionId,c.accessToken)}}if("github"===a&&c.providerSpecificData?.copilotTokenExpiresAt){let b=1e3*c.providerSpecificData.copilotTokenExpiresAt-Date.now();if(b<i){let e;d.info("TOKEN_REFRESH","Copilot token expiring soon, refreshing proactively",{provider:a,expiresIn:Math.round(b/1e3)});let f=await (e=c.accessToken,(0,g.jR)(e,d));if(f){let a={...c.providerSpecificData,copilotToken:f.token,copilotTokenExpiresAt:f.expiresAt};await m(c.connectionId,{providerSpecificData:a}),c.providerSpecificData=a,c.copilotToken=f.token}}}return c}}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=8157,exports.ids=[1998,8157],exports.modules={20116:(a,b,c)=>{c.d(b,{q:()=>h,si:()=>g,uT:()=>i});var d=c(21820),e=c.n(d);function f(a){return Number.isFinite(a)?Math.max(0,Math.floor(a)):0}function g(){let a=[];try{a=e().cpus()||[]}catch{a=[]}let b=0,c=0;try{b=e().totalmem()}catch{b=0}try{c=e().freemem()}catch{c=0}let d=Array.isArray(a)?a.length:0,f=a[0]?.model?String(a[0].model).trim():null,g=b/0x40000000,h=c/0x40000000,i="unknown",j="unknown";try{i=e().platform()}catch{}try{j=e().arch()}catch{}return{cpuCount:d,cpuModel:f,totalMemBytes:b,totalMemGb:g,freeMemBytes:c,freeMemGb:h,platform:i,arch:j}}function h(){return function(a=null){let b=a||g(),{cpuCount:c,totalMemGb:d}=b,e=f(d/4),h=f(c/2),i="fallback",j=0;return e>0&&h>0?(j=Math.min(e,h),i=e<=h?"ram":"cpu"):e>0?(j=e,i="ram"):h>0?(j=h,i="cpu"):(j=4,i="fallback"),{recommended:Math.min(8,Math.max(1,j||4)),limitedBy:i,ramBudget:e,cpuBudget:h,minWorkers:1,maxWorkers:8,ramGbPerWorker:4,cpuDivisor:2,specs:b}}().recommended}function i(a){return!0===a||"string"==typeof a&&"auto"===a.trim().toLowerCase()}Object.freeze({RAM_GB_PER_WORKER:4,CPU_DIVISOR:2,SAFE_MIN_WORKERS:1,SAFE_MAX_WORKERS:8,FALLBACK_WORKERS:4})},47293:(a,b,c)=>{c.d(b,{A:()=>f});let d=new Uint8Array(16);var e=c(50122);let f=function(a,b,c){return b||a||!crypto.randomUUID?function(a,b,c){let f=(a=a||{}).random??a.rng?.()??crypto.getRandomValues(d);if(f.length<16)throw Error("Random bytes length must be >= 16");if(f[6]=15&f[6]|64,f[8]=63&f[8]|128,b){if((c=c||0)<0||c+16>b.length)throw RangeError(`UUID byte range ${c}:${c+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[c+a]=f[a];return b}return(0,e.k)(f)}(a,b,c):crypto.randomUUID()}},50122:(a,b,c)=>{c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},53041:(a,b,c)=>{c.d(b,{$w:()=>C,KY:()=>S,Q6:()=>R,cO:()=>L,go:()=>O,hn:()=>E,kF:()=>s});var d=c(55511),e=c(73024),f=c.n(e),g=c(76760),h=c.n(g),i=c(49120),j=c(71998),k=c(20116),l=c(62409),m=c(82506),n=c(66307);let o=new Set(["success","failed","failed_invalid_credentials","failed_exchange","failed_timeout","failed_restricted","failed_browser_blocked","cancelled"]),p=h().join(i.DATA_DIR,"kiro-bulk-import"),q=h().join(p,"meta.json"),r=new Set(["queued","running","needs_manual"]);function s(){return new Date().toISOString()}function t(a=p){f().mkdirSync(a,{recursive:!0})}function u(a,b=p){return t(b),h().join(b,`${a}.json`)}function v(a){try{if(!f().existsSync(a))return null;return JSON.parse(f().readFileSync(a,"utf8"))}catch{return null}}function w(a,b){t(h().dirname(a));let c=`${a}.${process.pid}.tmp`;f().writeFileSync(c,JSON.stringify(b,null,2),"utf8"),f().renameSync(c,a)}function x(a,b=p){return t(b),h().join(b,`${a}.resume.enc`)}function y(){return(0,d.createHash)("sha256").update(String(function(){if(process.env.BULK_IMPORT_RESUME_SECRET)return process.env.BULK_IMPORT_RESUME_SECRET;let a=h().join(i.DATA_DIR,"bulk-import-resume-key");try{return f().readFileSync(a,"utf8").trim()}catch{}try{t(i.DATA_DIR);let b=(0,d.randomBytes)(32).toString("hex");return f().writeFileSync(a,b,{mode:384}),b}catch{return(0,d.randomBytes)(32).toString("hex")}}())).digest()}function z(a){try{f().existsSync(a)&&f().rmSync(a)}catch{}}function A(a=q){return v(a)?.latestJobId||null}function B(a){if((0,k.uT)(a))return Math.min(8,Math.max(1,(0,k.q)()));let b=Number.parseInt(a,10);return Number.isFinite(b)?Math.min(8,Math.max(1,b)):4}function C(a=[]){let b=Array.isArray(a)?a:[],c=[],d=[];return b.forEach((a,b)=>{let e=String(a||"").trim();if(!e||e.startsWith("#"))return;let f="",g="";if(e.includes("|")){let[a="",...b]=e.split("|");f=a.trim(),g=b.join("|").trim()}else if(e.includes(" ")){let a=e.indexOf(" ");f=e.substring(0,a).trim(),g=e.substring(a+1).trim()}else if(e.includes(":")){let a=e.indexOf(":"),b=e.substring(0,a).trim();b.includes("@")&&(f=b,g=e.substring(a+1).trim())}f&&g?c.push({line:b+1,email:f,password:g}):d.push(b+1)}),{parsed:c,invalidLines:d}}function D(a){return{total:a.length,queued:a.filter(a=>"queued"===a.status).length,running:a.filter(a=>"running"===a.status).length,success:a.filter(a=>"success"===a.status).length,failed:a.filter(a=>"failed"===a.status||"failed_invalid_credentials"===a.status||"failed_exchange"===a.status||"failed_timeout"===a.status||"failed_restricted"===a.status||"failed_browser_blocked"===a.status).length,needs_manual:a.filter(a=>"needs_manual"===a.status).length}}function E(a,b,c="info"){return{id:(0,d.randomUUID)(),at:s(),step:a,message:b,level:c}}function F(a,b,c,d="info"){let e=E(b,c,d);return a.currentStep=b,a.updatedAt=e.at,a.logs=a.logs||[],a.logs.push(e),a.logs.length>40&&a.logs.splice(0,a.logs.length-40),e}function G(a){return a.flatMap(a=>(a.logs||[]).map(b=>({...b,email:a.email,line:a.line,workerId:a.workerId||null,status:a.status}))).sort((a,b)=>String(a.at).localeCompare(String(b.at))).slice(-80)}function H(a){if(!a)return null;try{let b=new URL(a);return(b.username||b.password)&&(b.username="***",b.password="***"),b.toString()}catch{return a.length>20?`${a.slice(0,10)}***${a.slice(-10)}`:a}}function I(a){return{email:a.email,status:a.status,error:a.error||null,connectionId:a.connectionId||null,workerId:a.workerId||null,line:a.line,proxyUrl:H(a.proxyUrl)||null,currentStep:a.currentStep||null,updatedAt:a.updatedAt||null,logs:(a.logs||[]).slice(-20),manualSessionAvailable:!!a.manualSession?.page&&"needs_manual"===a.status,manualSessionOpened:!!a.manualSession?.opened}}function J(a,b={}){return{jobId:a.jobId,status:a.status,summary:D(a.accounts),concurrency:a.concurrency,createdAt:a.createdAt,startedAt:a.startedAt,finishedAt:a.finishedAt,accounts:a.accounts.map(I),activity:G(a.accounts),error:a.error||null,preview:b.preview||null}}function K(a){if(!a||r.has(a.status))return!1;let b=a.finishedAt?Date.parse(a.finishedAt):NaN;return!!Number.isFinite(b)&&Date.now()-b<=18e5}function L(a,b={}){return a?{found:!0,stale:!1,recoverable:r.has(a.status)||K(a),job:a}:{found:!1,stale:!!b.stale,recoverable:!1,job:null}}async function M(a){let b,{launchBulkImportBrowser:d}=await c.e(5949).then(c.bind(c,75949)),e=a?.engine||"chromium",f=process.env.ZEVAI_KIRO_HEADLESS;return b="1"===f||"true"===f||"0"!==f&&"false"!==f&&"camoufox"===e,d({engine:e,headless:b,windowSize:{width:1280,height:900}})}async function N(a){let{exchangeAndSaveKiroSocialConnection:b}=await c.e(4136).then(c.bind(c,34136));return b(a)}async function O(a,b){let d=b,e=null;if(b)try{let{ensureSocksHttpBridge:a,isSocksProxyUrl:f}=await c.e(6652).then(c.bind(c,76652));f(b)&&(e=await a(b),e?.httpProxyUrl&&(d=e.httpProxyUrl))}catch(a){console.warn("[bulk-import] SOCKS bridge unavailable:",a?.message||a)}let f=(0,n.parsePlaywrightProxy)(d),g=f?{proxy:f}:{},h="";try{h=a.browserType().name()}catch{}"firefox"===h?g.viewport=null:g.viewport||(g.viewport={width:900,height:700}),g.ignoreHTTPSErrors=!0;let i=await a.newContext(g);if(e){let a=i.close.bind(i);i.close=async(...b)=>{try{return await a(...b)}finally{await e.release().catch(()=>null)}}}let j=await i.newPage();try{await j.route(/facebook\.net|hotjar|clarity\.ms|hm\.baidu|sentry\.io|browser\.sentry-cdn|doubleclick\.net/i,a=>a.abort())}catch{}return{context:i,page:j}}async function P(a){let b,d;if(!a?.manualSession?.context)return!1;let e=a.manualSession.context,f=a.manualSession.page,g=e.browser?.(),h=null,i="";try{h=await e.storageState()}catch{h=null}try{i=f?.url?.()||""}catch{i=""}let{chromium:j}=await Promise.resolve().then(c.bind(c,83237));try{b=await j.launch({headless:!1,args:["--start-maximized"]})}catch{return!1}try{d=await b.newContext({viewport:null,...h?{storageState:h}:{}})}catch{return await b.close().catch(()=>null),!1}let k=await d.newPage();if(i)try{await k.goto(i,{waitUntil:"domcontentloaded",timeout:2e4})}catch{}let l=a.manualSession.rebind;if(a.manualSession.context=d,a.manualSession.page=k,a.manualSession.headedBrowser=b,"function"==typeof l)try{await l({context:d,page:k})}catch{}return e.close().catch(()=>null),g&&g!==b&&g.close().catch(()=>null),!0}async function Q(a,{account:b}={}){if(!a)return!1;try{let c=a.context?.(),d=c?.browser?.();if(b&&function(a){if(!a)return!0;let b=a._options||a._initializer||{};return"boolean"!=typeof b.headless||b.headless}(d)&&await P(b))return await b.manualSession.page.bringToFront?.().catch(()=>null),!0;if(!c?.newCDPSession)return await a.bringToFront?.().catch(()=>null),!0;let e=await c.newCDPSession(a),f=null;try{let a=await e.send("Target.getTargetInfo"),b=a?.targetInfo?.targetId,c=await e.send("Browser.getWindowForTarget",b?{targetId:b}:{});f=c?.windowId??null}catch{f=null}return null!=f&&await e.send("Browser.setWindowBounds",{windowId:f,bounds:{windowState:"normal",left:80,top:80,width:1280,height:960}}).catch(()=>null),await a.bringToFront?.().catch(()=>null),await e.detach?.().catch(()=>null),!0}catch{return await a.bringToFront?.().catch(()=>null),!0}}class R{constructor({browserLauncher:a=M,googleAutomation:b=m.Th,socialExchange:c=N,kiroServiceFactory:d=()=>new l.v,storageName:e="kiro-bulk-import"}={}){this.browserLauncher=a,this.googleAutomation=b,this.socialExchange=c,this.kiroServiceFactory=d,this.storageDir=h().join(i.DATA_DIR,e),this.metaFile=h().join(this.storageDir,"meta.json"),this.jobs=new Map,this.latestJobId=A(this.metaFile)}persistResumeBlob(a){try{!function(a,b){try{let c,e,g,i,j;t(h().dirname(a));let k=`${a}.${process.pid}.tmp`;f().writeFileSync(k,JSON.stringify((c=(0,d.randomBytes)(12),e=(0,d.createCipheriv)("aes-256-gcm",y(),c),g=Buffer.from(JSON.stringify(b),"utf8"),i=Buffer.concat([e.update(g),e.final()]),j=e.getAuthTag(),{v:1,alg:"aes-256-gcm",iv:c.toString("base64"),tag:j.toString("base64"),data:i.toString("base64")})),{mode:384}),f().renameSync(k,a)}catch{}}(x(a.jobId,this.storageDir),{jobId:a.jobId,concurrency:a.concurrency,engine:a.engine,proxyPoolMode:a.proxyPoolMode,proxyUrls:a.proxyUrls||[],createdAt:a.createdAt,accounts:a.accounts.map(a=>({line:a.line,email:a.email,password:a.password}))})}catch{}}hydrateInterruptedJob(a){if(!a||this.jobs.has(a))return!1;let b=v(u(a,this.storageDir));if(!b||!r.has(b.status))return!1;let c=function(a){let b=v(a);if(!b)return null;if(!b||"aes-256-gcm"!==b.alg||!b.iv||!b.tag||!b.data)return null;try{let a=(0,d.createDecipheriv)("aes-256-gcm",y(),Buffer.from(b.iv,"base64"));a.setAuthTag(Buffer.from(b.tag,"base64"));let c=Buffer.concat([a.update(Buffer.from(b.data,"base64")),a.final()]);return JSON.parse(c.toString("utf8"))}catch{return null}}(x(a,this.storageDir));if(!c||!Array.isArray(c.accounts)||0===c.accounts.length)return this.markJobInterrupted(a,b),!1;let e=new Map(c.accounts.map(a=>[a.line,a.password])),f=new Map(c.accounts.map(a=>[a.line,a.email])),g=b.createdAt||c.createdAt||s(),h=(b.accounts||[]).map(a=>{let b=o.has(a.status),c=Array.isArray(a.logs)?[...a.logs]:[],d={line:a.line,email:a.email||f.get(a.line)||"",password:b?void 0:e.get(a.line)??null,proxyUrl:null,status:a.status,error:a.error||null,connectionId:a.connectionId||null,workerId:b&&a.workerId||null,manualSession:null,runtimeSession:null,currentStep:a.currentStep||null,updatedAt:a.updatedAt||g,logs:c};return b||(d.status="queued",d.currentStep="queued",d.error=null,d.logs.push(E("resumed","Re-queued after a server restart to continue automatically"))),d}),i={jobId:a,status:"running",concurrency:B(c.concurrency),engine:c.engine||"chromium",proxyPoolMode:c.proxyPoolMode||"none",proxyUrls:Array.isArray(c.proxyUrls)?c.proxyUrls:[],createdAt:g,startedAt:b.startedAt||g,finishedAt:null,error:null,cancelRequested:!1,browser:null,nextIndex:0,manualFollowups:new Set,persistPromise:Promise.resolve(),lastPreview:b.preview||null,lastPreviewCapturedAt:0,accounts:h};return(this.jobs.set(a,i),this.latestJobId||(this.latestJobId=a),h.some(a=>"queued"===a.status))?this.runJob(a):(i.status="completed",i.finishedAt=s(),this.persistJobSnapshot(i,{forcePreview:!1}),z(x(a,this.storageDir))),!0}markJobInterrupted(a,b){let c="Job was interrupted by a server restart and could not be auto-resumed (saved credentials were unavailable). Please start a new bulk login.",d=(b.accounts||[]).map(a=>{if(o.has(a.status))return a;let b=Array.isArray(a.logs)?[...a.logs]:[];return b.push(E("failed",c,"error")),{...a,status:"failed",error:c,currentStep:"failed",updatedAt:s(),manualSessionAvailable:!1,logs:b}}),e={...b,status:"failed",error:b.error||c,finishedAt:b.finishedAt||s(),accounts:d,summary:D(d),activity:G(d)};try{w(u(a,this.storageDir),e)}catch{}z(x(a,this.storageDir))}async startJob({accounts:a,concurrency:b,engine:e,proxyPoolMode:f,proxyPoolId:g}){let{parsed:h,invalidLines:i}=C(a);if(!h.length){let a=i.length>0?"Invalid account format. Use one account per line: gmail@example.com|password":"At least one account entry is required",b={error:a};throw i.length>0&&(b.invalidLines=i),Object.assign(Error(a),b)}if(i.length>0){let a="Invalid account format. Use one account per line: gmail@example.com|password";throw Object.assign(Error(a),{error:a,invalidLines:i})}let k=[];if("all"===f)k=(await (0,j.ui)({isActive:!0})).map(a=>a.proxyUrl).filter(Boolean);else if("single"===f&&g){let a=await (0,j.hr)(g);a?.isActive&&a?.proxyUrl&&(k=[a.proxyUrl])}let l=(0,d.randomUUID)(),m=s(),{normalizeBulkImportEngine:n,DEFAULT_BULK_IMPORT_ENGINE:o}=await c.e(5949).then(c.bind(c,75949)),p=e?n(e):o;this.hydrateInterruptedJob(this.latestJobId);let t=[...this.jobs.values()].find(a=>r.has(a.status));if(t)throw Object.assign(Error("A bulk import job is already active"),{error:"A bulk import job is already active",code:"BULK_IMPORT_ACTIVE",jobId:t.jobId});let u={jobId:l,status:"running",concurrency:B(b),engine:p,proxyPoolMode:f||"none",proxyUrls:k,createdAt:m,startedAt:m,finishedAt:null,error:null,cancelRequested:!1,browser:null,nextIndex:0,manualFollowups:new Set,persistPromise:Promise.resolve(),lastPreview:null,lastPreviewCapturedAt:0,accounts:h.map(a=>({line:a.line,email:a.email,password:a.password,proxyUrl:null,status:"queued",error:null,connectionId:null,workerId:null,manualSession:null,runtimeSession:null,currentStep:"queued",updatedAt:m,logs:[E("queued","Queued and waiting for an available worker")]}))};return this.jobs.set(l,u),this.latestJobId=l,!function(a,b=q){w(b,{latestJobId:a||null,updatedAt:s()})}(l,this.metaFile),await this.persistJobSnapshot(u,{forcePreview:!1}),this.persistResumeBlob(u),this.runJob(l),J(u)}getJob(a){this.hydrateInterruptedJob(a);let b=this.jobs.get(a);return b?J(b,{preview:b.lastPreview||null}):v(u(a,this.storageDir))}async getJobWithPreview(a){this.hydrateInterruptedJob(a);let b=this.jobs.get(a);if(!b)return v(u(a,this.storageDir));let c=await this.capturePreview(b);return b.lastPreview=c||b.lastPreview||null,await this.persistJobSnapshot(b,{forcePreview:!1}),J(b,{preview:b.lastPreview||null})}async getLatestJobWithPreview({includeRecentTerminal:a=!1}={}){let b=this.latestJobId||A(this.metaFile);if(!b)return null;let c=await this.getJobWithPreview(b);return c&&(r.has(c.status)||a&&K(c))?c:null}cancelJob(a){let b=this.jobs.get(a);if(!b)return v(u(a,this.storageDir));for(let a of(b.cancelRequested=!0,b.accounts||[]))if("queued"===a.status||"running"===a.status||"needs_manual"===a.status){let b=a.manualSession,d=a.runtimeSession,e=b?.context||d?.context||null,f=b?.headedBrowser||null,g=b?.ownedBrowser||null;e&&e.close().catch(()=>null),f&&f.close().catch(()=>null),g&&c.e(5949).then(c.bind(c,75949)).then(({forceCloseBrowser:a})=>a(g)).catch(()=>g.close().catch(()=>null)),a.manualSession=null,a.runtimeSession=null,this.finalizeAccount(a,"cancelled",{error:"Job cancelled",step:"cancelled",message:"Job cancelled by user"})}if(b.browser){let a=b.browser;b.browser=null,c.e(5949).then(c.bind(c,75949)).then(({forceCloseBrowser:b})=>b(a)).catch(()=>a.close().catch(()=>null))}return("queued"===b.status||"running"===b.status)&&(b.status="cancelled",b.finishedAt=b.finishedAt||s()),this.persistJobSnapshot(b,{forcePreview:!0}),J(b)}async openManualSession(a,b){let c=this.jobs.get(a);if(!c)return null;let d=Number.parseInt(b,10),e=c.accounts.find(a=>a.workerId===d&&"needs_manual"===a.status&&a.manualSession?.page);if(!e)return{ok:!1,error:"Manual session not found for this worker",job:J(c)};let f=await Q(e.manualSession.page,{account:e});return e.manualSession.opened=f,e.manualSession.openedAt=f?e.manualSession.openedAt||s():e.manualSession.openedAt||null,await this.persistJobSnapshot(c,{forcePreview:!0}),{ok:!0,job:J(c),account:I(e)}}dequeueAccount(a,b){for(;a.nextIndex<a.accounts.length;){let c=a.accounts[a.nextIndex];if(a.nextIndex+=1,"queued"===c.status)return c.status="running",c.workerId=b,c.error=null,a.proxyUrls?.length&&(c.proxyUrl=a.proxyUrls[(a.nextIndex-1)%a.proxyUrls.length]),F(c,"worker_assigned",`Worker ${b} picked up this account${c.proxyUrl?` (proxy: ${H(c.proxyUrl)})`:""}`),this.persistJobSnapshot(a,{forcePreview:!1}),c}return null}finalizeAccount(a,b,c={}){return a.status=b,a.error=c.error||null,a.connectionId=c.connectionId||null,(c.step||c.message)&&F(a,c.step||b,c.message||c.error||b.replaceAll("_"," ")),a}setAccountStep(a,b,c,d="info"){F(a,b,c,d)}async persistJobSnapshot(a,{forcePreview:b=!1}={}){if(!a)return;let c=async()=>{if(b||Date.now()-(a.lastPreviewCapturedAt||0)>=1500){let b=await this.capturePreview(a);b&&(a.lastPreview=b),a.lastPreviewCapturedAt=Date.now()}w(u(a.jobId,this.storageDir),J(a,{preview:a.lastPreview||null}))};a.persistPromise=Promise.resolve(a.persistPromise).catch(()=>null).then(c),await a.persistPromise}async capturePreview(a){let b=a.accounts.find(a=>"running"===a.status&&a.runtimeSession?.page)||a.accounts.find(a=>"needs_manual"===a.status&&a.manualSession?.page);if(!b)return null;let c=b.runtimeSession?.page||b.manualSession?.page;if(!c)return null;try{let a=await c.screenshot({type:"jpeg",quality:55,fullPage:!1,animations:"disabled",caret:"hide"});return{email:b.email||null,phone:b.phone||null,workerId:b.workerId||null,status:b.status,step:b.currentStep||null,updatedAt:b.updatedAt||s(),imageData:`data:image/jpeg;base64,${a.toString("base64")}`}}catch{return{email:b.email||null,phone:b.phone||null,workerId:b.workerId||null,status:b.status,step:b.currentStep||null,updatedAt:b.updatedAt||s(),imageData:null}}}async runManualFollowup(a,b,c,d,e,f){let g=(async()=>{let c=async()=>{let a=b.manualSession,c=a?.context||d,e=a?.headedBrowser||null;c&&await c.close().catch(()=>null),e&&await e.close().catch(()=>null)};try{let c=await e;if(a.cancelRequested){this.finalizeAccount(b,"cancelled",{error:"Job cancelled",step:"cancelled",message:"Job cancelled while waiting for manual completion"}),await this.persistJobSnapshot(a,{forcePreview:!0});return}this.setAccountStep(b,"exchanging_tokens","Exchanging Kiro callback for OAuth tokens"),await this.persistJobSnapshot(a,{forcePreview:!0});let{connection:d}=await this.socialExchange({code:c.code,codeVerifier:f,provider:"google"});this.finalizeAccount(b,"success",{connectionId:d.id,step:"connection_saved",message:"Kiro connection saved successfully"}),await this.persistJobSnapshot(a,{forcePreview:!0})}catch(c){a.cancelRequested?this.finalizeAccount(b,"cancelled",{error:"Job cancelled",step:"cancelled",message:"Job cancelled while waiting for manual completion"}):this.finalizeAccount(b,"failed_exchange",{error:c.message||"Manual assist flow failed during token exchange.",step:"exchange_failed",message:c.message||"Manual assist flow failed during token exchange."}),await this.persistJobSnapshot(a,{forcePreview:!0})}finally{await c(),b.manualSession=null,b.runtimeSession=null,a.manualFollowups.delete(g),await this.persistJobSnapshot(a,{forcePreview:!0})}})();a.manualFollowups.add(g)}async processAccount(a,b,c){if(a.cancelRequested||!a.browser)return void this.finalizeAccount(b,"cancelled",{error:"Job cancelled"});let d=this.kiroServiceFactory().createSocialAuthorization("google"),{context:e,page:f}=await O(a.browser,b.proxyUrl),g=(0,m.zZ)(e,f);b.runtimeSession={context:e,page:f};try{this.setAccountStep(b,"preparing_worker",`Worker ${c} is preparing a browser context`),await this.persistJobSnapshot(a,{forcePreview:!0});let h=await this.googleAutomation({page:f,authUrl:d.authUrl,email:b.email,password:b.password,callbackPromise:g,onStep:(c,d)=>{this.setAccountStep(b,c,d),this.persistJobSnapshot(a,{forcePreview:!1})}});if("success"===h.status){this.setAccountStep(b,"exchanging_tokens","Exchanging Kiro callback for OAuth tokens"),await this.persistJobSnapshot(a,{forcePreview:!0});let{connection:c}=await this.socialExchange({code:h.code,codeVerifier:d.codeVerifier,provider:"google"});this.finalizeAccount(b,"success",{connectionId:c.id,step:"connection_saved",message:"Kiro connection saved successfully"}),b.runtimeSession=null,await e.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0});return}if("needs_manual"===h.status){b.manualSession={context:e,page:f,opened:!1,openedAt:null,rebind:"function"==typeof g?.rebind?g.rebind:null},this.setAccountStep(b,"awaiting_manual","Waiting for manual completion in the browser session"),this.finalizeAccount(b,"needs_manual",{error:h.error,step:"awaiting_manual",message:h.error}),await this.persistJobSnapshot(a,{forcePreview:!0}),await this.runManualFollowup(a,b,c,e,g,d.codeVerifier);return}let i=o.has(h.status)?h.status:"failed";this.finalizeAccount(b,i,{error:h.error||"Kiro Google automation failed.",step:i,message:h.error||"Kiro Google automation failed."}),b.runtimeSession=null,await e.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0})}catch(c){this.finalizeAccount(b,"failed",{error:c.message||"Unexpected Kiro bulk import failure.",step:"failed",message:c.message||"Unexpected Kiro bulk import failure."}),b.runtimeSession=null,await e.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0})}finally{b.password=void 0}}async runWorker(a,b){for(;!a.cancelRequested;){let c=this.dequeueAccount(a,b);if(!c)return;await this.processAccount(a,c,b)}}async runJob(a){let b=this.jobs.get(a);if(b)try{b.browser=await this.browserLauncher(b),b.accounts.forEach(a=>{"queued"===a.status&&1===(a.logs||[]).length&&this.setAccountStep(a,"waiting_for_worker","Waiting for a free worker")}),await this.persistJobSnapshot(b,{forcePreview:!1});let a=Math.min(b.concurrency,Math.max(b.accounts.length,1)),c=Array.from({length:a},(a,c)=>this.runWorker(b,c+1));await Promise.allSettled(c),b.manualFollowups.size>0&&await Promise.allSettled([...b.manualFollowups]),b.cancelRequested?(b.status="cancelled",b.accounts.forEach(a=>{("queued"===a.status||"running"===a.status||"needs_manual"===a.status)&&this.finalizeAccount(a,"cancelled",{error:"Job cancelled",step:"cancelled",message:"Job cancelled before completion"})})):b.status="completed",await this.persistJobSnapshot(b,{forcePreview:!0})}catch(a){b.status="failed",b.error=a.message||"Failed to start Kiro bulk import job.",b.accounts.forEach(a=>{("queued"===a.status||"running"===a.status)&&(this.finalizeAccount(a,"failed",{error:b.error,step:"failed",message:b.error}),a.password=void 0)}),await this.persistJobSnapshot(b,{forcePreview:!0})}finally{if(b.browser){let a=b.browser;b.browser=null;try{let{forceCloseBrowser:b}=await c.e(5949).then(c.bind(c,75949));await b(a)}catch{await a.close().catch(()=>null)}}b.finishedAt=s(),await this.persistJobSnapshot(b,{forcePreview:!0}),z(x(b.jobId,this.storageDir))}}}function S(){return(!globalThis.__kiroBulkImportSingleton&&(globalThis.__kiroBulkImportSingleton={manager:new R}),globalThis.__kiroBulkImportSingleton).manager}},66307:(a,b,c)=>{c.d(b,{parsePlaywrightProxy:()=>d});function d(a){if(!a)return null;let b=String(a).trim();if(!b)return null;try{let a=new URL(b),c=(a.protocol||"http:").replace(/:$/,"")||"http",d={server:`${c}://${a.hostname}${a.port?`:${a.port}`:""}`};return a.username&&(d.username=decodeURIComponent(a.username)),a.password&&(d.password=decodeURIComponent(a.password)),d}catch{return{server:b}}}},71998:(a,b,c)=>{c.d(b,{Fh:()=>d.Fh,L9:()=>d.L9,Mc:()=>d.Mc,OM:()=>d.OM,Pc:()=>d.Pc,Q_:()=>d.Q_,Qu:()=>d.Qu,S8:()=>d.S8,Yd:()=>d.Yd,ZO:()=>d.ZO,c:()=>d.c,createProviderConnection:()=>d.iE,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.getProviderConnections,ho:()=>d.ho,hr:()=>d.hr,i0:()=>d.i0,o5:()=>d.o5,op:()=>d.op,rj:()=>d.updateProviderConnection,uL:()=>d.uL,ui:()=>d.ui,uv:()=>d.uv});var d=c(89718)},82506:(a,b,c)=>{c.d(b,{$K:()=>ab,Jl:()=>P,PB:()=>aj,Th:()=>al,i_:()=>$,np:()=>Z,rk:()=>ak,vN:()=>am,zZ:()=>ai});let d='input[type="email"], input[autocomplete="username"], input#identifierId, input[name="identifier"], input[name="Email"], input[type="text"][autofocus], input[aria-label*="Email" i], input[aria-label*="email" i], input[aria-label*="phone" i], input[aria-label*="telepon" i]',e='input[type="password"], input[name="Passwd"], input[name="password"], input[aria-label*="Password" i], input[aria-label*="password" i], input[aria-label*="Sandi" i], input[aria-label*="kata sandi" i]',f=['button:has-text("Next")','button:has-text("Berikutnya")','button:has-text("Continue")','div[role="button"]:has-text("Next")','div[role="button"]:has-text("Berikutnya")',"#identifierNext button","#passwordNext button"],g=["#submit_approve_access","#submit_approve_access button","#confirm",'form#tos_form input[type="submit"]','button[jsname]:has-text("Allow")','button:has-text("Allow")','[role="button"]:has-text("Allow")','input[type="submit"][value="Allow"]','input[type="button"][value="Allow"]','button[jsname]:has-text("Izinkan")','button:has-text("Izinkan")','[role="button"]:has-text("Izinkan")','button:has-text("Continue")','button:has-text("Next")','button:has-text("Yes")','button:has-text("Accept")','button:has-text("Lanjutkan")','button:has-text("Berikutnya")','button:has-text("Setuju")','button:has-text("Saya mengerti")','button:has-text("Oke")','button:has-text("OK")','button:has-text("Got it")','button:has-text("I understand")','div[role="button"]:has-text("Continue")','div[role="button"]:has-text("Next")','div[role="button"]:has-text("Allow")','div[role="button"]:has-text("Lanjutkan")','div[role="button"]:has-text("Berikutnya")','div[role="button"]:has-text("Izinkan")','div[role="button"]:has-text("Setuju")','div[role="button"]:has-text("Saya mengerti")','div[role="button"]:has-text("Oke")','div[role="button"]:has-text("OK")','div[role="button"]:has-text("Got it")','div[role="button"]:has-text("I understand")','input[type="button"][value="Saya mengerti"]','input[type="submit"][value="Saya mengerti"]'],h=['button:has-text("Skip")','button:has-text("Lewati")','button:has-text("Not now")','button:has-text("Bukan sekarang")','button:has-text("No thanks")','button:has-text("Tidak sekarang")','div[role="button"]:has-text("Skip")','div[role="button"]:has-text("Not now")'],i=["#social-google","a#social-google",'a:has-text("Sign up with Google")','a:has-text("Log in with Google")','a:has-text("Login with Google")','a:has-text("Continue with Google")','a:has-text("Sign in with Google")','button:has-text("Sign up with Google")','button:has-text("Log in with Google")','button:has-text("Login with Google")','button:has-text("Continue with Google")','button:has-text("Sign in with Google")','button[aria-label*="Continue with Google" i]','button[aria-label*="Google" i]','button:has-text("Google")','a:has-text("Google")','div[role="button"]:has-text("Continue with Google")','div[role="button"]:has-text("Login with Google")','div[role="button"]:has-text("Google")','span:has-text("Continue with Google")','span:has-text("Login with Google")','span:has-text("Google")','[aria-label*="Google" i]','[data-provider*="google" i]','button:has-text("Login with Google")','button:has-text("Continue with Google")','[data-testid*="google" i]'],j=["#onetrust-accept-btn-handler","#onetrust-reject-all-handler","#accept-recommended-btn-handler",'button:has-text("Allow All")','button:has-text("Reject All")','button:has-text("Accept All")','button:has-text("Accept all")','button:has-text("Confirm My Choices")'],k=["#agree-policy-account","#agree-policy","#agree-policy-sso",'input[type="checkbox"][id*="agree" i]','input[type="checkbox"][name*="agree" i]','input[type="checkbox"][id*="policy" i]','input[type="checkbox"][name*="policy" i]','input[type="checkbox"][id*="terms" i]','input[type="checkbox"][name*="terms" i]','.login-checkbox input[type="checkbox"]','[class*="checkbox"] input[type="checkbox"]','[class*="agree"] input[type="checkbox"]','input[type="checkbox"]'],l=['.ui-dialog button:has-text("Confirm")','dialog button:has-text("Confirm")','button:has-text("Confirm")','button:has-text("I agree")','button:has-text("Agree")','button:has-text("同意")','button:has-text("确认")'],m=['button:has-text("Continue")','[role="button"]:has-text("Continue")','button:has-text("Get started")','button:has-text("GET STARTED")','input[type="submit"][value="GET STARTED"]','button:has-text("Start")','button:has-text("Confirm")','button:has-text("Done")','button:has-text("Next")','button:has-text("Skip")','button:has-text("Not now")','button:has-text("Save")','button:has-text("Create")','button:has-text("Enter")','button:has-text("Launch")','button:has-text("Use CodeBuddy")','button:has-text("Go to CodeBuddy")'],n=["select",'[role="combobox"]','.page-region [role="combobox"]',".page-region .t-select",'.page-region [class*="t-select"]','.page-region [class*="select"]',".page-region input[placeholder]",'button:has-text("Region")','[role="button"]:has-text("Region")','button:has-text("Select region")','[role="button"]:has-text("Select region")','button:has-text("Data region")','[aria-label*="region" i]','[placeholder*="region" i]'],o=["text=/^Indonesia$/i","text=/^ID$/i","text=/^Singapore$/i","text=/^SG$/i","text=/^Japan$/i","text=/^JP$/i","text=/^Thailand$/i","text=/^TH$/i","text=/^Global$/i","text=/^International$/i","text=/^United States$/i","text=/^US$/i","text=/^Asia Pacific$/i","text=/^Hong Kong$/i","text=/^Default$/i"],p=[{selector:'input[name*="workspace" i]',value:"Default"},{selector:'input[placeholder*="workspace" i]',value:"Default"},{selector:'input[name*="team" i]',value:"Default"},{selector:'input[placeholder*="team" i]',value:"Default"},{selector:'input[name*="name" i]',value:"Default"},{selector:'input[placeholder*="name" i]',value:"Default"}],q=["wrong password","incorrect password","couldn't find your google account","couldn’t find your google account","enter a valid email","couldn’t sign you in","couldn't sign you in","invalid email or password","password is incorrect"],r=["2-step verification","2-step verification required","verify it’s you","verify it's you","check your phone","confirm it’s you","confirm it's you","recovery email","recovery phone","suspicious sign-in prevented","unusual activity detected","captcha","i'm not a robot","im not a robot","not a robot","recaptcha","select all images","select all squares","try again later","browser or app may not be secure","try using a different browser","couldn’t sign you in","couldn't sign you in","this browser or app may not be secure"],s=["restricted","account has been restricted","account is restricted","account has been suspended","account is suspended","account has been disabled","account is disabled","account has been banned","account is banned","access denied","account blocked","your account has been","violation of terms","terms of service violation","temporarily locked","permanently locked","account locked","akun dibatasi","akun diblokir","akun ditangguhkan"],t=["welcome to your new google account","selamat datang di akun google baru anda","welcome to your new account","selamat datang di akun baru","privacy and terms","privasi dan persyaratan","personalize your google services","personalisasikan layanan google anda","add recovery phone","tambahkan nomor telepon pemulihan","choose your settings","pilih setelan anda"],u=["welcome to your new account","selamat datang di akun baru","your administrator decides which","administrator anda memutuskan layanan","your organisation administrator manages","your organization administrator manages"];function v(a){if(!a||!a.startsWith("kiro://kiro.kiroAgent/authenticate-success"))return null;let b=a.indexOf("?"),c=new URLSearchParams(b>=0?a.slice(b+1):""),d=c.get("code"),e=c.get("state");return d?{callbackUrl:a,code:d,state:e}:null}function w(a){let b="function"==typeof a.frames?a.frames():[];return[a,...b.filter(b=>b!==a.mainFrame?.())]}async function x(a,b){for(let c of w(a))for(let a of b){let b=c.locator(a).first();if(await b.count().catch(()=>0)&&await b.isVisible().catch(()=>!1))return await b.click({timeout:5e3}).catch(()=>null),!0}return!1}async function y(a,b){for(let c of w(a))for(let a of b){let b=c.locator(a).first();if(await b.count().catch(()=>0)){if((await b.scrollIntoViewIfNeeded().catch(()=>null),await b.isVisible().catch(()=>!1)&&await b.isEnabled().catch(()=>!0))&&await b.click({timeout:5e3}).then(()=>!0).catch(()=>!1))return!0}}return!1}async function z(a,b){for(let c of w(a)){let a=c.locator(b).first();if(await a.count().catch(()=>0)&&await a.isVisible().catch(()=>!1))return a}return null}async function A(a,b,{timeout:c=15e3,pollInterval:d=150}={}){let e=Date.now()+c;for(;Date.now()<e;){let c=await z(a,b);if(c)return c;let f=e-Date.now();if(f<=0)break;await new Promise(a=>setTimeout(a,Math.min(d,f)))}return null}function B(a=50){return new Promise(b=>setTimeout(b,a))}async function C(a,{timeout:b=8e3,interval:c=100}={}){let d=Date.now()+b;for(;Date.now()<d;){try{if(await a())return!0}catch{}await B(c)}return!1}function D(a){try{let b=new URL(a).hostname;return"accounts.google.com"===b||b.endsWith(".accounts.google.com")||/^accounts\.google\./i.test(b)}catch{return!1}}async function E(a,{fromUrl:b="",urlMatch:c=null,selector:d=null,timeout:e=8e3}={}){let f=b||a.url?.()||"";return C(async()=>{let b=a.url?.()||"";return!!(c&&("function"==typeof c&&c(b)||c instanceof RegExp&&c.test(b))||b&&b!==f&&!b.startsWith("about:")||d&&await z(a,d))||!1},{timeout:e,interval:80})}async function F(a,b,{timeout:c=15e3}={}){if(!a||null==b)return!1;try{await a.click({timeout:3e3})}catch{}try{if(await a.fill(String(b),{timeout:Math.min(c,8e3)}),await a.inputValue().catch(()=>"")===b)return!0}catch{}try{await a.fill("",{timeout:2e3})}catch{}try{let d=Math.floor(15+20*Math.random());await a.type(String(b),{delay:d,timeout:c})}catch{try{await a.fill(String(b),{timeout:c})}catch{return!1}}let d="";try{d=await a.inputValue()}catch{d=""}return d===b}async function G(a){let b=[];for(let c of w(a))try{b.push(await c.evaluate(()=>document.body?.innerText||""))}catch{}return b.join("\n")}function H(a,b){let c=String(a||"").toLowerCase();return b.some(a=>c.includes(a))}function I(a){try{let b=new URL(a.url());return"accounts.google.com"===b.hostname||b.hostname.endsWith(".accounts.google.com")||/^accounts\.google\./i.test(b.hostname)}catch{return!1}}function J(a){return/grok|cloudflare/i.test(String(a||""))}function K(a){try{let b=new URL(a||"");return"dash.cloudflare.com"===b.hostname&&b.pathname.includes("/login")}catch{return!1}}async function L(a,b){for(let c of j)try{let d=a.locator(c).first();if(await d.isVisible({timeout:100}).catch(()=>!1))return await d.click({timeout:2e3,noWaitAfter:!0}).catch(()=>null),b?.("dismissing_cookies","Dismissed cookie / privacy banner"),!0}catch{}return!!await a.evaluate(()=>{try{if("function"==typeof window.OneTrust?.AllowAll){if(!document.querySelector("#onetrust-banner-sdk, #onetrust-consent-sdk, #onetrust-accept-btn-handler"))return!1;return window.OneTrust.AllowAll(),!0}let a=document.querySelector("#onetrust-accept-btn-handler");if(a&&null!==a.offsetParent)return a.click(),!0}catch{}return!1}).catch(()=>!1)&&(b?.("dismissing_cookies","Dismissed cookie / privacy banner"),!0)}async function M(a){return!!function(a){try{let b=new URL(a.url());if(b.pathname.startsWith("/not-supported")||b.pathname.includes("/signin/rejected")||b.pathname.includes("/rejected")||"about.google"===b.hostname||b.hostname.endsWith(".about.google"))return!0}catch{}return!1}(a)||H(await G(a).catch(()=>""),["browser or app may not be secure","try using a different browser","couldn't sign you in","couldn’t sign you in","this browser or app may not be secure","browser is not secure"])}function N(a){return!!(a&&a.__zevaiSettled)}async function O(a,b,{maxWaitMs:c=2e4,successPromise:d=null}={}){let e=Date.now(),f="";for(d&&"function"==typeof d.then&&(d.__zevaiSettledHooked||(d.__zevaiSettledHooked=!0,d.then(()=>{d.__zevaiSettled=!0},()=>{d.__zevaiSettled=!0})));Date.now()-e<c;){if(N(d))return b?.("waiting_google_redirect","OAuth callback already received — leaving interstitial wait"),!1;let c=a.url?.()||"",e=String(await G(a).catch(()=>"")).trim(),g=/\/accounts\/SetSID/i.test(c),h=/\/AccountChooser/i.test(c),i=e.length<30;if(!(g||i&&/accounts\.google\./i.test(c))&&!h)return!1;if(c!==f&&(b?.("waiting_google_redirect",`Waiting for Google redirect (url=${c.slice(0,120)} empty=${i})`),f=c),h&&await y(a,["div[data-identifier]","div[data-email]","li[data-identifier]",'div[role="link"]','div[role="button"]'])){b?.("selecting_google_account","Selected account from Google AccountChooser"),await E(a,{timeout:5e3});continue}let j=[a.waitForNavigation({waitUntil:"domcontentloaded",timeout:3e3}).catch(()=>null),B(400)];d&&!N(d)&&j.push(d.then(()=>null).catch(()=>null)),await Promise.race(j)}return!0}function P(a){try{let b=new URL(a.url()).hostname||"";return/codebuddy\.(ai|cn)$/.test(b)||b.endsWith(".codebuddy.ai")||b.endsWith(".codebuddy.cn")||"accounts.x.ai"===b||"auth.x.ai"===b||b.endsWith(".x.ai")||"grok.com"===b||b.endsWith(".grok.com")||"dash.cloudflare.com"===b||b.endsWith(".cloudflare.com")}catch{return!1}}async function Q(a,b){if(!I(a))return!1;let c=await G(a);return!!/wants to access|ingin mengakses|akses ke akun google|allow/i.test(c)&&(await a.evaluate(()=>{let a=document.scrollingElement||document.documentElement||document.body;a&&(a.scrollTop=a.scrollHeight),window.scrollTo(0,document.body?.scrollHeight||document.documentElement?.scrollHeight||0)}).catch(()=>null),await a.waitForTimeout(300),!!await y(a,g)&&(b("approving_google_consent","Approving Google OAuth consent"),await a.waitForTimeout(1e3),!0))}async function R(a,b){let c=String(b||"");if(!H(c,t))return!1;if(await a.evaluate(()=>{let a=document.scrollingElement||document.documentElement||document.body;a&&(a.scrollTop=a.scrollHeight),window.scrollTo(0,document.body?.scrollHeight||document.documentElement?.scrollHeight||0)}).catch(()=>null),await a.waitForTimeout(500),H(c,u)){if(await y(a,g))return await a.waitForTimeout(700),!0;if(await a.evaluate(()=>{let a=[document.getElementById("confirm"),document.querySelector('form#tos_form input[type="submit"]'),document.querySelector('input[type="submit"][value="Saya mengerti"]'),document.querySelector('input[type="submit"][value="I understand"]')].filter(Boolean)[0];return!!a&&(a.scrollIntoView({block:"center"}),a.click(),!0)}).catch(()=>!1)||await a.evaluate(()=>{let a=document.getElementById("tos_form");return!!a&&(a.submit(),!0)}).catch(()=>!1))return await a.waitForTimeout(800),!0}return!!(await y(a,h)||await y(a,g))&&(await a.waitForTimeout(700),!0)}async function S(a){let b=/global|international|singapore|united states|^us$|asia|hong kong|default/i;for(let c of w(a)){let a=c.locator("select"),d=await a.count().catch(()=>0);for(let c=0;c<d;c+=1){let d=a.nth(c),e=await d.isVisible().catch(()=>!1),f=await d.isEnabled().catch(()=>!0);if(!e||!f)continue;let g=await d.evaluate((a,b)=>{let c=RegExp(b,"i"),d=[...a.options].filter(a=>!a.disabled&&""!==a.value),e=d.find(a=>c.test(`${a.label} ${a.textContent} ${a.value}`));return(e||d[0])?.value||""},b.source).catch(()=>"");if(g&&await d.selectOption(g).then(()=>!0).catch(()=>!1))return!0}}return!1}async function T(a){let b=!1;for(let c of w(a))for(let{selector:a,value:d}of p){let e=c.locator(a).first();if(!await e.count().catch(()=>0))continue;let f=await e.isVisible().catch(()=>!1),g=await e.isEnabled().catch(()=>!0);!(!f||!g||await e.inputValue().catch(()=>""))&&await e.fill(d,{timeout:5e3}).then(()=>!0).catch(()=>!1)&&(b=!0)}return b}async function U(a,b){await b.scrollIntoViewIfNeeded().catch(()=>null);let c=await b.isVisible().catch(()=>!1),d=await b.isEnabled().catch(()=>!0);if(!c||!d)return!1;let e=await b.boundingBox().catch(()=>null);if(!e||e.width<=0||e.height<=0)return!1;let f=e.x+e.width/2,g=e.y+e.height/2;return await a.mouse.move(f,g),await a.mouse.down(),await a.mouse.up(),!0}async function V(a,b,c){for(let d of w(a)){let e=d.locator(b),f=Math.min(await e.count().catch(()=>0),80),g=[];for(let a=0;a<f;a+=1){let b=e.nth(a);if(!await b.isVisible().catch(()=>!1))continue;let c=(await b.innerText({timeout:1e3}).catch(()=>"")||await b.textContent({timeout:1e3}).catch(()=>"")||"").trim();c&&g.push({locator:b,text:c})}for(let b of c){let c=g.find(a=>b.test(a.text));if(c&&await U(a,c.locator).catch(()=>!1))return c.text}if(g[0]&&await U(a,g[0].locator).catch(()=>!1))return g[0].text}return""}async function W(a,b){for(let c of w(a))for(let d of b){let b=c.locator(d),e=Math.min(await b.count().catch(()=>0),20);for(let c=0;c<e;c+=1){let d=b.nth(c);if(await U(a,d).catch(()=>!1))return!0}}return!1}async function X(a,b){if(!P(a)||I(a))return!1;let c=await a.evaluate(async()=>{let a=document.body?.innerText||"";if(!(document.querySelector(".page-region")||/select\s+region|region|country|area|get started|complete/i.test(a)))return null;try{let a=await fetch("https://www.codebuddy.ai/console/login/account",{method:"POST",credentials:"include",headers:{accept:"application/json, text/plain, */*","content-type":"application/json","x-requested-with":"XMLHttpRequest","x-domain":window.location.hostname||"www.codebuddy.ai"},referrer:"https://www.codebuddy.ai/register/user/complete",body:JSON.stringify({attributes:{countryCode:["62"],countryFullName:["Indonesia"],countryName:["ID"]}})}),b=await a.text().catch(()=>""),c=null;try{c=b?JSON.parse(b):null}catch{c={raw:b}}if(a.ok&&(!c||0===c.code||200===c.code||void 0===c.code))return{action:"submitted_via_api"};return{action:"api_failed",status:a.status,code:c?.code,message:c?.msg||c?.message||b||`HTTP ${a.status}`}}catch(a){return{action:"api_failed",message:a?.message||"region submit request failed"}}}).catch(()=>null);return!!c?.action&&("submitted_via_api"===c.action?(b("submitting_codebuddy_region","Submitted CodeBuddy region via account API"),await a.waitForTimeout(1500),!0):(b("codebuddy_region_api_failed",c.message?`CodeBuddy region API submit failed: ${c.message}`:"CodeBuddy region API submit failed"),!1))}async function Y(a,b){if(!P(a)||I(a)||!await a.locator(".page-region").first().count().then(Boolean).catch(()=>!1))return!1;let c=[/indonesia|^id$|\u5370\u5ea6\u5c3c\u897f\u4e9a/i,/singapore|^sg$|\u65b0\u52a0\u5761/i,/japan|^jp$|\u65e5\u672c/i,/thailand|^th$|\u6cf0\u56fd/i,/global|international|default/i];if(await W(a,[".page-region [class*='28B894']",".page-region button:has-text('Get started')",".page-region button:has-text('Start')",".page-region button:has-text('Submit')",".page-region button:has-text('Continue')",".page-region [role='button']:has-text('Get started')",".page-region [role='button']:has-text('Start')",".page-region [role='button']:has-text('Submit')",".page-region [role='button']:has-text('Continue')"]))return b("submitting_codebuddy_region","Submitted CodeBuddy region selection"),await a.waitForTimeout(1200),!0;let d=await V(a,"ul.dropdown-section li, .dropdown-section li, [role='option'], .t-select-option, [class*='option']",c);if(d)return b("selecting_codebuddy_region",`Selected CodeBuddy region: ${d}`),await a.waitForTimeout(900),!0;if(!await W(a,[".page-region .t-select",".page-region [class*='t-select']",".page-region [role='combobox']",".page-region input[placeholder]",".page-region [class*='select']",".page-region [class*='cursor-pointer']"]))return!1;b("opening_codebuddy_region_selector","Opening CodeBuddy region selector"),await a.waitForTimeout(600);let e=await V(a,"ul.dropdown-section li, .dropdown-section li, [role='option'], .t-select-option, [class*='option']",c);return e&&(b("selecting_codebuddy_region",`Selected CodeBuddy region: ${e}`),await a.waitForTimeout(900)),!0}async function Z(a,b){if(!P(a)||I(a))return!1;if(await X(a,b)||await Y(a,b))return!0;for(let c of w(a)){let d=await c.evaluate(()=>{let a=a=>{if(!(a instanceof HTMLElement))return!1;let b=window.getComputedStyle(a);if("hidden"===b.visibility||"none"===b.display||0===Number(b.opacity))return!1;let c=a.getBoundingClientRect();return c.width>0&&c.height>0},b=document.querySelector(".page-region"),c=document.body?.innerText||"";if(!(b||/select\s+region|region|country|area|get started|complete/i.test(c)))return null;let d=a=>{for(let b of(a.scrollIntoView({block:"center",inline:"center"}),["pointerdown","mousedown","pointerup","mouseup","click"]))a.dispatchEvent(new MouseEvent(b,{bubbles:!0,cancelable:!0,view:window,buttons:+!!b.endsWith("down")}))},e=[/indonesia|^id$|\u5370\u5ea6\u5c3c\u897f\u4e9a/i,/singapore|^sg$|\u65b0\u52a0\u5761/i,/japan|^jp$|\u65e5\u672c/i,/thailand|^th$|\u6cf0\u56fd/i,/global|international|default/i],f=b||document.body,g=["button","[role='button']","input[type='submit']",".t-button","[class*='button']","[class*='28B894']"],h=[...f.querySelectorAll(g.join(","))].filter(a).filter(a=>{let b=`${a.innerText||""} ${a.getAttribute("aria-label")||""} ${a.getAttribute("value")||""}`,c=a.getAttribute("class")||"";return/submit|start|continue|confirm|done|get started|complete|\u5b8c\u6210|\u5f00\u59cb|\u786e\u5b9a|\u4e0b\u4e00\u6b65/i.test(b)||c.includes("28B894")});if(h.length)return d(h[0]),{action:"submitted"};let i=["ul.dropdown-section li",".dropdown-section li","[role='option']",".t-select-option","[class*='option']","[class*='dropdown'] li"],j=[...document.querySelectorAll(i.join(","))].filter(a).filter(a=>(a.innerText||a.textContent||"").trim());if(j.length){let a=e.map(a=>j.find(b=>a.test((b.innerText||b.textContent||"").trim()))).find(Boolean)||j[0],b=(a.innerText||a.textContent||"").trim();return d(a),{action:"selected",label:b}}let k=["[role='combobox']",".t-select","[class*='t-select']","[class*='select']","input[placeholder]",".text-sm","[class*='cursor-pointer']"],l=[...f.querySelectorAll(k.join(","))].filter(a).filter(a=>{let b=`${a.innerText||""} ${a.getAttribute("placeholder")||""} ${a.getAttribute("aria-label")||""}`;return/region|country|area|select|placeholder|\u5730\u533a|\u56fd\u5bb6|\u9009\u62e9/i.test(b)||a.matches?.(".t-select,[class*='t-select'],input[placeholder],[class*='select']")});return l.length?(d(l[0]),{action:"opened"}):null}).catch(()=>null);if(d?.action){if("selected"===d.action)return b("selecting_codebuddy_region",`Selected CodeBuddy region${d.label?`: ${d.label}`:""}`),await a.waitForTimeout(700),!0;if("submitted"===d.action)return b("submitting_codebuddy_region","Submitted CodeBuddy region selection"),await a.waitForTimeout(1200),!0;return b("opening_codebuddy_region_selector","Opening CodeBuddy region selector"),await a.waitForTimeout(700),!0}}return!1}async function $(a,b){if(!P(a)||I(a))return!1;let c=await a.evaluate(async()=>{let a=new URL(window.location.href);if(!/\/started\/?$/.test(a.pathname))return null;let b=a.searchParams.get("platform")||"CLI",c=a.searchParams.get("state");if(!c)return null;for(let a of[...new Set([window.location.hostname||"www.codebuddy.ai"].filter(Boolean))]){let d=new URL("/console/auth/login",window.location.origin);d.searchParams.set("platform",b),d.searchParams.set("state",c),d.searchParams.set("domain",a);try{let b=await fetch(d.toString(),{method:"GET",credentials:"include",redirect:"manual",headers:{"x-requested-with":"XMLHttpRequest","X-Domain":a}});if("opaqueredirect"===b.type||b.status>=300&&b.status<400)return{action:"attempted",domain:a,message:"redirected"};let c=await b.text(),e=null;try{e=c?JSON.parse(c):null}catch{e={raw:c}}if(b.ok&&(!e||0===e.code||200===e.code||void 0===e.code))return{action:"authorized",domain:a};if(b.ok)return{action:"attempted",domain:a,code:e?.code,message:e?.msg||e?.message||""}}catch(a){}}return{action:"failed"}}).catch(()=>null);return!!c?.action&&"failed"!==c.action&&("authorized"===c.action?b("authorizing_codebuddy_cli_state","Authorized CodeBuddy CLI login state"):b("authorizing_codebuddy_cli_state",c.message?`Attempted CodeBuddy CLI login state authorization: ${c.message}`:"Attempted CodeBuddy CLI login state authorization"),await a.waitForTimeout(1200),!0)}async function _(a){try{for(let b of[/continue with google/i,/sign in with google/i,/sign up with google/i,/^google$/i]){let c=a.getByRole("button",{name:b}).first();if(await c.isVisible({timeout:300}).catch(()=>!1))return!0;let d=a.getByRole("link",{name:b}).first();if(await d.isVisible({timeout:200}).catch(()=>!1))return!0}}catch{}for(let b of i)try{let c=a.locator(b).first();if(await c.isVisible({timeout:200}).catch(()=>!1))return!0}catch{}return!1}function aa(a){try{let b=new URL(a.url()).hostname||"";return"accounts.x.ai"===b||"auth.x.ai"===b||b.endsWith(".x.ai")||"grok.com"===b||b.endsWith(".grok.com")}catch{return!1}}async function ab(a,b,c){if(!P(a)||I(a))return!1;if(await y(a,l))return b("accepting_provider_privacy_dialog",`Confirmed ${c} privacy or terms dialog`),await a.waitForTimeout(800),!0;if(await $(a,b)||await Z(a,b))return!0;if(!aa(a)){if(await S(a))return b("selecting_provider_region",`Selected ${c} region`),await a.waitForTimeout(700),!0;if(await y(a,n))return b("opening_provider_region_selector",`Opening ${c} region selector`),await a.waitForTimeout(500),await y(a,o)&&(b("selecting_provider_region",`Selected ${c} region`),await a.waitForTimeout(700)),!0;if(await y(a,o))return b("selecting_provider_region",`Selected ${c} region`),await a.waitForTimeout(700),!0;if(await T(a))return b("filling_provider_onboarding",`Filled ${c} onboarding defaults`),await a.waitForTimeout(500),!0}if(aa(a))return!1;try{let b=new URL(a.url()).hostname||"";if("dash.cloudflare.com"===b||b.endsWith(".cloudflare.com"))return!1}catch{}return!await _(a)&&!!await y(a,m)&&(b("continuing_provider_onboarding",`Continuing ${c} onboarding`),await a.waitForTimeout(1e3),!0)}async function ac(a,b,{alreadyAuthed:c=!1}={}){if(!aa(a)||c||await _(a))return!1;let d=await G(a).catch(()=>"");if(/sign out|log out|device authorized|you can close|invalid action/i.test(d)||!(/enter the code shown in your terminal/i.test(d)||/only enter this code if you just initiated/i.test(d)||/sign in to grok/i.test(d)&&/continue/i.test(d)&&!/login with/i.test(d)))return!1;let e=a.url?.()||"",f=!1;try{let b=a.getByRole("button",{name:/^Continue$/i}).first();await b.isVisible({timeout:300}).catch(()=>!1)&&(await b.click({timeout:5e3}),f=!0)}catch{}return f||(f=await y(a,['button[type="submit"]:has-text("Continue")','button:has-text("Continue")'])),!!f&&(b?.("confirming_device_code","Confirmed device user code on xAI"),await E(a,{fromUrl:e,urlMatch:a=>/sign-in|login|oauth/i.test(a)&&a!==e,selector:[...i.slice(0,8),'button:has-text("Login with Google")','button:has-text("Login with email")'].join(", "),timeout:1e4}),!0)}async function ad(a,b){return!!await b.isEnabled().catch(()=>!0)&&(await b.scrollIntoViewIfNeeded().catch(()=>null),!!await b.click({timeout:2500,force:!0,noWaitAfter:!0}).then(()=>!0).catch(()=>!1)||U(a,b).catch(()=>!1))}async function ae(a){for(let b of[/continue with google/i,/login with google/i,/log in with google/i,/sign up with google/i,/sign in with google/i,/^google$/i]){try{let c=a.getByRole("button",{name:b}).first();if(await c.isVisible({timeout:250}).catch(()=>!1)&&await ad(a,c))return!0}catch{}try{let c=a.getByRole("link",{name:b}).first();if(await c.isVisible({timeout:200}).catch(()=>!1)&&await ad(a,c))return!0}catch{}}try{let b=a.locator('button[aria-label*="Google" i]').first();if(await b.isVisible({timeout:200}).catch(()=>!1)&&await ad(a,b))return!0}catch{}try{let b=a.locator('button:has-text("Google")').first();if(await b.isVisible({timeout:150}).catch(()=>!1)&&await ad(a,b))return!0}catch{}return!1}async function af(a,b){for(let c of w(a))for(let d of k)try{let e=c.locator(d).first();if(!await e.count().catch(()=>0)||!await e.isVisible().catch(()=>!1))continue;if(await e.isChecked().catch(()=>!1))return!1;if(await e.check({force:!0,timeout:3e3}).then(()=>!0).catch(()=>!1)||await e.click({force:!0,timeout:3e3}).then(()=>!0).catch(()=>!1))return b?.("accepting_provider_terms","Accepted provider terms for Google login"),await C(async()=>{try{let b=a.getByRole("button",{name:/google/i}).first();return await b.isVisible().catch(()=>!1)&&await b.isEnabled().catch(()=>!0)}catch{return!0}},{timeout:2e3,interval:80}),!0}catch{}return!1}async function ag(a,b,{allowGoogleClick:c=!0}={}){if(I(a))return!1;if(await L(a,b),await y(a,l))return b("accepting_provider_privacy_dialog","Confirmed provider privacy agreement dialog"),!0;let e=await af(a,b);if(!c)return e;let f=await ae(a);if(!f)for(let b of i.slice(0,16))try{let c=a.locator(b).first();if(await c.isVisible({timeout:100}).catch(()=>!1)&&await ad(a,c)){f=!0;break}}catch{}if(f){b("selecting_google_login","Selecting Google login"),await y(a,l)&&b("accepting_provider_privacy_dialog","Confirmed provider privacy agreement dialog");let c=K(a.url?.()||"");if(await E(a,{urlMatch:a=>D(a),selector:d,timeout:c?1e4:12e3})||I(a))b("google_login_page","Reached Google sign-in after provider SSO");else try{let c=a.context?.(),d=c?.pages?.()||[];for(let a=d.length-1;a>=0;a-=1){let c=d[a],e=c.url?.()||"";if(D(e)){b("google_login_popup","Google sign-in opened in a popup");break}}}catch{}return!0}return e}async function ah(a,b){if(!aa(a)||await _(a))return!1;for(let c of[/^(Allow|Authorize|Approve|Confirm)$/i,/^(Allow|Authorize|Approve)\b/i])try{let d=a.getByRole("button",{name:c}).first();if(await d.isVisible({timeout:200}).catch(()=>!1)){let a=await d.innerText().catch(()=>"")||"";if(/google/i.test(a))continue;return await d.click({timeout:3e3}),b?.("approving_consent","Approving xAI device authorization"),!0}}catch{}return!1}function ai(a,b,c=9e5){let d,e,f=new Promise((a,b)=>{d=a,e=b}),g=!1,h=new Set,i=new Map,j=setTimeout(()=>{k(null,Error("Timed out waiting for Kiro callback"))},c);function k(a,b=null){if(!g){for(let a of(g=!0,clearTimeout(j),i.values()))for(let b of a)try{b()}catch{}i.clear(),b?e(b):d(a)}}function l(a){let b=v(a||"");return b&&k(b),!!b}function m(a){try{l(a?.url?.()||"");let b="function"==typeof a?.headers?a.headers():null,c=b?.location||b?.Location||"";c&&l(c)}catch{}}function n(a,b){if(!a||h.has(a))return;h.add(a);let c=a=>l(a?.url?.()||""),d=a=>l(a?.url?.()||""),e=a=>l(a?.url?.()||""),f=a=>m(a),i=()=>l(a.url?.()||""),j=()=>{k(null,Error("Browser session closed while waiting for Kiro callback"))};a.on("framenavigated",c),a.on("request",d),a.on("requestfailed",e),a.on("response",f),a.on("domcontentloaded",i),a.on("load",i),a.on("close",j),b.push(()=>{a.off("framenavigated",c),a.off("request",d),a.off("requestfailed",e),a.off("response",f),a.off("domcontentloaded",i),a.off("load",i),a.off("close",j)}),(async()=>{try{if(g)return;let c=a.context?.();if(!c?.newCDPSession)return;let d=await c.newCDPSession(a);await d.send("Network.enable").catch(()=>null);let e=a=>{try{let b=a?.response?.headers||{},c=b.location||b.Location||"";c&&l(c),l(a?.response?.url||"")}catch{}},f=a=>{try{l(a?.request?.url||"")}catch{}};d.on("Network.responseReceived",e),d.on("Network.requestWillBeSent",f),b.push(()=>{try{d.off?.("Network.responseReceived",e)}catch{}try{d.off?.("Network.requestWillBeSent",f)}catch{}d.detach?.().catch(()=>null)})}catch{}})();let n=v(a.url?.()||"");n&&k(n)}function o(a,b){if(g||i.has(a))return;let c=[];i.set(a,c);let d=a=>n(a,c),e=()=>{k(null,Error("Browser context closed while waiting for Kiro callback"))},f=a=>l(a?.url?.()||""),h=a=>l(a?.url?.()||""),j=a=>m(a);a.on("page",d),a.on("close",e),a.on("request",f),a.on("requestfailed",h),a.on("response",j),c.push(()=>a.off("page",d)),c.push(()=>a.off("close",e)),c.push(()=>a.off("request",f)),c.push(()=>a.off("requestfailed",h)),c.push(()=>a.off("response",j)),b&&n(b,c)}return o(a,b),f.rebind=({context:a,page:b}={})=>{a&&o(a,b)},f.abort=(a="Job cancelled")=>{k(null,Error(a))},f}function aj(a,b,{prefix:c,timeoutMs:d=9e5}={}){let e,f,g=new Promise((a,b)=>{e=a,f=b}),h=!1,i=new Set,j=new Map,k=setTimeout(()=>{l(null,Error("Timed out waiting for OAuth callback"))},d);function l(a,b=null){if(!h){for(let a of(h=!0,clearTimeout(k),j.values()))for(let b of a)try{b()}catch{}j.clear(),b?f(b):e(a)}}function m(a,b){if(!a||i.has(a))return;i.add(a);let d=a=>{let b=function(a,b){if(!a||!b||!a.startsWith(b))return null;let c=a.indexOf("?"),d=new URLSearchParams(c>=0?a.slice(c+1):""),e=d.get("code"),f=d.get("state");return e?{callbackUrl:a,code:e,state:f}:null}(a||"",c);b&&l(b)},e=a=>d(a?.url?.()||""),f=a=>d(a?.url?.()||""),g=a=>d(a?.url?.()||""),h=()=>d(a.url?.()||"");a.on("framenavigated",e),a.on("request",f),a.on("requestfailed",g),a.on("domcontentloaded",h),a.on("load",h),b.push(()=>{a.off("framenavigated",e),a.off("request",f),a.off("requestfailed",g),a.off("domcontentloaded",h),a.off("load",h)}),d(a.url?.()||"")}function n(a,b){if(h||j.has(a))return;let c=[];j.set(a,c);let d=a=>m(a,c);a.on("page",d),c.push(()=>a.off("page",d)),b&&m(b,c)}return n(a,b),g.rebind=({context:a,page:b}={})=>{a&&n(a,b)},g}async function ak({page:a,authUrl:b,email:c,password:h,successPromise:i,shortTimeoutMs:j=9e4,serviceLabel:k="provider",openingStep:l="opening_google_oauth",openingMessage:m="Opening Google OAuth page",successStep:n="oauth_success_received",successMessage:o="OAuth success received",onStep:p,skipGoto:t=!1,expectGoogleSoon:u=!1}){let v=Date.now(),w=(a,b)=>{p?.(a,b)},y=a=>({maxWaitMs:a,successPromise:i}),D=0,N=0,S=0,T=!1,U=0,V=0,W=0,X=J(k)?6e3:18e3,Y=J(k)?12e3:8e3,Z=J(k)?3e3:8e3,$=J(k),aa=$?4e3:25e3,ad=$?120:500,ae=t&&I(a);t?ae?w("google_login_page","Already on Google sign-in — filling credentials"):u?(w("waiting_google_redirect","Waiting for Google after provider SSO click"),await C(()=>I(a),{timeout:25e3,interval:100})?(ae=!0,S=Date.now(),w("google_login_page","Reached Google sign-in after provider SSO")):w("google_redirect_slow","Google redirect slow — will retry SSO click")):(w(l,m),await L(a,w)):(w(l,m),await a.goto(b,{waitUntil:"domcontentloaded",timeout:6e4}),await L(a,w));let af=K(a.url?.()||"")||/cloudflare/i.test(String(k||""));if(!ae){await C(async()=>!!(I(a)||await z(a,'button[aria-label*="Google" i], button:has-text("Continue with Google"), button:has-text("Login with Google"), button:has-text("Google")')||!af&&await z(a,d)||!af&&await z(a,'button:has-text("Continue")')),{timeout:$?8e3:12e3,interval:80}),$||await O(a,w,y(8e3));for(let b=0;b<($||af?8:2)&&!I(a);b+=1)if(await L(a,w),!await ac(a,w)){if(await ag(a,w)){if(S=Date.now(),I(a))break;await B(50);continue}await C(async()=>I(a)||await _(a)||/enter the code|login with google|continue with google/i.test(await G(a).catch(()=>"")),{timeout:600,interval:80})||await B(80)}$||await O(a,w,y(6e3))}if(I(a)){T=!0;let b=await A(a,d,{timeout:1e4});b&&(w("entering_email","Entering Google email"),await F(b,c)?(w("submitting_email","Submitting email"),await x(a,f),N=Date.now(),await E(a,{selector:e,timeout:$?8e3:12e3}),$||await O(a,w,y(8e3))):w("email_fill_failed","Could not fill the Google email field; will retry in the polling loop"))}else P(a)&&w("waiting_for_google_sso",`Provider page still open (${(a.url?.()||"").slice(0,80)}) — will keep selecting Google login`);for(;Date.now()-v<j;){let j=await Promise.race([i.then(a=>({kind:"success",result:a})).catch(a=>({kind:"success_error",error:a})),new Promise(a=>setTimeout(()=>a(null),ad))]);if(j?.kind==="success")return w(n,o),{status:"success",...j.result};if(j?.kind==="success_error")return w("oauth_timeout",`Timed out waiting for ${k} authorization`),{status:"failed_timeout",error:j.error?.message||`Timed out waiting for ${k} authorization`};if($&&T&&D&&/cloudflare/i.test(String(k||"")))try{let b=new URL(a.url?.()||"");if("dash.cloudflare.com"===b.hostname&&!b.pathname.includes("/login")&&!b.href.includes("oidcJwt")){w("waiting_cf_harvest","On Cloudflare dashboard — waiting for Workers AI token harvest");let a=await Promise.race([i.then(a=>({kind:"success",result:a})).catch(a=>({kind:"success_error",error:a})),B(2e3).then(()=>null)]);if(a?.kind==="success")return w(n,o),{status:"success",...a.result};if(a?.kind==="success_error")return w("oauth_timeout",`Timed out waiting for ${k} authorization`),{status:"failed_timeout",error:a.error?.message||`Timed out waiting for ${k} authorization`};continue}}catch{}if(await O(a,w,y($?2500:8e3)))continue;if(await Q(a,w)){$?await E(a,{timeout:4e3}):await O(a,w,y(12e3));continue}if(await M(a)){let b=a.url?.()||"";return w("browser_blocked_by_google",`Google blocked this browser (url=${b.slice(0,120)}). Headless Chromium is rejected — use headed mode or Camoufox.`),{status:"failed_browser_blocked",error:'Google blocked the automated browser ("This browser or app may not be secure" / signin rejected). Kiro bulk must use headed Chromium (Xvfb on Linux) or the Camoufox engine — not headless Chrome.'}}let l=await G(a);if(H(l,q))return w("invalid_credentials","Google rejected the supplied email or password"),{status:"failed_invalid_credentials",error:"Google rejected the supplied email or password."};if(H(l,s))return w("account_restricted","Account is restricted, suspended, or banned by the provider"),{status:"failed_restricted",error:"Account is restricted, suspended, or banned. Skipping."};if(H(l,r)){let a=/captcha|recaptcha|not a robot|select all images|select all squares/i.test(l);return w(a?"google_captcha":"manual_assist_required",a?"Google CAPTCHA / bot check":"Google requested CAPTCHA, 2FA, or recovery verification"),{status:"needs_manual",error:a?"Google CAPTCHA (bot check). Not fixed by lowering workers — use headed Chromium+Xvfb or Camoufox, residential proxy, and avoid blocking Google domains. Open manual assist to solve CAPTCHA once.":"Manual assist required in the browser session (CAPTCHA, 2FA, recovery, or suspicious-login challenge)."}}if(await R(a,l)){w("google_onboarding","Accepted Google onboarding or privacy prompt");continue}if(P(a)&&(/rate[_ ]?limit/i.test(l)||/error=rate_limited/i.test(a.url?.()||"")))return w("device_rate_limited","xAI device authorization rate-limited"),{status:"failed",error:"xAI rate-limited device authorization. Wait a few minutes and retry (too many rapid device-code attempts)."};if(P(a)&&/invalid action|invalid[_ ]?code|code (has )?expired|expired code/i.test(l)&&b&&T&&W<3&&Date.now()-V>4e3){W+=1,V=Date.now(),U=0,w("device_invalid_reopen",`Device page error — reopening auth URL (${W}/3)`),await a.goto(b,{waitUntil:"domcontentloaded",timeout:6e4}).catch(()=>null),await C(async()=>await z(a,'button:has-text("Continue"), button:has-text("Allow"), button:has-text("Authorize")')||await _(a),{timeout:4e3,interval:80});continue}let m=!!(T&&D);if(await ac(a,w,{alreadyAuthed:m}))continue;let p=!m&&(!S||Date.now()-S>Z);if(await ag(a,w,{allowGoogleClick:p})){p&&(S=Date.now());continue}if(m&&Date.now()-U>3e3&&await ah(a,w)){U=Date.now();continue}if(await ab(a,w,k))continue;if(I(a)){T=!0;let b=await z(a,e);if(b){let c=Date.now()-D;if(D&&c<X){w("waiting_after_password",`Password already submitted ${Math.round(c/1e3)}s ago — waiting for Google redirect`),await O(a,w,y($?2e3:6e3));continue}if(w("entering_password","Entering Google password"),await F(b,h)){w("submitting_password","Submitting password");let b=a.url?.()||"";await x(a,f),D=Date.now(),await Promise.race([a.waitForNavigation({waitUntil:"domcontentloaded",timeout:$?6e3:1e4}).catch(()=>null),E(a,{fromUrl:b,timeout:$?6e3:1e4}),i.then(()=>null).catch(()=>null)]),await O(a,w,y(aa))}else w("password_fill_failed","Could not fill the Google password field; retrying loop"),await B(100);continue}let g=await z(a,d);if(g){let b=Date.now()-N;if(N&&b<Y){w("waiting_after_email",`Email already submitted ${Math.round(b/1e3)}s ago — waiting for password/next screen`),await E(a,{selector:e,timeout:Math.max(200,Y-b)});continue}w("entering_email","Entering Google email"),await F(g,c)?(w("submitting_email","Submitting email"),await x(a,f),N=Date.now(),await E(a,{selector:e,timeout:$?6e3:1e4})):(w("email_fill_failed","Could not fill the Google email field; retrying loop"),await B(80));continue}}await L(a,w);let t=(()=>{try{let b=new URL(a.url()).hostname||"";return"dash.cloudflare.com"===b||b.endsWith(".cloudflare.com")}catch{return!1}})();if((I(a)||T&&D&&!await _(a)&&!K(a.url?.()||""))&&!K(a.url?.()||"")&&await x(a,g)){w("approving_consent",`Approving Google or ${k} consent`),U=Date.now(),await E(a,{timeout:$?2e3:4e3});continue}if(t&&!T&&await ag(a,w)){S=Date.now();continue}if(Math.floor((Date.now()-v)/5e3)!==Math.floor((Date.now()-v-ad)/5e3)){let b=a.url?.()||"",c=String(l||await G(a).catch(()=>"")).slice(0,100).replace(/\s+/g," ");w("waiting_for_next_screen",`Waiting for the next Google or ${k} screen (url=${b.slice(0,100)} body=${c})`)}else w("waiting_for_next_screen",`Waiting for the next Google or ${k} screen`);await B(ad)}if(await M(a))return w("browser_blocked_by_google","Google blocked browser at end of automation window"),{status:"failed_browser_blocked",error:'Google blocked the automated browser ("This browser or app may not be secure"). Use headed Chromium (Xvfb) or Camoufox engine.'};let ai=a.url?.()||"",aj=String(await G(a).catch(()=>"")).slice(0,120).replace(/\s+/g," ");return w("manual_assist_required",`Flow did not complete ${k} authorization automatically (url=${ai.slice(0,100)} body=${aj})`),{status:"needs_manual",error:`Manual assist required — ${k} authorization did not finish automatically (last url: ${ai.slice(0,140)}). If you see "browser may not be secure", switch to headed Chromium/Camoufox.`}}async function al({page:a,authUrl:b,email:c,password:d,callbackPromise:e,shortTimeoutMs:f=9e4,onStep:g}){return ak({page:a,authUrl:b,email:c,password:d,successPromise:e,shortTimeoutMs:f,serviceLabel:"Kiro",openingStep:"opening_google_oauth",openingMessage:"Opening Google OAuth page",successStep:"kiro_callback_received",successMessage:"Kiro callback received",onStep:g})}let am={waitForFirstVisibleLocator:A,fillInputResilient:F,parseSelectorList:function(a){return String(a||"").split(",").map(a=>a.trim()).filter(Boolean)},getFirstVisibleLocator:z,waitForPageAdvance:E,waitUntil:C,handleXaiDeviceCodeConfirm:ac,GOOGLE_LOGIN_BUTTON_SELECTORS:i,isGrokish:J,dismissCookieBanners:L,clickGoogleLoginRole:ae,isCloudflareLoginUrl:K}},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,KK:()=>d.KK,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,NR:()=>d.NR,OM:()=>d.OM,PX:()=>d.PX,Pb:()=>d.Pb,Pc:()=>d.Pc,QI:()=>d.QI,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,dK:()=>d.dK,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,getQuotaSnapshot:()=>d.LF,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,p3:()=>d.p3,qd:()=>d.qd,r4:()=>d.r4,tV:()=>d.tV,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,uv:()=>d.uv,yF:()=>d.yF,yW:()=>d.yW,yg:()=>d.yg,zP:()=>d.zP,zY:()=>d.zY});var d=c(80601)}};
@@ -1,3 +0,0 @@
1
- exports.id=8242,exports.ids=[8242],exports.modules={43173:(a,b,c)=>{"use strict";c.d(b,{default:()=>m});var d=c(48249),e=c(67484),f=c(49885),g=c.n(f),h=c(2116),i=c.n(h),j=c(50412),k=c(50377);let l=[{icon:"public",title:"Access Anywhere",desc:"Use your API from any network"},{icon:"group",title:"Share Endpoint",desc:"Share URL with team members"},{icon:"code",title:"Use in Cursor/Cline",desc:"Connect AI tools remotely"},{icon:"lock",title:"Encrypted",desc:"End-to-end TLS via Cloudflare"}];function m({machineId:a}){let[b,c]=(0,e.useState)([]),[f,g]=(0,e.useState)(!0),[h,r]=(0,e.useState)(!1),[s,t]=(0,e.useState)(""),[u,v]=(0,e.useState)(null),[w,x]=(0,e.useState)(null),[y,z]=(0,e.useState)(null),[A,B]=(0,e.useState)(null),[C,D]=(0,e.useState)(!1),[E,F]=(0,e.useState)(!0),[G,H]=(0,e.useState)(!0),[I,J]=(0,e.useState)(!1),[K,L]=(0,e.useState)(!0),[M,N]=(0,e.useState)(!1),[O,P]=(0,e.useState)(!1),[Q,R]=(0,e.useState)(""),[S,T]=(0,e.useState)(""),[U,V]=(0,e.useState)(!1),[W,X]=(0,e.useState)(""),[Y,Z]=(0,e.useState)(null),[$,_]=(0,e.useState)(!1),[aa,ab]=(0,e.useState)(!1),[ac,ad]=(0,e.useState)(!1),[ae,af]=(0,e.useState)(!1),[ag,ah]=(0,e.useState)(""),[ai,aj]=(0,e.useState)(!1),[ak,al]=(0,e.useState)(""),[am,an]=(0,e.useState)(null),[ao,ap]=(0,e.useState)(""),[aq,ar]=(0,e.useState)(""),[as,at]=(0,e.useState)(null),[au,av]=(0,e.useState)(!1),[aw,ax]=(0,e.useState)([]),[ay,az]=(0,e.useState)(""),[aA,aB]=(0,e.useState)(!1),[aC,aD]=(0,e.useState)(!1),[aE,aF]=(0,e.useState)(!1),aG=(0,e.useRef)(null);(0,e.useRef)(0),(0,e.useRef)(0),(0,e.useRef)(!1),(0,e.useRef)(!1),(0,e.useRef)(!1),(0,e.useRef)(!1);let[aH,aI]=(0,e.useState)(!1),[aJ,aK]=(0,e.useState)(!1),[aL,aM]=(0,e.useState)(!1),{copied:aN,copy:aO}=(0,k.C)(),aP=!E||!G,aQ=E?"Change the default dashboard password before activating the tunnel.":'Enable "Require login" and set a custom password before activating the tunnel.';(0,e.useCallback)((a,b,c,d,e,f)=>{b.current?(c.current=0,d(!0),e.current||(e.current=!0,f(!0))):(c.current+=1,c.current>=5&&d(!1))},[]);let aR=async a=>{try{(await fetch("/api/settings",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({tunnelDashboardAccess:a})})).ok&&J(a)}catch(a){console.log("Error updating tunnelDashboardAccess:",a)}},aS=async a=>{try{(await fetch("/api/settings",{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify({requireApiKey:a})})).ok&&D(a)}catch(a){console.log("Error updating requireApiKey:",a)}},aT=async()=>{try{let a=await fetch("/api/keys"),b=await a.json();a.ok&&c(b.keys||[])}catch(a){console.log("Error fetching data:",a)}finally{g(!1)}},aU=async(...a)=>{V(!0),X("Waiting for tunnel ready...");let b=a.filter(Boolean).map(a=>`${a}/api/health`),c=Date.now();for(;Date.now()-c<3e5;){if(await new Promise(a=>setTimeout(a,2e3)),await Promise.any(b.map(async a=>{if((await fetch(a,{mode:"cors",cache:"no-store"})).ok)return!0;throw Error("not ready")})).catch(()=>!1))return N(!0),V(!1),X(""),!0;if((Date.now()-c)%1e4<2e3)try{let a=await fetch("/api/tunnel/status");if(a.ok){let b=await a.json();if(!b.tunnel?.enabled)return Z({type:"error",message:"Tunnel process stopped unexpectedly."}),V(!1),X(""),!1}}catch{}}return Z({type:"error",message:"Tunnel created but not reachable. Please try again."}),V(!1),X(""),!1},aV=async()=>{_(!1),V(!0),Z(null),X("Creating tunnel...");let a=!0;(async()=>{for(;a;){try{let b=await fetch("/api/tunnel/status");if(b.ok){let c=await b.json();c.download?.downloading?X(`Downloading cloudflared... ${c.download.progress}%`):a&&X("Creating tunnel...")}}catch{}await new Promise(a=>setTimeout(a,1e3))}})();try{let b=await fetch("/api/tunnel/enable",{method:"POST"});a=!1;let c=await b.json();if(!b.ok)return void Z({type:"error",message:c.error||"Failed to enable tunnel"});let d=c.tunnelUrl;if(!d)return void Z({type:"error",message:"No tunnel URL returned"});R(d),T(c.publicUrl||""),await aU(c.publicUrl,d)}catch(a){Z({type:"error",message:a.message})}finally{a=!1,V(!1),X("")}},aW=async()=>{V(!0),Z(null);try{let a=await fetch("/api/tunnel/disable",{method:"POST"}),b=await a.json();a.ok?(N(!1),R(""),ab(!1),Z({type:"success",message:"Tunnel disabled"})):Z({type:"error",message:b.error||"Failed to disable tunnel"})}catch(a){Z({type:"error",message:a.message})}finally{V(!1)}},aX=async()=>{at(null);try{let a=await fetch("/api/tunnel/tailscale-check");if(a.ok){let b=await a.json();return at(b.installed),b}}catch{}return at(!1),{installed:!1}},aY=async()=>{av(!0),an(null),ax([]);try{let a=await fetch("/api/tunnel/tailscale-install",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sudoPassword:ay})});az("");let b=a.body.getReader(),c=new TextDecoder,d="";for(;;){let{done:a,value:e}=await b.read();if(a)break;let f=(d+=c.decode(e,{stream:!0})).split("\n\n");for(let a of(d=f.pop()||"",f)){let b=a.split("\n"),c="progress",d=null;for(let a of b)if(a.startsWith("event: ")&&(c=a.slice(7).trim()),a.startsWith("data: "))try{d=JSON.parse(a.slice(6))}catch{}if(d)if("progress"===c)ax(a=>[...a.slice(-50),d.message]);else if("done"===c){at(!0),av(!1),aD(!1),a0();return}else"error"===c&&an({type:"error",message:d.error||"Install failed"})}}}catch(a){an({type:"error",message:a.message})}finally{av(!1)}},aZ=async a=>{al("Waiting for Tailscale ready...");let b=`${a}/api/health`,c=Date.now();for(;Date.now()-c<3e5;){await new Promise(a=>setTimeout(a,2e3));try{let a=await fetch(b,{mode:"no-cors",cache:"no-store"});if(a.ok||"opaque"===a.type)return!0}catch{}}return!1},a$=(a,b)=>{ap(a),ar(b)},a_=()=>{ap(""),ar("")},a0=async()=>{aD(!1),aB(!0),aj(!0),an(null),al("Connecting..."),a_();try{let a=await fetch("/api/tunnel/tailscale-enable",{method:"POST"}),b=await a.json();if(a.ok&&b.success){ah(b.tunnelUrl||"");let a=await aZ(b.tunnelUrl);ad(!0),an(a?null:{type:"warning",message:"Connected but not reachable yet."});return}if(b.needsLogin&&b.authUrl){a$(b.authUrl,"Open Login Page"),al('Login required — click "Open Login Page" to continue');for(let a=0;a<40;a++){await new Promise(a=>setTimeout(a,3e3));try{let a=await fetch("/api/tunnel/tailscale-check");if(a.ok&&(await a.json()).loggedIn){a_(),al("Starting funnel...");let a=await fetch("/api/tunnel/tailscale-enable",{method:"POST"}),b=await a.json();if(a.ok&&b.success){ah(b.tunnelUrl||"");let a=await aZ(b.tunnelUrl);ad(!0),an(a?null:{type:"warning",message:"Connected but not reachable yet."})}else b.funnelNotEnabled&&b.enableUrl?await a1(b.enableUrl):an({type:"error",message:b.error||"Failed to start funnel"});return}}catch{}}a_(),an({type:"error",message:"Login timed out. Please try again."});return}if(b.funnelNotEnabled&&b.enableUrl)return void await a1(b.enableUrl);an({type:"error",message:b.error||"Failed to connect"})}catch(a){an({type:"error",message:a.message})}finally{aj(!1),aB(!1),al(""),a_()}},a1=async a=>{a$(a,"Open Funnel Settings"),al('Click "Open Funnel Settings" to enable Funnel...');for(let a=0;a<40;a++){await new Promise(a=>setTimeout(a,3e3));try{let a=await fetch("/api/tunnel/tailscale-enable",{method:"POST"}),b=await a.json();if(a.ok&&b.success){a_(),ah(b.tunnelUrl||"");let a=await aZ(b.tunnelUrl);ad(!0),an(a?null:{type:"warning",message:"Connected but not reachable yet."});return}if(b.funnelNotEnabled)continue;if(b.error){a_(),an({type:"error",message:b.error});return}}catch{}}a_(),an({type:"error",message:"Timed out waiting for Funnel to be enabled."})},a2=async()=>{aj(!0),an(null);try{let a=await fetch("/api/tunnel/tailscale-disable",{method:"POST"}),b=await a.json();a.ok?(ad(!1),ah(""),aF(!1),an({type:"success",message:"Tailscale disabled"})):an({type:"error",message:b.error||"Failed to disable Tailscale"})}catch(a){an({type:"error",message:a.message})}finally{aj(!1)}},a3=async()=>{an(null),ax([]);let a=await aX();a?.installed&&a?.hasCachedPassword?a0():aD(!0)},a4=async a=>{if(a.preventDefault(),s.trim()&&!y){z("create"),B(null);try{let a=await fetch("/api/keys",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({name:s})}),b=await a.json();if(!a.ok)throw Error(b.error||`Failed to create key (${a.status})`);v(b.key),await aT(),t(""),r(!1),B({type:"success",message:"API key created"})}catch(a){B({type:"error",message:a.message})}finally{z(null)}}},a5=async(a,b)=>{if(!y){z(`toggle:${a}`),B(null);try{let d=await fetch(`/api/keys/${a}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({isActive:b})});if(!d.ok)throw Error(`Failed to update key (${d.status})`);c(c=>c.map(c=>c.id===a?{...c,isActive:b}:c)),B({type:"success",message:"API key updated"})}catch(a){B({type:"error",message:a.message})}finally{z(null)}}},a6=async(a,b,d)=>{if(y)return;let e=""===d?0:Math.max(0,Number(d)||0);z(`budget:${a}`),B(null);try{let d=await fetch(`/api/keys/${a}`,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify({[b]:e})});if(!d.ok)throw Error(`Failed to update budget (${d.status})`);c(c=>c.map(c=>c.id===a?{...c,[b]:e}:c)),B({type:"success",message:"Budget updated"})}catch(a){B({type:"error",message:a.message})}finally{z(null)}},[a7,a8]=(0,e.useState)("/v1");return f?(0,d.jsxs)("div",{className:"flex flex-col gap-6 lg:gap-7",children:[(0,d.jsx)(j.Qv,{}),(0,d.jsx)(j.Qv,{})]}):(0,d.jsxs)("div",{className:"flex flex-col gap-6 lg:gap-7",children:[(0,d.jsxs)(j.Zp,{children:[(0,d.jsxs)("h2",{className:"text-lg font-semibold mb-4 flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary",children:"api"}),"API Endpoint"]}),(0,d.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,d.jsx)(n,{label:"Local",url:a7,copyId:"local_url",copied:aN,onCopy:aO}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:`text-xs font-mono px-1.5 py-0.5 rounded shrink-0 min-w-[88px] text-center ${M?"bg-primary/10 text-primary":"bg-surface-2 text-text-muted"}`,children:"Tunnel"}),M&&!U&&O?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(j.pd,{"aria-label":"Cloudflare Tunnel endpoint URL",value:`${S||Q}/v1`,readOnly:!0,className:"flex-1 font-mono text-sm"}),(0,d.jsx)("button",{onClick:()=>aO(`${S||Q}/v1`,"tunnel_url"),className:"p-2 hover:bg-black/5 dark:hover:bg-white/5 rounded text-text-muted hover:text-primary transition-colors shrink-0",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px]",children:"tunnel_url"===aN?"check":"content_copy"})}),(0,d.jsx)("button",{onClick:()=>ab(!0),className:"p-2 hover:bg-red-500/10 rounded text-red-500 transition-colors shrink-0",title:"Disable Tunnel",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px]",children:"power_settings_new"})})]}):!M||U||O?U?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"flex-1 flex items-center gap-2 px-3 py-1.5 rounded border border-border bg-input text-sm text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined animate-spin text-sm",children:"progress_activity"}),W||"Creating tunnel..."]}),(0,d.jsx)("button",{onClick:()=>{V(!1),X("")},className:"p-2 hover:bg-red-500/10 rounded text-red-500 transition-colors shrink-0",title:"Stop",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px]",children:"power_settings_new"})})]}):Y?.type==="error"?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"flex-1 flex items-center gap-2 px-3 py-1.5 rounded border border-red-300 dark:border-red-800 bg-red-500/5 text-sm text-red-600 dark:text-red-400",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-sm",children:"error"}),Y.message]}),(0,d.jsx)(j.$n,{size:"sm",icon:"cloud_upload",onClick:()=>_(!0),children:"Enable"})]}):K?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"flex-1 flex items-center gap-2 px-3 py-1.5 rounded border border-border bg-input text-sm text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined animate-spin text-sm",children:"progress_activity"}),"Checking..."]}),(0,d.jsx)("button",{onClick:()=>L(!1),className:"p-2 hover:bg-red-500/10 rounded text-red-500 transition-colors shrink-0",title:"Stop",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px]",children:"power_settings_new"})})]}):(0,d.jsx)(j.$n,{size:"sm",icon:"cloud_upload",onClick:()=>{aP?Z({type:"error",message:`Security required: ${aQ}`}):C?_(!0):Z({type:"error",message:'Security required: Enable "Require API key" before activating the tunnel.'})},children:"Enable"}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"flex-1 flex items-center gap-2 px-3 py-1.5 rounded border border-amber-300 dark:border-amber-800 bg-amber-500/5 text-sm text-amber-600 dark:text-amber-400",children:[(0,d.jsx)("span",{className:"material-symbols-outlined animate-spin text-sm",children:"progress_activity"}),aH?"Tunnel reconnecting...":"Tunnel checking..."]}),(0,d.jsx)("button",{onClick:()=>ab(!0),className:"p-2 hover:bg-red-500/10 rounded text-red-500 transition-colors shrink-0",title:"Disable Tunnel",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px]",children:"power_settings_new"})})]})]}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:`text-xs font-mono px-1.5 py-0.5 rounded shrink-0 min-w-[88px] text-center ${ac?"bg-primary/10 text-primary":"bg-surface-2 text-text-muted"}`,children:"Tailscale"}),ac&&!ai&&ae?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(j.pd,{"aria-label":"Tailscale endpoint URL",value:`${ag}/v1`,readOnly:!0,className:"flex-1 font-mono text-sm"}),(0,d.jsx)("button",{onClick:()=>aO(`${ag}/v1`,"ts_url"),className:"p-2 hover:bg-black/5 dark:hover:bg-white/5 rounded text-text-muted hover:text-primary transition-colors shrink-0",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px]",children:"ts_url"===aN?"check":"content_copy"})}),(0,d.jsx)("button",{onClick:()=>aF(!0),className:"p-2 hover:bg-red-500/10 rounded text-red-500 transition-colors shrink-0",title:"Disable Tailscale",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px]",children:"power_settings_new"})})]}):!ac||ai||ae?ai||aA?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"flex-1 flex items-center gap-2 px-3 py-1.5 rounded border border-border bg-input text-sm text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined animate-spin text-sm",children:"progress_activity"}),ak||"Connecting..."]}),ao&&(0,d.jsx)(j.$n,{size:"sm",icon:"open_in_new",onClick:()=>window.open(ao,"tailscale_auth","width=600,height=700,noopener,noreferrer"),children:aq||"Open"}),(0,d.jsx)("button",{onClick:()=>{aj(!1),aB(!1),al(""),a_()},className:"p-2 hover:bg-red-500/10 rounded text-red-500 transition-colors shrink-0",title:"Stop",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px]",children:"power_settings_new"})})]}):am?.type==="error"?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"flex-1 flex items-center gap-2 px-3 py-1.5 rounded border border-red-300 dark:border-red-800 bg-red-500/5 text-sm text-red-600 dark:text-red-400",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-sm",children:"error"}),am.message]}),(0,d.jsx)(j.$n,{size:"sm",icon:"vpn_lock",onClick:a3,children:"Enable"})]}):(0,d.jsx)(j.$n,{size:"sm",icon:"vpn_lock",onClick:()=>{aP?an({type:"error",message:`Security required: ${aQ}`}):a3()},className:"bg-linear-to-r from-indigo-500 to-purple-500 hover:from-indigo-600 hover:to-purple-600 text-white!",children:"Enable"}):(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"flex-1 flex items-center gap-2 px-3 py-1.5 rounded border border-amber-300 dark:border-amber-800 bg-amber-500/5 text-sm text-amber-600 dark:text-amber-400",children:[(0,d.jsx)("span",{className:"material-symbols-outlined animate-spin text-sm",children:"progress_activity"}),aJ?"Tailscale reconnecting...":"Tailscale checking..."]}),(0,d.jsx)("button",{onClick:()=>aF(!0),className:"p-2 hover:bg-red-500/10 rounded text-red-500 transition-colors shrink-0",title:"Disable Tailscale",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px]",children:"power_settings_new"})})]})]})]}),aP&&!M&&!ac&&(0,d.jsx)("div",{className:"mt-4",children:(0,d.jsx)(q,{message:aQ,action:{label:"Open settings",href:"/dashboard/profile"}})}),(M||ac)&&(0,d.jsxs)("div",{className:"mt-4 flex flex-col gap-2",children:[!C&&(0,d.jsx)(q,{message:"Require API key is disabled — your endpoint is publicly accessible without authentication.",action:{label:"Enable",href:"#require-api-key"}}),(!E||!G)&&(0,d.jsx)(q,{message:E?"Dashboard uses the default password — change it in Profile settings.":"Require login is disabled — anyone can access your dashboard via tunnel.",action:{label:E?"Change password":"Enable",href:"/dashboard/profile"}})]}),(M||ac)&&(0,d.jsxs)("div",{className:"mt-4 pt-4 border-t border-border flex items-center gap-3",children:[(0,d.jsx)(j.lM,{label:"Allow dashboard access via tunnel",checked:I,onChange:()=>aR(!I)}),(0,d.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,d.jsx)("p",{className:"font-medium text-sm",children:"Allow dashboard access via tunnel"}),(0,d.jsx)(p,{text:"When enabled, the dashboard can be accessed through your tunnel or Tailscale URL (login still required). When disabled, dashboard access via tunnel/Tailscale is completely blocked."})]})]})]}),(0,d.jsx)(j.Zp,{id:"rtk",children:(0,d.jsxs)("div",{className:"flex items-center justify-between gap-4",children:[(0,d.jsxs)("div",{className:"min-w-0",children:[(0,d.jsxs)("h2",{className:"text-lg font-semibold flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary",children:"bolt"}),"Token Saver"]}),(0,d.jsx)("p",{className:"text-sm text-text-muted mt-1",children:"RTK, Caveman, Ponytail, Headroom, and PXPIPE live on the Token Saver page."})]}),(0,d.jsxs)(i(),{href:"/dashboard/token-saver",className:"shrink-0 inline-flex items-center gap-1.5 rounded-lg border border-border px-3 py-2 text-sm font-medium text-text-main hover:border-primary/40 hover:text-primary transition-colors",children:["Open",(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px]",children:"arrow_forward"})]})]})}),(0,d.jsxs)(j.Zp,{id:"require-api-key",children:[(0,d.jsxs)("div",{className:"flex items-center justify-between mb-4",children:[(0,d.jsxs)("h2",{className:"text-lg font-semibold flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary",children:"vpn_key"}),"API Keys"]}),(0,d.jsx)(j.$n,{icon:"add",onClick:()=>r(!0),children:"Create Key"})]}),A&&(0,d.jsx)("p",{role:"status",className:`mb-4 text-sm ${"error"===A.type?"text-red-500":"text-green-500"}`,children:A.message}),(0,d.jsxs)("div",{className:"flex flex-wrap items-center justify-between gap-3 pb-4 mb-4 border-b border-border",children:[(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"font-medium",children:"Require API key"}),(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"Requests without a valid key will be rejected"})]}),(0,d.jsx)(j.lM,{label:"Require API key",checked:C,onChange:()=>aS(!C)})]}),aL&&!C&&(0,d.jsx)("div",{className:"mb-4 -mt-2",children:(0,d.jsx)(q,{message:"Endpoint is exposed without an API key."})}),0===b.length?(0,d.jsxs)("div",{className:"text-center py-12",children:[(0,d.jsx)("div",{className:"inline-flex items-center justify-center w-16 h-16 rounded-full bg-primary/10 text-primary mb-4",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[32px]",children:"vpn_key"})}),(0,d.jsx)("p",{className:"text-text-main font-medium mb-1",children:"No API keys yet"}),(0,d.jsx)("p",{className:"text-sm text-text-muted mb-4",children:"Create your first API key to get started"}),(0,d.jsx)(j.$n,{icon:"add",onClick:()=>r(!0),children:"Create Key"})]}):(0,d.jsx)("div",{className:"flex flex-col",children:b.map(a=>{var b;return(0,d.jsxs)("div",{className:`group flex flex-wrap items-center justify-between gap-3 py-3 border-b border-black/[0.03] dark:border-white/[0.03] last:border-b-0 ${!1===a.isActive?"opacity-60":""}`,children:[(0,d.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,d.jsx)("p",{className:"text-sm font-medium",children:a.name}),(0,d.jsx)("div",{className:"flex items-center gap-2 mt-1",children:(0,d.jsx)("code",{className:"text-xs text-text-muted font-mono",children:a.maskedKey||((b=a.key)?b.length>8?b.slice(0,8)+"...":b:"")})}),(0,d.jsxs)("p",{className:"text-xs text-text-muted mt-1",children:["Created ",new Date(a.createdAt).toLocaleDateString()]}),!1===a.isActive&&(0,d.jsx)("p",{className:"text-xs text-orange-500 mt-1",children:"Paused"}),(0,d.jsxs)("div",{className:"flex items-center gap-3 mt-2",children:[(0,d.jsxs)("label",{className:"flex items-center gap-1 text-[11px] text-text-muted",children:["Daily $",(0,d.jsx)("input",{type:"number",min:"0",step:"0.01",disabled:y===`budget:${a.id}`,defaultValue:a.budgetDaily||0,onBlur:b=>a6(a.id,"budgetDaily",b.target.value),className:"w-16 px-1 py-0.5 text-[11px] bg-transparent border border-border rounded",title:"Daily budget cap in USD (0 = unlimited)"})]}),(0,d.jsxs)("label",{className:"flex items-center gap-1 text-[11px] text-text-muted",children:["Monthly $",(0,d.jsx)("input",{type:"number",min:"0",step:"0.01",disabled:y===`budget:${a.id}`,defaultValue:a.budgetMonthly||0,onBlur:b=>a6(a.id,"budgetMonthly",b.target.value),className:"w-16 px-1 py-0.5 text-[11px] bg-transparent border border-border rounded",title:"Monthly budget cap in USD (0 = unlimited)"})]})]})]}),(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)(j.lM,{size:"sm",disabled:y===`toggle:${a.id}`,checked:a.isActive??!0,onChange:b=>{a.isActive&&!b?x({title:"Pause API Key",message:`Pause API key "${a.name}"?
2
-
3
- This key will stop working immediately but can be resumed later.`,onConfirm:async()=>{x(null),a5(a.id,b)}}):a5(a.id,b)},title:a.isActive?"Pause key":"Resume key"}),(0,d.jsx)("button",{disabled:y===`delete:${a.id}`,onClick:()=>{var b;return b=a.id,void(!y&&x({title:"Delete API Key",message:"Delete this API key?",onConfirm:async()=>{x(null),z(`delete:${b}`),B(null);try{let a=await fetch(`/api/keys/${b}`,{method:"DELETE"});if(!a.ok)throw Error(`Failed to delete key (${a.status})`);c(a=>a.filter(a=>a.id!==b)),setVisibleKeys(a=>{let c=new Set(a);return c.delete(b),c}),B({type:"success",message:"API key deleted"})}catch(a){B({type:"error",message:a.message})}finally{z(null)}}}))},className:"p-2 hover:bg-red-500/10 rounded text-red-500 opacity-100 sm:opacity-0 sm:group-hover:opacity-100 transition-all",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px]",children:"delete"})})]})]},a.id)})})]}),(0,d.jsx)(j.aF,{isOpen:h,title:"Create API Key",onClose:()=>{r(!1),t("")},children:(0,d.jsxs)("form",{className:"flex flex-col gap-4",onSubmit:a4,children:[(0,d.jsx)(j.pd,{label:"Key Name",value:s,onChange:a=>t(a.target.value),placeholder:"Production Key"}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(j.$n,{type:"submit",fullWidth:!0,disabled:!s.trim()||"create"===y,children:"create"===y?"Creating...":"Create"}),(0,d.jsx)(j.$n,{type:"button",onClick:()=>{r(!1),t("")},variant:"ghost",fullWidth:!0,children:"Cancel"})]})]})}),(0,d.jsx)(j.aF,{isOpen:!!u,title:"API Key Created",onClose:()=>v(null),children:(0,d.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,d.jsxs)("div",{className:"bg-yellow-50 dark:bg-yellow-900/20 border border-yellow-200 dark:border-yellow-800 rounded-lg p-4",children:[(0,d.jsx)("p",{className:"text-sm text-yellow-800 dark:text-yellow-200 mb-2 font-medium",children:"Save this key now!"}),(0,d.jsx)("p",{className:"text-sm text-yellow-700 dark:text-yellow-300",children:"This is the only time you will see this key. Store it securely."})]}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(j.pd,{value:u||"",readOnly:!0,className:"flex-1 font-mono text-sm"}),(0,d.jsx)(j.$n,{variant:"secondary",icon:"created_key"===aN?"check":"content_copy",onClick:()=>aO(u,"created_key"),children:"created_key"===aN?"Copied!":"Copy"})]}),(0,d.jsx)(j.$n,{onClick:()=>v(null),fullWidth:!0,children:"Done"})]})}),(0,d.jsx)(j.aF,{isOpen:$,title:"Enable Tunnel",onClose:()=>_(!1),children:(0,d.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,d.jsx)("div",{className:"bg-surface-2 border border-border-subtle rounded-lg p-4",children:(0,d.jsxs)("div",{className:"flex items-start gap-3",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-primary",children:"cloud_upload"}),(0,d.jsxs)("div",{children:[(0,d.jsx)("p",{className:"text-sm text-text-main font-medium mb-1",children:"Cloudflare Tunnel"}),(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"Expose your local ZevaiRouter to the internet. No port forwarding, no static IP needed. Share endpoint URL with your team or use it in Cursor, Cline, and other AI tools from anywhere."})]})]})}),(0,d.jsx)("div",{className:"grid grid-cols-2 gap-3",children:l.map(a=>(0,d.jsxs)("div",{className:"flex flex-col items-center text-center p-3 rounded-lg bg-sidebar/50",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-xl text-primary mb-1",children:a.icon}),(0,d.jsx)("p",{className:"text-xs font-semibold",children:a.title}),(0,d.jsx)("p",{className:"text-xs text-text-muted",children:a.desc})]},a.title))}),(0,d.jsx)("p",{className:"text-xs text-text-muted",children:"Requires outbound port 7844 (TCP/UDP). Connection may take 10-30s."}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(j.$n,{onClick:aV,fullWidth:!0,children:"Start Tunnel"}),(0,d.jsx)(j.$n,{onClick:()=>_(!1),variant:"ghost",fullWidth:!0,children:"Cancel"})]})]})}),(0,d.jsx)(j.aF,{isOpen:aa,title:"Disable Tunnel",onClose:()=>!U&&ab(!1),children:(0,d.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"The Cloudflare tunnel will be disconnected. Remote access via tunnel URL will stop working."}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(j.$n,{onClick:aW,fullWidth:!0,disabled:U,variant:"danger",children:U?"Disabling...":"Disable"}),(0,d.jsx)(j.$n,{onClick:()=>ab(!1),variant:"ghost",fullWidth:!0,disabled:U,children:"Cancel"})]})]})}),(0,d.jsx)(j.aF,{isOpen:aC,title:"Tailscale Funnel",onClose:()=>{au||(aD(!1),az(""),an(null))},children:(0,d.jsxs)("div",{className:"flex flex-col gap-4",children:[null===as&&(0,d.jsxs)("p",{className:"text-sm text-text-muted flex items-center gap-2",children:[(0,d.jsx)("span",{className:"material-symbols-outlined animate-spin text-sm",children:"progress_activity"}),"Checking..."]}),!1===as&&!au&&(0,d.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"Tailscale is not installed. Install it to enable Funnel."}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(j.$n,{onClick:aY,fullWidth:!0,children:"Install Tailscale"}),(0,d.jsx)(j.$n,{onClick:()=>aD(!1),variant:"ghost",fullWidth:!0,children:"Cancel"})]})]}),au&&(0,d.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 text-sm text-text-muted",children:[(0,d.jsx)("span",{className:"material-symbols-outlined animate-spin text-sm",children:"progress_activity"}),"Installing Tailscale..."]}),aw.length>0&&(0,d.jsx)("div",{ref:aG,className:"bg-black/5 dark:bg-white/5 rounded p-2 max-h-40 overflow-y-auto font-mono text-xs text-text-muted",children:aw.map((a,b)=>(0,d.jsx)("div",{children:a},b))})]}),!0===as&&!au&&(0,d.jsxs)("div",{className:"flex flex-col gap-3",children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 text-sm text-green-600 dark:text-green-400",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px]",children:"check_circle"}),"Tailscale installed"]}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(j.$n,{onClick:()=>a0(),fullWidth:!0,children:"Connect"}),(0,d.jsx)(j.$n,{onClick:()=>aD(!1),variant:"ghost",fullWidth:!0,children:"Cancel"})]})]}),am&&(0,d.jsx)(o,{status:am})]})}),(0,d.jsx)(j.aF,{isOpen:aE,title:"Disable Tailscale",onClose:()=>!ai&&aF(!1),children:(0,d.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,d.jsx)("p",{className:"text-sm text-text-muted",children:"Tailscale Funnel will be stopped. Remote access via Tailscale URL will stop working."}),(0,d.jsxs)("div",{className:"flex gap-2",children:[(0,d.jsx)(j.$n,{onClick:a2,fullWidth:!0,disabled:ai,variant:"danger",children:ai?"Disabling...":"Disable"}),(0,d.jsx)(j.$n,{onClick:()=>aF(!1),variant:"ghost",fullWidth:!0,disabled:ai,children:"Cancel"})]})]})}),(0,d.jsx)(j.uo,{isOpen:!!w,onClose:()=>x(null),onConfirm:w?.onConfirm,title:w?.title||"Confirm",message:w?.message,variant:"danger"})]})}function n({label:a,url:b,copyId:c,copied:e,onCopy:f,badge:g,actions:h}){return(0,d.jsxs)("div",{className:"flex items-center gap-2",children:[(0,d.jsx)("span",{className:`text-xs font-mono px-1.5 py-0.5 rounded shrink-0 min-w-[88px] text-center ${"CF"===g||"TS"===g?"bg-primary/10 text-primary":"bg-surface-2 text-text-muted"}`,children:a}),(0,d.jsx)(j.pd,{"aria-label":`${a} endpoint URL`,value:b,readOnly:!0,className:"flex-1 font-mono text-sm"}),(0,d.jsx)("button",{onClick:()=>f(b,c),className:"p-2 hover:bg-black/5 dark:hover:bg-white/5 rounded text-text-muted hover:text-primary transition-colors shrink-0",children:(0,d.jsx)("span",{className:"material-symbols-outlined text-[18px]",children:e===c?"check":"content_copy"})}),h]})}function o({status:a,className:b=""}){return(0,d.jsx)("div",{className:`p-2 rounded text-sm ${b} ${"success"===a.type?"bg-green-500/10 text-green-600 dark:text-green-400":"warning"===a.type?"bg-yellow-500/10 text-yellow-600 dark:text-yellow-400":"info"===a.type?"bg-blue-500/10 text-blue-600 dark:text-blue-400":"bg-red-500/10 text-red-600 dark:text-red-400"}`,children:a.message.split(/(https?:\/\/[^\s]+)/g).map((a,b)=>/^https?:\/\//.test(a)?(0,d.jsx)("a",{href:a,target:"_blank",rel:"noreferrer",className:"underline font-medium",children:a},b):a)})}function p({text:a}){return(0,d.jsxs)("span",{className:"relative group inline-flex items-center",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[14px] text-text-muted cursor-help",children:"help"}),(0,d.jsx)("span",{className:"pointer-events-none absolute left-5 top-1/2 -translate-y-1/2 z-50 w-64 rounded bg-gray-900 dark:bg-gray-800 text-white text-xs px-2.5 py-1.5 opacity-0 group-hover:opacity-100 transition-opacity shadow-lg",children:a})]})}function q({message:a,action:b}){return(0,d.jsxs)("div",{className:"flex items-center gap-2 px-3 py-2 rounded-lg bg-amber-500/10 border border-amber-500/20 text-amber-700 dark:text-amber-400",children:[(0,d.jsx)("span",{className:"material-symbols-outlined text-[16px] shrink-0 mt-0.5",children:"warning"}),(0,d.jsx)("p",{className:"text-xs flex-1",children:a}),b&&(0,d.jsx)("a",{href:b.href,className:"text-xs font-medium underline shrink-0 hover:opacity-80",onClick:b.href.startsWith("#")?a=>{a.preventDefault(),document.getElementById(b.href.slice(1))?.scrollIntoView({behavior:"smooth"})}:void 0,children:b.label})]})}m.propTypes={machineId:g().string.isRequired}},51747:(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 \"/Users/firda/zevairouter/src/app/(dashboard)/dashboard/endpoint/EndpointPageClient.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.")},"/Users/firda/zevairouter/src/app/(dashboard)/dashboard/endpoint/EndpointPageClient.js","default")},71885:(a,b,c)=>{Promise.resolve().then(c.bind(c,51747))},87250:(a,b,c)=>{"use strict";c.d(b,{D:()=>e});var d=c(54603);async function e(){return await (0,d.Xj)()}},95853:(a,b,c)=>{Promise.resolve().then(c.bind(c,43173))}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=8255,exports.ids=[8255],exports.modules={2574:(a,b,c)=>{c.r(b),c.d(b,{GET:()=>v,OPTIONS:()=>u,buildModelsList:()=>t});var d=c(81329),e=c(75681),f=c(89718),g=c(16655),h=c(29679),i=c(53225),j=c(52007),k=c(28948),l=c(84534),m=c(3359);let n={kiro:async a=>{let b=await (0,h.cW)({accessToken:a.accessToken,refreshToken:a.refreshToken,providerSpecificData:a.providerSpecificData||{}},{log:console});return b?.models?.length?{models:b.models}:null},qoder:async a=>{let b=await (0,i.EV)({accessToken:a.accessToken,refreshToken:a.refreshToken,email:a.email,displayName:a.displayName,providerSpecificData:a.providerSpecificData||{}});return b?.models?.length?{models:b.models.map(a=>({id:a.id,name:a.name}))}:null},kimchi:async a=>{let b=await (0,j.av)({accessToken:a.accessToken,apiKey:a.apiKey,providerSpecificData:a.providerSpecificData||{}},{log:console});return b?.models?.length?{models:b.models}:null},clinepass:async a=>{let b=await (0,k.P)({accessToken:a.accessToken,apiKey:a.apiKey});return b?.models?.length?{models:b.models}:null},cline:async a=>{let b=a.apiKey||a.accessToken;if(!b)return null;try{let{buildClineHeaders:a}=await Promise.resolve().then(c.bind(c,15626)),d=await fetch("https://api.cline.bot/api/v1/models",{headers:a(b,{Accept:"application/json"})});if(!d.ok)return null;let e=await d.json(),f=Array.isArray(e)?e:e?.data;if(!Array.isArray(f)||0===f.length)return null;let g=f.filter(a=>"string"==typeof a?.id).map(a=>({id:a.id,name:a.name||a.id}));return g.length?{models:g}:null}catch{return null}},github:async a=>{let b=await (0,l.v)({accessToken:a.accessToken,refreshToken:a.refreshToken,providerSpecificData:a.providerSpecificData||{}},{log:console});return b?.models?.length?{models:b.models}:null}},o=/[-_][0-9a-f]{8,}$/i,p={image:"image",tts:"tts",embedding:"embedding",stt:"stt",imageToText:"imageToText"};function q(a){return a?.type&&p[a.type]||"llm"}async function r(a){if(!a?.apiKey)return[];let b="string"==typeof a?.providerSpecificData?.baseUrl?a.providerSpecificData.baseUrl.trim().replace(/\/$/,""):"";if(!b)return[];let c=`${b}/models`,d={"Content-Type":"application/json"};if((0,e.mq)(a.provider))d.Authorization=`Bearer ${a.apiKey}`;else{if(!(0,e.gb)(a.provider))return[];c.endsWith("/messages/models")?c=c.slice(0,-9):c.endsWith("/messages")&&(c=`${c.slice(0,-9)}/models`),d["x-api-key"]=a.apiKey,d["anthropic-version"]="2023-06-01",d.Authorization=`Bearer ${a.apiKey}`}try{var f;let a=new AbortController,b=setTimeout(()=>a.abort(),5e3),e=await fetch(c,{method:"GET",headers:d,cache:"no-store",signal:a.signal});if(clearTimeout(b),!e.ok)return[];let g=(f=await e.json(),Array.isArray(f)?f:f?.data||f?.models||f?.results||[]);return Array.from(new Set(g.map(a=>a?.id||a?.name||a?.model).filter(a=>"string"==typeof a&&""!==a.trim())))}catch{return[]}}function s(a,b){let c=e.AI_PROVIDERS[a],d=Array.isArray(c?.serviceKinds)&&c.serviceKinds.length>0?c.serviceKinds:["llm"];return b.some(a=>d.includes(a))}async function t(a){let b=[];try{b=(b=await (0,f.getProviderConnections)()).filter(a=>!1!==a.isActive)}catch(a){console.log("Could not fetch providers, returning all models")}let c=[];try{c=await (0,f.Uv)()}catch(a){console.log("Could not fetch combos")}let h=[];try{h=await (0,f.uv)()}catch(a){console.log("Could not fetch custom models")}let i={};try{i=await (0,f.OM)()}catch(a){console.log("Could not fetch model aliases")}let j={};try{j=await (0,g.vF)()}catch(a){console.log("Could not fetch disabled models")}let k=(a,b)=>Array.isArray(j[a])&&j[a].includes(b),l=new Map;for(let a of b)l.has(a.provider)||l.set(a.provider,a);let p=[];for(let b of c){if(!function(a,b){let c=a?.kind||"llm";return b.includes(c)}(b,a))continue;let c={id:b.name,object:"model",owned_by:"combo"};("webSearch"===b.kind||"webFetch"===b.kind)&&(c.kind=b.kind),p.push(c)}if(0===b.length){let b=Object.fromEntries(Object.entries(d.Xg).map(([a,b])=>[b,a]));for(let[c,e]of Object.entries(d.vq))if(s(b[c]||c,a))for(let b of e)a.includes(q(b))&&(k(c,b.id)||p.push({id:`${c}/${b.id}`,object:"model",owned_by:c}));for(let b of h){if(!b?.id||b.type&&"llm"!==b.type||!a.includes("llm"))continue;let c=b.providerAlias;if(!c)continue;let d=String(b.id).trim();d&&p.push({id:`${c}/${d}`,object:"model",owned_by:c})}}else for(let[b,c]of l.entries()){if(!s(b,a))continue;let f=d.Xg[b]||b,g=(c?.providerSpecificData?.prefix||(0,e.wG)(b)||f).trim(),j=d.vq[f]||[],l=c?.providerSpecificData?.enabledModels,m=Array.isArray(l)&&l.length>0,t=(0,e.mq)(b)||(0,e.gb)(b),u=new Map(j.map(a=>[a.id,q(a)])),v=m?Array.from(new Set(l.filter(a=>"string"==typeof a&&""!==a.trim()))):j.map(a=>a.id);t&&0===v.length&&!o.test(b)&&(v=await r(c));let w=n[b];if(w&&!m)try{let a=await w(c);a?.models?.length&&(v=a.models.map(a=>a.id))}catch(a){console.log(`Live model fetch failed for ${b}: ${a?.message||a}`)}for(let c of Array.from(new Set([...v.map(a=>a.startsWith(`${g}/`)?a.slice(g.length+1):a.startsWith(`${f}/`)?a.slice(f.length+1):a.startsWith(`${b}/`)?a.slice(b.length+1):a).filter(a=>"string"==typeof a&&""!==a.trim()),...h.filter(a=>{if(!a?.id||a.type&&"llm"!==a.type)return!1;let c=a.providerAlias;return c===f||c===g||c===b}).map(a=>String(a.id).trim()).filter(a=>""!==a),...Object.values(i||{}).filter(a=>"string"==typeof a&&!!a.includes("/")&&(a.startsWith(`${g}/`)||a.startsWith(`${f}/`)||a.startsWith(`${b}/`))).map(a=>a.startsWith(`${g}/`)?a.slice(g.length+1):a.startsWith(`${f}/`)?a.slice(f.length+1):a.startsWith(`${b}/`)?a.slice(b.length+1):a).filter(a=>"string"==typeof a&&""!==a.trim())]))){let b=u.get(c)||function(a){let b=String(a).toLowerCase();return/embed/.test(b)?"embedding":/tts|speech|audio|voice/.test(b)?"tts":/image|imagen|dall-?e|flux|sdxl|sd-|stable-diffusion/.test(b)?"image":"llm"}(c);a.includes(b)&&(k(g,c)||k(f,c)||p.push({id:`${g}/${c}`,object:"model",owned_by:g}))}let x=e.AI_PROVIDERS[b],y=[];if(a.includes("tts")&&Array.isArray(x?.ttsConfig?.models))for(let a of x.ttsConfig.models)a?.id&&y.push(a.id);if(a.includes("embedding")&&Array.isArray(x?.embeddingConfig?.models))for(let a of x.embeddingConfig.models)a?.id&&y.push(a.id);for(let a of y)k(g,a)||k(f,a)||p.push({id:`${g}/${a}`,object:"model",owned_by:g});a.includes("webSearch")&&x?.searchConfig&&p.push({id:`${g}/search`,object:"model",kind:"webSearch",owned_by:g}),a.includes("webFetch")&&x?.fetchConfig&&p.push({id:`${g}/fetch`,object:"model",kind:"webFetch",owned_by:g})}a.includes("llm")&&p.push(...(0,m.lL)(b));let t=[],u=new Set;for(let a of p)!a?.id||u.has(a.id)||(u.add(a.id),t.push(a));return t}async function u(){return new Response(null,{headers:{"Access-Control-Allow-Origin":"*","Access-Control-Allow-Methods":"GET, OPTIONS","Access-Control-Allow-Headers":"*"}})}async function v(){try{let a=await t(["llm"]);return Response.json({object:"list",data:a},{headers:{"Access-Control-Allow-Origin":"*"}})}catch(a){return console.log("Error fetching models:",a),Response.json({error:{message:a.message,type:"server_error"}},{status:500})}}},3359:(a,b,c)=>{c.d(b,{K0:()=>j,Oh:()=>n,c9:()=>q,lL:()=>r,s9:()=>i});var d=c(89718),e=c(44404);let f="gpt-5.5";function g(a){return String(a||"").trim().replace(/^\/+|\/+$/g,"")}function h(a){let b;return`cx/${(b=g(a)).startsWith("cx/")?b.slice(3):b.startsWith("codex/")?b.slice(6):b||f}`}function i(a){let b=g(a);if(!b)return null;if("auto-codex"===b)return{mode:"router",modelString:`cx/${f}`,strictAccount:!1,label:"Auto Codex"};if(b.startsWith("router/")){let a;return{mode:"router",modelString:(a=g(b.slice(7))||f).includes("/")?a:`cx/${a}`,strictAccount:!1,label:"Router Pool"}}if(b.startsWith("original/"))return{mode:"original",modelString:h(b.slice(9)),strictAccount:!0,label:"Original Codex"};if("original"===b)return{mode:"original",modelString:`cx/${f}`,strictAccount:!0,label:"Original Codex"};let c=b.startsWith("account/")?"account/":b.startsWith("codex-account/")?"codex-account/":null;if(c){let a=b.slice(c.length),d=a.indexOf("/"),e=-1===d?a:a.slice(0,d),g=-1===d?f:a.slice(d+1);return e?{mode:"account",accountRef:e,modelString:h(g),strictAccount:!0,label:"Pinned Codex Account"}:null}return null}function j(a){return a?.displayName||a?.name||a?.email||a?.id||"Codex account"}function k(a){let b=String(j(a)).toLowerCase().replace(/@/g,"-").replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,48)||"account";return`${b}-${String(a?.id||"").slice(0,8)}`}function l(a){return String(a||"").trim().toLowerCase()}function m(a){let b=a?.providerSpecificData||{};return"GPTJson"===b.importedFrom||String(b.tokenSource||"").startsWith("ChatGPT_team")}async function n(a=5e3){let b=await (0,d.getProviderConnections)({provider:"codex",isActive:!0}),c=b.slice(0,a).map(a=>({id:a.id,slug:k(a),label:j(a),email:a.email||null,imported:m(a),priority:a.priority||null})),e=o(b);return{accounts:c,original:e?{id:e.id,slug:k(e),label:j(e),email:e.email||null,imported:m(e),priority:e.priority||null}:null}}function o(a){return Array.isArray(a)&&0!==a.length?a.find(a=>!m(a))||a[0]:null}async function p(a){let b=l(a);if(!b)return null;let c=await (0,d.getProviderConnections)({provider:"codex",isActive:!0}),e=c.find(a=>l(a.id)===b||k(a)===b||l(a.email)===b||l(a.name)===b||l(a.displayName)===b);if(e)return e;let f=c.filter(a=>l(a.id).startsWith(b)||k(a).startsWith(b));return 1===f.length?f[0]:null}async function q(a){if(!a||"original"!==a.mode&&"account"!==a.mode)return null;if("account"===a.mode)return p(a.accountRef);let b=await (0,d.mt)(),c=b.codexGatewayOriginalConnectionId||b.codexOriginalConnectionId||"";if(c){let a=await p(c);if(a)return a}return o(await (0,d.getProviderConnections)({provider:"codex",isActive:!0}))}function r(a=[]){if(!a.some(a=>"codex"===a.provider&&!1!==a.isActive))return[];let b=[{id:"auto-codex",object:"model",owned_by:"zevai-codex-gateway"},...(e.vq.cx||[]).filter(a=>!a.type||"llm"===a.type).map(a=>a.id).flatMap(a=>[{id:`router/${a}`,object:"model",owned_by:"zevai-codex-gateway"},{id:`original/${a}`,object:"model",owned_by:"zevai-codex-gateway"}])];for(let c of a.filter(a=>"codex"===a.provider&&!1!==a.isActive))b.push({id:`account/${k(c)}`,object:"model",owned_by:"zevai-codex-account"});return b}},16655:(a,b,c)=>{c.d(b,{oF:()=>d.oF,tm:()=>d.tm,vF:()=>d.vF});var d=c(80601)},19225:(a,b,c)=>{a.exports=c(44870)},81329:(a,b,c)=>{c.d(b,{Xg:()=>d.Xg,eh:()=>e,vq:()=>d.vq});var d=c(44404);Object.entries(c(75681).AI_PROVIDERS).filter(([,a])=>a.passthroughModels).map(([a])=>a);let e=Object.entries(d.vq).flatMap(([a,b])=>b.map(b=>({provider:a,model:b.id,name:b.name})))},92280:(a,b,c)=>{Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=8371,exports.ids=[8371],exports.modules={48371:(a,b,c)=>{c.d(b,{xM:()=>X,t9:()=>$,TK:()=>Z,cO:()=>e.cO,VU:()=>ae});var d=c(55511),e=c(53041),f=c(71998),g=c(89718),h=c(20116),i=c(92990),j=c(39609);let k=globalThis.fetch,l=new Set(["a timeout","is cancelled","is complete","number banned, when number already used"]);class m extends Error{constructor(a,{status:b,body:c}={}){super(a),this.name="FiveSimError",this.status=b,this.body=c}}class n extends m{constructor(a){super(`5sim order ${a} timed out waiting for SMS`),this.name="FiveSimTimeoutError",this.orderId=a}}class o extends m{constructor(a,b){super(`5sim order ${a} cancelled: ${b}`),this.name="FiveSimCancelledError",this.orderId=a}}class p extends m{constructor(a){super(`5sim order ${a} number was already used (banned)`),this.name="FiveSimBannedError",this.orderId=a}}class q{constructor({apiKey:a,proxyOptions:b=null}={}){if(!a||"string"!=typeof a||!a.trim())throw new m("5sim API key is required");this.apiKey=a.trim(),this.proxyOptions=b}_headers(a={}){return{Authorization:`Bearer ${this.apiKey}`,Accept:"application/json",...a}}async _get(a,{headers:b,...c}={}){let d=`https://5sim.net/v1${a}`,e=this.proxyOptions?.enabled?j.proxyAwareFetch:k,f=await e(d,{method:"GET",headers:this._headers(b),...c},this.proxyOptions);if(!f.ok){let b=await f.text().catch(()=>"");throw new m(`5sim request to ${a} failed (HTTP ${f.status}): ${b.slice(0,200)}`,{status:f.status,body:b})}let g=await f.text();try{return JSON.parse(g)}catch{if(g&&!g.startsWith("{"))throw new m(`5sim ${a} returned non-JSON: ${g.slice(0,200)}`,{status:f.status,body:g});return null}}async buyNumber({country:a="hongkong",operator:b="any",product:c="codebuddy",allowProductFallback:d=!1}={}){let e="codebuddy"===c&&d?["codebuddy","other"]:[c],f=null;for(let c of e){let g=`/user/buy/activation/${encodeURIComponent(a)}/${encodeURIComponent(b)}/${encodeURIComponent(c)}`;try{let a=await this._get(g);if(!a||!a.id||!a.phone)throw new m(`5sim buyNumber returned unexpected shape: ${JSON.stringify(a).slice(0,200)}`,{body:a});return a}catch(g){f=g;let a=g?.status,b=String(g?.body||g?.message||"").toLowerCase();if(!(d&&"codebuddy"===c&&e.includes("other")&&(400===a||404===a||b.includes("no free")||b.includes("not enough")||b.includes("no product"))))throw g}}throw f||new m("5sim buyNumber failed for all product candidates")}async checkOrder(a){return this._get(`/user/check/${a}`)}async pollCode(a,{timeoutMs:b=9e5,intervalMs:c=6e3,signal:d}={}){let e=Math.max(5e3,c),f=Date.now()+b,g=0;for(;Date.now()<f;){let b;if(d?.aborted)throw new o(a,"aborted by caller");try{b=await this.checkOrder(a)}catch(a){if(a instanceof m&&a.status>=500){if(++g>5)throw a;await s(e);continue}throw a}if(g=0,Array.isArray(b.sms)&&b.sms.length>0){let a=r(b.sms[b.sms.length-1]);if(a)return a}if(b.status&&l.has(b.status)){if("a timeout"===b.status)throw new n(a);if("number banned, when number already used"===b.status)throw new p(a);if("is cancelled"===b.status)throw new o(a,b.status);if("is complete"===b.status){let c=function(a){if(!Array.isArray(a))return null;for(let b=a.length-1;b>=0;b--){let c=r(a[b]);if(c)return c}return null}(b.sms);if(c)return c;throw new m(`5sim order ${a} completed but no SMS code found`,{body:b})}}await s(e)}throw new n(a)}async finishOrder(a){try{return await this._get(`/user/finish/${a}`),!0}catch(b){return console.warn(`[5sim] finishOrder(${a}) failed (best-effort): ${b.message}`),!1}}async cancelOrder(a){try{return await this._get(`/user/cancel/${a}`),!0}catch(b){return console.warn(`[5sim] cancelOrder(${a}) failed (best-effort): ${b.message}`),!1}}async banOrder(a){try{return await this._get(`/user/ban/${a}`),!0}catch(b){return console.warn(`[5sim] banOrder(${a}) failed (best-effort): ${b.message}`),!1}}async getBalance(){try{let a=await this._get("/user/profile");return{balance:a?.balance??null,rating:a?.rating??null}}catch(a){return console.warn(`[5sim] getBalance failed: ${a.message}`),{balance:null,rating:null}}}}function r(a){return a?a.code&&/\d{4,8}/.test(String(a.code))?String(a.code).match(/\d{4,8}/)[0]:a.text?function(a){if(!a)return null;let b=String(a).match(/\b(\d{4,8})\b/);return b?b[1]:null}(a.text):null:null}function s(a){return new Promise(b=>setTimeout(b,a))}let t=["https://www.codebuddy.cn/login/","https://www.codebuddy.cn/login","https://www.codebuddy.cn/register/","https://copilot.tencent.com/login/"],u=["text=手机号","div:has-text('手机号')","span:has-text('手机号')","[class*='phone']:has-text('手机号')","div.kc-phone-tab:has-text('手机号')"],v=["text=手机号","text=其他登录方式","text=微信","#phone-iframe",".login-phone-box"],w=["button:has-text('同意')","text=同意并继续","text=同意"],x="#phone-iframe",y="#phoneNumber",z=".kc-country-option",A=".kc-country-code-text",B="#code",C=['iframe[src*="captcha"]','iframe[src*="tcaptcha"]',"#tcaptcha","#tcaptcha_transform",".nc_iconfont",".nc_wrapper",'[class*="captcha"]','[id*="captcha"]',"text=滑块","text=拖动"],D=['[class*="avatar"]','[class*="user-info"]','[class*="logout"]',"text=退出登录","text=Logout","text=Sign out"],E=["#input-error",".pf-c-form__helper-text.pf-m-error",".kc-feedback-text"];async function F({page:a,phone:b,resolvePhone:c,pollSmsPromise:d,waitForSms:e,onStep:f,phoneFormatter:g=a=>a,timeouts:h={},signal:i=null,isCancelled:j=null}){let k=h.nav??3e4,l=h.action??15e3,m=h.codeWait??9e5,n=h.postSubmit??1e4,o=(a,b)=>f?.(a,b),p=()=>{if(i?.aborted||"function"==typeof j&&j()){let a=Error("Job cancelled");throw a.code="JOB_CANCELLED",a}};try{var q;let f,h;o("cn_opening_login_page","Opening CodeBuddy CN login page"),p();try{a.setDefaultNavigationTimeout(k),a.setDefaultTimeout(l)}catch{}try{await a.context().route("**/*",a=>{let b=a.request().url();return/googletagmanager|googleadservices|google-analytics|doubleclick|facebook|hotjar|clarity\.ms|hm\.baidu|google\.com\/rmkt/i.test(b)?a.abort():a.continue()})}catch{}let i=null,j=[];for(let b=1;b<=2;b++){p();try{let c=t[(b-1)%t.length];o("cn_nav_attempt",`Navigation attempt ${b}/2 → ${c}`),b>1&&(await a.context().clearCookies().catch(()=>{}),await a.waitForTimeout(800)),await a.goto(c,{waitUntil:"commit",timeout:k}),p(),await a.waitForFunction(()=>"loading"!==document.readyState,{timeout:1e4}).catch(()=>{}),p();let d=await I(a,w,{timeout:6e3});d&&(await d.click().catch(()=>{}),o("cn_consent_dismissed","Privacy consent dialog dismissed (同意)"),await a.waitForTimeout(1e3));let e=await J(a,v,25e3);if(p(),!e){let b=await a.locator("body").innerText().catch(()=>""),d=await a.evaluate(()=>document.documentElement?.outerHTML?.length||0).catch(()=>0),e=a.url();o("cn_spa_not_ready",`SPA not ready after 25s (url=${e}, body=${String(b).slice(0,80)}, html=${d})`),!b&&d<200?(o("cn_proxy_empty_page","Empty page body — proxy may be blocking codebuddy.cn"),j.push({code:"proxy_empty",detail:`empty page via ${c} (html=${d})`})):j.push({code:"spa_timeout",detail:`SPA not ready url=${e} html=${d}`});continue}o("cn_spa_ready","Login SPA ready"),o("cn_selecting_phone_tab","Selecting phone-number tab");let f=await I(a,u,{timeout:12e3});if(f?(await f.click().catch(()=>{}),o("cn_phone_tab_selected","Phone tab selected"),await a.waitForTimeout(800)):o("cn_phone_tab_not_found","Phone tab not found — checking if iframe already present"),o("cn_waiting_for_iframe","Waiting for phone iframe to load"),await a.locator(x).waitFor({state:"attached",timeout:18e3}).catch(()=>{}),i=await G(a)){if(await i.waitForSelector(y,{state:"visible",timeout:15e3}).then(()=>!0).catch(()=>!1)){o("cn_iframe_ready","Phone iframe + #phoneNumber ready");break}o("cn_iframe_empty","Iframe found but #phoneNumber not visible yet"),j.push({code:"iframe_empty",detail:"phone iframe attached but #phoneNumber not visible"}),i=null}else o("cn_iframe_missing",`No #phone-iframe (attempt ${b}/2)`),j.push({code:"iframe_missing",detail:"SPA loaded but #phone-iframe never appeared"})}catch(e){if(e?.code==="JOB_CANCELLED")throw e;let a=String(e?.message||e||"");o("cn_nav_retry",`Navigation attempt ${b}/2 failed: ${a.slice(0,120)}`);let c=/timeout|exceeded|ETIMEDOUT|net::ERR/i.test(a),d=/ERR_PROXY|ERR_TUNNEL|ERR_CONNECTION|NS_ERROR_PROXY|proxy/i.test(a);j.push({code:d?"proxy_network":c?"nav_timeout":"nav_error",detail:a.slice(0,160)})}}if(!i)return{status:"failed",error:function(a=[],b=2){let c=a.map(a=>a.code),d=a[a.length-1],e="Fix: use a live residential CN proxy (proxyPoolMode=single), concurrency 1, then retry. 5sim is not charged until the form loads.";return c.includes("proxy_empty")||c.includes("proxy_network")?`CodeBuddy CN login page empty/blocked via proxy after ${b} attempts (${d?.detail||"proxy blackhole"}). ${e}`:c.includes("nav_timeout")?`CodeBuddy CN navigation timed out after ${b} attempts (${d?.detail||"goto timeout"}). Proxy is too slow or dead. ${e}`:c.includes("spa_timeout")?`CodeBuddy CN SPA did not boot after ${b} attempts (${d?.detail||"no login UI"}). Proxy/CDN may be filtering JS. ${e}`:c.includes("iframe_missing")||c.includes("iframe_empty")?`CodeBuddy CN page opened but phone form iframe never appeared after ${b} attempts (${d?.detail||"no #phone-iframe"}). Site layout change or half-loaded SPA — retry with another CN exit IP. ${e}`:c.includes("nav_error")&&d?.detail?`CodeBuddy CN phone form failed after ${b} attempts: ${d.detail}. ${e}`:`Could not load CodeBuddy CN phone form after ${b} attempts (${d?.code||"unknown"}: ${d?.detail||"proxy/SPA"}). ${e}`}(j,2)};await i.waitForSelector("#kc-form-login",{timeout:l}).catch(()=>{}),await i.waitForSelector(y,{state:"visible",timeout:l}).catch(()=>{});let r=b;if("function"==typeof c&&(o("cn_ordering_after_form","Login form ready — ordering 5sim number now (not before nav)"),r=await c()),!r)return{status:"failed",error:"No phone number available (resolvePhone/phone missing)"};let s=g(r),{countryCode:z,localNumber:A}=(q=s,(!(h=String(q).replace(/[\s\-()]/g,"")).startsWith("+")&&/^\d+$/.test(h)&&(h="+"+h),h.startsWith("+852"))?{countryCode:"+852",localNumber:h.slice(4)}:h.startsWith("+86")?{countryCode:"+86",localNumber:h.slice(3)}:h.startsWith("+1")?{countryCode:"+1",localNumber:h.slice(2)}:{countryCode:"",localNumber:h.replace(/^\+/,"")});o("cn_selecting_country",`Selecting country code ${z} for phone ${s}`),await H(i,z,l,o),o("cn_entering_phone",`Entering phone number: ${A}`);let C=i.locator(y).first();try{await C.waitFor({state:"visible",timeout:l})}catch{return{status:"failed",error:"Could not find the phone number input (#phoneNumber) inside the iframe"}}await K(C,A),o("cn_phone_entered",`Phone number entered: ${A}`);try{let b=a.locator(".t-checkbox").last();await b.isVisible({timeout:3e3}).catch(()=>!1)&&(await b.click().catch(()=>{}),o("cn_agreement_checked","Agreement checkbox checked"))}catch{}o("cn_clicking_send_code","Clicking send SMS code button");let D=i.locator("input.btn-lg.code-btn").first(),E=!1;try{await D.waitFor({state:"visible",timeout:5e3}),E=!0}catch{let a=i.locator(".code-btn").first();try{await a.waitFor({state:"visible",timeout:5e3}),E=!0}catch{E=!1}}if(!E)return{status:"failed",error:"Could not find the send-SMS-code button (.code-btn) inside the iframe"};await D.click().catch(()=>{}),o("cn_send_code_clicked","Send code button clicked"),await i.waitForSelector(B,{state:"visible",timeout:5e3}).catch(()=>{});let F=await S(i);if(F)return{status:"failed",error:`Form error after sending code: ${F}`};o("cn_waiting_for_sms","Waiting for SMS verification code from 5sim (timer starts now)");try{let a;if("function"==typeof e)a=Promise.resolve().then(()=>e());else if(d)a=d;else throw Error("No waitForSms/pollSmsPromise provided");let b=new Promise((a,b)=>setTimeout(()=>b(Error("Timed out waiting for SMS code")),m));f=await Promise.race([a,b])}catch(a){if(a&&"FiveSimTimeoutError"===a.name)throw a;return{status:"failed",error:`Failed to receive SMS code: ${a.message}`}}if(!f)return{status:"failed",error:"Received empty SMS code from 5sim"};o("cn_sms_received",`SMS code received: ${f}`),o("cn_entering_code","Entering SMS verification code");let L=i.locator(B).first();try{await L.waitFor({state:"visible",timeout:l})}catch{return{status:"failed",error:"Could not find the verification code input (#code) inside the iframe"}}await K(L,f),o("cn_code_entered","Verification code entered");let M=Math.max(n,12e3),V=!1;for(let b=0;b<2;b++){o("cn_submitting",`Clicking submit button (attempt ${b+1}/2)`);let c=await G(a);if(!c){let b=await N(a,{timeoutMs:5e3,reportStep:o});if(b.ok)return o("cn_session_cookies",`Keycloak session after iframe detach (${b.cookie})`),{status:"success"};return{status:"failed",error:"Lost phone iframe after submit"}}if(await c.locator(y).first().isVisible({timeout:3e3}).catch(()=>!1)&&b>0){o("cn_re_entering_after_refresh",`Re-entering phone + code after refresh (retry ${b})`),await H(c,z,l,o);let d=c.locator(y).first();await K(d,A);try{let b=a.locator(".t-checkbox").first();await b.isVisible({timeout:2e3}).catch(()=>!1)&&await b.click().catch(()=>{})}catch{}let e=c.locator(B).first();await e.isVisible({timeout:3e3}).catch(()=>!1)&&await K(e,f)}if(await O(c,l),o("cn_submitted",`Registration form submitted (attempt ${b+1})`),await a.waitForLoadState("domcontentloaded",{timeout:5e3}).catch(()=>{}),await a.waitForTimeout(1e3),c=await G(a)||c,await R(c)){if(b>=1)return{status:"failed",error:"Account restricted (账号访问受限) after submit. Datacenter/VPS IP is usually blocked — use a residential CN proxy pool (proxyPoolMode=single) and retry."};o("cn_account_restricted",`Account restricted (attempt ${b+1}) — refreshing page and retrying`),await a.reload({waitUntil:"commit",timeout:k}).catch(()=>{}),await J(a,v,12e3);let c=await I(a,u,{timeout:8e3});c&&(await c.click().catch(()=>{}),await a.locator(x).waitFor({state:"attached",timeout:8e3}).catch(()=>{}));continue}if(o("cn_checking_captcha","Checking for captcha"),await T(a,c,3e3))return o("cn_captcha_detected","Captcha appeared during registration — manual assist needed"),{status:"needs_manual",error:"A captcha appeared during registration. Please complete it manually in the opened browser window.",captcha:!0};let d=await S(c);if(d)return{status:"failed",error:`Form error after submit: ${d}`};o("cn_waiting_session",`Waiting up to ${Math.round(M/1e3)}s for Keycloak session cookies`);let e=await N(a,{timeoutMs:M,reportStep:o,alsoCheckFrame:()=>G(a)});if(e.ok)return o("cn_session_cookies",`Keycloak session cookies present (${e.cookie}) — registration success`),{status:"success"};if(await P(a)&&b<1){o("cn_submit_no_effect","Login form still visible after submit — retrying");continue}o("cn_session_nudge","No session yet — navigating to home to complete OIDC handoff"),await a.goto("https://www.codebuddy.cn/",{waitUntil:"domcontentloaded",timeout:k}).catch(()=>{}),await a.waitForTimeout(2e3);let g=await N(a,{timeoutMs:1e4,reportStep:o});if(g.ok)return o("cn_session_cookies",`Keycloak session after home nudge (${g.cookie})`),{status:"success"};V=!0;break}if(!V)return o("cn_submit_retries_exhausted","Account restricted after 2 retries — needs manual"),{status:"needs_manual",error:"Account restricted after 2 refresh retries. Please try with a different VPN/proxy or complete manually."};o("cn_confirming_success","Confirming registration success");let W=await N(a,{timeoutMs:5e3});if(W.ok)return o("cn_registration_success",`Phone registration completed (Keycloak session: ${W.cookie})`),{status:"success"};if(await U(a,i,1e4))return o("cn_registration_success","Phone registration completed successfully (UI markers)"),{status:"success"};let X=await Q(a);return o("cn_success_unconfirmed",`No Keycloak session after submit — ${X.summary}`),{status:"needs_manual",error:`Login submit finished but no Keycloak session yet (${X.summary}). Complete login in the headed browser or retry with a fresh China proxy.`}}catch(a){if(a&&"FiveSimTimeoutError"===a.name)throw a;return o("cn_automation_error",`Phone registration automation error: ${a.message}`),{status:"failed",error:a.message||"Unexpected error during phone registration"}}}async function G(a){try{await a.locator(x).waitFor({state:"attached",timeout:5e3});let b=await a.locator(x).elementHandle({timeout:2e3});if(b){let a=await b.contentFrame();if(a)return a}}catch{}for(let b of a.frames()){let a=b.url();if(a.includes("codebuddy.cn/auth/realms/copilot")||a.includes("protocol/openid-connect"))return b}return null}async function H(a,b,c,d){if(!b)return;let e=Math.min(Number(c)||15e3,1e4),f=async()=>{let c=a.locator(A).first(),f=String(await c.textContent({timeout:3e3}).catch(()=>"")).trim();if(f===b)return void d?.("cn_country_already_selected",`Country code already ${b}`);d?.("cn_opening_country_dropdown",`Opening country dropdown (current: ${f}, target: ${b})`);let g=a.locator(".kc-country-selector").first();for(let c of(await g.waitFor({state:"visible",timeout:Math.min(e,5e3)}),await g.click({timeout:3e3}).catch(()=>{}),await a.locator(z).first().waitFor({state:"visible",timeout:3e3}).catch(()=>{}),({"+852":["中国香港","香港","Hong Kong","+852"],"+86":["中国大陆","中国","China","+86"],"+853":["中国澳门","澳门","Macau","+853"],"+886":["中国台湾","台湾","Taiwan","+886"]})[b]||[b]))for(let e of[a.locator(`${z}:has-text("${c}")`).first(),a.getByText(c,{exact:!1}).first()]){if(!await e.isVisible({timeout:1500}).catch(()=>!1))continue;let f=await e.textContent({timeout:1500}).catch(()=>c);await e.click({timeout:2e3}).catch(()=>{}),await a.locator(A).filter({hasText:b}).first().waitFor({state:"visible",timeout:2e3}).catch(()=>{}),d?.("cn_country_selected",`Country selected: ${String(f||c).trim()}`);return}d?.("cn_country_not_found",`Country code ${b} not found in dropdown; using default`),await a.locator("body").click({timeout:1e3}).catch(()=>{})};try{await Promise.race([f(),new Promise((a,b)=>{let c=setTimeout(()=>b(Error(`selectCountry timed out after ${e}ms`)),e);"function"==typeof c.unref&&c.unref()})])}catch(a){d?.("cn_country_select_error",`Country selection error: ${a.message}`)}}async function I(a,b,{timeout:c=1e4}={}){for(let d of b)try{let b=a.locator(d).first();return await b.waitFor({state:"visible",timeout:Math.min(c,5e3)}),b}catch{}return null}async function J(a,b,c=15e3){let d=Date.now()+c;for(;Date.now()<d;){for(let c of b)try{let b=a.locator(c).first();if(await b.isVisible().catch(()=>!1))return!0}catch{}await new Promise(a=>setTimeout(a,250))}return!1}async function K(a,b){try{return await a.click(),await a.fill(""),await a.fill(b),!0}catch{try{return await a.click(),await a.press("Control+a"),await a.type(b,{delay:50}),!0}catch{return!1}}}let L=["KEYCLOAK_IDENTITY","KEYCLOAK_SESSION","KEYCLOAK_IDENTITY_LEGACY","KEYCLOAK_SESSION_LEGACY"];function M(a=[]){for(let b of L)if(a.some(a=>a.name===b))return b;let b=a.find(a=>a.name.startsWith("KEYCLOAK_")&&!/locale|theme|restart/i.test(a.name));return b?.name||null}async function N(a,{timeoutMs:b=2e4,reportStep:c,alsoCheckFrame:d}={}){let e=Date.now()+b,f=0;for(;Date.now()<e;){let b=await a.context().cookies().catch(()=>[]),g=M(b);if(g)return{ok:!0,cookie:g,cookies:b};try{let c=a.url();if(c&&!c.includes("/login")&&!c.includes("/auth/realms")){let a=b.find(a=>/^(access_token|cb_token|codebuddy)/i.test(a.name)||"token"===a.name&&a.domain?.includes("codebuddy"));if(a)return{ok:!0,cookie:a.name,cookies:b}}}catch{}if(d){let a=await d().catch(()=>null);if(a){if(await R(a))return{ok:!1,cookies:b,reason:"restricted"};let c=await S(a);if(c)return{ok:!1,cookies:b,reason:`form_error:${c}`}}}if(c&&Date.now()-f>4e3){f=Date.now();let a=Math.max(0,Math.round((e-Date.now())/1e3));c("cn_waiting_session",`Still waiting for Keycloak session… ${a}s left`)}await a.waitForTimeout(500)}return{ok:!1,cookies:await a.context().cookies().catch(()=>[])}}async function O(a,b=15e3){let c=a.locator("#kc-login").first();try{await c.waitFor({state:"visible",timeout:b}),await c.click({timeout:5e3}).catch(()=>{})}catch{}try{await a.evaluate(()=>{let a=document.querySelector("#kc-form-login")||document.querySelector("form");if(a)if("function"==typeof a.requestSubmit){let b=a.querySelector("#kc-login")||a.querySelector('[type="submit"]');b?a.requestSubmit(b):a.requestSubmit()}else a.submit()})}catch{await a.locator(B).first().press("Enter").catch(()=>{})}}async function P(a){let b=await G(a);return!!b&&b.locator(y).first().isVisible({timeout:1500}).catch(()=>!1)}async function Q(a){let b="";try{b=a.url()}catch{b="(unknown)"}let c=(await a.context().cookies().catch(()=>[])).map(a=>a.name).slice(0,20).join(",")||"(none)",d="";try{d=await a.evaluate(()=>(document.body?.innerText||"").replace(/\s+/g," ").trim().slice(0,120))}catch{d=""}let e=await G(a),f="no-iframe";if(e)try{f=(await e.url()).slice(0,80)}catch{f="iframe-detached"}return{summary:`url=${b.slice(0,60)} cookies=[${c}] frame=${f}${d?` text="${d}"`:""}`,url:b,cookieNames:c,bodySnippet:d}}async function R(a){try{let b=await a.evaluate(()=>document.body?.innerText||"");if(b.includes("账号访问受限")||b.includes("安全策略限制")||b.includes("访问受限"))return!0}catch{}return!1}async function S(a){for(let b of E)try{let c=a.locator(b).first();if(await c.isVisible({timeout:1500}).catch(()=>!1)){let a=await c.textContent().catch(()=>""),b=String(a).trim();if(b&&b.length>1)return b}}catch{}try{let b=await a.evaluate(()=>(document.body?.innerText||"").replace(/\s+/g," ").trim());for(let a of["验证码错误","验证码已过期","验证码无效","请输入正确的验证码","手机号格式","发送过于频繁","Invalid","incorrect"])if(b.includes(a)){let c=b.indexOf(a);return b.slice(Math.max(0,c-10),c+a.length+40).trim()}}catch{}return null}async function T(a,b,c=5e3){for(let b of C)try{let d=a.locator(b).first();if(await d.isVisible({timeout:Math.min(c,2e3)}).catch(()=>!1))return!0}catch{}if(b)for(let a of C)try{let d=b.locator(a).first();if(await d.isVisible({timeout:Math.min(c,2e3)}).catch(()=>!1))return!0}catch{}return!1}async function U(a,b,c=15e3){try{let b=await a.context().cookies().catch(()=>[]);if(M(b))return!0}catch{}for(let b of D)try{let d=a.locator(b).first();if(await d.isVisible({timeout:Math.min(c,2e3)}).catch(()=>!1))return!0}catch{}try{let b=a.url(),c=await a.context().cookies().catch(()=>[]),d=new Set(c.map(a=>a.name));if(b&&!b.includes("/login")&&!b.includes("/auth/realms")&&(d.has("qcloud_uid")||d.has("qcmainCSRFToken"))&&!d.has("login_risk_state")&&!await P(a).catch(()=>!1))return!0}catch{}return!1}var V=c(40891),W=c(75949);let X=200,Y=Number.parseInt(process.env.ZEVAI_CN_ACCOUNT_TIMEOUT_MS||"",10)||72e4,Z=new Set(["hongkong","china","any"]),$="hongkong";function _(a){return String(a||"").trim()}async function aa({apiKey:a,phone:b,region:d,fiveSimOrderId:e,account:f}){let{createProviderConnection:g}=await Promise.resolve().then(c.bind(c,71998)),h={provider:"codebuddy-cn",authType:"apikey",apiKey:a,accessToken:a,name:b||`5sim-${e}`,email:b||`5sim-${e}`,providerSpecificData:{domain:"www.codebuddy.cn",phoneNumber:b,fiveSimOrderId:e,region:d,automation:"5sim-phone-bulk"},testStatus:"active"};return{connection:await g(h)}}class ab extends e.Q6{constructor({browserLauncher:a,requestDeviceCodeFn:b=V.cT,pollToken:d=V.ZV,fetchLoginAccountFn:e=V.w8,saveConnection:f=aa,fiveSimClientFactory:g=ac,phoneAutomation:h=F,phoneFormatter:j=_,pollIntervalMs:k=i.ne.pollInterval,storageName:l="codebuddy-cn-bulk-import"}={}){super({browserLauncher:a||(async a=>{let{launchBulkImportBrowser:b}=await Promise.resolve().then(c.bind(c,75949)),d=Array.isArray(a?.proxyUrls)&&a.proxyUrls.length?a.proxyUrls[0]:null,e=process.env.ZEVAI_CN_HEADLESS,f="linux"===process.platform;return("0"===e||"false"===e)&&(f=!1),("1"===e||"true"===e)&&(f=!0),b({engine:a?.engine||"camoufox",proxyUrl:d,headless:f,windowSize:{width:900,height:700}})}),storageName:l}),this.requestDeviceCode=b,this.pollToken=d,this.fetchLoginAccount=e,this.saveConnection=f,this.fiveSimClientFactory=g,this.phoneAutomation=h,this.phoneFormatter=j,this.pollIntervalMs=k}async startJob({count:a,concurrency:b,engine:g,proxyPoolMode:i,proxyPoolId:j,manualProxyUrl:k,region:l}){let m=Number.parseInt(a,10);if(!Number.isFinite(m)||m<1)throw Object.assign(Error("At least one account is required (count >= 1)"),{error:"At least one account is required (count >= 1)"});if(m>X)throw Object.assign(Error(`Count exceeds maximum of ${X}`),{error:`Count exceeds maximum of ${X}`});let n=[...this.jobs.values()].find(a=>a&&("running"===a.status||"queued"===a.status||"needs_manual"===a.status)&&!a.cancelRequested);if(n)throw Object.assign(Error(`Another CodeBuddy CN job is still active (${n.jobId}). Cancel it or wait before starting again.`),{error:`Another CodeBuddy CN job is still active (${n.jobId}). Cancel it or wait before starting again.`});let o=Z.has(l)?l:$,p=[],q="string"==typeof k?k.trim():"";if(q){if(!/^(https?|socks4|socks5):\/\/.+/i.test(q))throw Object.assign(Error("manualProxyUrl must be a valid proxy URL (http://, https://, socks4://, or socks5://)"),{error:"manualProxyUrl must be a valid proxy URL (http://, https://, socks4://, or socks5://)"});p=[q]}else if("all"===i)p=(await (0,f.ui)({isActive:!0})).map(a=>a.proxyUrl).filter(Boolean);else if("single"===i&&j){let a=await (0,f.hr)(j);a?.isActive&&a?.proxyUrl&&(p=[a.proxyUrl])}let r=(0,d.randomUUID)(),s=(0,e.kF)(),{normalizeBulkImportEngine:t}=await Promise.resolve().then(c.bind(c,75949)),u=g?t(g):"camoufox",v={jobId:r,status:"running",concurrency:function(a){let b=function(){try{let{totalMemGb:a}=(0,h.si)();return Number.isFinite(a)&&a>0&&a<3}catch{return!1}}()?1:8;if((0,h.uT)(a))return Math.min(b,Math.max(1,(0,h.q)()));let c=Number.parseInt(a,10);return Number.isFinite(c)?Math.min(b,Math.max(1,c)):Math.min(b,1)}(b),engine:u,proxyPoolMode:q?"manual":i||"none",proxyUrls:p,region:o,createdAt:s,startedAt:s,finishedAt:null,error:null,cancelRequested:!1,browser:null,nextIndex:0,manualFollowups:new Set,persistPromise:Promise.resolve(),lastPreview:null,lastPreviewCapturedAt:0,accounts:Array.from({length:m},(a,b)=>({line:b+1,region:o,phone:null,fiveSimOrderId:null,fiveSimActivationId:null,proxyUrl:null,abortController:new AbortController,status:"queued",error:null,connectionId:null,workerId:null,manualSession:null,runtimeSession:null,currentStep:"queued",updatedAt:s,logs:[(0,e.hn)("queued","Queued and waiting for an available worker")]}))};return this.jobs.set(r,v),this.latestJobId=r,await this.persistJobSnapshot(v,{forcePreview:!1}),this.runJob(r),ad(v)}getJob(a){let b=this.jobs.get(a);return b?ad(b):null}async getJobWithPreview(a){let b=this.jobs.get(a);return b?(await this.persistJobSnapshot(b,{forcePreview:!1}),ad(b,{preview:b.lastPreview||null})):null}async processAccount(a,b,c){if(a.cancelRequested||!a.browser)return void this.finalizeAccount(b,"cancelled",{error:"Job cancelled"});let d=null,f=null,h=!1,i=null;try{let c;this.setAccountStep(b,"reading_settings","Reading 5sim API key from settings"),await this.persistJobSnapshot(a,{forcePreview:!0});let j=(await (0,g.mt)()).fiveSimApiKey;if(!j||!j.trim()){this.finalizeAccount(b,"failed",{error:"5sim API key not configured. Set it in the automation modal or dashboard settings.",step:"failed",message:"5sim API key not configured"}),await this.persistJobSnapshot(a,{forcePreview:!0});return}d=this.fiveSimClientFactory({apiKey:j,proxyOptions:null}),this.setAccountStep(b,"creating_browser","Creating browser context (before 5sim order)"),await this.persistJobSnapshot(a,{forcePreview:!0});let k=await (0,e.go)(a.browser,b.proxyUrl);i=k.context;let l=k.page;if(b.runtimeSession={context:i,page:l},a.cancelRequested)throw Error("Job cancelled before ordering phone number");this.setAccountStep(b,"registering","Running phone registration on CodeBuddy CN"),await this.persistJobSnapshot(a,{forcePreview:!0});try{l.setDefaultTimeout(2e4),l.setDefaultNavigationTimeout(45e3)}catch{}let m=null,n=new Promise((a,b)=>{m=setTimeout(()=>{b(Object.assign(Error(`CodeBuddy CN account hard timeout after ${Math.round(Y/1e3)}s (browser will be force-closed)`),{code:"CN_ACCOUNT_HARD_TIMEOUT"}))},Y),"function"==typeof m.unref&&m.unref()});try{c=await Promise.race([this.phoneAutomation({page:l,signal:b.abortController?.signal,isCancelled:()=>!0===a.cancelRequested,resolvePhone:async()=>{if(a.cancelRequested)throw Error("Job cancelled before ordering phone number");this.setAccountStep(b,"ordering_number",`Form ready — ordering ${a.region} phone from 5sim (single buy)`),await this.persistJobSnapshot(a,{forcePreview:!0});let c=await d.buyNumber({country:a.region,product:"codebuddy",allowProductFallback:!1});return f=c.id,b.phone=c.phone,b.fiveSimOrderId=c.id,b.fiveSimActivationId=c.id,this.setAccountStep(b,"number_ordered",`Phone number ordered: ${c.phone} (1 buy, no re-order)`),await this.persistJobSnapshot(a,{forcePreview:!0}),c.phone},waitForSms:async()=>{if(!f)throw Error("Cannot poll SMS — no 5sim order id");this.setAccountStep(b,"sms_poll_started","SMS poll started (full 90s window after send-code)"),await this.persistJobSnapshot(a,{forcePreview:!1});let c=await d.pollCode(f,{timeoutMs:9e4,signal:b.abortController?.signal});return h=!0,c},onStep:(c,d)=>{this.setAccountStep(b,c,d),this.persistJobSnapshot(a,{forcePreview:!1})},phoneFormatter:this.phoneFormatter}),n])}finally{m&&clearTimeout(m)}if("failed"===c.status){let e=c.error||"Phone registration failed before submit";this.finalizeAccount(b,"failed",{error:e,step:"failed",message:e}),d&&f&&(h?await d.finishOrder(f):await d.cancelOrder(f)),b.runtimeSession=null,await i.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0});return}await this.captureApiKey(a,b,i,l,d,f);return}catch(g){let c=g instanceof n,e=c?"SMS OTP not received within 90s — number banned":g.message||"Unexpected CodeBuddy CN bulk import failure";if(this.finalizeAccount(b,"failed",{error:e,step:c?"sms_timeout":"failed",message:e}),d&&f&&(h?await d.finishOrder(f):c?await d.banOrder(f):await d.cancelOrder(f)),b.runtimeSession=null,i&&await i.close().catch(()=>null),(g?.code==="CN_ACCOUNT_HARD_TIMEOUT"||a.cancelRequested)&&a.browser){let b=a.browser;a.browser=null,await (0,W.forceCloseBrowser)(b).catch(()=>null)}await this.persistJobSnapshot(a,{forcePreview:!0})}}async captureApiKey(a,b,c,d,e,f){let g="personal-edition-user-id",h=async(a,{timeout:b=12e3,interval:c=150}={})=>{let d=Date.now()+b;for(;Date.now()<d;){try{if(await a())return!0}catch{}await new Promise(a=>setTimeout(a,c))}return!1};try{this.setAccountStep(b,"waiting_session","Establishing CodeBuddy console session (probe APIs, not just cookies)"),await this.persistJobSnapshot(a,{forcePreview:!0});let i=async()=>{let a=await c.cookies().catch(()=>[]);return{cookies:a,names:new Set(a.map(a=>a.name)),list:a.map(a=>a.name)}},j=a=>a.has("KEYCLOAK_IDENTITY")||a.has("KEYCLOAK_SESSION")||a.has("KEYCLOAK_IDENTITY_LEGACY")||a.has("KEYCLOAK_SESSION_LEGACY"),k=a=>a.has("AUTH_SESSION_ID")||a.has("session")||a.has("qcloud_uid")||a.has("qcmainCSRFToken")||a.has("x_host_key_access"),l=async()=>d.evaluate(async()=>{try{let a=(window.location.hostname||"www.codebuddy.cn").endsWith("codebuddy.cn")?`${window.location.origin}`:"https://www.codebuddy.cn",b=await fetch(`${a}/console/accounts`,{credentials:"include",headers:{Accept:"application/json, text/plain, */*","x-requested-with":"XMLHttpRequest","X-Domain":"www.codebuddy.cn","X-Product":"SaaS"}}),c=await b.text().catch(()=>""),d=null;try{d=c?JSON.parse(c):null}catch{d={_raw:String(c||"").slice(0,240),_notJson:!0}}return{status:b.status,data:d,text:String(c||"").slice(0,240)}}catch(a){return{status:0,error:a?.message||String(a)}}}).catch(()=>null),m=a=>{let b=a?.data;if(!b||"object"!=typeof b)return[];for(let a of[b?.data?.accounts,b?.accounts,b?.data?.list,b?.list,b?.data?.result,b?.result,b?.data?.items,b?.items,Array.isArray(b?.data)?b.data:null,Array.isArray(b)?b:null])if(Array.isArray(a)&&a.length>0)return a;return[]},n=async()=>{await Promise.race([d.waitForResponse(a=>/\/console\/accounts/i.test(a.url())&&500>a.status(),{timeout:1e4}).catch(()=>null),d.waitForResponse(a=>/\/console\/api\//i.test(a.url())&&500>a.status(),{timeout:1e4}).catch(()=>null),h(async()=>{let a=await i();return j(a.names)},{timeout:1e4,interval:200}),new Promise(a=>setTimeout(a,2500))])},o=["https://www.codebuddy.cn/","https://www.codebuddy.cn/console","https://www.codebuddy.cn/console/","https://www.codebuddy.cn/profile","https://www.codebuddy.cn/profile/keys","https://www.codebuddy.cn/login/"],p=[],q=null,r=!1,s="";for(let c=0;c<10;c+=1){if(a.cancelRequested)throw Error("Job cancelled while establishing session");let e=await i(),f=j(e.names),g=k(e.names),h=o[Math.min(c,o.length-1)];if(c<3||c%2==0||!g?(this.setAccountStep(b,"waiting_session",`OIDC handoff ${c+1}/10 → ${h.replace("https://www.codebuddy.cn","")} (${f?"KEYCLOAK":g?"soft-session":"weak"})`),await this.persistJobSnapshot(a,{forcePreview:!1}),await d.goto(h,{waitUntil:"domcontentloaded",timeout:25e3}).catch(()=>null),await n()):await new Promise(a=>setTimeout(a,300)),/codebuddy\.cn/i.test(d.url?.()||"")&&(String(d.url()||"").includes("/console")||!(c>=1))||(await d.goto("https://www.codebuddy.cn/console",{waitUntil:"domcontentloaded",timeout:25e3}).catch(()=>null),await n()),q=await l(),p=m(q),s=JSON.stringify(q?.data??q?.text??null).slice(0,180),q?.status===200&&Array.isArray(p)&&p.length>0){r=!0,this.setAccountStep(b,"session_ready",`Console session accepted (HTTP 200, ${p.length} account(s)${f?", KEYCLOAK ok":", soft session"})`),await this.persistJobSnapshot(a,{forcePreview:!0});break}if(g&&q?.status===200&&Array.isArray(p)&&0===p.length&&c>=4){this.setAccountStep(b,"session_soft","Console HTTP 200 but 0 accounts — trying personal API key with soft session (cookies ok)"),await this.persistJobSnapshot(a,{forcePreview:!0}),r=!0;break}this.setAccountStep(b,"resolving_enterprise",`Console not ready (HTTP ${q?.status||0}, accounts=${p.length}) — ${c+1}/10 body=${s.slice(0,80)}`),await this.persistJobSnapshot(a,{forcePreview:!1})}if(!r){let a=await i();throw Error(`Console accounts unavailable after login (HTTP ${q?.status||0}; cookies: ${a.list.slice(0,18).join(",")||"(none)"}; body=${s.slice(0,120)}) — session not accepted for API key`)}let t=g;if(Array.isArray(p)&&p.length>0){let a=p.find(a=>a?.lastLogin)||p[0];a?.type&&"personal"!==a.type&&a.enterpriseId?t=a.enterpriseId:a?.enterpriseId&&a?.type!=="personal"&&(t=a.enterpriseId)}this.setAccountStep(b,"creating_api_key",`Creating API key (enterprise=${t}, accounts=${p.length})`),await this.persistJobSnapshot(a,{forcePreview:!0});let u=async a=>d.evaluate(async({enterpriseId:a})=>{let b=(window.location.hostname||"www.codebuddy.cn").endsWith("codebuddy.cn")?window.location.origin:"https://www.codebuddy.cn",c=await fetch(`${b}/console/api/client/v1/api-keys`,{method:"POST",credentials:"include",headers:{"Content-Type":"application/json",Accept:"application/json, text/plain, */*","x-requested-with":"XMLHttpRequest","X-Domain":"www.codebuddy.cn","X-Product":"SaaS"},body:JSON.stringify({name:`zevai-router-${Date.now()}`,expire_in_days:365,user_enterprise_id:a})}),d=await c.text().catch(()=>""),e=null;try{e=d?JSON.parse(d):null}catch{e={_raw:String(d||"").slice(0,200)}}return{ok:c.ok,status:c.status,data:e}},{enterpriseId:a});await d.goto("https://www.codebuddy.cn/profile/keys",{waitUntil:"domcontentloaded",timeout:45e3}).catch(()=>null),await n();let v=await u(t).catch(()=>null);v&&v.ok||t===g||(this.setAccountStep(b,"retrying_api_key","Retrying with personal-edition enterprise id"),await this.persistJobSnapshot(a,{forcePreview:!1}),v=await u(g).catch(()=>null)),v&&v.ok||(this.setAccountStep(b,"retrying_api_key","Retrying API key from /console"),await this.persistJobSnapshot(a,{forcePreview:!0}),await d.goto("https://www.codebuddy.cn/console",{waitUntil:"domcontentloaded",timeout:45e3}).catch(()=>null),await n(),await d.goto("https://www.codebuddy.cn/profile/keys",{waitUntil:"domcontentloaded",timeout:45e3}).catch(()=>null),await n(),v=await u(g).catch(()=>null));let w=a=>!a?.ok&&(a?.status===401||a?.status===403||a?.status===0||!a);for(let c=1;c<=3&&w(v);c+=1){for(let e of(this.setAccountStep(b,"retrying_api_key",`API key 401/403 — OIDC re-handoff round ${c}/3 (waiting strong session)`),await this.persistJobSnapshot(a,{forcePreview:!0}),["https://www.codebuddy.cn/","https://www.codebuddy.cn/console","https://www.codebuddy.cn/profile/keys"]))await d.goto(e,{waitUntil:"domcontentloaded",timeout:45e3}).catch(()=>null),await n();await h(async()=>{let a=await i();return j(a.names)},{timeout:8e3*c,interval:300}).catch(()=>null),v=await u(g).catch(()=>null)}let x=v?.data?.code;if(!v||!v.ok||!v.data||0!==x&&200!==x&&void 0!==x){let a="string"==typeof v?.data?._raw?v.data._raw.replace(/\s+/g," ").slice(0,120):null,b=a&&/openresty|nginx|Authorization Required/i.test(a)?" [edge proxy blocked — session half-baked]":"";throw Error(`API key creation failed (HTTP ${v?.status??"no-response"}, code=${x??"n/a"})${b}: ${JSON.stringify(v?.data??null).slice(0,200)}`)}let y=v.data?.data||v.data,z=y?.apiKey||y?.key||y?.token||y?.secret||y?.api_key||("string"==typeof y?y:null)||v.data.apiKey||v.data.key||v.data.token||v.data.secret;if(!z||"string"!=typeof z)throw Error(`API key response did not contain a key field: ${JSON.stringify(v.data).slice(0,300)}`);this.setAccountStep(b,"api_key_created","API key created successfully"),await this.persistJobSnapshot(a,{forcePreview:!0}),this.setAccountStep(b,"saving_connection","Saving CodeBuddy CN connection"),await this.persistJobSnapshot(a,{forcePreview:!0});let{connection:A}=await this.saveConnection({apiKey:z,phone:b.phone,region:b.region,fiveSimOrderId:f,account:b});await e.finishOrder(f),this.finalizeAccount(b,"success",{connectionId:A.id,step:"connection_saved",message:`CodeBuddy CN connection saved (phone: ${b.phone})`}),b.runtimeSession=null,await c.close().catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0})}catch(g){this.finalizeAccount(b,"needs_manual",{error:`Registration succeeded but API key capture failed: ${g.message}`,step:"awaiting_manual",message:`Registration done, API key capture failed: ${g.message}`}),await e.finishOrder(f).catch(()=>null),await this.persistJobSnapshot(a,{forcePreview:!0}),await this.runCnManualFollowup(a,b,b.workerId,c,d,e,f)}}async runCnManualFollowup(a,b,c,d,e,f,g){let h=(async()=>{let c=async()=>{let a=b.manualSession,c=a?.context||d,e=a?.headedBrowser||null;c&&await c.close().catch(()=>null),e&&await e.close().catch(()=>null)};try{this.setAccountStep(b,"manual_waiting","Waiting for operator to complete in headed browser"),await this.persistJobSnapshot(a,{forcePreview:!0});let c=Date.now()+9e5,d=null;for(;Date.now()<c&&!a.cancelRequested;){await new Promise(a=>setTimeout(a,1e4));try{if(!e.url().includes("codebuddy.cn"))continue;let a=await e.evaluate(async()=>{let a=await fetch("/console/api/client/v1/api-keys",{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json, text/plain, */*","x-requested-with":"XMLHttpRequest","X-Domain":window.location.hostname||"www.codebuddy.cn","X-Product":"SaaS"},credentials:"include",body:JSON.stringify({name:"zevai-router-manual-"+Date.now(),expire_in_days:365,user_enterprise_id:"personal-edition-user-id"})}),b=await a.json().catch(()=>null);return{ok:a.ok,status:a.status,data:b}});if(a?.ok&&a.data){let b=a.data?.data||a.data;if((d=b?.apiKey||b?.key||b?.token||b?.secret||b?.api_key||("string"==typeof b?b:null))&&"string"==typeof d)break}}catch{}}if(a.cancelRequested){this.finalizeAccount(b,"cancelled",{error:"Job cancelled",step:"cancelled",message:"Job cancelled while waiting for manual completion"}),await this.persistJobSnapshot(a,{forcePreview:!0});return}if(!d)throw Error("Manual assist timed out — could not capture API key");this.setAccountStep(b,"saving_connection","Saving CodeBuddy CN connection (manual)"),await this.persistJobSnapshot(a,{forcePreview:!0});let{connection:f}=await this.saveConnection({apiKey:d,phone:b.phone,region:b.region,fiveSimOrderId:g,account:b});this.finalizeAccount(b,"success",{connectionId:f.id,step:"connection_saved",message:`CodeBuddy CN connection saved via manual assist (phone: ${b.phone||"N/A"})`}),await this.persistJobSnapshot(a,{forcePreview:!0})}catch(c){a.cancelRequested?this.finalizeAccount(b,"cancelled",{error:"Job cancelled",step:"cancelled",message:"Job cancelled while waiting for manual completion"}):this.finalizeAccount(b,"failed",{error:c.message||"Manual assist flow failed",step:"failed",message:c.message||"Manual assist flow failed"}),await this.persistJobSnapshot(a,{forcePreview:!0})}finally{await c(),b.manualSession=null,b.runtimeSession=null,a.manualFollowups.delete(h),await this.persistJobSnapshot(a,{forcePreview:!0})}})();a.manualFollowups.add(h)}cancelJob(a){let b=this.jobs.get(a);if(!b)return null;for(let a of(b.cancelRequested=!0,b.accounts)){a.abortController&&!a.abortController.signal.aborted&&a.abortController.abort();let b=a.runtimeSession?.context;b&&b.close().catch(()=>null),a.runtimeSession=null,a.manualSession=null}if(b.browser){let a=b.browser;b.browser=null,(0,W.forceCloseBrowser)(a).catch(()=>null)}return"queued"===b.status&&(b.status="cancelled",b.finishedAt=(0,e.kF)(),b.accounts.forEach(a=>{"queued"===a.status&&(a.status="cancelled")})),this.persistJobSnapshot(b,{forcePreview:!0}),ad(b)}}function ac({apiKey:a,proxyOptions:b}){return new q({apiKey:a,proxyOptions:b})}function ad(a,b={}){return a?{jobId:a.jobId,status:a.status,summary:function(a=[]){let b={total:a.length,queued:0,running:0,completed:0,success:0,failed:0,needs_manual:0,cancelled:0};for(let c of a){let a=c.status||"queued";"success"===a?(b.success+=1,b.completed+=1):"failed"===a||"failed_exchange"===a?(b.failed+=1,b.completed+=1):"needs_manual"===a?b.needs_manual+=1:"cancelled"===a?(b.cancelled+=1,b.completed+=1):"running"===a?b.running+=1:b.queued+=1}return b}(a.accounts),concurrency:a.concurrency,engine:a.engine,proxyPoolMode:a.proxyPoolMode,region:a.region,createdAt:a.createdAt,startedAt:a.startedAt,finishedAt:a.finishedAt,error:a.error,cancelRequested:a.cancelRequested,accounts:(a.accounts||[]).map(a=>({line:a.line,region:a.region,phone:a.phone,fiveSimOrderId:a.fiveSimOrderId,proxyUrl:a.proxyUrl?function(a){if(!a)return null;try{let b=new URL(a);return b.password&&(b.password="***"),b.toString()}catch{return a}}(a.proxyUrl):null,status:a.status,error:a.error,connectionId:a.connectionId,workerId:a.workerId,manualSessionAvailable:!!a.manualSession,currentStep:a.currentStep,updatedAt:a.updatedAt,logs:a.logs||[]})),preview:void 0!==b.preview?b.preview:a.lastPreview||null,...b}:null}function ae(){return(!globalThis.__codeBuddyCnBulkImportSingleton&&(globalThis.__codeBuddyCnBulkImportSingleton={manager:new ab}),globalThis.__codeBuddyCnBulkImportSingleton).manager}}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=8450,exports.ids=[8450],exports.modules={28948:(a,b,c)=>{c.d(b,{P:()=>e});var d=c(15626);async function e(a){let b=!!a?.apiKey,c=b?a.apiKey:a?.accessToken;if(!c)return null;let e=new AbortController,f=setTimeout(()=>e.abort(),5e3);try{let a=b?{Accept:"application/json",Authorization:`Bearer ${c}`}:(0,d.buildClineHeaders)(c,{Accept:"application/json"}),f=await fetch("https://api.cline.bot/api/v1/models",{method:"GET",headers:a,signal:e.signal});if(!f.ok)return null;let g=await f.json(),h=Array.isArray(g)?g:g?.data;if(!Array.isArray(h))return null;let i=h.filter(a=>"string"==typeof a?.id&&a.id.startsWith("cline-pass/")).map(a=>({id:a.id,name:a.name||a.id}));return i.length?{models:i}:null}catch{return null}finally{clearTimeout(f)}}},29679:(a,b,c)=>{c.d(b,{cW:()=>k});var d=c(47293),e=c(55511),f=c(8590),g=c(6382);let h="us-east-1",i=new Map;async function j(a,b){let c,f=a?.providerSpecificData?.profileArn||"",i=function(a){if(!a||"string"!=typeof a)return h;let b=a.split(":");return b.length>=4&&b[3]?b[3]:h}(f),j=new URLSearchParams;j.set("origin","AI_EDITOR"),f&&j.set("profileArn",f);let k=`https://q.${i}.amazonaws.com/ListAvailableModels?${j.toString()}`,l={...function(a){let b=a?.providerSpecificData?.clientId||a?.refreshToken||a?.providerSpecificData?.profileArn||a?.accessToken||"kiro-anonymous",c=(0,e.createHash)("sha256").update(String(b)).digest("hex"),{userAgent:f,amzUserAgent:h}=(0,g.VE)(c);return{"User-Agent":f,"x-amz-user-agent":h,"x-amzn-kiro-agent-mode":"vibe","x-amzn-codewhisperer-optout":"true","amz-sdk-request":"attempt=1; max=1","amz-sdk-invocation-id":(0,d.A)(),Accept:"application/json"}}(a),Authorization:`Bearer ${a?.accessToken||""}`},m=new AbortController,n=setTimeout(()=>m.abort("timeout"),3e4);b&&"function"==typeof b.addEventListener&&b.addEventListener("abort",()=>m.abort(b.reason));try{c=await fetch(k,{method:"GET",headers:l,signal:m.signal})}finally{clearTimeout(n)}if(!c.ok){let a=await c.text().catch(()=>""),b=Error(`Kiro ListAvailableModels ${c.status}: ${a||c.statusText}`);throw b.status=c.status,b.body=a,b}let o=await c.json();return Array.isArray(o?.models)?o.models:[]}async function k(a,b={}){let c,d,g;if(!a||!a.accessToken)return b.log?.debug?.("KIRO_MODELS","No accessToken; skipping live fetch"),null;let h=(g=(d=a?.providerSpecificData||{}).profileArn||d.clientId||a?.refreshToken||a?.accessToken||"anonymous",(0,e.createHash)("sha256").update(`kiro:${g}`).digest("hex")),l=Date.now();if(!b.forceRefresh){let a=i.get(h);if(a&&a.expiresAt>l)return{models:a.models,rawModels:a.rawModels}}try{c=await j(a,b.signal)}catch(d){if(!d||401!==d.status||!a.refreshToken)return b.log?.warn?.("KIRO_MODELS",`ListAvailableModels failed: ${d?.message||d}`),null;{b.log?.info?.("KIRO_MODELS","Got 401 from Kiro; refreshing token");let d=await (0,f.Ql)(a.refreshToken,a.providerSpecificData,b.log);if(!d?.accessToken)return b.log?.warn?.("KIRO_MODELS","Token refresh did not return accessToken"),null;{let e={...a,...d};if("function"==typeof b.onCredentialsRefreshed)try{await b.onCredentialsRefreshed(d)}catch(a){b.log?.warn?.("KIRO_MODELS",`onCredentialsRefreshed failed: ${a?.message||a}`)}try{c=await j(e,b.signal),a.accessToken=e.accessToken,e.refreshToken&&(a.refreshToken=e.refreshToken)}catch(a){return b.log?.warn?.("KIRO_MODELS",`Retry after refresh failed: ${a?.message||a}`),null}}}}let m=[];for(let a of c){if(!a||"object"!=typeof a)continue;let b=a.modelId||a.id;if(!b)continue;let c=function(a,b,c){let d=(a||b||"Kiro").trim(),e=Number(c);if(!Number.isFinite(e)||1e-9>Math.abs(e-1)||e<=0)return`Kiro ${d}`;let f=e.toFixed(1).replace(",",".");return`Kiro ${d} (${f}x credit)`}(a.modelName,b,a.rateMultiplier),d=Number(a?.tokenLimits?.maxInputTokens)||2e5;for(let e of function(a,b){let c,d=((c=a).endsWith("-agentic")&&(c=c.slice(0,-8)),c.endsWith("-thinking")&&(c=c.slice(0,-9)),c),e=b||`Kiro ${d}`,f=[{id:d,name:e,capabilities:{thinking:!1,agentic:!1}},{id:`${d}-thinking`,name:`${e} (Thinking)`,capabilities:{thinking:!0,agentic:!1}}];return"auto"!==d&&(f.push({id:`${d}-agentic`,name:`${e} (Agentic)`,capabilities:{thinking:!1,agentic:!0}}),f.push({id:`${d}-thinking-agentic`,name:`${e} (Thinking + Agentic)`,capabilities:{thinking:!0,agentic:!0}})),f}(b,c))m.push({...e,contextLength:d,rateMultiplier:Number.isFinite(Number(a.rateMultiplier))?Number(a.rateMultiplier):1,upstreamModelId:b,description:a.description||""})}return i.set(h,{expiresAt:l+3e5,models:m,rawModels:c}),{models:m,rawModels:c}}},47293:(a,b,c)=>{c.d(b,{A:()=>f});let d=new Uint8Array(16);var e=c(50122);let f=function(a,b,c){return b||a||!crypto.randomUUID?function(a,b,c){let f=(a=a||{}).random??a.rng?.()??crypto.getRandomValues(d);if(f.length<16)throw Error("Random bytes length must be >= 16");if(f[6]=15&f[6]|64,f[8]=63&f[8]|128,b){if((c=c||0)<0||c+16>b.length)throw RangeError(`UUID byte range ${c}:${c+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[c+a]=f[a];return b}return(0,e.k)(f)}(a,b,c):crypto.randomUUID()}},50122:(a,b,c)=>{c.d(b,{k:()=>e});let d=[];for(let a=0;a<256;++a)d.push((a+256).toString(16).slice(1));function e(a,b=0){return(d[a[b+0]]+d[a[b+1]]+d[a[b+2]]+d[a[b+3]]+"-"+d[a[b+4]]+d[a[b+5]]+"-"+d[a[b+6]]+d[a[b+7]]+"-"+d[a[b+8]]+d[a[b+9]]+"-"+d[a[b+10]]+d[a[b+11]]+d[a[b+12]]+d[a[b+13]]+d[a[b+14]]+d[a[b+15]]).toLowerCase()}},84534:(a,b,c)=>{c.d(b,{v:()=>i});var d=c(39609),e=c(75924),f=c(8590);let g=new Map;async function h(a,b){let c=new AbortController,f=setTimeout(()=>c.abort(),1e4);try{let f=await (0,d.proxyAwareFetch)("https://api.githubcopilot.com/models",{method:"GET",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/json","Copilot-Integration-Id":"vscode-chat","editor-version":`vscode/${e.x0.VSCODE_VERSION}`,"editor-plugin-version":`copilot-chat/${e.x0.COPILOT_CHAT_VERSION}`,"user-agent":e.x0.USER_AGENT,"x-github-api-version":e.x0.API_VERSION},cache:"no-store",signal:b||c.signal});if(!f.ok){let a=Error(`Copilot /models returned ${f.status}`);throw a.status=f.status,a}let g=await f.json();return Array.isArray(g?.data)?g.data:[]}finally{clearTimeout(f)}}async function i(a,b={}){let c,d=a?.providerSpecificData?.copilotToken||a?.accessToken;if(!d)return b.log?.debug?.("COPILOT_MODELS","No copilotToken/accessToken; skipping live fetch"),null;let e=a?.providerSpecificData?.copilotToken||a?.accessToken||"copilot-anonymous",j=Date.now();if(!b.forceRefresh){let a=g.get(e);if(a&&a.expiresAt>j)return{models:a.models}}try{c=await h(d,b.signal)}catch(d){if(!d||401!==d.status&&403!==d.status||!a.accessToken)return b.log?.warn?.("COPILOT_MODELS",`Live model fetch failed: ${d?.message||d}`),null;{b.log?.info?.("COPILOT_MODELS",`Got ${d.status}; refreshing Copilot token`);let e=await (0,f.jR)(a.accessToken);if(!e?.token)return b.log?.warn?.("COPILOT_MODELS","Token refresh did not return a token"),null;if("function"==typeof b.onCredentialsRefreshed)try{await b.onCredentialsRefreshed({copilotToken:e.token,copilotTokenExpiresAt:e.expiresAt})}catch(a){b.log?.warn?.("COPILOT_MODELS",`onCredentialsRefreshed failed: ${a?.message||a}`)}try{c=await h(e.token,b.signal)}catch(a){return b.log?.warn?.("COPILOT_MODELS",`Retry after refresh failed: ${a?.message||a}`),null}}}let k=function(a){let b=new Set,c=[];for(let d of a){if(!d||"object"!=typeof d||d.capabilities?.type!=="chat"||d.policy&&"enabled"!==d.policy.state)continue;let a=d.id;!a||b.has(a)||(b.add(a),c.push({id:a,name:d.name||a}))}return c}(c);return k.length?(g.set(e,{expiresAt:j+3e5,models:k}),{models:k}):null}},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,KK:()=>d.KK,L:()=>d.L,L9:()=>d.L9,Lh:()=>d.Lh,Mc:()=>d.Mc,NR:()=>d.NR,OM:()=>d.OM,PX:()=>d.PX,Pb:()=>d.Pb,Pc:()=>d.Pc,QI:()=>d.QI,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,dK:()=>d.dK,ek:()=>d.ek,fK:()=>d.fK,fv:()=>d.fv,getProviderConnections:()=>d.P,getQuotaSnapshot:()=>d.LF,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,p3:()=>d.p3,qd:()=>d.qd,r4:()=>d.r4,tV:()=>d.tV,uL:()=>d.uL,ui:()=>d.ui,updateProviderConnection:()=>d.rj,uv:()=>d.uv,yF:()=>d.yF,yW:()=>d.yW,yg:()=>d.yg,zP:()=>d.zP,zY:()=>d.zY});var d=c(80601)}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=8520,exports.ids=[8520],exports.modules={88520:(a,b,c)=>{c.d(b,{createNodeSqliteAdapter:()=>e});var d=c(63775);async function e(a){let b=process.emit;process.emit=function(a,c,...d){return!("warning"===a&&c?.name==="ExperimentalWarning"&&/SQLite/i.test(c.message||""))&&b.call(process,a,c,...d)};let e=new(await Promise.resolve().then(c.t.bind(c,79868,23))).DatabaseSync(a);e.exec(d.oG);let f=new Map;function g(a){let b=f.get(a);return b||(b=e.prepare(a),f.set(a,b)),b}let h=setInterval(()=>{try{e.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}},6e4);function i(){try{e.exec("PRAGMA wal_checkpoint(TRUNCATE)")}catch{}try{f.clear()}catch{}try{e.close()}catch{}}"function"==typeof h.unref&&h.unref();let j=()=>i();return process.once("beforeExit",j),process.once("SIGINT",()=>{j(),process.exit(0)}),process.once("SIGTERM",()=>{j(),process.exit(0)}),{driver:"node:sqlite",run(a,b=[]){let c=g(a).run(...b);return{changes:Number(c.changes??0),lastInsertRowid:Number(c.lastInsertRowid??0)}},get:(a,b=[])=>g(a).get(...b),all:(a,b=[])=>g(a).all(...b),exec:a=>e.exec(a),transaction(a){let b=`sp_${Math.random().toString(36).slice(2)}`;e.exec(`SAVEPOINT ${b}`);try{let c=a();return e.exec(`RELEASE ${b}`),c}catch(a){try{e.exec(`ROLLBACK TO ${b}`),e.exec(`RELEASE ${b}`)}catch{}throw a}},checkpoint(){e.exec("PRAGMA wal_checkpoint(TRUNCATE)")},close(){clearInterval(h),i()},raw:e}}}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=8590,exports.ids=[8590],exports.modules={8590:(a,b,c)=>{c.d(b,{$B:()=>x,I9:()=>p,Og:()=>m,Ql:()=>t,Sc:()=>y,jR:()=>w,jT:()=>l,oD:()=>i,pb:()=>A,qZ:()=>B});var d=c(35024),e=c(75924),f=c(39609);let g=null;async function h(a,b){return a?k("xai",a,async()=>{try{g||(g=new(await Promise.all([c.e(3104),c.e(2030)]).then(c.bind(c,82030))).XaiService);let b=await g.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 i=3e5,j=new Map;async function k(a,b,c,d){if(!b)return c();let e=`${a}:${b}`,f=j.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;j.delete(e)}let g=(async()=>{try{let a=await c();return j.set(e,{result:a,expiresAt:Date.now()+1e4}),a}catch(a){throw j.delete(e),a}})();return j.set(e,{promise:g}),g}function l(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 m(a){return e.Wu[a]||i}async function n(a,b,c,e){let f=d.xq[a];return f&&f.refreshUrl?b?k(a,b,async()=>{try{let c=await fetch(f.refreshUrl,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:b,client_id:f.clientId,client_secret:f.clientSecret})});if(!c.ok){let b=await c.text();return e?.error?.("TOKEN_REFRESH",`Failed to refresh token for ${a}`,{status:c.status,error:b}),null}let d=await c.json();return e?.info?.("TOKEN_REFRESH",`Successfully refreshed token for ${a}`,{hasNewAccessToken:!!d.access_token,hasNewRefreshToken:!!d.refresh_token,expiresIn:d.expires_in}),{accessToken:d.access_token,refreshToken:d.refresh_token||b,expiresIn:d.expires_in}}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 o(a,b){return a?k("claude",a,async()=>{try{let c=await fetch(e.NA.anthropic.token,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.claude.clientId})});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Claude OAuth token",{status:c.status,error:a}),null}let f=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Claude OAuth token",{hasNewAccessToken:!!f.access_token,expiresIn:f.expires_in}),{accessToken:f.access_token,refreshToken:f.refresh_token||a,expiresIn:f.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Claude token: ${a.message}`),null}},b):null}async function p(a,b,c,d){return a?k(`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 q(a,b){return a?k("qwen",a,async()=>{let c=e.NA.qwen.token;try{let e=await fetch(c,{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:d.xq.qwen.clientId})});if(200===e.status){let c=await e.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Qwen token",{hasNewAccessToken:!!c.access_token,hasNewRefreshToken:!!c.refresh_token,expiresIn:c.expires_in}),{accessToken:c.access_token,refreshToken:c.refresh_token||a,expiresIn:c.expires_in,providerSpecificData:c.resource_url?{resourceUrl:c.resource_url}:void 0}}{let a=await e.text().catch(()=>"");b?.warn?.("TOKEN_REFRESH","Error with Qwen endpoint",{status:e.status,error:a})}}catch(a){b?.warn?.("TOKEN_REFRESH","Network error trying Qwen endpoint",{error:a.message})}return b?.error?.("TOKEN_REFRESH","Failed to refresh Qwen token"),null},b):null}async function r(a,b,c="codebuddy"){return a?k(c,a,async()=>{try{let e=d.xq[c]||d.xq.codebuddy,g=e.refreshUrl,h=e.domain||"www.codebuddy.ai",i=await (0,f.proxyAwareFetch)(g,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"CLI/2.63.2 CodeBuddy/2.63.2","X-Requested-With":"XMLHttpRequest","X-Domain":h,"X-Refresh-Token":a,"X-Auth-Refresh-Source":"plugin","X-Product":"SaaS"},body:"{}"});if(!i.ok)return b?.error?.("TOKEN_REFRESH",`Failed to refresh token for ${c}`,{status:i.status,error:await i.text().catch(()=>"")}),null;let j=await i.json(),k=j?.data||j,l=k?.accessToken||k?.access_token;if(!l)return null;return{accessToken:l,refreshToken:k?.refreshToken||k?.refresh_token||a,expiresIn:k?.expiresIn||k?.expires_in||86400}}catch(a){return b?.error?.("TOKEN_REFRESH",`Error refreshing token for ${c}`,{error:a.message}),null}},b):null}async function s(a,b){return a?k("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 t(a,b,c,e=null){return a?k("kiro",a,async()=>{let g=b?.authMethod,h=b?.clientId,i=b?.clientSecret,j=b?.region;if(h&&i){let b="idc"===g&&j?`https://oidc.${j}.amazonaws.com/token`:"https://oidc.us-east-1.amazonaws.com/token",d=await (0,f.proxyAwareFetch)(b,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:h,clientSecret:i,refreshToken:a,grantType:"refresh_token"})},e);if(!d.ok){let a=await d.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro AWS token",{status:d.status,error:a}),null}let k=await d.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro AWS token",{hasNewAccessToken:!!k.accessToken,expiresIn:k.expiresIn}),{accessToken:k.accessToken,refreshToken:k.refreshToken||a,expiresIn:k.expiresIn}}let k=await (0,f.proxyAwareFetch)(d.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json","User-Agent":"kiro-cli/2.12.2"},body:JSON.stringify({refreshToken:a})},e);if(!k.ok){let a=await k.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro social token",{status:k.status,error:a}),null}let l=await k.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro social token",{hasNewAccessToken:!!l.accessToken,expiresIn:l.expiresIn}),{accessToken:l.accessToken,refreshToken:l.refreshToken||a,expiresIn:l.expiresIn}},c):null}async function u(a,b){return a?k("iflow",a,async()=>{let c=btoa(`${d.xq.iflow.clientId}:${d.xq.iflow.clientSecret}`),f=await fetch(e.NA.iflow.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json",Authorization:`Basic ${c}`},body:new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:d.xq.iflow.clientId,client_secret:d.xq.iflow.clientSecret})});if(!f.ok){let a=await f.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh iFlow token",{status:f.status,error:a}),null}let g=await f.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed iFlow token",{hasNewAccessToken:!!g.access_token,hasNewRefreshToken:!!g.refresh_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}},b):null}async function v(a,b){return a?k("github",a,async()=>{let c={grant_type:"refresh_token",refresh_token:a,client_id:d.xq.github.clientId};d.xq.github.clientSecret&&(c.client_secret=d.xq.github.clientSecret);let f=await fetch(e.NA.github.token,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:new URLSearchParams(c)});if(!f.ok){let a=await f.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh GitHub token",{status:f.status,error:a}),null}let g=await f.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed GitHub token",{hasNewAccessToken:!!g.access_token,hasNewRefreshToken:!!g.refresh_token,expiresIn:g.expires_in}),{accessToken:g.access_token,refreshToken:g.refresh_token||a,expiresIn:g.expires_in}},b):null}async function w(a,b){return a?k("copilot",a,async()=>{try{let c=await fetch("https://api.github.com/copilot_internal/v2/token",{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 d=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Copilot token",{hasToken:!!d.token,expiresAt:d.expires_at}),{token:d.token,expiresAt:d.expires_at}}catch(a){return b?.error?.("TOKEN_REFRESH","Error refreshing Copilot token",{error:a.message}),null}},b):null}async function x(a,b,c){if(!b.refreshToken)return null;switch(a){case"gemini-cli":case"antigravity":return p(b.refreshToken,d.xq[a].clientId,d.xq[a].clientSecret,c);case"claude":return o(b.refreshToken,c);case"codex":return s(b.refreshToken,c);case"qwen":return q(b.refreshToken,c);case"codebuddy":return r(b.refreshToken,c,"codebuddy");case"codebuddy-cn":return r(b.refreshToken,c,"codebuddy-cn");case"iflow":return u(b.refreshToken,c);case"github":return v(b.refreshToken,c);case"kiro":return t(b.refreshToken,b.providerSpecificData,c);case"xai":case"grok-cli":return h(b.refreshToken,c);case"vertex":case"vertex-partner":{let a=y(b.apiKey);if(!a)return null;return A(a,c)}default:return n(a,b.refreshToken,b,c)}}function y(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 z=new Map;async function A(a,b){let d=a.client_email,e=z.get(d);if(e&&e.expiresAt-Date.now()>3e5)return{accessToken:e.token,expiresAt:e.expiresAt};try{let{SignJWT:e,importPKCS8:f}=await Promise.all([c.e(6935),c.e(8971)]).then(c.bind(c,8971));b?.debug?.("TOKEN_REFRESH",`Vertex minting token for ${a.client_email}`);let g=await f(a.private_key.replace(/\\n/g,"\n"),"RS256"),h=Math.floor(Date.now()/1e3),i=await new e({scope:"https://www.googleapis.com/auth/cloud-platform"}).setProtectedHeader({alg:"RS256"}).setIssuer(a.client_email).setAudience("https://oauth2.googleapis.com/token").setIssuedAt(h).setExpirationTime(h+3600).sign(g),j=await fetch("https://oauth2.googleapis.com/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:i})});if(!j.ok){let a=await j.text();return b?.error?.("TOKEN_REFRESH",`Vertex token mint failed: ${a}`),null}let{access_token:k,expires_in:l}=await j.json(),m=Date.now()+(l??3600)*1e3;return z.set(d,{token:k,expiresAt:m}),b?.info?.("TOKEN_REFRESH",`Vertex token minted for ${a.client_email}`),{accessToken:k,expiresAt:m}}catch(a){return b?.error?.("TOKEN_REFRESH",`Vertex token error: ${a.message}`),null}}async function B(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}}};