omniroute 0.8.0 → 0.8.5

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 (755) hide show
  1. package/README.md +67 -28
  2. package/app/.next/BUILD_ID +1 -1
  3. package/app/.next/app-path-routes-manifest.json +27 -27
  4. package/app/.next/build-manifest.json +3 -3
  5. package/app/.next/prerender-manifest.json +3 -3
  6. package/app/.next/react-loadable-manifest.json +2 -2
  7. package/app/.next/required-server-files.json +1 -1
  8. package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js +2 -2
  9. package/app/.next/server/app/(dashboard)/dashboard/analytics/page.js.nft.json +1 -1
  10. package/app/.next/server/app/(dashboard)/dashboard/analytics/page_client-reference-manifest.js +1 -1
  11. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js +4 -4
  12. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page.js.nft.json +1 -1
  13. package/app/.next/server/app/(dashboard)/dashboard/cli-tools/page_client-reference-manifest.js +1 -1
  14. package/app/.next/server/app/(dashboard)/dashboard/combos/page.js +2 -2
  15. package/app/.next/server/app/(dashboard)/dashboard/combos/page.js.nft.json +1 -1
  16. package/app/.next/server/app/(dashboard)/dashboard/combos/page_client-reference-manifest.js +1 -1
  17. package/app/.next/server/app/(dashboard)/dashboard/costs/page.js +2 -2
  18. package/app/.next/server/app/(dashboard)/dashboard/costs/page.js.nft.json +1 -1
  19. package/app/.next/server/app/(dashboard)/dashboard/costs/page_client-reference-manifest.js +1 -1
  20. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js +2 -2
  21. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page.js.nft.json +1 -1
  22. package/app/.next/server/app/(dashboard)/dashboard/endpoint/page_client-reference-manifest.js +1 -1
  23. package/app/.next/server/app/(dashboard)/dashboard/health/page.js +2 -2
  24. package/app/.next/server/app/(dashboard)/dashboard/health/page.js.nft.json +1 -1
  25. package/app/.next/server/app/(dashboard)/dashboard/health/page_client-reference-manifest.js +1 -1
  26. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js +2 -2
  27. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page.js.nft.json +1 -1
  28. package/app/.next/server/app/(dashboard)/dashboard/onboarding/page_client-reference-manifest.js +1 -1
  29. package/app/.next/server/app/(dashboard)/dashboard/page.js +2 -2
  30. package/app/.next/server/app/(dashboard)/dashboard/page.js.nft.json +1 -1
  31. package/app/.next/server/app/(dashboard)/dashboard/page_client-reference-manifest.js +1 -1
  32. package/app/.next/server/app/(dashboard)/dashboard/profile/page.js +2 -2
  33. package/app/.next/server/app/(dashboard)/dashboard/profile/page.js.nft.json +1 -1
  34. package/app/.next/server/app/(dashboard)/dashboard/profile/page_client-reference-manifest.js +1 -1
  35. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js +2 -2
  36. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page.js.nft.json +1 -1
  37. package/app/.next/server/app/(dashboard)/dashboard/providers/[id]/page_client-reference-manifest.js +1 -1
  38. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js +2 -2
  39. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page.js.nft.json +1 -1
  40. package/app/.next/server/app/(dashboard)/dashboard/providers/new/page_client-reference-manifest.js +1 -1
  41. package/app/.next/server/app/(dashboard)/dashboard/providers/page.js +2 -2
  42. package/app/.next/server/app/(dashboard)/dashboard/providers/page.js.nft.json +1 -1
  43. package/app/.next/server/app/(dashboard)/dashboard/providers/page_client-reference-manifest.js +1 -1
  44. package/app/.next/server/app/(dashboard)/dashboard/settings/page.js +2 -2
  45. package/app/.next/server/app/(dashboard)/dashboard/settings/page.js.nft.json +1 -1
  46. package/app/.next/server/app/(dashboard)/dashboard/settings/page_client-reference-manifest.js +1 -1
  47. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js +2 -2
  48. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page.js.nft.json +1 -1
  49. package/app/.next/server/app/(dashboard)/dashboard/settings/pricing/page_client-reference-manifest.js +1 -1
  50. package/app/.next/server/app/(dashboard)/dashboard/translator/page.js +3 -3
  51. package/app/.next/server/app/(dashboard)/dashboard/translator/page.js.nft.json +1 -1
  52. package/app/.next/server/app/(dashboard)/dashboard/translator/page_client-reference-manifest.js +1 -1
  53. package/app/.next/server/app/(dashboard)/dashboard/usage/page.js +2 -2
  54. package/app/.next/server/app/(dashboard)/dashboard/usage/page.js.nft.json +1 -1
  55. package/app/.next/server/app/(dashboard)/dashboard/usage/page_client-reference-manifest.js +1 -1
  56. package/app/.next/server/app/_global-error/page.js +3 -3
  57. package/app/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  58. package/app/.next/server/app/_global-error.html +2 -2
  59. package/app/.next/server/app/_global-error.rsc +3 -3
  60. package/app/.next/server/app/_global-error.segments/_full.segment.rsc +3 -3
  61. package/app/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  62. package/app/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  63. package/app/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  64. package/app/.next/server/app/_global-error.segments/_index.segment.rsc +2 -2
  65. package/app/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  66. package/app/.next/server/app/_not-found/page.js +2 -2
  67. package/app/.next/server/app/_not-found/page.js.nft.json +1 -1
  68. package/app/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  69. package/app/.next/server/app/_not-found.html +1 -1
  70. package/app/.next/server/app/_not-found.rsc +4 -4
  71. package/app/.next/server/app/_not-found.segments/_full.segment.rsc +4 -4
  72. package/app/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  73. package/app/.next/server/app/_not-found.segments/_index.segment.rsc +3 -3
  74. package/app/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  75. package/app/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  76. package/app/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  77. package/app/.next/server/app/api/auth/login/route.js +1 -1
  78. package/app/.next/server/app/api/auth/login/route.js.nft.json +1 -1
  79. package/app/.next/server/app/api/auth/login/route_client-reference-manifest.js +1 -1
  80. package/app/.next/server/app/api/auth/logout/route.js +1 -1
  81. package/app/.next/server/app/api/auth/logout/route_client-reference-manifest.js +1 -1
  82. package/app/.next/server/app/api/cache/route.js +2 -2
  83. package/app/.next/server/app/api/cache/route.js.nft.json +1 -1
  84. package/app/.next/server/app/api/cache/route_client-reference-manifest.js +1 -1
  85. package/app/.next/server/app/api/cache/stats/route.js +1 -1
  86. package/app/.next/server/app/api/cache/stats/route_client-reference-manifest.js +1 -1
  87. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js +2 -2
  88. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route.js.nft.json +1 -1
  89. package/app/.next/server/app/api/cli-tools/antigravity-mitm/alias/route_client-reference-manifest.js +1 -1
  90. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js +4 -4
  91. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route.js.nft.json +1 -1
  92. package/app/.next/server/app/api/cli-tools/antigravity-mitm/route_client-reference-manifest.js +1 -1
  93. package/app/.next/server/app/api/cli-tools/backups/route.js +2 -2
  94. package/app/.next/server/app/api/cli-tools/backups/route_client-reference-manifest.js +1 -1
  95. package/app/.next/server/app/api/cli-tools/claude-settings/route.js +2 -2
  96. package/app/.next/server/app/api/cli-tools/claude-settings/route_client-reference-manifest.js +1 -1
  97. package/app/.next/server/app/api/cli-tools/cline-settings/route.js +2 -2
  98. package/app/.next/server/app/api/cli-tools/cline-settings/route_client-reference-manifest.js +1 -1
  99. package/app/.next/server/app/api/cli-tools/codex-profiles/route.js +2 -2
  100. package/app/.next/server/app/api/cli-tools/codex-profiles/route.js.nft.json +1 -1
  101. package/app/.next/server/app/api/cli-tools/codex-profiles/route_client-reference-manifest.js +1 -1
  102. package/app/.next/server/app/api/cli-tools/codex-settings/route.js +2 -2
  103. package/app/.next/server/app/api/cli-tools/codex-settings/route_client-reference-manifest.js +1 -1
  104. package/app/.next/server/app/api/cli-tools/droid-settings/route.js +2 -2
  105. package/app/.next/server/app/api/cli-tools/droid-settings/route_client-reference-manifest.js +1 -1
  106. package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route.js +1 -1
  107. package/app/.next/server/app/api/cli-tools/guide-settings/[toolId]/route_client-reference-manifest.js +1 -1
  108. package/app/.next/server/app/api/cli-tools/kilo-settings/route.js +2 -2
  109. package/app/.next/server/app/api/cli-tools/kilo-settings/route_client-reference-manifest.js +1 -1
  110. package/app/.next/server/app/api/cli-tools/openclaw-settings/route.js +2 -2
  111. package/app/.next/server/app/api/cli-tools/openclaw-settings/route_client-reference-manifest.js +1 -1
  112. package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route.js +2 -2
  113. package/app/.next/server/app/api/cli-tools/runtime/[toolId]/route_client-reference-manifest.js +1 -1
  114. package/app/.next/server/app/api/cli-tools/status/route.js +2 -2
  115. package/app/.next/server/app/api/cli-tools/status/route_client-reference-manifest.js +1 -1
  116. package/app/.next/server/app/api/cloud/auth/route.js +1 -1
  117. package/app/.next/server/app/api/cloud/auth/route.js.nft.json +1 -1
  118. package/app/.next/server/app/api/cloud/auth/route_client-reference-manifest.js +1 -1
  119. package/app/.next/server/app/api/cloud/credentials/update/route.js +1 -1
  120. package/app/.next/server/app/api/cloud/credentials/update/route.js.nft.json +1 -1
  121. package/app/.next/server/app/api/cloud/credentials/update/route_client-reference-manifest.js +1 -1
  122. package/app/.next/server/app/api/cloud/model/resolve/route.js +1 -1
  123. package/app/.next/server/app/api/cloud/model/resolve/route.js.nft.json +1 -1
  124. package/app/.next/server/app/api/cloud/model/resolve/route_client-reference-manifest.js +1 -1
  125. package/app/.next/server/app/api/cloud/models/alias/route.js +1 -1
  126. package/app/.next/server/app/api/cloud/models/alias/route.js.nft.json +1 -1
  127. package/app/.next/server/app/api/cloud/models/alias/route_client-reference-manifest.js +1 -1
  128. package/app/.next/server/app/api/combos/[id]/route.js +1 -1
  129. package/app/.next/server/app/api/combos/[id]/route.js.nft.json +1 -1
  130. package/app/.next/server/app/api/combos/[id]/route_client-reference-manifest.js +1 -1
  131. package/app/.next/server/app/api/combos/metrics/route.js +1 -1
  132. package/app/.next/server/app/api/combos/metrics/route_client-reference-manifest.js +1 -1
  133. package/app/.next/server/app/api/combos/route.js +1 -1
  134. package/app/.next/server/app/api/combos/route.js.nft.json +1 -1
  135. package/app/.next/server/app/api/combos/route_client-reference-manifest.js +1 -1
  136. package/app/.next/server/app/api/combos/test/route.js +1 -1
  137. package/app/.next/server/app/api/combos/test/route.js.nft.json +1 -1
  138. package/app/.next/server/app/api/combos/test/route_client-reference-manifest.js +1 -1
  139. package/app/.next/server/app/api/compliance/audit-log/route.js +1 -1
  140. package/app/.next/server/app/api/compliance/audit-log/route.js.nft.json +1 -1
  141. package/app/.next/server/app/api/compliance/audit-log/route_client-reference-manifest.js +1 -1
  142. package/app/.next/server/app/api/db-backups/route.js +1 -1
  143. package/app/.next/server/app/api/db-backups/route.js.nft.json +1 -1
  144. package/app/.next/server/app/api/db-backups/route_client-reference-manifest.js +1 -1
  145. package/app/.next/server/app/api/evals/[suiteId]/route.js +1 -1
  146. package/app/.next/server/app/api/evals/[suiteId]/route_client-reference-manifest.js +1 -1
  147. package/app/.next/server/app/api/evals/route.js +1 -1
  148. package/app/.next/server/app/api/evals/route_client-reference-manifest.js +1 -1
  149. package/app/.next/server/app/api/fallback/chains/route.js +2 -2
  150. package/app/.next/server/app/api/fallback/chains/route.js.nft.json +1 -1
  151. package/app/.next/server/app/api/fallback/chains/route_client-reference-manifest.js +1 -1
  152. package/app/.next/server/app/api/init/route.js +1 -1
  153. package/app/.next/server/app/api/init/route.js.nft.json +1 -1
  154. package/app/.next/server/app/api/init/route_client-reference-manifest.js +1 -1
  155. package/app/.next/server/app/api/keys/[id]/route.js +1 -1
  156. package/app/.next/server/app/api/keys/[id]/route.js.nft.json +1 -1
  157. package/app/.next/server/app/api/keys/[id]/route_client-reference-manifest.js +1 -1
  158. package/app/.next/server/app/api/keys/route.js +1 -1
  159. package/app/.next/server/app/api/keys/route.js.nft.json +1 -1
  160. package/app/.next/server/app/api/keys/route_client-reference-manifest.js +1 -1
  161. package/app/.next/server/app/api/models/alias/route.js +1 -1
  162. package/app/.next/server/app/api/models/alias/route.js.nft.json +1 -1
  163. package/app/.next/server/app/api/models/alias/route_client-reference-manifest.js +1 -1
  164. package/app/.next/server/app/api/models/availability/route.js +1 -1
  165. package/app/.next/server/app/api/models/availability/route_client-reference-manifest.js +1 -1
  166. package/app/.next/server/app/api/models/catalog/route.js +2 -2
  167. package/app/.next/server/app/api/models/catalog/route.js.nft.json +1 -1
  168. package/app/.next/server/app/api/models/catalog/route_client-reference-manifest.js +1 -1
  169. package/app/.next/server/app/api/models/route.js +2 -2
  170. package/app/.next/server/app/api/models/route.js.nft.json +1 -1
  171. package/app/.next/server/app/api/models/route_client-reference-manifest.js +1 -1
  172. package/app/.next/server/app/api/monitoring/health/route.js +2 -2
  173. package/app/.next/server/app/api/monitoring/health/route.js.nft.json +1 -1
  174. package/app/.next/server/app/api/monitoring/health/route_client-reference-manifest.js +1 -1
  175. package/app/.next/server/app/api/oauth/[provider]/[action]/route.js +2 -2
  176. package/app/.next/server/app/api/oauth/[provider]/[action]/route.js.nft.json +1 -1
  177. package/app/.next/server/app/api/oauth/[provider]/[action]/route_client-reference-manifest.js +1 -1
  178. package/app/.next/server/app/api/oauth/cursor/auto-import/route.js +1 -1
  179. package/app/.next/server/app/api/oauth/cursor/auto-import/route_client-reference-manifest.js +1 -1
  180. package/app/.next/server/app/api/oauth/cursor/import/route.js +1 -1
  181. package/app/.next/server/app/api/oauth/cursor/import/route.js.nft.json +1 -1
  182. package/app/.next/server/app/api/oauth/cursor/import/route_client-reference-manifest.js +1 -1
  183. package/app/.next/server/app/api/oauth/kiro/auto-import/route.js +1 -1
  184. package/app/.next/server/app/api/oauth/kiro/auto-import/route_client-reference-manifest.js +1 -1
  185. package/app/.next/server/app/api/oauth/kiro/import/route.js +1 -1
  186. package/app/.next/server/app/api/oauth/kiro/import/route.js.nft.json +1 -1
  187. package/app/.next/server/app/api/oauth/kiro/import/route_client-reference-manifest.js +1 -1
  188. package/app/.next/server/app/api/oauth/kiro/social-authorize/route.js +1 -1
  189. package/app/.next/server/app/api/oauth/kiro/social-authorize/route_client-reference-manifest.js +1 -1
  190. package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js +1 -1
  191. package/app/.next/server/app/api/oauth/kiro/social-exchange/route.js.nft.json +1 -1
  192. package/app/.next/server/app/api/oauth/kiro/social-exchange/route_client-reference-manifest.js +1 -1
  193. package/app/.next/server/app/api/policies/route.js +2 -2
  194. package/app/.next/server/app/api/policies/route.js.nft.json +1 -1
  195. package/app/.next/server/app/api/policies/route_client-reference-manifest.js +1 -1
  196. package/app/.next/server/app/api/pricing/defaults/route.js +1 -1
  197. package/app/.next/server/app/api/pricing/defaults/route_client-reference-manifest.js +1 -1
  198. package/app/.next/server/app/api/pricing/models/route.js +1 -1
  199. package/app/.next/server/app/api/pricing/models/route.js.nft.json +1 -1
  200. package/app/.next/server/app/api/pricing/models/route_client-reference-manifest.js +1 -1
  201. package/app/.next/server/app/api/pricing/route.js +1 -1
  202. package/app/.next/server/app/api/pricing/route.js.nft.json +1 -1
  203. package/app/.next/server/app/api/pricing/route_client-reference-manifest.js +1 -1
  204. package/app/.next/server/app/api/provider-metrics/route.js +2 -2
  205. package/app/.next/server/app/api/provider-metrics/route.js.nft.json +1 -1
  206. package/app/.next/server/app/api/provider-metrics/route_client-reference-manifest.js +1 -1
  207. package/app/.next/server/app/api/provider-models/route.js +1 -1
  208. package/app/.next/server/app/api/provider-models/route.js.nft.json +1 -1
  209. package/app/.next/server/app/api/provider-models/route_client-reference-manifest.js +1 -1
  210. package/app/.next/server/app/api/provider-nodes/[id]/route.js +1 -1
  211. package/app/.next/server/app/api/provider-nodes/[id]/route.js.nft.json +1 -1
  212. package/app/.next/server/app/api/provider-nodes/[id]/route_client-reference-manifest.js +1 -1
  213. package/app/.next/server/app/api/provider-nodes/route.js +2 -2
  214. package/app/.next/server/app/api/provider-nodes/route.js.nft.json +1 -1
  215. package/app/.next/server/app/api/provider-nodes/route_client-reference-manifest.js +1 -1
  216. package/app/.next/server/app/api/provider-nodes/validate/route.js +1 -1
  217. package/app/.next/server/app/api/provider-nodes/validate/route_client-reference-manifest.js +1 -1
  218. package/app/.next/server/app/api/providers/[id]/models/route.js +2 -2
  219. package/app/.next/server/app/api/providers/[id]/models/route.js.nft.json +1 -1
  220. package/app/.next/server/app/api/providers/[id]/models/route_client-reference-manifest.js +1 -1
  221. package/app/.next/server/app/api/providers/[id]/route.js +1 -1
  222. package/app/.next/server/app/api/providers/[id]/route.js.nft.json +1 -1
  223. package/app/.next/server/app/api/providers/[id]/route_client-reference-manifest.js +1 -1
  224. package/app/.next/server/app/api/providers/[id]/test/route.js +1 -1
  225. package/app/.next/server/app/api/providers/[id]/test/route.js.nft.json +1 -1
  226. package/app/.next/server/app/api/providers/[id]/test/route_client-reference-manifest.js +1 -1
  227. package/app/.next/server/app/api/providers/client/route.js +1 -1
  228. package/app/.next/server/app/api/providers/client/route.js.nft.json +1 -1
  229. package/app/.next/server/app/api/providers/client/route_client-reference-manifest.js +1 -1
  230. package/app/.next/server/app/api/providers/route.js +2 -2
  231. package/app/.next/server/app/api/providers/route.js.nft.json +1 -1
  232. package/app/.next/server/app/api/providers/route_client-reference-manifest.js +1 -1
  233. package/app/.next/server/app/api/providers/test-batch/route.js +1 -2
  234. package/app/.next/server/app/api/providers/test-batch/route.js.nft.json +1 -1
  235. package/app/.next/server/app/api/providers/test-batch/route_client-reference-manifest.js +1 -1
  236. package/app/.next/server/app/api/providers/validate/route.js +1 -1
  237. package/app/.next/server/app/api/providers/validate/route.js.nft.json +1 -1
  238. package/app/.next/server/app/api/providers/validate/route_client-reference-manifest.js +1 -1
  239. package/app/.next/server/app/api/rate-limit/route.js +1 -1
  240. package/app/.next/server/app/api/rate-limit/route_client-reference-manifest.js +1 -1
  241. package/app/.next/server/app/api/rate-limits/route.js +1 -1
  242. package/app/.next/server/app/api/rate-limits/route.js.nft.json +1 -1
  243. package/app/.next/server/app/api/rate-limits/route_client-reference-manifest.js +1 -1
  244. package/app/.next/server/app/api/resilience/reset/route.js +1 -1
  245. package/app/.next/server/app/api/resilience/reset/route.js.nft.json +1 -1
  246. package/app/.next/server/app/api/resilience/reset/route_client-reference-manifest.js +1 -1
  247. package/app/.next/server/app/api/resilience/route.js +1 -1
  248. package/app/.next/server/app/api/resilience/route.js.nft.json +1 -1
  249. package/app/.next/server/app/api/resilience/route_client-reference-manifest.js +1 -1
  250. package/app/.next/server/app/api/restart/route.js +1 -1
  251. package/app/.next/server/app/api/restart/route_client-reference-manifest.js +1 -1
  252. package/app/.next/server/app/api/sessions/route.js +1 -1
  253. package/app/.next/server/app/api/sessions/route_client-reference-manifest.js +1 -1
  254. package/app/.next/server/app/api/settings/combo-defaults/route.js +1 -1
  255. package/app/.next/server/app/api/settings/combo-defaults/route.js.nft.json +1 -1
  256. package/app/.next/server/app/api/settings/combo-defaults/route_client-reference-manifest.js +1 -1
  257. package/app/.next/server/app/api/settings/ip-filter/route.js +1 -1
  258. package/app/.next/server/app/api/settings/ip-filter/route_client-reference-manifest.js +1 -1
  259. package/app/.next/server/app/api/settings/proxy/route.js +1 -1
  260. package/app/.next/server/app/api/settings/proxy/route.js.nft.json +1 -1
  261. package/app/.next/server/app/api/settings/proxy/route_client-reference-manifest.js +1 -1
  262. package/app/.next/server/app/api/settings/proxy/test/route.js +1 -1
  263. package/app/.next/server/app/api/settings/proxy/test/route_client-reference-manifest.js +1 -1
  264. package/app/.next/server/app/api/settings/require-login/route.js +1 -1
  265. package/app/.next/server/app/api/settings/require-login/route.js.nft.json +1 -1
  266. package/app/.next/server/app/api/settings/require-login/route_client-reference-manifest.js +1 -1
  267. package/app/.next/server/app/api/settings/route.js +1 -1
  268. package/app/.next/server/app/api/settings/route.js.nft.json +1 -1
  269. package/app/.next/server/app/api/settings/route_client-reference-manifest.js +1 -1
  270. package/app/.next/server/app/api/settings/system-prompt/route.js +1 -1
  271. package/app/.next/server/app/api/settings/system-prompt/route.js.nft.json +1 -1
  272. package/app/.next/server/app/api/settings/system-prompt/route_client-reference-manifest.js +1 -1
  273. package/app/.next/server/app/api/settings/thinking-budget/route.js +1 -1
  274. package/app/.next/server/app/api/settings/thinking-budget/route.js.nft.json +1 -1
  275. package/app/.next/server/app/api/settings/thinking-budget/route_client-reference-manifest.js +1 -1
  276. package/app/.next/server/app/api/shutdown/route.js +1 -1
  277. package/app/.next/server/app/api/shutdown/route_client-reference-manifest.js +1 -1
  278. package/app/.next/server/app/api/storage/health/route.js +1 -1
  279. package/app/.next/server/app/api/storage/health/route_client-reference-manifest.js +1 -1
  280. package/app/.next/server/app/api/sync/cloud/route.js +1 -1
  281. package/app/.next/server/app/api/sync/cloud/route.js.nft.json +1 -1
  282. package/app/.next/server/app/api/sync/cloud/route_client-reference-manifest.js +1 -1
  283. package/app/.next/server/app/api/sync/initialize/route.js +1 -1
  284. package/app/.next/server/app/api/sync/initialize/route.js.nft.json +1 -1
  285. package/app/.next/server/app/api/sync/initialize/route_client-reference-manifest.js +1 -1
  286. package/app/.next/server/app/api/tags/route.js +1 -1
  287. package/app/.next/server/app/api/tags/route_client-reference-manifest.js +1 -1
  288. package/app/.next/server/app/api/telemetry/summary/route.js +1 -1
  289. package/app/.next/server/app/api/telemetry/summary/route_client-reference-manifest.js +1 -1
  290. package/app/.next/server/app/api/token-health/route.js +1 -1
  291. package/app/.next/server/app/api/token-health/route.js.nft.json +1 -1
  292. package/app/.next/server/app/api/token-health/route_client-reference-manifest.js +1 -1
  293. package/app/.next/server/app/api/translator/detect/route.js +1 -1
  294. package/app/.next/server/app/api/translator/detect/route.js.nft.json +1 -1
  295. package/app/.next/server/app/api/translator/detect/route_client-reference-manifest.js +1 -1
  296. package/app/.next/server/app/api/translator/history/route.js +1 -1
  297. package/app/.next/server/app/api/translator/history/route_client-reference-manifest.js +1 -1
  298. package/app/.next/server/app/api/translator/load/route.js +1 -1
  299. package/app/.next/server/app/api/translator/load/route_client-reference-manifest.js +1 -1
  300. package/app/.next/server/app/api/translator/save/route.js +1 -1
  301. package/app/.next/server/app/api/translator/save/route_client-reference-manifest.js +1 -1
  302. package/app/.next/server/app/api/translator/send/route.js +1 -1
  303. package/app/.next/server/app/api/translator/send/route.js.nft.json +1 -1
  304. package/app/.next/server/app/api/translator/send/route_client-reference-manifest.js +1 -1
  305. package/app/.next/server/app/api/translator/translate/route.js +1 -1
  306. package/app/.next/server/app/api/translator/translate/route.js.nft.json +1 -1
  307. package/app/.next/server/app/api/translator/translate/route_client-reference-manifest.js +1 -1
  308. package/app/.next/server/app/api/usage/[connectionId]/route.js +1 -1
  309. package/app/.next/server/app/api/usage/[connectionId]/route.js.nft.json +1 -1
  310. package/app/.next/server/app/api/usage/[connectionId]/route_client-reference-manifest.js +1 -1
  311. package/app/.next/server/app/api/usage/analytics/route.js +1 -1
  312. package/app/.next/server/app/api/usage/analytics/route.js.nft.json +1 -1
  313. package/app/.next/server/app/api/usage/analytics/route_client-reference-manifest.js +1 -1
  314. package/app/.next/server/app/api/usage/budget/route.js +2 -2
  315. package/app/.next/server/app/api/usage/budget/route.js.nft.json +1 -1
  316. package/app/.next/server/app/api/usage/budget/route_client-reference-manifest.js +1 -1
  317. package/app/.next/server/app/api/usage/call-logs/[id]/route.js +1 -1
  318. package/app/.next/server/app/api/usage/call-logs/[id]/route.js.nft.json +1 -1
  319. package/app/.next/server/app/api/usage/call-logs/[id]/route_client-reference-manifest.js +1 -1
  320. package/app/.next/server/app/api/usage/call-logs/route.js +1 -1
  321. package/app/.next/server/app/api/usage/call-logs/route.js.nft.json +1 -1
  322. package/app/.next/server/app/api/usage/call-logs/route_client-reference-manifest.js +1 -1
  323. package/app/.next/server/app/api/usage/history/route.js +1 -1
  324. package/app/.next/server/app/api/usage/history/route.js.nft.json +1 -1
  325. package/app/.next/server/app/api/usage/history/route_client-reference-manifest.js +1 -1
  326. package/app/.next/server/app/api/usage/logs/route.js +1 -1
  327. package/app/.next/server/app/api/usage/logs/route.js.nft.json +1 -1
  328. package/app/.next/server/app/api/usage/logs/route_client-reference-manifest.js +1 -1
  329. package/app/.next/server/app/api/usage/proxy-logs/route.js +8 -1
  330. package/app/.next/server/app/api/usage/proxy-logs/route.js.nft.json +1 -1
  331. package/app/.next/server/app/api/usage/proxy-logs/route_client-reference-manifest.js +1 -1
  332. package/app/.next/server/app/api/usage/request-logs/route.js +1 -1
  333. package/app/.next/server/app/api/usage/request-logs/route.js.nft.json +1 -1
  334. package/app/.next/server/app/api/usage/request-logs/route_client-reference-manifest.js +1 -1
  335. package/app/.next/server/app/api/v1/api/chat/route.js +1 -1
  336. package/app/.next/server/app/api/v1/api/chat/route.js.nft.json +1 -1
  337. package/app/.next/server/app/api/v1/api/chat/route_client-reference-manifest.js +1 -1
  338. package/app/.next/server/app/api/v1/audio/speech/route.js +1 -1
  339. package/app/.next/server/app/api/v1/audio/speech/route.js.nft.json +1 -1
  340. package/app/.next/server/app/api/v1/audio/speech/route_client-reference-manifest.js +1 -1
  341. package/app/.next/server/app/api/v1/audio/transcriptions/route.js +1 -1
  342. package/app/.next/server/app/api/v1/audio/transcriptions/route.js.nft.json +1 -1
  343. package/app/.next/server/app/api/v1/audio/transcriptions/route_client-reference-manifest.js +1 -1
  344. package/app/.next/server/app/api/v1/chat/completions/route.js +1 -1
  345. package/app/.next/server/app/api/v1/chat/completions/route.js.nft.json +1 -1
  346. package/app/.next/server/app/api/v1/chat/completions/route_client-reference-manifest.js +1 -1
  347. package/app/.next/server/app/api/v1/embeddings/route.js +1 -1
  348. package/app/.next/server/app/api/v1/embeddings/route.js.nft.json +1 -1
  349. package/app/.next/server/app/api/v1/embeddings/route_client-reference-manifest.js +1 -1
  350. package/app/.next/server/app/api/v1/images/generations/route.js +1 -1
  351. package/app/.next/server/app/api/v1/images/generations/route.js.nft.json +1 -1
  352. package/app/.next/server/app/api/v1/images/generations/route_client-reference-manifest.js +1 -1
  353. package/app/.next/server/app/api/v1/messages/count_tokens/route.js +1 -1
  354. package/app/.next/server/app/api/v1/messages/count_tokens/route_client-reference-manifest.js +1 -1
  355. package/app/.next/server/app/api/v1/messages/route.js +1 -1
  356. package/app/.next/server/app/api/v1/messages/route.js.nft.json +1 -1
  357. package/app/.next/server/app/api/v1/messages/route_client-reference-manifest.js +1 -1
  358. package/app/.next/server/app/api/v1/models/route.js +2 -2
  359. package/app/.next/server/app/api/v1/models/route.js.nft.json +1 -1
  360. package/app/.next/server/app/api/v1/models/route_client-reference-manifest.js +1 -1
  361. package/app/.next/server/app/api/v1/moderations/route.js +1 -1
  362. package/app/.next/server/app/api/v1/moderations/route.js.nft.json +1 -1
  363. package/app/.next/server/app/api/v1/moderations/route_client-reference-manifest.js +1 -1
  364. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js +1 -1
  365. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route.js.nft.json +1 -1
  366. package/app/.next/server/app/api/v1/providers/[provider]/chat/completions/route_client-reference-manifest.js +1 -1
  367. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js +1 -1
  368. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route.js.nft.json +1 -1
  369. package/app/.next/server/app/api/v1/providers/[provider]/embeddings/route_client-reference-manifest.js +1 -1
  370. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js +1 -1
  371. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route.js.nft.json +1 -1
  372. package/app/.next/server/app/api/v1/providers/[provider]/images/generations/route_client-reference-manifest.js +1 -1
  373. package/app/.next/server/app/api/v1/rerank/route.js +1 -1
  374. package/app/.next/server/app/api/v1/rerank/route.js.nft.json +1 -1
  375. package/app/.next/server/app/api/v1/rerank/route_client-reference-manifest.js +1 -1
  376. package/app/.next/server/app/api/v1/responses/route.js +1 -1
  377. package/app/.next/server/app/api/v1/responses/route.js.nft.json +1 -1
  378. package/app/.next/server/app/api/v1/responses/route_client-reference-manifest.js +1 -1
  379. package/app/.next/server/app/api/v1/route.js +1 -1
  380. package/app/.next/server/app/api/v1/route_client-reference-manifest.js +1 -1
  381. package/app/.next/server/app/api/v1beta/models/[...path]/route.js +1 -1
  382. package/app/.next/server/app/api/v1beta/models/[...path]/route.js.nft.json +1 -1
  383. package/app/.next/server/app/api/v1beta/models/[...path]/route_client-reference-manifest.js +1 -1
  384. package/app/.next/server/app/api/v1beta/models/route.js +2 -2
  385. package/app/.next/server/app/api/v1beta/models/route.js.nft.json +1 -1
  386. package/app/.next/server/app/api/v1beta/models/route_client-reference-manifest.js +1 -1
  387. package/app/.next/server/app/callback/page.js +2 -2
  388. package/app/.next/server/app/callback/page.js.nft.json +1 -1
  389. package/app/.next/server/app/callback/page_client-reference-manifest.js +1 -1
  390. package/app/.next/server/app/callback.html +1 -1
  391. package/app/.next/server/app/callback.rsc +5 -5
  392. package/app/.next/server/app/callback.segments/_full.segment.rsc +5 -5
  393. package/app/.next/server/app/callback.segments/_head.segment.rsc +1 -1
  394. package/app/.next/server/app/callback.segments/_index.segment.rsc +3 -3
  395. package/app/.next/server/app/callback.segments/_tree.segment.rsc +1 -1
  396. package/app/.next/server/app/callback.segments/callback/__PAGE__.segment.rsc +2 -2
  397. package/app/.next/server/app/callback.segments/callback.segment.rsc +1 -1
  398. package/app/.next/server/app/dashboard/analytics.html +1 -1
  399. package/app/.next/server/app/dashboard/analytics.rsc +6 -6
  400. package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics/__PAGE__.segment.rsc +2 -2
  401. package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard/analytics.segment.rsc +1 -1
  402. package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  403. package/app/.next/server/app/dashboard/analytics.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  404. package/app/.next/server/app/dashboard/analytics.segments/_full.segment.rsc +6 -6
  405. package/app/.next/server/app/dashboard/analytics.segments/_head.segment.rsc +1 -1
  406. package/app/.next/server/app/dashboard/analytics.segments/_index.segment.rsc +3 -3
  407. package/app/.next/server/app/dashboard/analytics.segments/_tree.segment.rsc +1 -1
  408. package/app/.next/server/app/dashboard/cli-tools.html +1 -1
  409. package/app/.next/server/app/dashboard/cli-tools.rsc +6 -6
  410. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools/__PAGE__.segment.rsc +2 -2
  411. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard/cli-tools.segment.rsc +1 -1
  412. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  413. package/app/.next/server/app/dashboard/cli-tools.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  414. package/app/.next/server/app/dashboard/cli-tools.segments/_full.segment.rsc +6 -6
  415. package/app/.next/server/app/dashboard/cli-tools.segments/_head.segment.rsc +1 -1
  416. package/app/.next/server/app/dashboard/cli-tools.segments/_index.segment.rsc +3 -3
  417. package/app/.next/server/app/dashboard/cli-tools.segments/_tree.segment.rsc +1 -1
  418. package/app/.next/server/app/dashboard/combos.html +1 -1
  419. package/app/.next/server/app/dashboard/combos.rsc +6 -6
  420. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos/__PAGE__.segment.rsc +2 -2
  421. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard/combos.segment.rsc +1 -1
  422. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  423. package/app/.next/server/app/dashboard/combos.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  424. package/app/.next/server/app/dashboard/combos.segments/_full.segment.rsc +6 -6
  425. package/app/.next/server/app/dashboard/combos.segments/_head.segment.rsc +1 -1
  426. package/app/.next/server/app/dashboard/combos.segments/_index.segment.rsc +3 -3
  427. package/app/.next/server/app/dashboard/combos.segments/_tree.segment.rsc +1 -1
  428. package/app/.next/server/app/dashboard/costs.html +1 -1
  429. package/app/.next/server/app/dashboard/costs.rsc +6 -6
  430. package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk/dashboard/costs/__PAGE__.segment.rsc +2 -2
  431. package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk/dashboard/costs.segment.rsc +1 -1
  432. package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  433. package/app/.next/server/app/dashboard/costs.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  434. package/app/.next/server/app/dashboard/costs.segments/_full.segment.rsc +6 -6
  435. package/app/.next/server/app/dashboard/costs.segments/_head.segment.rsc +1 -1
  436. package/app/.next/server/app/dashboard/costs.segments/_index.segment.rsc +3 -3
  437. package/app/.next/server/app/dashboard/costs.segments/_tree.segment.rsc +1 -1
  438. package/app/.next/server/app/dashboard/endpoint.html +1 -1
  439. package/app/.next/server/app/dashboard/endpoint.rsc +6 -6
  440. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint/__PAGE__.segment.rsc +2 -2
  441. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard/endpoint.segment.rsc +1 -1
  442. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  443. package/app/.next/server/app/dashboard/endpoint.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  444. package/app/.next/server/app/dashboard/endpoint.segments/_full.segment.rsc +6 -6
  445. package/app/.next/server/app/dashboard/endpoint.segments/_head.segment.rsc +1 -1
  446. package/app/.next/server/app/dashboard/endpoint.segments/_index.segment.rsc +3 -3
  447. package/app/.next/server/app/dashboard/endpoint.segments/_tree.segment.rsc +1 -1
  448. package/app/.next/server/app/dashboard/health.html +1 -1
  449. package/app/.next/server/app/dashboard/health.rsc +6 -6
  450. package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk/dashboard/health/__PAGE__.segment.rsc +2 -2
  451. package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk/dashboard/health.segment.rsc +1 -1
  452. package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  453. package/app/.next/server/app/dashboard/health.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  454. package/app/.next/server/app/dashboard/health.segments/_full.segment.rsc +6 -6
  455. package/app/.next/server/app/dashboard/health.segments/_head.segment.rsc +1 -1
  456. package/app/.next/server/app/dashboard/health.segments/_index.segment.rsc +3 -3
  457. package/app/.next/server/app/dashboard/health.segments/_tree.segment.rsc +1 -1
  458. package/app/.next/server/app/dashboard/onboarding.html +1 -1
  459. package/app/.next/server/app/dashboard/onboarding.rsc +6 -6
  460. package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk/dashboard/onboarding/__PAGE__.segment.rsc +2 -2
  461. package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk/dashboard/onboarding.segment.rsc +1 -1
  462. package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  463. package/app/.next/server/app/dashboard/onboarding.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  464. package/app/.next/server/app/dashboard/onboarding.segments/_full.segment.rsc +6 -6
  465. package/app/.next/server/app/dashboard/onboarding.segments/_head.segment.rsc +1 -1
  466. package/app/.next/server/app/dashboard/onboarding.segments/_index.segment.rsc +3 -3
  467. package/app/.next/server/app/dashboard/onboarding.segments/_tree.segment.rsc +1 -1
  468. package/app/.next/server/app/dashboard/profile.html +1 -1
  469. package/app/.next/server/app/dashboard/profile.rsc +5 -5
  470. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile/__PAGE__.segment.rsc +1 -1
  471. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard/profile.segment.rsc +1 -1
  472. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  473. package/app/.next/server/app/dashboard/profile.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  474. package/app/.next/server/app/dashboard/profile.segments/_full.segment.rsc +5 -5
  475. package/app/.next/server/app/dashboard/profile.segments/_head.segment.rsc +1 -1
  476. package/app/.next/server/app/dashboard/profile.segments/_index.segment.rsc +3 -3
  477. package/app/.next/server/app/dashboard/profile.segments/_tree.segment.rsc +1 -1
  478. package/app/.next/server/app/dashboard/providers/new.html +1 -1
  479. package/app/.next/server/app/dashboard/providers/new.rsc +6 -6
  480. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new/__PAGE__.segment.rsc +2 -2
  481. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers/new.segment.rsc +1 -1
  482. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  483. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  484. package/app/.next/server/app/dashboard/providers/new.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  485. package/app/.next/server/app/dashboard/providers/new.segments/_full.segment.rsc +6 -6
  486. package/app/.next/server/app/dashboard/providers/new.segments/_head.segment.rsc +1 -1
  487. package/app/.next/server/app/dashboard/providers/new.segments/_index.segment.rsc +3 -3
  488. package/app/.next/server/app/dashboard/providers/new.segments/_tree.segment.rsc +1 -1
  489. package/app/.next/server/app/dashboard/providers.html +1 -1
  490. package/app/.next/server/app/dashboard/providers.rsc +6 -6
  491. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers/__PAGE__.segment.rsc +2 -2
  492. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard/providers.segment.rsc +1 -1
  493. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  494. package/app/.next/server/app/dashboard/providers.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  495. package/app/.next/server/app/dashboard/providers.segments/_full.segment.rsc +6 -6
  496. package/app/.next/server/app/dashboard/providers.segments/_head.segment.rsc +1 -1
  497. package/app/.next/server/app/dashboard/providers.segments/_index.segment.rsc +3 -3
  498. package/app/.next/server/app/dashboard/providers.segments/_tree.segment.rsc +1 -1
  499. package/app/.next/server/app/dashboard/settings/pricing.html +1 -1
  500. package/app/.next/server/app/dashboard/settings/pricing.rsc +6 -6
  501. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing/__PAGE__.segment.rsc +2 -2
  502. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings/pricing.segment.rsc +1 -1
  503. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +1 -1
  504. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  505. package/app/.next/server/app/dashboard/settings/pricing.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  506. package/app/.next/server/app/dashboard/settings/pricing.segments/_full.segment.rsc +6 -6
  507. package/app/.next/server/app/dashboard/settings/pricing.segments/_head.segment.rsc +1 -1
  508. package/app/.next/server/app/dashboard/settings/pricing.segments/_index.segment.rsc +3 -3
  509. package/app/.next/server/app/dashboard/settings/pricing.segments/_tree.segment.rsc +1 -1
  510. package/app/.next/server/app/dashboard/settings.html +1 -1
  511. package/app/.next/server/app/dashboard/settings.rsc +6 -6
  512. package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings/__PAGE__.segment.rsc +2 -2
  513. package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard/settings.segment.rsc +1 -1
  514. package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  515. package/app/.next/server/app/dashboard/settings.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  516. package/app/.next/server/app/dashboard/settings.segments/_full.segment.rsc +6 -6
  517. package/app/.next/server/app/dashboard/settings.segments/_head.segment.rsc +1 -1
  518. package/app/.next/server/app/dashboard/settings.segments/_index.segment.rsc +3 -3
  519. package/app/.next/server/app/dashboard/settings.segments/_tree.segment.rsc +1 -1
  520. package/app/.next/server/app/dashboard/translator.html +2 -2
  521. package/app/.next/server/app/dashboard/translator.rsc +6 -6
  522. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator/__PAGE__.segment.rsc +2 -2
  523. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard/translator.segment.rsc +1 -1
  524. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  525. package/app/.next/server/app/dashboard/translator.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  526. package/app/.next/server/app/dashboard/translator.segments/_full.segment.rsc +6 -6
  527. package/app/.next/server/app/dashboard/translator.segments/_head.segment.rsc +1 -1
  528. package/app/.next/server/app/dashboard/translator.segments/_index.segment.rsc +3 -3
  529. package/app/.next/server/app/dashboard/translator.segments/_tree.segment.rsc +1 -1
  530. package/app/.next/server/app/dashboard/usage.html +1 -1
  531. package/app/.next/server/app/dashboard/usage.rsc +6 -6
  532. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage/__PAGE__.segment.rsc +2 -2
  533. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard/usage.segment.rsc +1 -1
  534. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk/dashboard.segment.rsc +1 -1
  535. package/app/.next/server/app/dashboard/usage.segments/!KGRhc2hib2FyZCk.segment.rsc +2 -2
  536. package/app/.next/server/app/dashboard/usage.segments/_full.segment.rsc +6 -6
  537. package/app/.next/server/app/dashboard/usage.segments/_head.segment.rsc +1 -1
  538. package/app/.next/server/app/dashboard/usage.segments/_index.segment.rsc +3 -3
  539. package/app/.next/server/app/dashboard/usage.segments/_tree.segment.rsc +1 -1
  540. package/app/.next/server/app/docs/page.js +3 -3
  541. package/app/.next/server/app/docs/page.js.nft.json +1 -1
  542. package/app/.next/server/app/docs/page_client-reference-manifest.js +1 -1
  543. package/app/.next/server/app/docs.html +1 -1
  544. package/app/.next/server/app/docs.rsc +4 -4
  545. package/app/.next/server/app/docs.segments/_full.segment.rsc +4 -4
  546. package/app/.next/server/app/docs.segments/_head.segment.rsc +1 -1
  547. package/app/.next/server/app/docs.segments/_index.segment.rsc +3 -3
  548. package/app/.next/server/app/docs.segments/_tree.segment.rsc +1 -1
  549. package/app/.next/server/app/docs.segments/docs/__PAGE__.segment.rsc +1 -1
  550. package/app/.next/server/app/docs.segments/docs.segment.rsc +1 -1
  551. package/app/.next/server/app/forbidden/page.js +2 -2
  552. package/app/.next/server/app/forbidden/page.js.nft.json +1 -1
  553. package/app/.next/server/app/forbidden/page_client-reference-manifest.js +1 -1
  554. package/app/.next/server/app/forbidden.html +1 -1
  555. package/app/.next/server/app/forbidden.rsc +5 -5
  556. package/app/.next/server/app/forbidden.segments/_full.segment.rsc +5 -5
  557. package/app/.next/server/app/forbidden.segments/_head.segment.rsc +1 -1
  558. package/app/.next/server/app/forbidden.segments/_index.segment.rsc +3 -3
  559. package/app/.next/server/app/forbidden.segments/_tree.segment.rsc +1 -1
  560. package/app/.next/server/app/forbidden.segments/forbidden/__PAGE__.segment.rsc +2 -2
  561. package/app/.next/server/app/forbidden.segments/forbidden.segment.rsc +1 -1
  562. package/app/.next/server/app/forgot-password/page.js +2 -2
  563. package/app/.next/server/app/forgot-password/page.js.nft.json +1 -1
  564. package/app/.next/server/app/forgot-password/page_client-reference-manifest.js +1 -1
  565. package/app/.next/server/app/forgot-password.html +1 -1
  566. package/app/.next/server/app/forgot-password.rsc +5 -5
  567. package/app/.next/server/app/forgot-password.segments/_full.segment.rsc +5 -5
  568. package/app/.next/server/app/forgot-password.segments/_head.segment.rsc +1 -1
  569. package/app/.next/server/app/forgot-password.segments/_index.segment.rsc +3 -3
  570. package/app/.next/server/app/forgot-password.segments/_tree.segment.rsc +1 -1
  571. package/app/.next/server/app/forgot-password.segments/forgot-password/__PAGE__.segment.rsc +2 -2
  572. package/app/.next/server/app/forgot-password.segments/forgot-password.segment.rsc +1 -1
  573. package/app/.next/server/app/index.html +1 -1
  574. package/app/.next/server/app/index.rsc +4 -4
  575. package/app/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  576. package/app/.next/server/app/index.segments/_full.segment.rsc +4 -4
  577. package/app/.next/server/app/index.segments/_head.segment.rsc +1 -1
  578. package/app/.next/server/app/index.segments/_index.segment.rsc +3 -3
  579. package/app/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  580. package/app/.next/server/app/landing/page.js +2 -2
  581. package/app/.next/server/app/landing/page.js.nft.json +1 -1
  582. package/app/.next/server/app/landing/page_client-reference-manifest.js +1 -1
  583. package/app/.next/server/app/landing.html +1 -1
  584. package/app/.next/server/app/landing.rsc +5 -5
  585. package/app/.next/server/app/landing.segments/_full.segment.rsc +5 -5
  586. package/app/.next/server/app/landing.segments/_head.segment.rsc +1 -1
  587. package/app/.next/server/app/landing.segments/_index.segment.rsc +3 -3
  588. package/app/.next/server/app/landing.segments/_tree.segment.rsc +1 -1
  589. package/app/.next/server/app/landing.segments/landing/__PAGE__.segment.rsc +2 -2
  590. package/app/.next/server/app/landing.segments/landing.segment.rsc +1 -1
  591. package/app/.next/server/app/login/page.js +2 -2
  592. package/app/.next/server/app/login/page.js.nft.json +1 -1
  593. package/app/.next/server/app/login/page_client-reference-manifest.js +1 -1
  594. package/app/.next/server/app/login.html +1 -1
  595. package/app/.next/server/app/login.rsc +5 -5
  596. package/app/.next/server/app/login.segments/_full.segment.rsc +5 -5
  597. package/app/.next/server/app/login.segments/_head.segment.rsc +1 -1
  598. package/app/.next/server/app/login.segments/_index.segment.rsc +3 -3
  599. package/app/.next/server/app/login.segments/_tree.segment.rsc +1 -1
  600. package/app/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
  601. package/app/.next/server/app/login.segments/login.segment.rsc +1 -1
  602. package/app/.next/server/app/page.js +2 -2
  603. package/app/.next/server/app/page.js.nft.json +1 -1
  604. package/app/.next/server/app/page_client-reference-manifest.js +1 -1
  605. package/app/.next/server/app/privacy/page.js +2 -2
  606. package/app/.next/server/app/privacy/page.js.nft.json +1 -1
  607. package/app/.next/server/app/privacy/page_client-reference-manifest.js +1 -1
  608. package/app/.next/server/app/privacy.html +1 -1
  609. package/app/.next/server/app/privacy.rsc +4 -4
  610. package/app/.next/server/app/privacy.segments/_full.segment.rsc +4 -4
  611. package/app/.next/server/app/privacy.segments/_head.segment.rsc +1 -1
  612. package/app/.next/server/app/privacy.segments/_index.segment.rsc +3 -3
  613. package/app/.next/server/app/privacy.segments/_tree.segment.rsc +1 -1
  614. package/app/.next/server/app/privacy.segments/privacy/__PAGE__.segment.rsc +1 -1
  615. package/app/.next/server/app/privacy.segments/privacy.segment.rsc +1 -1
  616. package/app/.next/server/app/terms/page.js +2 -2
  617. package/app/.next/server/app/terms/page.js.nft.json +1 -1
  618. package/app/.next/server/app/terms/page_client-reference-manifest.js +1 -1
  619. package/app/.next/server/app/terms.html +1 -1
  620. package/app/.next/server/app/terms.rsc +4 -4
  621. package/app/.next/server/app/terms.segments/_full.segment.rsc +4 -4
  622. package/app/.next/server/app/terms.segments/_head.segment.rsc +1 -1
  623. package/app/.next/server/app/terms.segments/_index.segment.rsc +3 -3
  624. package/app/.next/server/app/terms.segments/_tree.segment.rsc +1 -1
  625. package/app/.next/server/app/terms.segments/terms/__PAGE__.segment.rsc +1 -1
  626. package/app/.next/server/app/terms.segments/terms.segment.rsc +1 -1
  627. package/app/.next/server/app-paths-manifest.json +27 -27
  628. package/app/.next/server/chunks/1020.js +1 -0
  629. package/app/.next/server/chunks/1079.js +1 -0
  630. package/app/.next/server/chunks/1308.js +1 -0
  631. package/app/.next/server/chunks/{4469.js → 1549.js} +26 -3
  632. package/app/.next/server/chunks/2286.js +1 -0
  633. package/app/.next/server/chunks/239.js +3 -0
  634. package/app/.next/server/chunks/2391.js +1 -1
  635. package/app/.next/server/chunks/2620.js +3 -0
  636. package/app/.next/server/chunks/2767.js +26 -0
  637. package/app/.next/server/chunks/{3542.js → 2817.js} +2 -2
  638. package/app/.next/server/chunks/2867.js +1 -0
  639. package/app/.next/server/chunks/{651.js → 287.js} +2 -2
  640. package/app/.next/server/chunks/293.js +1 -0
  641. package/app/.next/server/chunks/2951.js +1 -1
  642. package/app/.next/server/chunks/{8108.js → 3596.js} +1 -1
  643. package/app/.next/server/chunks/{1746.js → 3699.js} +1 -1
  644. package/app/.next/server/chunks/4163.js +1 -0
  645. package/app/.next/server/chunks/4568.js +1 -0
  646. package/app/.next/server/chunks/4755.js +1 -21
  647. package/app/.next/server/chunks/5248.js +1 -0
  648. package/app/.next/server/chunks/5583.js +2 -0
  649. package/app/.next/server/chunks/560.js +1 -0
  650. package/app/.next/server/chunks/595.js +1 -1
  651. package/app/.next/server/chunks/5994.js +1 -0
  652. package/app/.next/server/chunks/6120.js +1 -0
  653. package/app/.next/server/chunks/7109.js +8 -0
  654. package/app/.next/server/chunks/7230.js +36 -0
  655. package/app/.next/server/chunks/7544.js +143 -0
  656. package/app/.next/server/chunks/7669.js +3 -0
  657. package/app/.next/server/chunks/8369.js +2 -0
  658. package/app/.next/server/chunks/8429.js +1 -0
  659. package/app/.next/server/chunks/9342.js +1 -0
  660. package/app/.next/server/chunks/9343.js +5 -5
  661. package/app/.next/server/chunks/{1099.js → 9723.js} +2 -2
  662. package/app/.next/server/chunks/9824.js +21 -0
  663. package/app/.next/server/middleware-build-manifest.js +1 -1
  664. package/app/.next/server/middleware-react-loadable-manifest.js +1 -1
  665. package/app/.next/server/middleware.js +27 -4
  666. package/app/.next/server/pages/404.html +1 -1
  667. package/app/.next/server/pages/500.html +2 -2
  668. package/app/.next/server/server-reference-manifest.js +1 -1
  669. package/app/.next/server/server-reference-manifest.json +1 -1
  670. package/app/.next/server/webpack-runtime.js +1 -1
  671. package/app/.next/static/chunks/5846-2708fad522c4092b.js +2 -0
  672. package/app/.next/static/chunks/993-6be0cd05a02eb09b.js +21 -0
  673. package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/page-a7a7e3485f278504.js +1 -0
  674. package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-1c6897612e762e03.js +15 -0
  675. package/app/.next/static/chunks/app/(dashboard)/dashboard/combos/page-2cf4a7b419667452.js +1 -0
  676. package/app/.next/static/chunks/app/(dashboard)/dashboard/costs/page-6913ad5d715dcc3f.js +1 -0
  677. package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/page-a446f6fd8dc64f29.js +1 -0
  678. package/app/.next/static/chunks/app/(dashboard)/dashboard/health/page-d3f501b59334c3d5.js +1 -0
  679. package/app/.next/static/chunks/app/(dashboard)/dashboard/onboarding/page-207d4961e362eae5.js +1 -0
  680. package/app/.next/static/chunks/app/(dashboard)/dashboard/page-7312e2dd8b5feff0.js +1 -0
  681. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-a9c594cf56c3465e.js +1 -0
  682. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-521cffebf9da74b1.js +1 -0
  683. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/page-627628d3588d56d0.js +1 -0
  684. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-ae5e43ea2a576094.js +1 -0
  685. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/pricing/page-1b3f14c99d3edf09.js +1 -0
  686. package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/page-c3cbea97c4f3a3b3.js +4 -0
  687. package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/page-8e19076a0d9227ca.js +1 -0
  688. package/app/.next/static/chunks/app/(dashboard)/layout-c498dd9c790d0115.js +1 -0
  689. package/app/.next/static/chunks/app/callback/page-5c58a06902dd94ed.js +1 -0
  690. package/app/.next/static/chunks/app/forbidden/page-86b6392f80a3ff69.js +1 -0
  691. package/app/.next/static/chunks/app/forgot-password/page-3682163d66078655.js +1 -0
  692. package/app/.next/static/chunks/app/{global-error-6abc2976016d7bd1.js → global-error-ece0210f8bb4e441.js} +1 -1
  693. package/app/.next/static/chunks/app/landing/page-09741814aaca7548.js +1 -0
  694. package/app/.next/static/chunks/app/layout-3375493e8f9133db.js +1 -0
  695. package/app/.next/static/chunks/app/login/page-319adaa570f7cef2.js +1 -0
  696. package/app/.next/static/chunks/app/not-found-a1cabc3706cf5b84.js +1 -0
  697. package/app/.next/static/chunks/{webpack-a2b6b20e2db553f5.js → webpack-9837b0fbf7de0b62.js} +1 -1
  698. package/app/package.json +6 -3
  699. package/app/server.js +1 -1
  700. package/app/src/mitm/cert/{install.js → install.ts} +3 -3
  701. package/app/src/mitm/dns/{dnsConfig.js → dnsConfig.ts} +1 -1
  702. package/app/src/mitm/{manager.js → manager.ts} +3 -3
  703. package/app/src/mitm/{server.js → server.ts} +1 -1
  704. package/package.json +6 -3
  705. package/app/.next/server/chunks/1228.js +0 -3
  706. package/app/.next/server/chunks/1362.js +0 -1
  707. package/app/.next/server/chunks/152.js +0 -1
  708. package/app/.next/server/chunks/2399.js +0 -1
  709. package/app/.next/server/chunks/4004.js +0 -1
  710. package/app/.next/server/chunks/4832.js +0 -36
  711. package/app/.next/server/chunks/5040.js +0 -1
  712. package/app/.next/server/chunks/5727.js +0 -1
  713. package/app/.next/server/chunks/6599.js +0 -1
  714. package/app/.next/server/chunks/7093.js +0 -2
  715. package/app/.next/server/chunks/7136.js +0 -1
  716. package/app/.next/server/chunks/7271.js +0 -1
  717. package/app/.next/server/chunks/7615.js +0 -19
  718. package/app/.next/server/chunks/7763.js +0 -1
  719. package/app/.next/server/chunks/7802.js +0 -1
  720. package/app/.next/server/chunks/7968.js +0 -3
  721. package/app/.next/server/chunks/8392.js +0 -1
  722. package/app/.next/server/chunks/8400.js +0 -143
  723. package/app/.next/server/chunks/8757.js +0 -2
  724. package/app/.next/server/chunks/8847.js +0 -3
  725. package/app/.next/server/chunks/9081.js +0 -1
  726. package/app/.next/server/chunks/9263.js +0 -1
  727. package/app/.next/static/chunks/1525-5a69ef0a1ac4f962.js +0 -21
  728. package/app/.next/static/chunks/7896-7250e5328afe298c.js +0 -2
  729. package/app/.next/static/chunks/app/(dashboard)/dashboard/analytics/page-a04417ebc8cf8378.js +0 -1
  730. package/app/.next/static/chunks/app/(dashboard)/dashboard/cli-tools/page-a0d59a10c0c8cf03.js +0 -15
  731. package/app/.next/static/chunks/app/(dashboard)/dashboard/combos/page-0ec8339a5e63e29b.js +0 -1
  732. package/app/.next/static/chunks/app/(dashboard)/dashboard/costs/page-38d9a3dbd2b14ce0.js +0 -1
  733. package/app/.next/static/chunks/app/(dashboard)/dashboard/endpoint/page-9f316bbfedf248e3.js +0 -1
  734. package/app/.next/static/chunks/app/(dashboard)/dashboard/health/page-1c7f51c61cd1e699.js +0 -1
  735. package/app/.next/static/chunks/app/(dashboard)/dashboard/onboarding/page-6f10b6cb468bdc21.js +0 -1
  736. package/app/.next/static/chunks/app/(dashboard)/dashboard/page-b7f4f0bd54a35446.js +0 -1
  737. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/[id]/page-0a52b0b6a790afd5.js +0 -1
  738. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/new/page-8d7182afc4e86131.js +0 -1
  739. package/app/.next/static/chunks/app/(dashboard)/dashboard/providers/page-8ecd49c8dede42af.js +0 -1
  740. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/page-9460e0e29ba0ca7d.js +0 -1
  741. package/app/.next/static/chunks/app/(dashboard)/dashboard/settings/pricing/page-834e40170968cf11.js +0 -1
  742. package/app/.next/static/chunks/app/(dashboard)/dashboard/translator/page-2889507d608ace80.js +0 -4
  743. package/app/.next/static/chunks/app/(dashboard)/dashboard/usage/page-016d44203ff299ac.js +0 -1
  744. package/app/.next/static/chunks/app/(dashboard)/layout-5cca2595e89e770c.js +0 -1
  745. package/app/.next/static/chunks/app/callback/page-259c406ba4d2aeff.js +0 -1
  746. package/app/.next/static/chunks/app/forbidden/page-6806872971c364f0.js +0 -1
  747. package/app/.next/static/chunks/app/forgot-password/page-9cf548e06e388c72.js +0 -1
  748. package/app/.next/static/chunks/app/landing/page-24ee8d70cde143a9.js +0 -1
  749. package/app/.next/static/chunks/app/layout-6504ce60623b0a41.js +0 -1
  750. package/app/.next/static/chunks/app/login/page-7201e8e8c064cf3f.js +0 -1
  751. package/app/.next/static/chunks/app/not-found-e1af8b9c5785b71b.js +0 -1
  752. /package/app/.next/static/{2kJ2zcrBE0joNQY9l6W0k → 4zh9cgkOJsay7eUxfk-tb}/_buildManifest.js +0 -0
  753. /package/app/.next/static/{2kJ2zcrBE0joNQY9l6W0k → 4zh9cgkOJsay7eUxfk-tb}/_ssgManifest.js +0 -0
  754. /package/app/src/mitm/cert/{generate.js → generate.ts} +0 -0
  755. /package/app/src/shared/utils/{apiKey.js → apiKey.ts} +0 -0
@@ -1 +0,0 @@
1
- "use strict";exports.id=1362,exports.ids=[1362],exports.modules={41362:(a,b,c)=>{c.d(b,{generateApiKeyWithMachine:()=>f});var d=c(55511);process.env.API_KEY_SECRET||console.error("[SECURITY] API_KEY_SECRET is not set. API key CRC will be insecure.");let e=process.env.API_KEY_SECRET;function f(a){let b=function(){let a="abcdefghijklmnopqrstuvwxyz0123456789",b="";for(let c=0;c<6;c++)b+=a.charAt(Math.floor(Math.random()*a.length));return b}(),c=d.createHmac("sha256",e).update(a+b).digest("hex").slice(0,8);return{key:`sk-${a}-${b}-${c}`,keyId:b}}}};
@@ -1 +0,0 @@
1
- exports.id=152,exports.ids=[152],exports.modules={372:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Card.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Card.js","default")},3118:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Button.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Button.js","default")},3838:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/KiroAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/KiroAuthModal.js","default")},12268:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/DataTable.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/DataTable.js","default")},12706:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Select.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Select.js","default")},18432:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/ColumnToggle.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/ColumnToggle.js","default")},21601:(a,b,c)=>{"use strict";c.d(b,{ConfirmModal:()=>f,default:()=>e});var d=c(77943);let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Modal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Modal.js","default"),f=(0,d.registerClientReference)(function(){throw Error("Attempted to call ConfirmModal() from the server but ConfirmModal is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Modal.js","ConfirmModal")},22757:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Footer.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Footer.js","default")},22916:(a,b,c)=>{"use strict";c.d(b,{CardSkeleton:()=>h,PageLoading:()=>f,Skeleton:()=>g,Spinner:()=>e,default:()=>i});var d=c(77943);let e=(0,d.registerClientReference)(function(){throw Error("Attempted to call Spinner() from the server but Spinner is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Loading.js","Spinner"),f=(0,d.registerClientReference)(function(){throw Error("Attempted to call PageLoading() from the server but PageLoading is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Loading.js","PageLoading"),g=(0,d.registerClientReference)(function(){throw Error("Attempted to call Skeleton() from the server but Skeleton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Loading.js","Skeleton"),h=(0,d.registerClientReference)(function(){throw Error("Attempted to call CardSkeleton() from the server but CardSkeleton is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Loading.js","CardSkeleton"),i=(0,d.registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Loading.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Loading.js","default")},27498:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Toggle.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Toggle.js","default")},28963:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Header.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Header.js","default")},35154:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/OAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/OAuthModal.js","default")},36942:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/KiroSocialOAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/KiroSocialOAuthModal.js","default")},47419:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/UsageAnalytics.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/UsageAnalytics.js","default")},48936:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Input.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Input.js","default")},51613:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/ThemeToggle.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/ThemeToggle.js","default")},59104:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/UsageStats.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/UsageStats.js","default")},59742:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/layouts/AuthLayout.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/layouts/AuthLayout.js","default")},62139:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/SegmentedControl.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/SegmentedControl.js","default")},62357:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/ManualConfigModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/ManualConfigModal.js","default")},62910:(a,b,c)=>{Promise.resolve().then(c.bind(c,10977)),Promise.resolve().then(c.bind(c,70873)),Promise.resolve().then(c.bind(c,67528)),Promise.resolve().then(c.bind(c,66148)),Promise.resolve().then(c.bind(c,61198)),Promise.resolve().then(c.bind(c,27810)),Promise.resolve().then(c.bind(c,12475)),Promise.resolve().then(c.bind(c,7766)),Promise.resolve().then(c.bind(c,78686)),Promise.resolve().then(c.bind(c,90105)),Promise.resolve().then(c.bind(c,327)),Promise.resolve().then(c.bind(c,42356)),Promise.resolve().then(c.bind(c,55146)),Promise.resolve().then(c.bind(c,28532)),Promise.resolve().then(c.bind(c,77521)),Promise.resolve().then(c.bind(c,18480)),Promise.resolve().then(c.bind(c,18640)),Promise.resolve().then(c.bind(c,35739)),Promise.resolve().then(c.bind(c,81134)),Promise.resolve().then(c.bind(c,87423)),Promise.resolve().then(c.bind(c,52259)),Promise.resolve().then(c.bind(c,634)),Promise.resolve().then(c.bind(c,83652)),Promise.resolve().then(c.bind(c,18868)),Promise.resolve().then(c.bind(c,84439)),Promise.resolve().then(c.bind(c,16923)),Promise.resolve().then(c.bind(c,58918)),Promise.resolve().then(c.bind(c,24541)),Promise.resolve().then(c.bind(c,83740)),Promise.resolve().then(c.bind(c,450)),Promise.resolve().then(c.bind(c,66434)),Promise.resolve().then(c.bind(c,24951)),Promise.resolve().then(c.bind(c,19200)),Promise.resolve().then(c.bind(c,85902)),Promise.resolve().then(c.bind(c,28922))},64191:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Avatar.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Avatar.js","default")},66184:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/ProxyLogger.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/ProxyLogger.js","default")},67073:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/RequestLoggerV2.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/RequestLoggerV2.js","default")},67466:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/layouts/DashboardLayout.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/layouts/DashboardLayout.js","default")},67638:(a,b,c)=>{Promise.resolve().then(c.bind(c,64191)),Promise.resolve().then(c.bind(c,70995)),Promise.resolve().then(c.bind(c,86026)),Promise.resolve().then(c.bind(c,3118)),Promise.resolve().then(c.bind(c,372)),Promise.resolve().then(c.bind(c,18432)),Promise.resolve().then(c.bind(c,95165)),Promise.resolve().then(c.bind(c,12268)),Promise.resolve().then(c.bind(c,81808)),Promise.resolve().then(c.bind(c,70603)),Promise.resolve().then(c.bind(c,22757)),Promise.resolve().then(c.bind(c,28963)),Promise.resolve().then(c.bind(c,48936)),Promise.resolve().then(c.bind(c,3838)),Promise.resolve().then(c.bind(c,79547)),Promise.resolve().then(c.bind(c,36942)),Promise.resolve().then(c.bind(c,59742)),Promise.resolve().then(c.bind(c,67466)),Promise.resolve().then(c.bind(c,22916)),Promise.resolve().then(c.bind(c,62357)),Promise.resolve().then(c.bind(c,21601)),Promise.resolve().then(c.bind(c,81824)),Promise.resolve().then(c.bind(c,74070)),Promise.resolve().then(c.bind(c,35154)),Promise.resolve().then(c.bind(c,80205)),Promise.resolve().then(c.bind(c,66184)),Promise.resolve().then(c.bind(c,67073)),Promise.resolve().then(c.bind(c,62139)),Promise.resolve().then(c.bind(c,12706)),Promise.resolve().then(c.bind(c,88588)),Promise.resolve().then(c.bind(c,68852)),Promise.resolve().then(c.bind(c,51613)),Promise.resolve().then(c.bind(c,27498)),Promise.resolve().then(c.bind(c,47419)),Promise.resolve().then(c.bind(c,59104))},68010:(a,b,c)=>{"use strict";c.r(b),c.d(b,{default:()=>f});var d=c(5735);c(3118),c(48936),c(12706),c(372),c(21601),c(22916),c(64191),c(70995),c(27498),c(51613),c(68852),c(88588),c(28963),c(22757),c(35154),c(81824),c(62357),c(59104),c(47419),c(67073),c(80205),c(66184),c(3838),c(79547),c(36942),c(95165),c(62139),c(86026),c(81808),c(74070),c(70603),c(18432),c(12268);var e=c(67466);function f({children:a}){return(0,d.jsx)(e.default,{children:a})}c(59742)},70603:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/FilterBar.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/FilterBar.js","default")},70995:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Badge.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Badge.js","default")},74070:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/NotificationToast.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/NotificationToast.js","default")},79547:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/KiroOAuthWrapper.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/KiroOAuthWrapper.js","default")},80205:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/ProxyConfigModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/ProxyConfigModal.js","default")},81808:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/EmptyState.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/EmptyState.js","default")},81824:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/ModelSelectModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/ModelSelectModal.js","default")},86026:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Breadcrumbs.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Breadcrumbs.js","default")},88588:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Sidebar.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/Sidebar.js","default")},95165:(a,b,c)=>{"use strict";c.d(b,{default:()=>d});let d=(0,c(77943).registerClientReference)(function(){throw Error("Attempted to call the default export of \"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/CursorAuthModal.js\" from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/OmniRoute/OmniRoute/src/shared/components/CursorAuthModal.js","default")}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=2399,exports.ids=[2399],exports.modules={49263:(a,b,c)=>{c.d(b,{AO:()=>l,Qo:()=>o,R7:()=>h,T_:()=>f,UY:()=>n,getAllModelLockouts:()=>i,hk:()=>k,vp:()=>m});var d=c(97271),e=c(28108);function f(a){let b=(0,e.oQ)(a);return d.PROVIDER_PROFILES[b]??d.PROVIDER_PROFILES.apikey}let g=new Map;function h(a,b,c,d,e){if(!c)return;let f=`${a}:${b}:${c}`;g.set(f,{reason:d,until:Date.now()+e,lockedAt:Date.now()})}function i(){let a=Date.now(),b=[];for(let[c,d]of g)if(a<=d.until){let[e,f,g]=c.split(":");b.push({provider:e,connectionId:f,model:g,reason:d.reason,remainingMs:d.until-a})}return b}function j(a=0){return Math.min(d.EQ.base*Math.pow(2,a),d.EQ.max)}function k(a,b,c=0,e=null,g=null){if(b){let a="string"==typeof b?b:JSON.stringify(b),e=a.toLowerCase();if(e.includes("no credentials"))return{shouldFallback:!0,cooldownMs:d.Bm.notFound,reason:d.QS.AUTH_ERROR};if(e.includes("request not allowed"))return{shouldFallback:!0,cooldownMs:d.Bm.requestNotAllowed,reason:d.QS.RATE_LIMIT_EXCEEDED};if(e.includes("rate limit")||e.includes("too many requests")||e.includes("quota exceeded")||e.includes("capacity")||e.includes("overloaded")){let b=Math.min(c+1,d.EQ.maxLevel),e=function(a){if(!a)return d.QS.UNKNOWN;let b=String(a).toLowerCase();return b.includes("quota exceeded")||b.includes("quota depleted")||b.includes("billing")?d.QS.QUOTA_EXHAUSTED:b.includes("rate limit")||b.includes("too many requests")||b.includes("rate_limit")?d.QS.RATE_LIMIT_EXCEEDED:b.includes("capacity")||b.includes("overloaded")||b.includes("resource exhausted")?d.QS.MODEL_CAPACITY:b.includes("unauthorized")||b.includes("invalid api key")||b.includes("authentication")?d.QS.AUTH_ERROR:b.includes("server error")||b.includes("internal error")?d.QS.SERVER_ERROR:d.QS.UNKNOWN}(a);return{shouldFallback:!0,cooldownMs:j(c),newBackoffLevel:b,reason:e}}}if(a===d.gx.UNAUTHORIZED)return{shouldFallback:!0,cooldownMs:d.Bm.unauthorized,reason:d.QS.AUTH_ERROR};if(a===d.gx.PAYMENT_REQUIRED||a===d.gx.FORBIDDEN)return{shouldFallback:!0,cooldownMs:d.Bm.paymentRequired,reason:d.QS.QUOTA_EXHAUSTED};if(a===d.gx.NOT_FOUND)return{shouldFallback:!0,cooldownMs:d.Bm.notFound,reason:d.QS.UNKNOWN};if(a===d.gx.RATE_LIMITED){let a=Math.min(c+1,d.EQ.maxLevel);return{shouldFallback:!0,cooldownMs:j(c),newBackoffLevel:a,reason:d.QS.RATE_LIMIT_EXCEEDED}}if([d.gx.NOT_ACCEPTABLE,d.gx.REQUEST_TIMEOUT,d.gx.SERVER_ERROR,d.gx.BAD_GATEWAY,d.gx.SERVICE_UNAVAILABLE,d.gx.GATEWAY_TIMEOUT].includes(a)){let a=g?f(g):null,b=a?.transientCooldown??d.Bm.transientInitial,e=a?.maxBackoffLevel??d.EQ.maxLevel;return{shouldFallback:!0,cooldownMs:Math.min(b*Math.pow(2,c),d.Bm.transientMax),newBackoffLevel:Math.min(c+1,e),reason:d.QS.SERVER_ERROR}}return a===d.gx.BAD_REQUEST?{shouldFallback:!1,cooldownMs:0,reason:d.QS.UNKNOWN}:{shouldFallback:!0,cooldownMs:d.Bm.transient,reason:d.QS.UNKNOWN}}function l(a){return!!a&&new Date(a).getTime()>Date.now()}function m(a){return new Date(Date.now()+a).toISOString()}function n(a){let b=null,c=Date.now();for(let d of a){if(!d.rateLimitedUntil)continue;let a=new Date(d.rateLimitedUntil).getTime();a<=c||(!b||a<b)&&(b=a)}return b?new Date(b).toISOString():null}function o(a){if(!a)return"";let b=new Date(a).getTime()-Date.now();if(b<=0)return"reset after 0s";let c=Math.ceil(b/1e3),d=Math.floor(c/3600),e=Math.floor(c%3600/60),f=c%60,g=[];return d>0&&g.push(`${d}h`),e>0&&g.push(`${e}m`),(f>0||0===g.length)&&g.push(`${f}s`),`reset after ${g.join(" ")}`}setInterval(()=>{let a=Date.now();for(let[b,c]of g)a>c.until&&g.delete(b)},15e3).unref()},89865:(a,b,c)=>{c.d(b,{A1:()=>g,lR:()=>i,wO:()=>h,yj:()=>e,zL:()=>f});var d=c(97271);function e(a,b){let c;return new Response(JSON.stringify((c=d.LY[a]||(a>=500?{type:"server_error",code:"internal_server_error"}:{type:"invalid_request_error",code:""}),{error:{message:b||d.O[a]||"An error occurred",type:c.type,code:c.code}})),{status:a,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}async function f(a,b=null){let c="",d=null;try{let b=await a.text();try{let a=JSON.parse(b);c=a.error?.message||a.message||a.error||b}catch{c=b}}catch{c=`Upstream error: ${a.status}`}let e="string"==typeof c?c:JSON.stringify(c);return"antigravity"===b&&429===a.status&&(d=function(a){if("string"!=typeof a)return null;let b=a.match(/reset after (\d+h)?(\d+m)?(\d+s)?/i);if(!b)return null;let c=0;return b[1]&&(c+=60*parseInt(b[1])*6e4),b[2]&&(c+=60*parseInt(b[2])*1e3),b[3]&&(c+=1e3*parseInt(b[3])),c>0?c:null}(e)),{statusCode:a.status,message:e,retryAfterMs:d}}function g(a,b,c=null){let d={success:!1,status:a,error:b,response:e(a,b)};return c&&(d.retryAfterMs=c),d}function h(a,b,c,d){let e=Math.max(Math.ceil((new Date(c).getTime()-Date.now())/1e3),1);return new Response(JSON.stringify({error:{message:`${b} (${d})`}}),{status:a,headers:{"Content-Type":"application/json","Retry-After":String(e)}})}function i(a,b,c,d){let e=d||a.code||"FETCH_FAILED",f=a.message||"Unknown error";return`[${e}]: ${f}`}}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=4004,exports.ids=[4004,7271,9263],exports.modules={24004:(a,b,c)=>{c.d(b,{$E:()=>m,Kr:()=>s,UE:()=>t,YO:()=>o,getAllRateLimitStatus:()=>u,mg:()=>l,rh:()=>k});var d=c(57217);c(49263);var e=c(28108),f=c(97271);let g=new Map,h=new Set,i=!1,j={maxConcurrent:10,minTime:0,reservoir:null,reservoirRefreshAmount:null,reservoirRefreshInterval:null};async function k(){if(!i){i=!0;try{let{getProviderConnections:a}=await Promise.resolve().then(c.bind(c,30651)),b=await a(),i=0,j=0;for(let a of b)if(a.rateLimitProtection)h.add(a.id),i++;else if(a.provider&&"apikey"===(0,e.oQ)(a.provider)&&a.isActive){h.add(a.id),j++;let b=`${a.provider}:${a.id}`;g.has(b)||g.set(b,new d({maxConcurrent:f.DEFAULT_API_LIMITS.concurrentRequests,minTime:f.DEFAULT_API_LIMITS.minTimeBetweenRequests,reservoir:f.DEFAULT_API_LIMITS.requestsPerMinute,reservoirRefreshAmount:f.DEFAULT_API_LIMITS.requestsPerMinute,reservoirRefreshInterval:6e4,id:b}))}(i>0||j>0)&&console.log(`🛡️ [RATE-LIMIT] Loaded ${i} explicit + ${j} auto-enabled (API key) protection(s)`)}catch(a){console.error("[RATE-LIMIT] Failed to load settings:",a.message)}}}function l(a){h.add(a)}function m(a){for(let[b]of(h.delete(a),g))if(b.includes(a)){let a=g.get(b);a?.disconnect(),g.delete(b)}}function n(a,b,c=null){let e=c?`${a}:${b}:${c}`:`${a}:${b}`;if(!g.has(e)){let a=new d({...j,id:e});a.on("queued",()=>{let b=a.counts();b.QUEUED>0&&console.log(`⏳ [RATE-LIMIT] ${e} — ${b.QUEUED} request(s) queued, ${b.RUNNING} running`)}),g.set(e,a)}return g.get(e)}async function o(a,b,c,d){return h.has(b)?n(a,b,null).schedule(d):d()}let p={limit:"x-ratelimit-limit-requests",remaining:"x-ratelimit-remaining-requests",reset:"x-ratelimit-reset-requests",limitTokens:"x-ratelimit-limit-tokens",remainingTokens:"x-ratelimit-remaining-tokens",resetTokens:"x-ratelimit-reset-tokens",retryAfter:"retry-after",overLimit:"x-ratelimit-over-limit"},q={limit:"anthropic-ratelimit-requests-limit",remaining:"anthropic-ratelimit-requests-remaining",reset:"anthropic-ratelimit-requests-reset",limitTokens:"anthropic-ratelimit-input-tokens-limit",remainingTokens:"anthropic-ratelimit-input-tokens-remaining",resetTokens:"anthropic-ratelimit-input-tokens-reset",retryAfter:"retry-after"};function r(a){if(!a)return null;let b=a.match(/^(?:(\d+)h)?(?:(\d+)m(?!s))?(?:(\d+)s)?(?:(\d+)ms)?$/);if(b){let[,a,c,d,e]=b;return(3600*parseInt(a||0)+60*parseInt(c||0)+parseInt(d||0))*1e3+parseInt(e||0)}let c=parseFloat(a);if(!isNaN(c)&&c>0)return c>17e8?Math.max(0,1e3*c-Date.now()):1e3*c;try{let b=new Date(a);if(!isNaN(b.getTime()))return Math.max(0,b.getTime()-Date.now())}catch{}return null}function s(a,b,c,d,e=null){if(!h.has(b)||!c)return;let f=n(a,b,null),g="claude"===a||"anthropic"===a?q:p,i=a=>"function"==typeof c.get?c.get(a):c[a]||null,j=parseInt(i(g.limit)),k=parseInt(i(g.remaining)),l=i(g.reset),m=i(g.retryAfter),o=i(p.overLimit);if(429===d){let c=r(m)||6e4;console.log(`🚫 [RATE-LIMIT] ${a}:${b.slice(0,8)} — 429 received, pausing for ${Math.ceil(c/1e3)}s`),f.updateSettings({reservoir:0,reservoirRefreshAmount:j||60,reservoirRefreshInterval:c});return}if("yes"===o){console.log(`⚠️ [RATE-LIMIT] ${a}:${b.slice(0,8)} — near capacity, slowing down`),f.updateSettings({minTime:200});return}if(!isNaN(j)&&j>0){let c=r(l)||6e4,d={minTime:Math.max(0,Math.floor(6e4/j)-10)};!isNaN(k)&&(k<.1*j?(d.reservoir=k,d.reservoirRefreshAmount=j,d.reservoirRefreshInterval=c,console.log(`⚠️ [RATE-LIMIT] ${a}:${b.slice(0,8)} — ${k}/${j} remaining, throttling`)):k>.5*j&&(d.minTime=0,d.reservoir=null,d.reservoirRefreshAmount=null,d.reservoirRefreshInterval=null)),f.updateSettings(d)}}function t(a,b){let c=`${a}:${b}`,d=g.get(c);if(!d)return{enabled:h.has(b),active:!1,queued:0,running:0};let e=d.counts();return{enabled:h.has(b),active:!0,queued:e.QUEUED||0,running:e.RUNNING||0,executing:e.EXECUTING||0,done:e.DONE||0}}function u(){let a={};for(let[b,c]of g){let d=c.counts();a[b]={queued:d.QUEUED||0,running:d.RUNNING||0,executing:d.EXECUTING||0}}return a}},49263:(a,b,c)=>{c.d(b,{AO:()=>l,Qo:()=>o,R7:()=>h,T_:()=>f,UY:()=>n,getAllModelLockouts:()=>i,hk:()=>k,vp:()=>m});var d=c(97271),e=c(28108);function f(a){let b=(0,e.oQ)(a);return d.PROVIDER_PROFILES[b]??d.PROVIDER_PROFILES.apikey}let g=new Map;function h(a,b,c,d,e){if(!c)return;let f=`${a}:${b}:${c}`;g.set(f,{reason:d,until:Date.now()+e,lockedAt:Date.now()})}function i(){let a=Date.now(),b=[];for(let[c,d]of g)if(a<=d.until){let[e,f,g]=c.split(":");b.push({provider:e,connectionId:f,model:g,reason:d.reason,remainingMs:d.until-a})}return b}function j(a=0){return Math.min(d.EQ.base*Math.pow(2,a),d.EQ.max)}function k(a,b,c=0,e=null,g=null){if(b){let a="string"==typeof b?b:JSON.stringify(b),e=a.toLowerCase();if(e.includes("no credentials"))return{shouldFallback:!0,cooldownMs:d.Bm.notFound,reason:d.QS.AUTH_ERROR};if(e.includes("request not allowed"))return{shouldFallback:!0,cooldownMs:d.Bm.requestNotAllowed,reason:d.QS.RATE_LIMIT_EXCEEDED};if(e.includes("rate limit")||e.includes("too many requests")||e.includes("quota exceeded")||e.includes("capacity")||e.includes("overloaded")){let b=Math.min(c+1,d.EQ.maxLevel),e=function(a){if(!a)return d.QS.UNKNOWN;let b=String(a).toLowerCase();return b.includes("quota exceeded")||b.includes("quota depleted")||b.includes("billing")?d.QS.QUOTA_EXHAUSTED:b.includes("rate limit")||b.includes("too many requests")||b.includes("rate_limit")?d.QS.RATE_LIMIT_EXCEEDED:b.includes("capacity")||b.includes("overloaded")||b.includes("resource exhausted")?d.QS.MODEL_CAPACITY:b.includes("unauthorized")||b.includes("invalid api key")||b.includes("authentication")?d.QS.AUTH_ERROR:b.includes("server error")||b.includes("internal error")?d.QS.SERVER_ERROR:d.QS.UNKNOWN}(a);return{shouldFallback:!0,cooldownMs:j(c),newBackoffLevel:b,reason:e}}}if(a===d.gx.UNAUTHORIZED)return{shouldFallback:!0,cooldownMs:d.Bm.unauthorized,reason:d.QS.AUTH_ERROR};if(a===d.gx.PAYMENT_REQUIRED||a===d.gx.FORBIDDEN)return{shouldFallback:!0,cooldownMs:d.Bm.paymentRequired,reason:d.QS.QUOTA_EXHAUSTED};if(a===d.gx.NOT_FOUND)return{shouldFallback:!0,cooldownMs:d.Bm.notFound,reason:d.QS.UNKNOWN};if(a===d.gx.RATE_LIMITED){let a=Math.min(c+1,d.EQ.maxLevel);return{shouldFallback:!0,cooldownMs:j(c),newBackoffLevel:a,reason:d.QS.RATE_LIMIT_EXCEEDED}}if([d.gx.NOT_ACCEPTABLE,d.gx.REQUEST_TIMEOUT,d.gx.SERVER_ERROR,d.gx.BAD_GATEWAY,d.gx.SERVICE_UNAVAILABLE,d.gx.GATEWAY_TIMEOUT].includes(a)){let a=g?f(g):null,b=a?.transientCooldown??d.Bm.transientInitial,e=a?.maxBackoffLevel??d.EQ.maxLevel;return{shouldFallback:!0,cooldownMs:Math.min(b*Math.pow(2,c),d.Bm.transientMax),newBackoffLevel:Math.min(c+1,e),reason:d.QS.SERVER_ERROR}}return a===d.gx.BAD_REQUEST?{shouldFallback:!1,cooldownMs:0,reason:d.QS.UNKNOWN}:{shouldFallback:!0,cooldownMs:d.Bm.transient,reason:d.QS.UNKNOWN}}function l(a){return!!a&&new Date(a).getTime()>Date.now()}function m(a){return new Date(Date.now()+a).toISOString()}function n(a){let b=null,c=Date.now();for(let d of a){if(!d.rateLimitedUntil)continue;let a=new Date(d.rateLimitedUntil).getTime();a<=c||(!b||a<b)&&(b=a)}return b?new Date(b).toISOString():null}function o(a){if(!a)return"";let b=new Date(a).getTime()-Date.now();if(b<=0)return"reset after 0s";let c=Math.ceil(b/1e3),d=Math.floor(c/3600),e=Math.floor(c%3600/60),f=c%60,g=[];return d>0&&g.push(`${d}h`),e>0&&g.push(`${e}m`),(f>0||0===g.length)&&g.push(`${f}s`),`reset after ${g.join(" ")}`}setInterval(()=>{let a=Date.now();for(let[b,c]of g)a>c.until&&g.delete(b)},15e3).unref()},97271:(a,b,c)=>{c.d(b,{$V:()=>n,EQ:()=>u,Co:()=>m,Bm:()=>w,DEFAULT_API_LIMITS:()=>y,O:()=>t,Uc:()=>p,eo:()=>q,LY:()=>s,MT:()=>j,gx:()=>r,NA:()=>o,xq:()=>l,PROVIDER_PROFILES:()=>x,QS:()=>v,C8:()=>z,TH:()=>k});var d=c(29021),e=c(33873);let f=["clientId","clientSecret","tokenUrl","authUrl","refreshUrl"],g=0,h=null;var i=c(28108);let j=parseInt(process.env.FETCH_TIMEOUT_MS||"120000",10),k=parseInt(process.env.STREAM_IDLE_TIMEOUT_MS||"60000",10),l=(0,i.Z0)();!function(a){let b;if(h&&Date.now()-g<6e4)return;let c=(b=process.env.DATA_DIR||(0,e.join)(process.cwd(),"data"),(0,e.join)(b,"provider-credentials.json"));if(!(0,d.existsSync)(c))return h||console.log("[CREDENTIALS] No external credentials file found, using defaults."),h=a,g=Date.now();try{let b=(0,d.readFileSync)(c,"utf-8"),e=JSON.parse(b),g=0;for(let[b,c]of Object.entries(e)){if(!a[b]){console.log(`[CREDENTIALS] Warning: unknown provider "${b}" in credentials file, skipping.`);continue}if(!c||"object"!=typeof c){console.log(`[CREDENTIALS] Warning: provider "${b}" value must be an object, got ${typeof c}. Skipping.`);continue}for(let d of f)void 0!==c[d]&&(a[b][d]=c[d],g++)}let i=null!==h;console.log(`[CREDENTIALS] ${i?"Reloaded":"Loaded"} external credentials: ${g} field(s) from ${c}`)}catch(a){console.log(`[CREDENTIALS] Error reading credentials file: ${a.message}. Using defaults.`)}h=a,g=Date.now()}(l);let m="You are Claude Code, Anthropic's official CLI for Claude.",n="Please ignore the following [ignore]You are Antigravity, a powerful agentic AI coding assistant designed by the Google Deepmind team working on Advanced Agentic Coding.You are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.**Absolute paths only****Proactiveness**[/ignore]",o={google:{token:"https://oauth2.googleapis.com/token",auth:"https://accounts.google.com/o/oauth2/auth"},openai:{token:"https://auth.openai.com/oauth/token",auth:"https://auth.openai.com/oauth/authorize"},anthropic:{token:"https://console.anthropic.com/v1/oauth/token",auth:"https://console.anthropic.com/v1/oauth/authorize"},qwen:{token:"https://chat.qwen.ai/api/v1/oauth2/token",auth:"https://chat.qwen.ai/api/v1/oauth2/device/code"},iflow:{token:"https://iflow.cn/oauth/token",auth:"https://iflow.cn/oauth"},github:{token:"https://github.com/login/oauth/access_token",auth:"https://github.com/login/oauth/authorize",deviceCode:"https://github.com/login/device/code"}},p=64e3,q=32e3,r={BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,NOT_ACCEPTABLE:406,REQUEST_TIMEOUT:408,RATE_LIMITED:429,SERVER_ERROR:500,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504},s={[r.BAD_REQUEST]:{type:"invalid_request_error",code:"bad_request"},[r.UNAUTHORIZED]:{type:"authentication_error",code:"invalid_api_key"},[r.FORBIDDEN]:{type:"permission_error",code:"insufficient_quota"},[r.NOT_FOUND]:{type:"invalid_request_error",code:"model_not_found"},[r.RATE_LIMITED]:{type:"rate_limit_error",code:"rate_limit_exceeded"},[r.SERVER_ERROR]:{type:"server_error",code:"internal_server_error"},[r.BAD_GATEWAY]:{type:"server_error",code:"bad_gateway"},[r.SERVICE_UNAVAILABLE]:{type:"server_error",code:"service_unavailable"},[r.GATEWAY_TIMEOUT]:{type:"server_error",code:"gateway_timeout"}},t={[r.BAD_REQUEST]:"Bad request",[r.UNAUTHORIZED]:"Invalid API key provided",[r.FORBIDDEN]:"You exceeded your current quota",[r.NOT_FOUND]:"Model not found",[r.RATE_LIMITED]:"Rate limit exceeded",[r.SERVER_ERROR]:"Internal server error",[r.BAD_GATEWAY]:"Bad gateway - upstream provider error",[r.SERVICE_UNAVAILABLE]:"Service temporarily unavailable",[r.GATEWAY_TIMEOUT]:"Gateway timeout"},u={base:1e3,max:12e4,maxLevel:15},v={QUOTA_EXHAUSTED:"quota_exhausted",RATE_LIMIT_EXCEEDED:"rate_limit_exceeded",MODEL_CAPACITY:"model_capacity",SERVER_ERROR:"server_error",AUTH_ERROR:"auth_error",UNKNOWN:"unknown"},w={unauthorized:12e4,paymentRequired:12e4,notFound:12e4,transientInitial:5e3,transientMax:6e4,transient:5e3,requestNotAllowed:5e3,rateLimit:12e4,serviceUnavailable:2e3,authExpired:12e4},x={oauth:{transientCooldown:5e3,rateLimitCooldown:6e4,maxBackoffLevel:8,circuitBreakerThreshold:3,circuitBreakerReset:6e4},apikey:{transientCooldown:3e3,rateLimitCooldown:0,maxBackoffLevel:5,circuitBreakerThreshold:5,circuitBreakerReset:3e4}},y={requestsPerMinute:100,minTimeBetweenRequests:200,concurrentRequests:10},z=["Please write a 5-10 word title for the following conversation:"]}};
@@ -1,36 +0,0 @@
1
- "use strict";exports.id=4832,exports.ids=[4832],exports.modules={74832:(a,b,c)=>{c.d(b,{E5:()=>w,yN:()=>y,jE:()=>D,kh:()=>C,Zx:()=>x,uO:()=>u,BY:()=>z,gK:()=>B,sZ:()=>v,uw:()=>t});var d=c(33873),e=c(29021),f=c(14469),g=c(32677);let h=!f.m1&&!f.I8,i=f.m1?null:(0,g.sm)(),j=f.m1?null:d.join(f.nJ,"log.txt"),k=f.m1?null:d.join(f.nJ,"call_logs"),l=f.m1||!i?null:d.join(i,"usage.json"),m=f.m1||!i?null:d.join(i,"log.txt"),n=f.m1||!i?null:d.join(i,"call_logs.json"),o=f.m1||!i?null:d.join(i,"call_logs"),p=f.m1?null:d.join(f.nJ,"usage.json"),q=f.m1?null:d.join(f.nJ,"call_logs.json");function r(a,b,c){!a||!b||!e.existsSync(a)||e.existsSync(b)||(e.statSync(a).isDirectory()?e.cpSync(a,b,{recursive:!0}):e.copyFileSync(a,b),console.log(`[usageDb] Migrated ${c}: ${a} -> ${b}`))}if(!function(){if(h&&i&&!(0,g.ys)(f.nJ,i))try{r(l,p,"usage history"),r(m,j,"request log"),r(n,q,"call log index"),r(o,k,"call log files")}catch(a){console.error("[usageDb] Legacy migration failed:",a.message)}}(),h)try{!function(){if(!h)return;let a=(0,f.sm)();if(p&&e.existsSync(p))try{let b=e.readFileSync(p,"utf-8"),c=JSON.parse(b).history||[];if(c.length>0){console.log(`[usageDb] Migrating ${c.length} usage entries from JSON → SQLite...`);let b=a.prepare(`
2
- INSERT INTO usage_history (provider, model, connection_id, api_key_id, api_key_name,
3
- tokens_input, tokens_output, tokens_cache_read, tokens_cache_creation, tokens_reasoning,
4
- status, timestamp)
5
- VALUES (@provider, @model, @connectionId, @apiKeyId, @apiKeyName,
6
- @tokensInput, @tokensOutput, @tokensCacheRead, @tokensCacheCreation, @tokensReasoning,
7
- @status, @timestamp)
8
- `);a.transaction(()=>{for(let a of c)b.run({provider:a.provider||null,model:a.model||null,connectionId:a.connectionId||null,apiKeyId:a.apiKeyId||null,apiKeyName:a.apiKeyName||null,tokensInput:a.tokens?.input??a.tokens?.prompt_tokens??0,tokensOutput:a.tokens?.output??a.tokens?.completion_tokens??0,tokensCacheRead:a.tokens?.cacheRead??a.tokens?.cached_tokens??0,tokensCacheCreation:a.tokens?.cacheCreation??a.tokens?.cache_creation_input_tokens??0,tokensReasoning:a.tokens?.reasoning??a.tokens?.reasoning_tokens??0,status:a.status||null,timestamp:a.timestamp||new Date().toISOString()})})(),console.log(`[usageDb] ✓ Migrated ${c.length} usage entries`)}e.renameSync(p,p+".migrated")}catch(a){console.error("[usageDb] Failed to migrate usage.json:",a.message)}if(q&&e.existsSync(q))try{let b=e.readFileSync(q,"utf-8"),c=JSON.parse(b).logs||[];if(c.length>0){console.log(`[usageDb] Migrating ${c.length} call log entries from JSON → SQLite...`);let b=a.prepare(`
9
- INSERT OR IGNORE INTO call_logs (id, timestamp, method, path, status, model, provider,
10
- account, connection_id, duration, tokens_in, tokens_out, source_format, target_format,
11
- api_key_id, api_key_name, combo_name, request_body, response_body, error)
12
- VALUES (@id, @timestamp, @method, @path, @status, @model, @provider,
13
- @account, @connectionId, @duration, @tokensIn, @tokensOut, @sourceFormat, @targetFormat,
14
- @apiKeyId, @apiKeyName, @comboName, @requestBody, @responseBody, @error)
15
- `);a.transaction(()=>{for(let a of c)b.run({id:a.id||`${Date.now()}-${Math.random().toString(36).slice(2,6)}`,timestamp:a.timestamp||new Date().toISOString(),method:a.method||"POST",path:a.path||null,status:a.status||0,model:a.model||null,provider:a.provider||null,account:a.account||null,connectionId:a.connectionId||null,duration:a.duration||0,tokensIn:a.tokens?.in??0,tokensOut:a.tokens?.out??0,sourceFormat:a.sourceFormat||null,targetFormat:a.targetFormat||null,apiKeyId:a.apiKeyId||null,apiKeyName:a.apiKeyName||null,comboName:a.comboName||null,requestBody:a.requestBody?JSON.stringify(a.requestBody):null,responseBody:a.responseBody?JSON.stringify(a.responseBody):null,error:a.error||null})})(),console.log(`[usageDb] ✓ Migrated ${c.length} call log entries`)}e.renameSync(q,q+".migrated")}catch(a){console.error("[usageDb] Failed to migrate call_logs.json:",a.message)}}()}catch{}let s={byModel:{},byAccount:{}};function t(a,b,c,d){let e=b?`${a} (${b})`:a;s.byModel[e]||(s.byModel[e]=0),s.byModel[e]=Math.max(0,s.byModel[e]+(d?1:-1)),c&&(s.byAccount[c]||(s.byAccount[c]={}),s.byAccount[c][e]||(s.byAccount[c][e]=0),s.byAccount[c][e]=Math.max(0,s.byAccount[c][e]+(d?1:-1)))}async function u(){return{data:{history:(0,f.sm)().prepare("SELECT * FROM usage_history ORDER BY timestamp ASC").all().map(a=>({provider:a.provider,model:a.model,connectionId:a.connection_id,apiKeyId:a.api_key_id,apiKeyName:a.api_key_name,tokens:{input:a.tokens_input,output:a.tokens_output,cacheRead:a.tokens_cache_read,cacheCreation:a.tokens_cache_creation,reasoning:a.tokens_reasoning},status:a.status,timestamp:a.timestamp}))}}}async function v(a){if(h)try{let b=(0,f.sm)(),c=a.timestamp||new Date().toISOString();b.prepare(`
16
- INSERT INTO usage_history (provider, model, connection_id, api_key_id, api_key_name,
17
- tokens_input, tokens_output, tokens_cache_read, tokens_cache_creation, tokens_reasoning,
18
- status, timestamp)
19
- VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
20
- `).run(a.provider||null,a.model||null,a.connectionId||null,a.apiKeyId||null,a.apiKeyName||null,a.tokens?.input??a.tokens?.prompt_tokens??0,a.tokens?.output??a.tokens?.completion_tokens??0,a.tokens?.cacheRead??a.tokens?.cached_tokens??0,a.tokens?.cacheCreation??a.tokens?.cache_creation_input_tokens??0,a.tokens?.reasoning??a.tokens?.reasoning_tokens??0,a.status||null,c)}catch(a){console.error("Failed to save usage stats:",a)}}async function w({model:a,provider:b,connectionId:d,tokens:f,status:g}){if(h)try{let h=function(a=new Date){let b=a=>String(a).padStart(2,"0"),c=b(a.getDate()),d=b(a.getMonth()+1),e=a.getFullYear(),f=b(a.getHours()),g=b(a.getMinutes()),h=b(a.getSeconds());return`${c}-${d}-${e} ${f}:${g}:${h}`}(),i=b?.toUpperCase()||"-",k=d?d.slice(0,8):"-";try{let{getProviderConnections:a}=await Promise.all([c.e(8108),c.e(651),c.e(7136)]).then(c.bind(c,30651)),b=(await a()).find(a=>a.id===d);b&&(k=b.name||b.email||k)}catch{}let l=f?.input!==void 0?f.input:f?.prompt_tokens!==void 0?f.prompt_tokens:"-",m=f?.output!==void 0?f.output:f?.completion_tokens!==void 0?f.completion_tokens:"-",n=`${h} | ${a||"-"} | ${i} | ${k} | ${l} | ${m} | ${g}
21
- `;e.appendFileSync(j,n);let o=e.readFileSync(j,"utf-8").trim().split("\n");o.length>200&&e.writeFileSync(j,o.slice(-200).join("\n")+"\n")}catch(a){console.error("Failed to append to log.txt:",a.message)}}async function x(a=200){if(!h||!e||"function"!=typeof e.existsSync||!j||!e.existsSync(j))return[];try{return e.readFileSync(j,"utf-8").trim().split("\n").slice(-a).reverse()}catch(a){return console.error("[usageDb] Failed to read log.txt:",a.message),[]}}async function y(a,b,d){if(!d||!a||!b)return 0;try{let{getPricingForModel:e}=await Promise.all([c.e(8108),c.e(651),c.e(7136)]).then(c.bind(c,30651)),f=await e(a,b);if(!f){let c=function(a){if(!a||!a.includes("/"))return a;let b=a.split("/");return b[b.length-1]}(b);c!==b&&(f=await e(a,c))}if(!f)return 0;let g=0,h=d.input??d.prompt_tokens??d.input_tokens??0,i=d.cacheRead??d.cached_tokens??d.cache_read_input_tokens??0,j=Math.max(0,h-i);g+=j*(f.input/1e6),i>0&&(g+=i*((f.cached||f.input)/1e6));let k=d.output??d.completion_tokens??d.output_tokens??0;g+=k*(f.output/1e6);let l=d.reasoning??d.reasoning_tokens??0;l>0&&(g+=l*((f.reasoning||f.output)/1e6));let m=d.cacheCreation??d.cache_creation_input_tokens??0;return m>0&&(g+=m*((f.cache_creation||f.input)/1e6)),g}catch(a){return console.error("Error calculating cost:",a),0}}async function z(){let a=(0,f.sm)().prepare("SELECT * FROM usage_history ORDER BY timestamp ASC").all(),{getProviderConnections:b}=await Promise.all([c.e(8108),c.e(651),c.e(7136)]).then(c.bind(c,30651)),d=[];try{d=await b()}catch{}let e={};for(let a of d)e[a.id]=a.name||a.email||a.id;let g={totalRequests:a.length,totalPromptTokens:0,totalCompletionTokens:0,totalCost:0,byProvider:{},byModel:{},byAccount:{},byApiKey:{},last10Minutes:[],pending:s,activeRequests:[]};for(let[a,b]of Object.entries(s.byAccount))for(let[c,d]of Object.entries(b))if(d>0){let b=e[a]||`Account ${a.slice(0,8)}...`,f=c.match(/^(.*) \((.*)\)$/);g.activeRequests.push({model:f?f[1]:c,provider:f?f[2]:"unknown",account:b,count:d})}let h=new Date,i=new Date(6e4*Math.floor(h.getTime()/6e4)),j={};for(let a=0;a<10;a++){let b=new Date(i.getTime()-(9-a)*6e4).getTime();j[b]={requests:0,promptTokens:0,completionTokens:0,cost:0},g.last10Minutes.push(j[b])}let k=new Date(i.getTime()-54e4);for(let b of a){let a=b.tokens_input||0,c=b.tokens_output||0,d=new Date(b.timestamp),f={input:b.tokens_input,output:b.tokens_output,cacheRead:b.tokens_cache_read,cacheCreation:b.tokens_cache_creation,reasoning:b.tokens_reasoning},i=await y(b.provider,b.model,f);if(g.totalPromptTokens+=a,g.totalCompletionTokens+=c,g.totalCost+=i,d>=k&&d<=h){let b=6e4*Math.floor(d.getTime()/6e4);j[b]&&(j[b].requests++,j[b].promptTokens+=a,j[b].completionTokens+=c,j[b].cost+=i)}g.byProvider[b.provider]||(g.byProvider[b.provider]={requests:0,promptTokens:0,completionTokens:0,cost:0}),g.byProvider[b.provider].requests++,g.byProvider[b.provider].promptTokens+=a,g.byProvider[b.provider].completionTokens+=c,g.byProvider[b.provider].cost+=i;let l=b.provider?`${b.model} (${b.provider})`:b.model;if(g.byModel[l]||(g.byModel[l]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b.model,provider:b.provider,lastUsed:b.timestamp}),g.byModel[l].requests++,g.byModel[l].promptTokens+=a,g.byModel[l].completionTokens+=c,g.byModel[l].cost+=i,new Date(b.timestamp)>new Date(g.byModel[l].lastUsed)&&(g.byModel[l].lastUsed=b.timestamp),b.connection_id){let d=e[b.connection_id]||`Account ${b.connection_id.slice(0,8)}...`,f=`${b.model} (${b.provider} - ${d})`;g.byAccount[f]||(g.byAccount[f]={requests:0,promptTokens:0,completionTokens:0,cost:0,rawModel:b.model,provider:b.provider,connectionId:b.connection_id,accountName:d,lastUsed:b.timestamp}),g.byAccount[f].requests++,g.byAccount[f].promptTokens+=a,g.byAccount[f].completionTokens+=c,g.byAccount[f].cost+=i,new Date(b.timestamp)>new Date(g.byAccount[f].lastUsed)&&(g.byAccount[f].lastUsed=b.timestamp)}if(b.api_key_id||b.api_key_name){let d=b.api_key_name||b.api_key_id||"unknown",e=b.api_key_id||null,f=e?`${d} (${e})`:d;g.byApiKey[f]||(g.byApiKey[f]={requests:0,promptTokens:0,completionTokens:0,cost:0,apiKeyId:e,apiKeyName:d,lastUsed:b.timestamp}),g.byApiKey[f].requests++,g.byApiKey[f].promptTokens+=a,g.byApiKey[f].completionTokens+=c,g.byApiKey[f].cost+=i,new Date(b.timestamp)>new Date(g.byApiKey[f].lastUsed)&&(g.byApiKey[f].lastUsed=b.timestamp)}}return g}let A=0;async function B(a){if(h)try{let b=a.connectionId?a.connectionId.slice(0,8):"-";try{let{getProviderConnections:d}=await Promise.all([c.e(8108),c.e(651),c.e(7136)]).then(c.bind(c,30651)),e=(await d()).find(b=>b.id===a.connectionId);e&&(b=e.name||e.email||b)}catch{}let g=a=>{if(!a)return null;let b=JSON.stringify(a);if(b.length<=8192)return b;try{return JSON.stringify({_truncated:!0,_originalSize:b.length,_preview:b.slice(0,8192)+"..."})}catch{return JSON.stringify({_truncated:!0})}},h={id:(A++,`${Date.now()}-${A}`),timestamp:new Date().toISOString(),method:a.method||"POST",path:a.path||"/v1/chat/completions",status:a.status||0,model:a.model||"-",provider:a.provider||"-",account:b,connectionId:a.connectionId||null,duration:a.duration||0,tokensIn:a.tokens?.prompt_tokens||0,tokensOut:a.tokens?.completion_tokens||0,sourceFormat:a.sourceFormat||null,targetFormat:a.targetFormat||null,apiKeyId:a.apiKeyId||null,apiKeyName:a.apiKeyName||null,comboName:a.comboName||null,requestBody:g(a.requestBody),responseBody:g(a.responseBody),error:a.error||null},i=(0,f.sm)();i.prepare(`
22
- INSERT INTO call_logs (id, timestamp, method, path, status, model, provider,
23
- account, connection_id, duration, tokens_in, tokens_out, source_format, target_format,
24
- api_key_id, api_key_name, combo_name, request_body, response_body, error)
25
- VALUES (@id, @timestamp, @method, @path, @status, @model, @provider,
26
- @account, @connectionId, @duration, @tokensIn, @tokensOut, @sourceFormat, @targetFormat,
27
- @apiKeyId, @apiKeyName, @comboName, @requestBody, @responseBody, @error)
28
- `).run(h);let j=i.prepare("SELECT COUNT(*) as cnt FROM call_logs").get()?.cnt||0;j>500&&i.prepare(`
29
- DELETE FROM call_logs WHERE id IN (
30
- SELECT id FROM call_logs ORDER BY timestamp ASC LIMIT ?
31
- )
32
- `).run(j-500),function(a,b,c){if(k)try{let f=new Date,g=`${f.getFullYear()}-${String(f.getMonth()+1).padStart(2,"0")}-${String(f.getDate()).padStart(2,"0")}`,h=d.join(k,g);e.existsSync(h)||e.mkdirSync(h,{recursive:!0});let i=(a.model||"unknown").replace(/[/:]/g,"-"),j=`${String(f.getHours()).padStart(2,"0")}${String(f.getMinutes()).padStart(2,"0")}${String(f.getSeconds()).padStart(2,"0")}`,l=`${j}_${i}_${a.status}.json`,m={...a,requestBody:b||null,responseBody:c||null};e.writeFileSync(d.join(h,l),JSON.stringify(m,null,2))}catch(a){console.error("[callLogs] Failed to write disk log:",a.message)}}({...h,tokens:{in:h.tokensIn,out:h.tokensOut}},a.requestBody,a.responseBody)}catch(a){console.error("[callLogs] Failed to save call log:",a.message)}}if(h)try{if(k&&e.existsSync(k))try{let a=e.readdirSync(k),b=Date.now();for(let c of a){let a=d.join(k,c),f=e.statSync(a);f.isDirectory()&&b-f.mtimeMs>6048e5&&(e.rmSync(a,{recursive:!0,force:!0}),console.log(`[callLogs] Rotated old logs: ${c}`))}}catch(a){console.error("[callLogs] Failed to rotate logs:",a.message)}}catch{}async function C(a={}){let b=(0,f.sm)(),c="SELECT * FROM call_logs",d=[],e={};if(a.status)if("error"===a.status)d.push("(status >= 400 OR error IS NOT NULL)");else if("ok"===a.status)d.push("status >= 200 AND status < 300");else{let b=parseInt(a.status);isNaN(b)||(d.push("status = @statusCode"),e.statusCode=b)}a.model&&(d.push("model LIKE @modelQ"),e.modelQ=`%${a.model}%`),a.provider&&(d.push("provider LIKE @providerQ"),e.providerQ=`%${a.provider}%`),a.account&&(d.push("account LIKE @accountQ"),e.accountQ=`%${a.account}%`),a.apiKey&&(d.push("(api_key_name LIKE @apiKeyQ OR api_key_id LIKE @apiKeyQ)"),e.apiKeyQ=`%${a.apiKey}%`),a.combo&&d.push("combo_name IS NOT NULL"),a.search&&(d.push(`(
33
- model LIKE @searchQ OR path LIKE @searchQ OR account LIKE @searchQ OR
34
- provider LIKE @searchQ OR api_key_name LIKE @searchQ OR api_key_id LIKE @searchQ OR
35
- combo_name LIKE @searchQ OR CAST(status AS TEXT) LIKE @searchQ
36
- )`),e.searchQ=`%${a.search}%`),d.length>0&&(c+=" WHERE "+d.join(" AND "));let g=a.limit||200;return c+=` ORDER BY timestamp DESC LIMIT ${g}`,b.prepare(c).all(e).map(a=>({id:a.id,timestamp:a.timestamp,method:a.method,path:a.path,status:a.status,model:a.model,provider:a.provider,account:a.account,duration:a.duration,tokens:{in:a.tokens_in,out:a.tokens_out},sourceFormat:a.source_format,targetFormat:a.target_format,error:a.error,comboName:a.combo_name||null,apiKeyId:a.api_key_id||null,apiKeyName:a.api_key_name||null,hasRequestBody:!!a.request_body,hasResponseBody:!!a.response_body}))}async function D(a){let b=(0,f.sm)().prepare("SELECT * FROM call_logs WHERE id = ?").get(a);if(!b)return null;let c={id:b.id,timestamp:b.timestamp,method:b.method,path:b.path,status:b.status,model:b.model,provider:b.provider,account:b.account,connectionId:b.connection_id,duration:b.duration,tokens:{in:b.tokens_in,out:b.tokens_out},sourceFormat:b.source_format,targetFormat:b.target_format,apiKeyId:b.api_key_id,apiKeyName:b.api_key_name,comboName:b.combo_name,requestBody:b.request_body?JSON.parse(b.request_body):null,responseBody:b.response_body?JSON.parse(b.response_body):null,error:b.error};if((c.requestBody?._truncated||c.responseBody?._truncated)&&k)try{let a=function(a){if(!k||!a.timestamp)return null;try{let b=new Date(a.timestamp),c=`${b.getFullYear()}-${String(b.getMonth()+1).padStart(2,"0")}-${String(b.getDate()).padStart(2,"0")}`,f=d.join(k,c);if(!e.existsSync(f))return null;let g=`${String(b.getHours()).padStart(2,"0")}${String(b.getMinutes()).padStart(2,"0")}${String(b.getSeconds()).padStart(2,"0")}`,h=(a.model||"unknown").replace(/[/:]/g,"-"),i=`${g}_${h}_${a.status}.json`,j=d.join(f,i);if(e.existsSync(j))return JSON.parse(e.readFileSync(j,"utf8"));let l=e.readdirSync(f).filter(b=>b.startsWith(g)&&b.endsWith(`_${a.status}.json`));if(l.length>0)return JSON.parse(e.readFileSync(d.join(f,l[0]),"utf8"))}catch(a){console.error("[callLogs] Disk log read error:",a.message)}return null}(c);if(a)return{...c,requestBody:a.requestBody??c.requestBody,responseBody:a.responseBody??c.responseBody}}catch(a){console.error("[callLogs] Failed to read full log from disk:",a.message)}return c}}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=5040,exports.ids=[5040],exports.modules={15040:(a,b,c)=>{c.d(b,{Pt:()=>k,Tr:()=>l,c1:()=>i,kI:()=>m,vk:()=>j});var d=c(30651),e=c(49263),f=c(26262);let g=Promise.resolve(),h=new Map;async function i(a,b=null){let c,h=g;g=new Promise(a=>{c=a});try{let c;await h;let g=await (0,d.getProviderConnections)({provider:a,isActive:!0});if(f.debug("AUTH",`${a} | total connections: ${g.length}, excludeId: ${b||"none"}`),0===g.length){let b=await (0,d.getProviderConnections)({provider:a});if(f.debug("AUTH",`${a} | all connections (incl inactive): ${b.length}`),b.length>0){let c=(0,e.UY)(b);if(c)return f.warn("AUTH",`${a} | all ${b.length} accounts rate limited (${(0,e.Qo)(c)})`),{allRateLimited:!0,retryAfter:c,retryAfterHuman:(0,e.Qo)(c)};f.warn("AUTH",`${a} | ${b.length} accounts found but none active`),b.forEach(a=>{f.debug("AUTH",` → ${a.id?.slice(0,8)} | isActive=${a.isActive} | rateLimitedUntil=${a.rateLimitedUntil||"none"} | testStatus=${a.testStatus}`)})}return f.warn("AUTH",`No credentials for ${a}`),null}let i=g.filter(a=>!(b&&a.id===b||(0,e.AO)(a.rateLimitedUntil)));if(f.debug("AUTH",`${a} | available: ${i.length}/${g.length}`),g.forEach(a=>{let c=b&&a.id===b,d=(0,e.AO)(a.rateLimitedUntil);(c||d)&&f.debug("AUTH",` → ${a.id?.slice(0,8)} | ${c?"excluded":""} ${d?`rateLimited until ${a.rateLimitedUntil}`:""}`)}),0===i.length){let b=(0,e.UY)(g);if(b){let c=g.filter(a=>a.rateLimitedUntil&&new Date(a.rateLimitedUntil).getTime()>Date.now()).sort((a,b)=>new Date(a.rateLimitedUntil)-new Date(b.rateLimitedUntil))[0];return f.warn("AUTH",`${a} | all ${g.length} active accounts rate limited (${(0,e.Qo)(b)}) | lastErrorCode=${c?.errorCode}, lastError=${c?.lastError?.slice(0,50)}`),{allRateLimited:!0,retryAfter:b,retryAfterHuman:(0,e.Qo)(b),lastError:c?.lastError||null,lastErrorCode:c?.errorCode||null}}return f.warn("AUTH",`${a} | all ${g.length} accounts unavailable`),null}let j=await (0,d.mt)(),k=j.fallbackStrategy||"fill-first";if("round-robin"===k){let a=j.stickyRoundRobinLimit||3,b=[...i].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(b.lastUsedAt)-new Date(a.lastUsedAt):-1:1:(a.priority||999)-(b.priority||999))[0],e=b?.consecutiveUseCount||0;b&&b.lastUsedAt&&e<a?(c=b,await (0,d.rj)(c.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:(c.consecutiveUseCount||0)+1})):(c=[...i].sort((a,b)=>a.lastUsedAt||b.lastUsedAt?a.lastUsedAt?b.lastUsedAt?new Date(a.lastUsedAt)-new Date(b.lastUsedAt):1:-1:(a.priority||999)-(b.priority||999))[0],await (0,d.rj)(c.id,{lastUsedAt:new Date().toISOString(),consecutiveUseCount:1}))}else c=i[0];return{apiKey:c.apiKey,accessToken:c.accessToken,refreshToken:c.refreshToken,expiresAt:c.tokenExpiresAt||c.expiresAt||null,projectId:c.projectId,copilotToken:c.providerSpecificData?.copilotToken,providerSpecificData:c.providerSpecificData,connectionId:c.id,testStatus:c.testStatus,lastError:c.lastError,rateLimitedUntil:c.rateLimitedUntil}}finally{c&&c()}}async function j(a,b,c,g=null,i=null){let k,l=h.get(a)||Promise.resolve();h.set(a,new Promise(a=>{k=a}));try{await l;let h=(await (0,d.getProviderConnections)({provider:g})).find(b=>b.id===a),j=h?.backoffLevel||0;if(h?.rateLimitedUntil&&new Date(h.rateLimitedUntil).getTime()>Date.now())return f.info("AUTH",`${a.slice(0,8)} already marked unavailable (until ${h.rateLimitedUntil}), skipping duplicate mark`),{shouldFallback:!0,cooldownMs:new Date(h.rateLimitedUntil).getTime()-Date.now()};let{shouldFallback:k,cooldownMs:m,newBackoffLevel:n,reason:o}=(0,e.hk)(b,c,j,i,g);if(!k)return{shouldFallback:!1,cooldownMs:0};let p=(0,e.vp)(m),q="string"==typeof c?c.slice(0,100):"Provider error";return await (0,d.rj)(a,{rateLimitedUntil:p,testStatus:"unavailable",lastError:q,errorCode:b,lastErrorAt:new Date().toISOString(),backoffLevel:n??j}),g&&i&&m>0&&(0,e.R7)(g,a,i,o||"unknown",m),g&&b&&q&&console.error(`❌ ${g} [${b}]: ${q}`),{shouldFallback:!0,cooldownMs:m}}finally{k&&k(),h.delete(a)}}async function k(a,b){("unavailable"===b.testStatus||b.lastError||b.rateLimitedUntil)&&(await (0,d.rj)(a,{testStatus:"active",lastError:null,lastErrorAt:null,rateLimitedUntil:null,backoffLevel:0}),f.info("AUTH",`Account ${a.slice(0,8)} error cleared`))}function l(a){let b=a.headers.get("Authorization");return b?.startsWith("Bearer ")?b.slice(7):null}async function m(a){return!!a&&await (0,d.ek)(a)}},26262:(a,b,c)=>{c.r(b),c.d(b,{debug:()=>h,error:()=>k,info:()=>i,maskKey:()=>f,request:()=>l,response:()=>m,stream:()=>n,warn:()=>j});var d=c(74552);let e={level:process.env.LOG_LEVEL||"info",base:{service:"omniroute"},timestamp:d.stdTimeFunctions.isoTime,formatters:{level:a=>({level:a})}};function f(a){return!a||a.length<8?"***":`${a.slice(0,4)}...${a.slice(-4)}`}let g=d({...e}).child({module:"sse"});function h(a,b,c){g.debug({tag:a,...o(c)},b)}function i(a,b,c){g.info({tag:a,...o(c)},b)}function j(a,b,c){g.warn({tag:a,...o(c)},b)}function k(a,b,c){g.error({tag:a,...o(c)},b)}function l(a,b,c){g.info({tag:"HTTP",method:a,path:b,...o(c)},`📥 ${a} ${b}`)}function m(a,b,c){g[a<400?"info":"error"]({tag:"HTTP",status:a,duration:b,...o(c)},`📤 ${a} (${b}ms)`)}function n(a,b){g.debug({tag:"STREAM",event:a,...o(b)},`🌊 ${a}`)}function o(a){return a?"string"==typeof a?{detail:a}:"object"==typeof a?a:{detail:String(a)}:{}}}};
@@ -1 +0,0 @@
1
- exports.id=5727,exports.ids=[5727,7271],exports.modules={78335:()=>{},85640:(a,b,c)=>{"use strict";c.d(b,{Ny:()=>t,Ql:()=>o,iD:()=>v,jR:()=>r,jT:()=>u,oD:()=>f,qZ:()=>w});var d=c(97271),e=c(77598);let f=3e5,g=new Map;async function h(a,b,c,e){let f=d.xq[a],g=f?.refreshUrl||f?.tokenUrl;if(!f||!g)return e?.warn?.("TOKEN_REFRESH",`No refresh endpoint configured for provider: ${a}`),null;if(!b)return e?.warn?.("TOKEN_REFRESH",`No refresh token available for provider: ${a}`),null;try{let c=new URLSearchParams({grant_type:"refresh_token",refresh_token:b});f.clientId&&c.set("client_id",f.clientId),f.clientSecret&&c.set("client_secret",f.clientSecret);let d=await fetch(g,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:c});if(!d.ok){let b=await d.text();return e?.error?.("TOKEN_REFRESH",`Failed to refresh token for ${a}`,{status:d.status,error:b}),null}let h=await d.json();return e?.info?.("TOKEN_REFRESH",`Successfully refreshed token for ${a}`,{hasNewAccessToken:!!h.access_token,hasNewRefreshToken:!!h.refresh_token,expiresIn:h.expires_in}),{accessToken:h.access_token,refreshToken:h.refresh_token||b,expiresIn:h.expires_in}}catch(b){return e?.error?.("TOKEN_REFRESH",`Error refreshing token for ${a}`,{error:b.message}),null}}async function i(a,b){let c=d.xq.cline?.refreshUrl;if(!c)return b?.warn?.("TOKEN_REFRESH","No refresh URL configured for Cline"),null;try{let d=await fetch(c,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:a,grantType:"refresh_token",clientType:"extension"})});if(!d.ok){let a=await d.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Cline token",{status:d.status,error:a}),null}let e=await d.json(),f=e?.data||e,g=f?.expiresAt,h=g?Math.max(1,Math.floor((new Date(g).getTime()-Date.now())/1e3)):void 0;return b?.info?.("TOKEN_REFRESH","Successfully refreshed Cline token",{hasNewAccessToken:!!f?.accessToken,hasNewRefreshToken:!!f?.refreshToken,expiresIn:h}),{accessToken:f?.accessToken,refreshToken:f?.refreshToken||a,expiresIn:h}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Cline token: ${a.message}`),null}}async function j(a,b){let c=d.xq["kimi-coding"]?.refreshUrl||d.xq["kimi-coding"]?.tokenUrl;if(!c)return b?.warn?.("TOKEN_REFRESH","No refresh URL configured for Kimi Coding"),null;try{let e=new URLSearchParams({grant_type:"refresh_token",refresh_token:a,client_id:d.xq["kimi-coding"]?.clientId||""}),f=await fetch(c,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"},body:e});if(!f.ok){let a=await f.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh Kimi Coding token",{status:f.status,error:a}),null}let g=await f.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Kimi Coding 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}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Kimi Coding token: ${a.message}`),null}}async function k(a,b){try{let c=await fetch(d.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 e=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Claude OAuth token",{hasNewAccessToken:!!e.access_token,hasNewRefreshToken:!!e.refresh_token,expiresIn:e.expires_in}),{accessToken:e.access_token,refreshToken:e.refresh_token||a,expiresIn:e.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Claude token: ${a.message}`),null}}async function l(a,b,c,e){let f=await fetch(d.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 e?.error?.("TOKEN_REFRESH","Failed to refresh Google token",{status:f.status,error:a}),null}let g=await f.json();return e?.info?.("TOKEN_REFRESH","Successfully refreshed Google 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}}async function m(a,b){let c=d.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}}{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}async function n(a,b){try{let c=await fetch(d.NA.openai.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:d.xq.codex.clientId,scope:"openid profile email offline_access"})});if(!c.ok){let a=await c.text(),d=null;try{let b=JSON.parse(a);d=b?.error?.code}catch{}if("refresh_token_reused"===d)return b?.error?.("TOKEN_REFRESH","Codex refresh token already used (rotating token consumed). Re-authentication required.",{status:c.status}),{error:"refresh_token_reused"};return b?.error?.("TOKEN_REFRESH","Failed to refresh Codex token",{status:c.status,error:a}),null}let e=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed Codex token",{hasNewAccessToken:!!e.access_token,hasNewRefreshToken:!!e.refresh_token,expiresIn:e.expires_in}),{accessToken:e.access_token,refreshToken:e.refresh_token||a,expiresIn:e.expires_in}}catch(a){return b?.error?.("TOKEN_REFRESH",`Network error refreshing Codex token: ${a.message}`),null}}async function o(a,b,c){try{let e=b?.authMethod,f=b?.clientId,g=b?.clientSecret,h=b?.region;if(f&&g){let b="idc"===e&&h?`https://oidc.${h}.amazonaws.com/token`:"https://oidc.us-east-1.amazonaws.com/token",d=await fetch(b,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({clientId:f,clientSecret:g,refreshToken:a,grantType:"refresh_token"})});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 i=await d.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro AWS token",{hasNewAccessToken:!!i.accessToken,expiresIn:i.expiresIn}),{accessToken:i.accessToken,refreshToken:i.refreshToken||a,expiresIn:i.expiresIn}}let i=await fetch(d.xq.kiro.tokenUrl,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify({refreshToken:a})});if(!i.ok){let a=await i.text();return c?.error?.("TOKEN_REFRESH","Failed to refresh Kiro social token",{status:i.status,error:a}),null}let j=await i.json();return c?.info?.("TOKEN_REFRESH","Successfully refreshed Kiro social token",{hasNewAccessToken:!!j.accessToken,expiresIn:j.expiresIn}),{accessToken:j.accessToken,refreshToken:j.refreshToken||a,expiresIn:j.expiresIn}}catch(a){return c?.error?.("TOKEN_REFRESH",`Network error refreshing Kiro token: ${a.message}`),null}}async function p(a,b){let c=btoa(`${d.xq.iflow.clientId}:${d.xq.iflow.clientSecret}`),e=await fetch(d.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(!e.ok){let a=await e.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh iFlow token",{status:e.status,error:a}),null}let f=await e.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed iFlow token",{hasNewAccessToken:!!f.access_token,hasNewRefreshToken:!!f.refresh_token,expiresIn:f.expires_in}),{accessToken:f.access_token,refreshToken:f.refresh_token||a,expiresIn:f.expires_in}}async function q(a,b){let c=await fetch(d.NA.github.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:d.xq.github.clientId,client_secret:d.xq.github.clientSecret})});if(!c.ok){let a=await c.text();return b?.error?.("TOKEN_REFRESH","Failed to refresh GitHub token",{status:c.status,error:a}),null}let e=await c.json();return b?.info?.("TOKEN_REFRESH","Successfully refreshed GitHub token",{hasNewAccessToken:!!e.access_token,hasNewRefreshToken:!!e.refresh_token,expiresIn:e.expires_in}),{accessToken:e.access_token,refreshToken:e.refresh_token||a,expiresIn:e.expires_in}}async function r(a,b){try{let c=await fetch("https://api.github.com/copilot_internal/v2/token",{headers:{Authorization:`token ${a}`,"User-Agent":"GithubCopilot/1.0","Editor-Version":"vscode/1.100.0","Editor-Plugin-Version":"copilot/1.300.0",Accept:"application/json"}});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}}async function s(a,b,c){switch(a){case"gemini":case"gemini-cli":case"antigravity":return await l(b.refreshToken,d.xq[a].clientId,d.xq[a].clientSecret,c);case"claude":return await k(b.refreshToken,c);case"codex":return await n(b.refreshToken,c);case"qwen":return await m(b.refreshToken,c);case"iflow":return await p(b.refreshToken,c);case"github":return await q(b.refreshToken,c);case"kiro":return await o(b.refreshToken,b.providerSpecificData,c);case"cline":return await i(b.refreshToken,c);case"kimi-coding":return await j(b.refreshToken,c);default:return h(a,b.refreshToken,b,c)}}function t(a){if(new Set(["gemini","gemini-cli","antigravity","claude","codex","qwen","iflow","github","kiro","cline","kimi-coding"]).has(a))return!0;let b=d.xq[a];return!!(b?.refreshUrl||b?.tokenUrl)}function u(a){return a&&"object"==typeof a&&"refresh_token_reused"===a.error}async function v(a,b,c){var d;let f;if(!b||!b.refreshToken||"string"!=typeof b.refreshToken)return c?.warn?.("TOKEN_REFRESH",`No valid refresh token available for provider: ${a}`),null;let h=(d=b.refreshToken,f=(0,e.createHash)("sha256").update(d).digest("hex"),`${a}:${f}`);if(g.has(h))return c?.info?.("TOKEN_REFRESH",`Reusing in-flight refresh for ${a}`),g.get(h);let i=s(a,b,c).finally(()=>{g.delete(h)});return g.set(h,i),i}async function w(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}},96487:()=>{},97271:(a,b,c)=>{"use strict";c.d(b,{$V:()=>n,EQ:()=>u,Co:()=>m,Bm:()=>w,DEFAULT_API_LIMITS:()=>y,O:()=>t,Uc:()=>p,eo:()=>q,LY:()=>s,MT:()=>j,gx:()=>r,NA:()=>o,xq:()=>l,PROVIDER_PROFILES:()=>x,QS:()=>v,C8:()=>z,TH:()=>k});var d=c(29021),e=c(33873);let f=["clientId","clientSecret","tokenUrl","authUrl","refreshUrl"],g=0,h=null;var i=c(28108);let j=parseInt(process.env.FETCH_TIMEOUT_MS||"120000",10),k=parseInt(process.env.STREAM_IDLE_TIMEOUT_MS||"60000",10),l=(0,i.Z0)();!function(a){let b;if(h&&Date.now()-g<6e4)return;let c=(b=process.env.DATA_DIR||(0,e.join)(process.cwd(),"data"),(0,e.join)(b,"provider-credentials.json"));if(!(0,d.existsSync)(c))return h||console.log("[CREDENTIALS] No external credentials file found, using defaults."),h=a,g=Date.now();try{let b=(0,d.readFileSync)(c,"utf-8"),e=JSON.parse(b),g=0;for(let[b,c]of Object.entries(e)){if(!a[b]){console.log(`[CREDENTIALS] Warning: unknown provider "${b}" in credentials file, skipping.`);continue}if(!c||"object"!=typeof c){console.log(`[CREDENTIALS] Warning: provider "${b}" value must be an object, got ${typeof c}. Skipping.`);continue}for(let d of f)void 0!==c[d]&&(a[b][d]=c[d],g++)}let i=null!==h;console.log(`[CREDENTIALS] ${i?"Reloaded":"Loaded"} external credentials: ${g} field(s) from ${c}`)}catch(a){console.log(`[CREDENTIALS] Error reading credentials file: ${a.message}. Using defaults.`)}h=a,g=Date.now()}(l);let m="You are Claude Code, Anthropic's official CLI for Claude.",n="Please ignore the following [ignore]You are Antigravity, a powerful agentic AI coding assistant designed by the Google Deepmind team working on Advanced Agentic Coding.You are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.**Absolute paths only****Proactiveness**[/ignore]",o={google:{token:"https://oauth2.googleapis.com/token",auth:"https://accounts.google.com/o/oauth2/auth"},openai:{token:"https://auth.openai.com/oauth/token",auth:"https://auth.openai.com/oauth/authorize"},anthropic:{token:"https://console.anthropic.com/v1/oauth/token",auth:"https://console.anthropic.com/v1/oauth/authorize"},qwen:{token:"https://chat.qwen.ai/api/v1/oauth2/token",auth:"https://chat.qwen.ai/api/v1/oauth2/device/code"},iflow:{token:"https://iflow.cn/oauth/token",auth:"https://iflow.cn/oauth"},github:{token:"https://github.com/login/oauth/access_token",auth:"https://github.com/login/oauth/authorize",deviceCode:"https://github.com/login/device/code"}},p=64e3,q=32e3,r={BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,NOT_ACCEPTABLE:406,REQUEST_TIMEOUT:408,RATE_LIMITED:429,SERVER_ERROR:500,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504},s={[r.BAD_REQUEST]:{type:"invalid_request_error",code:"bad_request"},[r.UNAUTHORIZED]:{type:"authentication_error",code:"invalid_api_key"},[r.FORBIDDEN]:{type:"permission_error",code:"insufficient_quota"},[r.NOT_FOUND]:{type:"invalid_request_error",code:"model_not_found"},[r.RATE_LIMITED]:{type:"rate_limit_error",code:"rate_limit_exceeded"},[r.SERVER_ERROR]:{type:"server_error",code:"internal_server_error"},[r.BAD_GATEWAY]:{type:"server_error",code:"bad_gateway"},[r.SERVICE_UNAVAILABLE]:{type:"server_error",code:"service_unavailable"},[r.GATEWAY_TIMEOUT]:{type:"server_error",code:"gateway_timeout"}},t={[r.BAD_REQUEST]:"Bad request",[r.UNAUTHORIZED]:"Invalid API key provided",[r.FORBIDDEN]:"You exceeded your current quota",[r.NOT_FOUND]:"Model not found",[r.RATE_LIMITED]:"Rate limit exceeded",[r.SERVER_ERROR]:"Internal server error",[r.BAD_GATEWAY]:"Bad gateway - upstream provider error",[r.SERVICE_UNAVAILABLE]:"Service temporarily unavailable",[r.GATEWAY_TIMEOUT]:"Gateway timeout"},u={base:1e3,max:12e4,maxLevel:15},v={QUOTA_EXHAUSTED:"quota_exhausted",RATE_LIMIT_EXCEEDED:"rate_limit_exceeded",MODEL_CAPACITY:"model_capacity",SERVER_ERROR:"server_error",AUTH_ERROR:"auth_error",UNKNOWN:"unknown"},w={unauthorized:12e4,paymentRequired:12e4,notFound:12e4,transientInitial:5e3,transientMax:6e4,transient:5e3,requestNotAllowed:5e3,rateLimit:12e4,serviceUnavailable:2e3,authExpired:12e4},x={oauth:{transientCooldown:5e3,rateLimitCooldown:6e4,maxBackoffLevel:8,circuitBreakerThreshold:3,circuitBreakerReset:6e4},apikey:{transientCooldown:3e3,rateLimitCooldown:0,maxBackoffLevel:5,circuitBreakerThreshold:5,circuitBreakerReset:3e4}},y={requestsPerMinute:100,minTimeBetweenRequests:200,concurrentRequests:10},z=["Please write a 5-10 word title for the following conversation:"]}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=6599,exports.ids=[6599],exports.modules={6599:(a,b,c)=>{c.d(b,{getDefaultPricing:()=>e});let d={cc:{"claude-opus-4-5-20251101":{input:15,output:75,cached:7.5,reasoning:75,cache_creation:15},"claude-sonnet-4-5-20250929":{input:3,output:15,cached:1.5,reasoning:15,cache_creation:3},"claude-haiku-4-5-20251001":{input:.5,output:2.5,cached:.25,reasoning:2.5,cache_creation:.5}},cx:{"gpt-5.2-codex":{input:5,output:20,cached:2.5,reasoning:30,cache_creation:5},"gpt-5.2":{input:5,output:20,cached:2.5,reasoning:30,cache_creation:5},"gpt-5.1-codex-max":{input:8,output:32,cached:4,reasoning:48,cache_creation:8},"gpt-5.1-codex":{input:4,output:16,cached:2,reasoning:24,cache_creation:4},"gpt-5.1-codex-mini":{input:1.5,output:6,cached:.75,reasoning:9,cache_creation:1.5},"gpt-5.1":{input:4,output:16,cached:2,reasoning:24,cache_creation:4},"gpt-5-codex":{input:3,output:12,cached:1.5,reasoning:18,cache_creation:3},"gpt-5-codex-mini":{input:1,output:4,cached:.5,reasoning:6,cache_creation:1}},gc:{"gemini-3-flash-preview":{input:.5,output:3,cached:.03,reasoning:4.5,cache_creation:.5},"gemini-3-pro-preview":{input:2,output:12,cached:.25,reasoning:18,cache_creation:2},"gemini-2.5-pro":{input:2,output:12,cached:.25,reasoning:18,cache_creation:2},"gemini-2.5-flash":{input:.3,output:2.5,cached:.03,reasoning:3.75,cache_creation:.3},"gemini-2.5-flash-lite":{input:.15,output:1.25,cached:.015,reasoning:1.875,cache_creation:.15}},qw:{"qwen3-coder-plus":{input:1,output:4,cached:.5,reasoning:6,cache_creation:1},"qwen3-coder-flash":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},"vision-model":{input:1.5,output:6,cached:.75,reasoning:9,cache_creation:1.5}},if:{"qwen3-coder-plus":{input:1,output:4,cached:.5,reasoning:6,cache_creation:1},"kimi-k2":{input:1,output:4,cached:.5,reasoning:6,cache_creation:1},"kimi-k2-thinking":{input:1.5,output:6,cached:.75,reasoning:9,cache_creation:1.5},"deepseek-r1":{input:.75,output:3,cached:.375,reasoning:4.5,cache_creation:.75},"deepseek-v3.2-chat":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},"deepseek-v3.2-reasoner":{input:.75,output:3,cached:.375,reasoning:4.5,cache_creation:.75},"minimax-m2":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},"glm-4.6":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},"glm-4.7":{input:.75,output:3,cached:.375,reasoning:4.5,cache_creation:.75}},ag:{"gemini-3-pro-low":{input:2,output:12,cached:.25,reasoning:18,cache_creation:2},"gemini-3-pro-high":{input:4,output:18,cached:.5,reasoning:27,cache_creation:4},"gemini-3-flash":{input:.5,output:3,cached:.03,reasoning:4.5,cache_creation:.5},"gemini-2.5-flash":{input:.3,output:2.5,cached:.03,reasoning:3.75,cache_creation:.3},"claude-sonnet-4-5":{input:3,output:15,cached:.3,reasoning:22.5,cache_creation:3},"claude-sonnet-4-5-thinking":{input:3,output:15,cached:.3,reasoning:22.5,cache_creation:3},"claude-opus-4-5-thinking":{input:5,output:25,cached:.5,reasoning:37.5,cache_creation:5},"claude-opus-4-6-thinking":{input:5,output:25,cached:.5,reasoning:37.5,cache_creation:5}},gh:{"gpt-5":{input:3,output:12,cached:1.5,reasoning:18,cache_creation:3},"gpt-5-mini":{input:.75,output:3,cached:.375,reasoning:4.5,cache_creation:.75},"gpt-5.1-codex":{input:4,output:16,cached:2,reasoning:24,cache_creation:4},"gpt-5.1-codex-max":{input:8,output:32,cached:4,reasoning:48,cache_creation:8},"gpt-4.1":{input:2.5,output:10,cached:1.25,reasoning:15,cache_creation:2.5},"claude-4.5-sonnet":{input:3,output:15,cached:.3,reasoning:22.5,cache_creation:3},"claude-4.5-opus":{input:5,output:25,cached:.5,reasoning:37.5,cache_creation:5},"claude-4.5-haiku":{input:.5,output:2.5,cached:.05,reasoning:3.75,cache_creation:.5},"gemini-3-pro":{input:2,output:12,cached:.25,reasoning:18,cache_creation:2},"gemini-3-flash":{input:.5,output:3,cached:.03,reasoning:4.5,cache_creation:.5},"gemini-2.5-pro":{input:2,output:12,cached:.25,reasoning:18,cache_creation:2},"grok-code-fast-1":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5}},openai:{"gpt-4o":{input:2.5,output:10,cached:1.25,reasoning:15,cache_creation:2.5},"gpt-4o-mini":{input:.15,output:.6,cached:.075,reasoning:.9,cache_creation:.15},"gpt-4-turbo":{input:10,output:30,cached:5,reasoning:45,cache_creation:10},o1:{input:15,output:60,cached:7.5,reasoning:90,cache_creation:15},"o1-mini":{input:3,output:12,cached:1.5,reasoning:18,cache_creation:3}},anthropic:{"claude-sonnet-4-20250514":{input:3,output:15,cached:1.5,reasoning:15,cache_creation:3},"claude-opus-4-20250514":{input:15,output:75,cached:7.5,reasoning:112.5,cache_creation:15},"claude-3-5-sonnet-20241022":{input:3,output:15,cached:1.5,reasoning:15,cache_creation:3}},gemini:{"gemini-3-pro-preview":{input:2,output:12,cached:.25,reasoning:18,cache_creation:2},"gemini-2.5-pro":{input:2,output:12,cached:.25,reasoning:18,cache_creation:2},"gemini-2.5-flash":{input:.3,output:2.5,cached:.03,reasoning:3.75,cache_creation:.3},"gemini-2.5-flash-lite":{input:.15,output:1.25,cached:.015,reasoning:1.875,cache_creation:.15}},openrouter:{auto:{input:2,output:8,cached:1,reasoning:12,cache_creation:2}},glm:{"glm-4.7":{input:.75,output:3,cached:.375,reasoning:4.5,cache_creation:.75},"glm-4.6":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5},"glm-4.6v":{input:.75,output:3,cached:.375,reasoning:4.5,cache_creation:.75}},kimi:{"kimi-latest":{input:1,output:4,cached:.5,reasoning:6,cache_creation:1}},minimax:{"MiniMax-M2.1":{input:.5,output:2,cached:.25,reasoning:3,cache_creation:.5}},groq:{"openai/gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"llama-3.3-70b-versatile":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"meta-llama/llama-4-maverick-17b-128e-instruct":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"qwen/qwen3-32b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0}},fireworks:{"accounts/fireworks/models/gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"accounts/fireworks/models/deepseek-v3p1":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"accounts/fireworks/models/llama-v3p3-70b-instruct":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"accounts/fireworks/models/qwen3-235b-a22b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0}},cerebras:{"gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"zai-glm-4.7":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"llama-3.3-70b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"llama-4-scout-17b-16e-instruct":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"qwen-3-235b-a22b-instruct-2507":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"qwen-3-32b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0}},nvidia:{"openai/gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"moonshotai/kimi-k2.5":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"z-ai/glm4.7":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"deepseek-ai/deepseek-v3.2":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"nvidia/llama-3.3-70b-instruct":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"meta/llama-4-maverick-17b-128e-instruct":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"deepseek/deepseek-r1":{input:0,output:0,cached:0,reasoning:0,cache_creation:0}},nebius:{"openai/gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"meta-llama/Llama-3.3-70B-Instruct":{input:0,output:0,cached:0,reasoning:0,cache_creation:0}},siliconflow:{"openai/gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"deepseek-ai/DeepSeek-V3.2":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"deepseek-ai/DeepSeek-V3.1":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"deepseek-ai/DeepSeek-R1":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"Qwen/Qwen3-235B-A22B-Instruct-2507":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"Qwen/Qwen3-Coder-480B-A35B-Instruct":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"Qwen/Qwen3-32B":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"moonshotai/Kimi-K2.5":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"zai-org/GLM-4.7":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"baidu/ERNIE-4.5-300B-A47B":{input:0,output:0,cached:0,reasoning:0,cache_creation:0}},hyperbolic:{"openai/gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"gpt-oss-120b":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"Qwen/QwQ-32B":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"deepseek-ai/DeepSeek-R1":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"deepseek-ai/DeepSeek-V3":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"meta-llama/Llama-3.3-70B-Instruct":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"meta-llama/Llama-3.2-3B-Instruct":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"Qwen/Qwen2.5-72B-Instruct":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"Qwen/Qwen2.5-Coder-32B-Instruct":{input:0,output:0,cached:0,reasoning:0,cache_creation:0},"NousResearch/Hermes-3-Llama-3.1-70B":{input:0,output:0,cached:0,reasoning:0,cache_creation:0}},kiro:{"claude-sonnet-4.5":{input:3,output:15,cached:1.5,reasoning:15,cache_creation:3},"claude-haiku-4.5":{input:.5,output:2.5,cached:.25,reasoning:2.5,cache_creation:.5}}};function e(){return d}}};
@@ -1,2 +0,0 @@
1
- "use strict";exports.id=7093,exports.ids=[7093],exports.modules={29310:(a,b,c)=>{c.d(b,{Q2:()=>o,js:()=>p,DI:()=>l,fg:()=>j,IS:()=>h,zN:()=>i,JH:()=>k,gb:()=>n,mq:()=>m});var d=c(74443);let e=d.Ikc({id:d.YjP().min(1),alias:d.YjP().min(1),name:d.YjP().min(1),icon:d.YjP().min(1),color:d.YjP().regex(/^#[0-9A-Fa-f]{6}$/,"Must be a valid hex color (#RRGGBB)"),textIcon:d.YjP().optional(),website:d.YjP().url().optional(),passthroughModels:d.zMY().optional()}),f=d.g1P(d.YjP(),e);function g(a,b){let c=f.safeParse(a);if(!c.success){let a=c.error.issues.map(a=>` ${a.path.join(".")}: ${a.message}`).join("\n");throw console.error(`[PROVIDER VALIDATION] ${b} has invalid entries:
2
- ${a}`),Error(`Provider validation failed for ${b}`)}}let h={iflow:{id:"iflow",alias:"if",name:"iFlow AI",icon:"water_drop",color:"#6366F1"},qwen:{id:"qwen",alias:"qw",name:"Qwen Code",icon:"psychology",color:"#10B981"},"gemini-cli":{id:"gemini-cli",alias:"gc",name:"Gemini CLI",icon:"terminal",color:"#4285F4"},kiro:{id:"kiro",alias:"kr",name:"Kiro AI",icon:"psychology_alt",color:"#FF6B35"}},i={claude:{id:"claude",alias:"cc",name:"Claude Code",icon:"smart_toy",color:"#D97757"},antigravity:{id:"antigravity",alias:"ag",name:"Antigravity",icon:"rocket_launch",color:"#F59E0B"},codex:{id:"codex",alias:"cx",name:"OpenAI Codex",icon:"code",color:"#3B82F6"},github:{id:"github",alias:"gh",name:"GitHub Copilot",icon:"code",color:"#333333"},cursor:{id:"cursor",alias:"cu",name:"Cursor IDE",icon:"edit_note",color:"#00D4AA"},"kimi-coding":{id:"kimi-coding",alias:"kmc",name:"Kimi Coding",icon:"psychology",color:"#1E40AF",textIcon:"KC"},kilocode:{id:"kilocode",alias:"kc",name:"Kilo Code",icon:"code",color:"#FF6B35",textIcon:"KC"},cline:{id:"cline",alias:"cl",name:"Cline",icon:"smart_toy",color:"#5B9BD5",textIcon:"CL"}},j={openrouter:{id:"openrouter",alias:"openrouter",name:"OpenRouter",icon:"router",color:"#F97316",textIcon:"OR",passthroughModels:!0,website:"https://openrouter.ai"},glm:{id:"glm",alias:"glm",name:"GLM Coding",icon:"code",color:"#2563EB",textIcon:"GL",website:"https://open.bigmodel.cn"},kimi:{id:"kimi",alias:"kimi",name:"Kimi",icon:"psychology",color:"#1E3A8A",textIcon:"KM",website:"https://kimi.moonshot.cn"},minimax:{id:"minimax",alias:"minimax",name:"Minimax Coding",icon:"memory",color:"#7C3AED",textIcon:"MM",website:"https://www.minimaxi.com"},"minimax-cn":{id:"minimax-cn",alias:"minimax-cn",name:"Minimax (China)",icon:"memory",color:"#DC2626",textIcon:"MC",website:"https://www.minimaxi.com"},openai:{id:"openai",alias:"openai",name:"OpenAI",icon:"auto_awesome",color:"#10A37F",textIcon:"OA",website:"https://platform.openai.com"},anthropic:{id:"anthropic",alias:"anthropic",name:"Anthropic",icon:"smart_toy",color:"#D97757",textIcon:"AN",website:"https://console.anthropic.com"},gemini:{id:"gemini",alias:"gemini",name:"Gemini",icon:"diamond",color:"#4285F4",textIcon:"GE",website:"https://ai.google.dev"},deepseek:{id:"deepseek",alias:"ds",name:"DeepSeek",icon:"bolt",color:"#4D6BFE",textIcon:"DS",website:"https://deepseek.com"},groq:{id:"groq",alias:"groq",name:"Groq",icon:"speed",color:"#F55036",textIcon:"GQ",website:"https://groq.com"},xai:{id:"xai",alias:"xai",name:"xAI (Grok)",icon:"auto_awesome",color:"#1DA1F2",textIcon:"XA",website:"https://x.ai"},mistral:{id:"mistral",alias:"mistral",name:"Mistral",icon:"air",color:"#FF7000",textIcon:"MI",website:"https://mistral.ai"},perplexity:{id:"perplexity",alias:"pplx",name:"Perplexity",icon:"search",color:"#20808D",textIcon:"PP",website:"https://www.perplexity.ai"},together:{id:"together",alias:"together",name:"Together AI",icon:"group_work",color:"#0F6FFF",textIcon:"TG",website:"https://www.together.ai"},fireworks:{id:"fireworks",alias:"fireworks",name:"Fireworks AI",icon:"local_fire_department",color:"#7B2EF2",textIcon:"FW",website:"https://fireworks.ai"},cerebras:{id:"cerebras",alias:"cerebras",name:"Cerebras",icon:"memory",color:"#FF4F00",textIcon:"CB",website:"https://www.cerebras.ai"},cohere:{id:"cohere",alias:"cohere",name:"Cohere",icon:"hub",color:"#39594D",textIcon:"CO",website:"https://cohere.com"},nvidia:{id:"nvidia",alias:"nvidia",name:"NVIDIA NIM",icon:"developer_board",color:"#76B900",textIcon:"NV",website:"https://developer.nvidia.com/nim"},nebius:{id:"nebius",alias:"nebius",name:"Nebius AI",icon:"cloud",color:"#6C5CE7",textIcon:"NB",website:"https://nebius.com"},siliconflow:{id:"siliconflow",alias:"siliconflow",name:"SiliconFlow",icon:"cloud_queue",color:"#5B6EF5",textIcon:"SF",website:"https://cloud.siliconflow.com"},hyperbolic:{id:"hyperbolic",alias:"hyp",name:"Hyperbolic",icon:"bolt",color:"#00D4FF",textIcon:"HY",website:"https://hyperbolic.xyz"},deepgram:{id:"deepgram",alias:"dg",name:"Deepgram",icon:"mic",color:"#13EF93",textIcon:"DG",website:"https://deepgram.com"},assemblyai:{id:"assemblyai",alias:"aai",name:"AssemblyAI",icon:"record_voice_over",color:"#0062FF",textIcon:"AA",website:"https://assemblyai.com"},nanobanana:{id:"nanobanana",alias:"nb",name:"NanoBanana",icon:"image",color:"#FFD700",textIcon:"NB",website:"https://nanobananaapi.ai"}},k="openai-compatible-",l="anthropic-compatible-";function m(a){return"string"==typeof a&&a.startsWith(k)}function n(a){return"string"==typeof a&&a.startsWith(l)}let o={...h,...i,...j},p=Object.values(o).reduce((a,b)=>(a[b.alias]=b.id,a),{});Object.values(o).reduce((a,b)=>(a[b.id]=b.alias,a),{}),g(h,"FREE_PROVIDERS"),g(i,"OAUTH_PROVIDERS"),g(j,"APIKEY_PROVIDERS")},77093:(a,b,c)=>{c.d(b,{j:()=>r});var d=c(28108),e=c(29310);let f=new Set(["openai","openai-responses"]),g=new Set(["gemini","gemini-cli"]);function h(a){return(a||"").trim().replace(/\/$/,"")}function i(a){return{"Content-Type":"application/json",Authorization:`Bearer ${a}`}}async function j({provider:a,apiKey:b,baseUrl:c,providerSpecificData:d={},modelId:f="gpt-4o-mini"}){if(!c)return{valid:!1,error:"Missing base URL"};let g=function(a){let b=h(a);if(!b)return"";for(let a of["/chat/completions","/responses","/chat","/messages"])if(b.endsWith(a))return`${b.slice(0,-a.length)}/models`;return`${b}/models`}(c);if(!g)return{valid:!1,error:"Invalid models endpoint"};let j=await fetch(g,{method:"GET",headers:i(b)});if(j.ok)return{valid:!0,error:null};if(401===j.status||403===j.status)return{valid:!1,error:"Invalid API key"};let k=function(a,b,c={}){let d=h(b);return d?(0,e.mq)(a)?c?.apiType==="responses"?`${d}/responses`:`${d}/chat/completions`:d.endsWith("/chat/completions")||d.endsWith("/responses")||d.endsWith("/chat")?d:d.endsWith("/v1")?`${d}/chat/completions`:d:""}(a,c,d);if(!k)return{valid:!1,error:`Validation failed: ${j.status}`};let l=await fetch(k,{method:"POST",headers:i(b),body:JSON.stringify({model:f,messages:[{role:"user",content:"test"}],max_tokens:1})});return l.ok?{valid:!0,error:null}:401===l.status||403===l.status?{valid:!1,error:"Invalid API key"}:404===l.status||405===l.status?{valid:!1,error:"Provider validation endpoint not supported"}:l.status>=500?{valid:!1,error:`Provider unavailable (${l.status})`}:{valid:!0,error:null}}async function k({apiKey:a,baseUrl:b,modelId:c,headers:d={}}){if(!b)return{valid:!1,error:"Missing base URL"};let e={"Content-Type":"application/json",...d};e["x-api-key"]||e["X-API-Key"]||(e["x-api-key"]=a),e["anthropic-version"]||e["Anthropic-Version"]||(e["anthropic-version"]="2023-06-01");let f=await fetch(b,{method:"POST",headers:e,body:JSON.stringify({model:c||"claude-3-5-sonnet-20241022",max_tokens:1,messages:[{role:"user",content:"test"}]})});return 401===f.status||403===f.status?{valid:!1,error:"Invalid API key"}:{valid:!0,error:null}}async function l({apiKey:a,baseUrl:b}){if(!b)return{valid:!1,error:"Missing base URL"};let c=b.includes("?")?"&":"?",d=await fetch(`${b}${c}key=${encodeURIComponent(a)}`,{method:"GET",headers:{"Content-Type":"application/json"}});return d.ok?{valid:!0,error:null}:401===d.status||403===d.status?{valid:!1,error:"Invalid API key"}:{valid:!1,error:`Validation failed: ${d.status}`}}async function m({apiKey:a}){try{let b=await fetch("https://api.deepgram.com/v1/auth/token",{method:"GET",headers:{Authorization:`Token ${a}`}});if(b.ok)return{valid:!0,error:null};if(401===b.status||403===b.status)return{valid:!1,error:"Invalid API key"};return{valid:!1,error:`Validation failed: ${b.status}`}}catch(a){return{valid:!1,error:a.message||"Validation failed"}}}async function n({apiKey:a}){try{let b=await fetch("https://api.assemblyai.com/v2/transcript?limit=1",{method:"GET",headers:{Authorization:a,"Content-Type":"application/json"}});if(b.ok)return{valid:!0,error:null};if(401===b.status||403===b.status)return{valid:!1,error:"Invalid API key"};return{valid:!1,error:`Validation failed: ${b.status}`}}catch(a){return{valid:!1,error:a.message||"Validation failed"}}}async function o({apiKey:a}){try{let b=await fetch("https://api.nanobananaapi.ai/api/v1/nanobanana/generate",{method:"POST",headers:{Authorization:`Bearer ${a}`,"Content-Type":"application/json"},body:JSON.stringify({prompt:"test",model:"nanobanana-flash"})});if(401===b.status||403===b.status)return{valid:!1,error:"Invalid API key"};return{valid:!0,error:null}}catch(a){return{valid:!1,error:a.message||"Validation failed"}}}async function p({apiKey:a,providerSpecificData:b={}}){let c=h(b.baseUrl);if(!c)return{valid:!1,error:"No base URL configured for OpenAI compatible provider"};let d=await fetch(`${c}/models`,{method:"GET",headers:i(a)});return d.ok?{valid:!0,error:null}:401===d.status||403===d.status?{valid:!1,error:"Invalid API key"}:{valid:!1,error:`Validation failed: ${d.status}`}}async function q({apiKey:a,providerSpecificData:b={}}){let c=h(b.baseUrl);if(!c)return{valid:!1,error:"No base URL configured for Anthropic compatible provider"};c.endsWith("/messages")&&(c=c.slice(0,-9));let d=await fetch(`${c}/models`,{method:"GET",headers:{"Content-Type":"application/json","x-api-key":a,"anthropic-version":"2023-06-01",Authorization:`Bearer ${a}`}});return d.ok?{valid:!0,error:null}:401===d.status||403===d.status?{valid:!1,error:"Invalid API key"}:{valid:!1,error:`Validation failed: ${d.status}`}}async function r({provider:a,apiKey:b,providerSpecificData:c={}}){if(!a||!b)return{valid:!1,error:"Provider and API key required",unsupported:!1};if((0,e.mq)(a))try{return await p({apiKey:b,providerSpecificData:c})}catch(a){return{valid:!1,error:a.message||"Validation failed",unsupported:!1}}if((0,e.gb)(a))try{return await q({apiKey:b,providerSpecificData:c})}catch(a){return{valid:!1,error:a.message||"Validation failed",unsupported:!1}}let i={deepgram:m,assemblyai:n,nanobanana:o};if(i[a])try{return await i[a]({apiKey:b,providerSpecificData:c})}catch(a){return{valid:!1,error:a.message||"Validation failed",unsupported:!1}}let r=(0,d.qs)(a);if(!r)return{valid:!1,error:"Provider validation not supported",unsupported:!0};let s=r.models?.[0]?.id||null,t=function(a,b={}){return b?.baseUrl?h(b.baseUrl):a?.baseUrl?h(a.baseUrl):""}(r,c);try{if(f.has(r.format))return await j({provider:a,apiKey:b,baseUrl:t,providerSpecificData:c,modelId:s});if("claude"===r.format){let a=`${t}${r.urlSuffix||""}`,c={...r.headers||{}};return"x-api-key"===(r.authHeader||"").toLowerCase()?c["x-api-key"]=b:c.Authorization=`Bearer ${b}`,await k({apiKey:b,baseUrl:a,modelId:s,headers:c})}if(g.has(r.format))return await l({apiKey:b,baseUrl:t});return{valid:!1,error:"Provider validation not supported",unsupported:!0}}catch(a){return{valid:!1,error:a.message||"Validation failed",unsupported:!1}}}}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=7136,exports.ids=[7136],exports.modules={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()}},94755:(a,b,c)=>{c.d(b,{A:()=>i});var d=c(77598);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length;var h=c(50122);let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();var i=a,j=c;let k=(i=i||{}).random??i.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(k.length<16)throw Error("Random bytes length must be >= 16");if(k[6]=15&k[6]|64,k[8]=63&k[8]|128,b){if((j=j||0)<0||j+16>b.length)throw RangeError(`UUID byte range ${j}:${j+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[j+a]=k[a];return b}return(0,h.k)(k)}}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=7271,exports.ids=[7271],exports.modules={97271:(a,b,c)=>{c.d(b,{$V:()=>n,EQ:()=>u,Co:()=>m,Bm:()=>w,DEFAULT_API_LIMITS:()=>y,O:()=>t,Uc:()=>p,eo:()=>q,LY:()=>s,MT:()=>j,gx:()=>r,NA:()=>o,xq:()=>l,PROVIDER_PROFILES:()=>x,QS:()=>v,C8:()=>z,TH:()=>k});var d=c(29021),e=c(33873);let f=["clientId","clientSecret","tokenUrl","authUrl","refreshUrl"],g=0,h=null;var i=c(28108);let j=parseInt(process.env.FETCH_TIMEOUT_MS||"120000",10),k=parseInt(process.env.STREAM_IDLE_TIMEOUT_MS||"60000",10),l=(0,i.Z0)();!function(a){let b;if(h&&Date.now()-g<6e4)return;let c=(b=process.env.DATA_DIR||(0,e.join)(process.cwd(),"data"),(0,e.join)(b,"provider-credentials.json"));if(!(0,d.existsSync)(c))return h||console.log("[CREDENTIALS] No external credentials file found, using defaults."),h=a,g=Date.now();try{let b=(0,d.readFileSync)(c,"utf-8"),e=JSON.parse(b),g=0;for(let[b,c]of Object.entries(e)){if(!a[b]){console.log(`[CREDENTIALS] Warning: unknown provider "${b}" in credentials file, skipping.`);continue}if(!c||"object"!=typeof c){console.log(`[CREDENTIALS] Warning: provider "${b}" value must be an object, got ${typeof c}. Skipping.`);continue}for(let d of f)void 0!==c[d]&&(a[b][d]=c[d],g++)}let i=null!==h;console.log(`[CREDENTIALS] ${i?"Reloaded":"Loaded"} external credentials: ${g} field(s) from ${c}`)}catch(a){console.log(`[CREDENTIALS] Error reading credentials file: ${a.message}. Using defaults.`)}h=a,g=Date.now()}(l);let m="You are Claude Code, Anthropic's official CLI for Claude.",n="Please ignore the following [ignore]You are Antigravity, a powerful agentic AI coding assistant designed by the Google Deepmind team working on Advanced Agentic Coding.You are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.**Absolute paths only****Proactiveness**[/ignore]",o={google:{token:"https://oauth2.googleapis.com/token",auth:"https://accounts.google.com/o/oauth2/auth"},openai:{token:"https://auth.openai.com/oauth/token",auth:"https://auth.openai.com/oauth/authorize"},anthropic:{token:"https://console.anthropic.com/v1/oauth/token",auth:"https://console.anthropic.com/v1/oauth/authorize"},qwen:{token:"https://chat.qwen.ai/api/v1/oauth2/token",auth:"https://chat.qwen.ai/api/v1/oauth2/device/code"},iflow:{token:"https://iflow.cn/oauth/token",auth:"https://iflow.cn/oauth"},github:{token:"https://github.com/login/oauth/access_token",auth:"https://github.com/login/oauth/authorize",deviceCode:"https://github.com/login/device/code"}},p=64e3,q=32e3,r={BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,NOT_ACCEPTABLE:406,REQUEST_TIMEOUT:408,RATE_LIMITED:429,SERVER_ERROR:500,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504},s={[r.BAD_REQUEST]:{type:"invalid_request_error",code:"bad_request"},[r.UNAUTHORIZED]:{type:"authentication_error",code:"invalid_api_key"},[r.FORBIDDEN]:{type:"permission_error",code:"insufficient_quota"},[r.NOT_FOUND]:{type:"invalid_request_error",code:"model_not_found"},[r.RATE_LIMITED]:{type:"rate_limit_error",code:"rate_limit_exceeded"},[r.SERVER_ERROR]:{type:"server_error",code:"internal_server_error"},[r.BAD_GATEWAY]:{type:"server_error",code:"bad_gateway"},[r.SERVICE_UNAVAILABLE]:{type:"server_error",code:"service_unavailable"},[r.GATEWAY_TIMEOUT]:{type:"server_error",code:"gateway_timeout"}},t={[r.BAD_REQUEST]:"Bad request",[r.UNAUTHORIZED]:"Invalid API key provided",[r.FORBIDDEN]:"You exceeded your current quota",[r.NOT_FOUND]:"Model not found",[r.RATE_LIMITED]:"Rate limit exceeded",[r.SERVER_ERROR]:"Internal server error",[r.BAD_GATEWAY]:"Bad gateway - upstream provider error",[r.SERVICE_UNAVAILABLE]:"Service temporarily unavailable",[r.GATEWAY_TIMEOUT]:"Gateway timeout"},u={base:1e3,max:12e4,maxLevel:15},v={QUOTA_EXHAUSTED:"quota_exhausted",RATE_LIMIT_EXCEEDED:"rate_limit_exceeded",MODEL_CAPACITY:"model_capacity",SERVER_ERROR:"server_error",AUTH_ERROR:"auth_error",UNKNOWN:"unknown"},w={unauthorized:12e4,paymentRequired:12e4,notFound:12e4,transientInitial:5e3,transientMax:6e4,transient:5e3,requestNotAllowed:5e3,rateLimit:12e4,serviceUnavailable:2e3,authExpired:12e4},x={oauth:{transientCooldown:5e3,rateLimitCooldown:6e4,maxBackoffLevel:8,circuitBreakerThreshold:3,circuitBreakerReset:6e4},apikey:{transientCooldown:3e3,rateLimitCooldown:0,maxBackoffLevel:5,circuitBreakerThreshold:5,circuitBreakerReset:3e4}},y={requestsPerMinute:100,minTimeBetweenRequests:200,concurrentRequests:10},z=["Please write a 5-10 word title for the following conversation:"]}};
@@ -1,19 +0,0 @@
1
- "use strict";exports.id=7615,exports.ids=[7615],exports.modules={2735:(a,b,c)=>{c.d(b,{c:()=>i});var d=c(17717),e=c(25970),f=c(19956),g=c(97271),h=c(90859);function i(a,b,c=""){if(!c.includes("claude-cli")||!a.messages?.length)return null;let l=a.messages,m=a=>"string"==typeof a?a:Array.isArray(a)?a.filter(a=>"text"===a.type).map(a=>a.text).join(" "):"",n=!1,o=l[l.length-1];if(o?.role==="assistant"&&o.content?.[0]?.text==="{"&&(n=!0),n||"Warmup"===m(l[0]?.content)&&(n=!0),n||1!==l.length||l[0]?.role!=="user"||"count"===m(l[0]?.content)&&(n=!0),!n&&g.C8?.length){let a=l.filter(a=>"user"===a.role).map(a=>m(a.content)).join(" ");g.C8.some(b=>a.includes(b))&&(n=!0)}if(!n)return null;let p=(0,d.Tz)(a);return!1!==a.stream?function(a,b){let c=j(b),d=(0,e.Ws)(a);d.model=b;let g=k(c),i=[];for(let b of g){let c=(0,e.Y8)(f.h.OPENAI,a,b,d);if(c?.length>0)for(let b of c)i.push((0,h.v8)(b,a))}let l=(0,e.Y8)(f.h.OPENAI,a,null,d);if(l?.length>0)for(let b of l)i.push((0,h.v8)(b,a));return i.push("data: [DONE]\n\n"),{success:!0,response:new Response(i.join(""),{headers:{"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive","Access-Control-Allow-Origin":"*"}})}}(p,b):function(a,b){let c=j(b);if(a===f.h.OPENAI)return{success:!0,response:new Response(JSON.stringify(c),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})};let d=(0,e.Ws)(a);d.model=b;let g=k(c),h=[];for(let b of g){let c=(0,e.Y8)(f.h.OPENAI,a,b,d);c?.length>0&&h.push(...c)}let i=(0,e.Y8)(f.h.OPENAI,a,null,d);return i?.length>0&&h.push(...i),{success:!0,response:new Response(JSON.stringify(function(a,b){if(!a||0===a.length)return j("unknown");let c=a[a.length-1];if(b===f.h.CLAUDE&&a.find(a=>"message_stop"===a.type)){a.find(a=>"content_block_delta"===a.type);let b=a.find(a=>"message_delta"===a.type),d=a.find(a=>"message_start"===a.type);d?.message&&(c=d.message,b?.usage&&(c.usage=b.usage))}return c}(h,a)),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})}}(p,b)}function j(a){let b=`chatcmpl-${Date.now()}`;return{id:b,object:"chat.completion",created:Math.floor(Date.now()/1e3),model:a,choices:[{index:0,message:{role:"assistant",content:"CLI Command Execution: Clear Terminal"},finish_reason:"stop"}],usage:{prompt_tokens:1,completion_tokens:1,total_tokens:2}}}function k(a){let{id:b,created:c,model:d,choices:e}=a;return[{id:b,object:"chat.completion.chunk",created:c,model:d,choices:[{index:0,delta:{role:"assistant",content:e[0].message.content},finish_reason:null}]},{id:b,object:"chat.completion.chunk",created:c,model:d,choices:[{index:0,delta:{},finish_reason:"stop"}],usage:a.usage}]}},13396:(a,b,c)=>{c.d(b,{DQ:()=>h,GX:()=>j,Wj:()=>i,fj:()=>f,gC:()=>g});let d=new Map;function e(a,b){return`${a}::${b}`}function f(a,b){let c=e(a,b),f=d.get(c);return!f||Date.now()-f.unavailableSince>=f.cooldownMs&&(d.delete(c),!0)}function g(a,b,c=6e4,f){let h=e(a,b);d.set(h,{provider:a,model:b,unavailableSince:Date.now(),cooldownMs:c,reason:f||"unknown"})}function h(a,b){return d.delete(e(a,b))}function i(){let a=Date.now(),b=[];for(let[c,e]of d.entries()){let f=a-e.unavailableSince;if(f>=e.cooldownMs){d.delete(c);continue}b.push({provider:e.provider,model:e.model,reason:e.reason||"unknown",remainingMs:e.cooldownMs-f,unavailableSince:new Date(e.unavailableSince).toISOString()})}return b}function j(){return i(),d.size}},13618:(a,b,c)=>{c.d(b,{HN:()=>m,I_:()=>n,OK:()=>k,QX:()=>j,zP:()=>l});var d=c(47774),e=c(20406);let f=Symbol.for("omniroute.proxyDispatcher.cache"),g=new Set(["http:","https:","socks5:"]);function h(a){return"https:"===a||"wss:"===a?"443":"socks5:"===a?"1080":"8080"}function i(a,b){if(!a)return h(b);let c=Number(a);if(!Number.isInteger(c)||c<1||c>65535)throw Error("[ProxyDispatcher] Invalid proxy port");return String(c)}function j(){return"true"===process.env.ENABLE_SOCKS5_PROXY}function k(a){let b=new URL(a),c=b.port||h(b.protocol);return`${b.protocol}//${b.hostname}:${c}`}function l(a,b="proxy",{allowSocks5:c=j()}={}){let d;try{d=new URL(a)}catch{throw Error(`[ProxyDispatcher] Invalid ${b} URL`)}if(!g.has(d.protocol))throw Error(`[ProxyDispatcher] Unsupported ${b} protocol: ${d.protocol.replace(":","")}`);if("socks5:"===d.protocol&&!c)throw Error("[ProxyDispatcher] SOCKS5 proxy is disabled (set ENABLE_SOCKS5_PROXY=true to enable)");if(!d.hostname)throw Error(`[ProxyDispatcher] Invalid ${b} host`);return d.port=i(d.port,d.protocol),d.toString()}function m(a,{allowSocks5:b=j()}={}){if(!a)return null;if("string"==typeof a)return l(a,"context proxy",{allowSocks5:b});if("object"!=typeof a||Array.isArray(a))throw Error("[ProxyDispatcher] Invalid context proxy config");let c=String(a.type||"http").toLowerCase(),d=`${c}:`;if(!g.has(d))throw Error(`[ProxyDispatcher] Unsupported context proxy protocol: ${c}`);if("socks5:"===d&&!b)throw Error("[ProxyDispatcher] SOCKS5 proxy is disabled (set ENABLE_SOCKS5_PROXY=true to enable)");if(!a.host)throw Error("[ProxyDispatcher] Context proxy host is required");let e=i(a.port,d),f=new URL(`${c}://${a.host}:${e}`);return a.username&&(f.username=a.username,f.password=a.password||""),l(f.toString(),"context proxy",{allowSocks5:b})}function n(a){let b=l(a,"proxy dispatcher"),c=(globalThis[f]||(globalThis[f]=new Map),globalThis[f]),g=c.get(b);if(g)return g;let h=new URL(b);if("socks5:"===h.protocol){let a={type:5,host:h.hostname,port:Number(i(h.port,h.protocol))};h.username&&(a.userId=decodeURIComponent(h.username)),h.password&&(a.password=decodeURIComponent(h.password)),g=(0,e.vI)(a)}else g=new d.ProxyAgent(b);return c.set(b,g),g}},15575:(a,b,c)=>{function d({onDisconnect:a,log:b,provider:c,model:e}={}){let f=new AbortController,g=Date.now(),h=!1,i=null,j=a=>{let b=Date.now()-g,d=c?.toUpperCase()||"UNKNOWN";console.log(`[${new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit",second:"2-digit"})}] 🌊 [STREAM] ${d} | ${e||"unknown"} | ${b}ms | ${a}`)};return{signal:f.signal,startTime:g,isConnected:()=>!h,handleDisconnect:(b="client_closed")=>{h||(h=!0,j(`disconnect: ${b}`),i=setTimeout(()=>{f.abort()},500),a?.({reason:b,duration:Date.now()-g}))},handleComplete:()=>{!h&&(h=!0,j("complete"),i&&(clearTimeout(i),i=null))},handleError:a=>{(i&&(clearTimeout(i),i=null),"AbortError"===a.name)?j("aborted"):j(`error: ${a.message}`)},abort:()=>f.abort()}}function e(a,b,c){var d;let e,f;return d={readable:a.body.pipeThrough(b),writable:{getWriter:()=>({abort:()=>{}})}},e=d.readable.getReader(),f=d.writable.getWriter(),new ReadableStream({async pull(a){if(!c.isConnected())return void a.close();try{let{done:b,value:d}=await e.read();if(b){c.handleComplete(),a.close();return}a.enqueue(d)}catch(b){c.handleError(b),a.error(b)}},cancel(a){c.handleDisconnect(a||"cancelled"),e.cancel(),f.abort()}})}c.d(b,{Jb:()=>e,jd:()=>d})},20638:(a,b,c)=>{c.d(b,{l:()=>e});var d=c(19956);function e(a,b,c){if(b===c||b===d.h.OPENAI)return a;if(b===d.h.OPENAI_RESPONSES){let b=a?.object==="response"?a:a?.response||a,c=Array.isArray(b?.output)?b.output:[],d=b?.usage||a?.usage,e="",f="",g=[];for(let a of c)if(a&&"object"==typeof a){if("message"===a.type&&Array.isArray(a.content))for(let b of a.content)b&&"object"==typeof b&&("output_text"===b.type&&"string"==typeof b.text?e+=b.text:"summary_text"===b.type&&"string"==typeof b.text&&(f+=b.text));else if("reasoning"===a.type&&Array.isArray(a.summary))for(let b of a.summary)b?.type==="summary_text"&&"string"==typeof b.text&&(f+=b.text);else if("function_call"===a.type){let b=a.call_id||a.id||`call_${Date.now()}_${g.length}`,c="string"==typeof a.arguments?a.arguments:JSON.stringify(a.arguments||{});g.push({id:b,type:"function",function:{name:a.name||"",arguments:c}})}}let h={role:"assistant"};e&&(h.content=e),f&&(h.reasoning_content=f),g.length>0&&(h.tool_calls=g),h.content||h.tool_calls||(h.content="");let i=Number(b?.created_at)||Math.floor(Date.now()/1e3),j=b?.model||a?.model||"openai-responses",k=g.length>0?"tool_calls":"stop",l={id:`chatcmpl-${b?.id||Date.now()}`,object:"chat.completion",created:i,model:j,choices:[{index:0,message:h,finish_reason:k}]};if(d&&"object"==typeof d){let a=d.input_tokens||0,b=d.output_tokens||0;l.usage={prompt_tokens:a,completion_tokens:b,total_tokens:a+b},d.reasoning_tokens>0&&(l.usage.completion_tokens_details={reasoning_tokens:d.reasoning_tokens}),(d.cache_read_input_tokens>0||d.cache_creation_input_tokens>0)&&(l.usage.prompt_tokens_details={},d.cache_read_input_tokens>0&&(l.usage.prompt_tokens_details.cached_tokens=d.cache_read_input_tokens),d.cache_creation_input_tokens>0&&(l.usage.prompt_tokens_details.cache_creation_tokens=d.cache_creation_input_tokens))}return l}if(b===d.h.GEMINI||b===d.h.ANTIGRAVITY||b===d.h.GEMINI_CLI){let b=a.response||a;if(!b?.candidates?.[0])return a;let c=b.candidates[0],d=c.content,e=b.usageMetadata||a.usageMetadata,f="",g=[],h="";if(d?.parts)for(let a of d.parts)!0===a.thought&&a.text?h+=a.text:void 0!==a.text&&(f+=a.text),a.functionCall&&g.push({id:`call_${a.functionCall.name}_${Date.now()}_${g.length}`,type:"function",function:{name:a.functionCall.name,arguments:JSON.stringify(a.functionCall.args||{})}});let i={role:"assistant"};f&&(i.content=f),h&&(i.reasoning_content=h),g.length>0&&(i.tool_calls=g),i.content||i.tool_calls||(i.content="");let j=(c.finishReason||"stop").toLowerCase();"stop"===j&&g.length>0&&(j="tool_calls");let k={id:`chatcmpl-${b.responseId||Date.now()}`,object:"chat.completion",created:Math.floor(new Date(b.createTime||Date.now()).getTime()/1e3),model:b.modelVersion||"gemini",choices:[{index:0,message:i,finish_reason:j}]};return e&&(k.usage={prompt_tokens:(e.promptTokenCount||0)+(e.thoughtsTokenCount||0),completion_tokens:e.candidatesTokenCount||0,total_tokens:e.totalTokenCount||0},e.thoughtsTokenCount>0&&(k.usage.completion_tokens_details={reasoning_tokens:e.thoughtsTokenCount})),k}if(b===d.h.CLAUDE){if(!a.content)return a;let b="",c="",d=[];for(let e of a.content)"text"===e.type?b+=e.text:"thinking"===e.type?c+=e.thinking||"":"tool_use"===e.type&&d.push({id:e.id,type:"function",function:{name:e.name,arguments:JSON.stringify(e.input||{})}});let e={role:"assistant"};b&&(e.content=b),c&&(e.reasoning_content=c),d.length>0&&(e.tool_calls=d),e.content||e.tool_calls||(e.content="");let f=a.stop_reason||"stop";"end_turn"===f&&(f="stop"),"tool_use"===f&&(f="tool_calls");let g={id:`chatcmpl-${a.id||Date.now()}`,object:"chat.completion",created:Math.floor(Date.now()/1e3),model:a.model||"claude",choices:[{index:0,message:e,finish_reason:f}]};return a.usage&&(g.usage={prompt_tokens:a.usage.input_tokens||0,completion_tokens:a.usage.output_tokens||0,total_tokens:(a.usage.input_tokens||0)+(a.usage.output_tokens||0)}),g}return a}},24004:(a,b,c)=>{c.d(b,{$E:()=>m,Kr:()=>s,UE:()=>t,YO:()=>o,getAllRateLimitStatus:()=>u,mg:()=>l,rh:()=>k});var d=c(57217);c(49263);var e=c(28108),f=c(97271);let g=new Map,h=new Set,i=!1,j={maxConcurrent:10,minTime:0,reservoir:null,reservoirRefreshAmount:null,reservoirRefreshInterval:null};async function k(){if(!i){i=!0;try{let{getProviderConnections:a}=await Promise.resolve().then(c.bind(c,30651)),b=await a(),i=0,j=0;for(let a of b)if(a.rateLimitProtection)h.add(a.id),i++;else if(a.provider&&"apikey"===(0,e.oQ)(a.provider)&&a.isActive){h.add(a.id),j++;let b=`${a.provider}:${a.id}`;g.has(b)||g.set(b,new d({maxConcurrent:f.DEFAULT_API_LIMITS.concurrentRequests,minTime:f.DEFAULT_API_LIMITS.minTimeBetweenRequests,reservoir:f.DEFAULT_API_LIMITS.requestsPerMinute,reservoirRefreshAmount:f.DEFAULT_API_LIMITS.requestsPerMinute,reservoirRefreshInterval:6e4,id:b}))}(i>0||j>0)&&console.log(`🛡️ [RATE-LIMIT] Loaded ${i} explicit + ${j} auto-enabled (API key) protection(s)`)}catch(a){console.error("[RATE-LIMIT] Failed to load settings:",a.message)}}}function l(a){h.add(a)}function m(a){for(let[b]of(h.delete(a),g))if(b.includes(a)){let a=g.get(b);a?.disconnect(),g.delete(b)}}function n(a,b,c=null){let e=c?`${a}:${b}:${c}`:`${a}:${b}`;if(!g.has(e)){let a=new d({...j,id:e});a.on("queued",()=>{let b=a.counts();b.QUEUED>0&&console.log(`⏳ [RATE-LIMIT] ${e} — ${b.QUEUED} request(s) queued, ${b.RUNNING} running`)}),g.set(e,a)}return g.get(e)}async function o(a,b,c,d){return h.has(b)?n(a,b,null).schedule(d):d()}let p={limit:"x-ratelimit-limit-requests",remaining:"x-ratelimit-remaining-requests",reset:"x-ratelimit-reset-requests",limitTokens:"x-ratelimit-limit-tokens",remainingTokens:"x-ratelimit-remaining-tokens",resetTokens:"x-ratelimit-reset-tokens",retryAfter:"retry-after",overLimit:"x-ratelimit-over-limit"},q={limit:"anthropic-ratelimit-requests-limit",remaining:"anthropic-ratelimit-requests-remaining",reset:"anthropic-ratelimit-requests-reset",limitTokens:"anthropic-ratelimit-input-tokens-limit",remainingTokens:"anthropic-ratelimit-input-tokens-remaining",resetTokens:"anthropic-ratelimit-input-tokens-reset",retryAfter:"retry-after"};function r(a){if(!a)return null;let b=a.match(/^(?:(\d+)h)?(?:(\d+)m(?!s))?(?:(\d+)s)?(?:(\d+)ms)?$/);if(b){let[,a,c,d,e]=b;return(3600*parseInt(a||0)+60*parseInt(c||0)+parseInt(d||0))*1e3+parseInt(e||0)}let c=parseFloat(a);if(!isNaN(c)&&c>0)return c>17e8?Math.max(0,1e3*c-Date.now()):1e3*c;try{let b=new Date(a);if(!isNaN(b.getTime()))return Math.max(0,b.getTime()-Date.now())}catch{}return null}function s(a,b,c,d,e=null){if(!h.has(b)||!c)return;let f=n(a,b,null),g="claude"===a||"anthropic"===a?q:p,i=a=>"function"==typeof c.get?c.get(a):c[a]||null,j=parseInt(i(g.limit)),k=parseInt(i(g.remaining)),l=i(g.reset),m=i(g.retryAfter),o=i(p.overLimit);if(429===d){let c=r(m)||6e4;console.log(`🚫 [RATE-LIMIT] ${a}:${b.slice(0,8)} — 429 received, pausing for ${Math.ceil(c/1e3)}s`),f.updateSettings({reservoir:0,reservoirRefreshAmount:j||60,reservoirRefreshInterval:c});return}if("yes"===o){console.log(`⚠️ [RATE-LIMIT] ${a}:${b.slice(0,8)} — near capacity, slowing down`),f.updateSettings({minTime:200});return}if(!isNaN(j)&&j>0){let c=r(l)||6e4,d={minTime:Math.max(0,Math.floor(6e4/j)-10)};!isNaN(k)&&(k<.1*j?(d.reservoir=k,d.reservoirRefreshAmount=j,d.reservoirRefreshInterval=c,console.log(`⚠️ [RATE-LIMIT] ${a}:${b.slice(0,8)} — ${k}/${j} remaining, throttling`)):k>.5*j&&(d.minTime=0,d.reservoir=null,d.reservoirRefreshAmount=null,d.reservoirRefreshInterval=null)),f.updateSettings(d)}}function t(a,b){let c=`${a}:${b}`,d=g.get(c);if(!d)return{enabled:h.has(b),active:!1,queued:0,running:0};let e=d.counts();return{enabled:h.has(b),active:!0,queued:e.QUEUED||0,running:e.RUNNING||0,executing:e.EXECUTING||0,done:e.DONE||0}}function u(){let a={};for(let[b,c]of g){let d=c.counts();a[b]={queued:d.QUEUED||0,running:d.RUNNING||0,executing:d.EXECUTING||0}}return a}},25289:(a,b,c)=>{c.d(b,{i2:()=>e});var d=c(14469);function e(a={}){let b=function(){try{return(0,d.sm)()}catch{return null}}();if(!b)return[];let c=[],f=[];a.action&&(c.push("action = ?"),f.push(a.action)),a.actor&&(c.push("actor = ?"),f.push(a.actor));let g=c.length>0?`WHERE ${c.join(" AND ")}`:"",h=a.limit||100,i=a.offset||0;return b.prepare(`SELECT * FROM audit_log ${g} ORDER BY timestamp DESC LIMIT ? OFFSET ?`).all(...f,h,i).map(a=>({...a,details:a.details?JSON.parse(String(a.details)):null}))}parseInt(process.env.LOG_RETENTION_DAYS||"90",10)},32757:(a,b,c)=>{function d(a,b){let c=String(a||"").split("\n"),d=[];for(let a of c){let b=a.trim();if(!b.startsWith("data:"))continue;let c=b.slice(5).trim();if(c&&"[DONE]"!==c)try{d.push(JSON.parse(c))}catch{}}if(0===d.length)return null;let e=d[0],f=[],g=[],h="stop",i=null;for(let a of d){let b=a?.choices?.[0],c=b?.delta||{};"string"==typeof c.content&&c.content.length>0&&f.push(c.content),"string"==typeof c.reasoning_content&&c.reasoning_content.length>0&&g.push(c.reasoning_content),b?.finish_reason&&(h=b.finish_reason),a?.usage&&"object"==typeof a.usage&&(i=a.usage)}let j={role:"assistant",content:f.join("")};g.length>0&&(j.reasoning_content=g.join(""));let k={id:e.id||`chatcmpl-${Date.now()}`,object:"chat.completion",created:e.created||Math.floor(Date.now()/1e3),model:e.model||b||"unknown",choices:[{index:0,message:j,finish_reason:h}]};return i&&(k.usage=i),k}function e(a,b){let c=String(a||"").split("\n"),d=[];for(let a of c){let b=a.trim();if(!b.startsWith("data:"))continue;let c=b.slice(5).trim();if(c&&"[DONE]"!==c)try{d.push(JSON.parse(c))}catch{}}if(0===d.length)return null;let e=null,f=null;for(let a of d)a?.type==="response.completed"&&a.response&&(e=a.response),a?.response&&"object"==typeof a.response?f=a.response:a?.object==="response"&&(f=a);let g=e||f;return g&&"object"==typeof g?{id:g.id||`resp_${Date.now()}`,object:"response",model:g.model||b||"unknown",output:Array.isArray(g.output)?g.output:[],usage:g.usage||null,status:g.status||(e?"completed":"in_progress"),created_at:g.created_at||Math.floor(Date.now()/1e3),metadata:g.metadata||{}}:null}c.d(b,{B:()=>e,F:()=>d})},35345:(a,b,c)=>{c.d(b,{GL:()=>g,XT:()=>h,pq:()=>f});var d=c(94755);let e=[];function f(a){let b={id:(0,d.A)(),timestamp:new Date().toISOString(),status:a.status||"success",proxy:a.proxy||null,level:a.level||"direct",levelId:a.levelId||null,provider:a.provider||null,targetUrl:a.targetUrl||null,publicIp:a.publicIp||null,latencyMs:a.latencyMs||0,error:a.error||null,connectionId:a.connectionId||null,comboId:a.comboId||null,account:a.account||null};return e.unshift(b),e.length>500&&(e.length=500),b}function g(a={}){let b=[...e];if(a.status&&(b="ok"===a.status?b.filter(a=>"success"===a.status):b.filter(b=>b.status===a.status)),a.type&&(b=b.filter(b=>b.proxy?.type===a.type)),a.provider&&(b=b.filter(b=>b.provider===a.provider)),a.level&&(b=b.filter(b=>b.level===a.level)),a.search){let c=a.search.toLowerCase();b=b.filter(a=>(a.proxy?.host||"").toLowerCase().includes(c)||(a.provider||"").toLowerCase().includes(c)||(a.targetUrl||"").toLowerCase().includes(c)||(a.publicIp||"").toLowerCase().includes(c)||(a.level||"").toLowerCase().includes(c)||(a.error||"").toLowerCase().includes(c)||(a.account||"").toLowerCase().includes(c))}let c=a.limit||300;return b.slice(0,c)}function h(){e.length=0}},35790:(a,b,c)=>{c.d(b,{Jh:()=>g});let d=[{name:"system_override",pattern:/\b(ignore|disregard|forget)\s+(all\s+)?(previous|prior|above|earlier)\s+(instructions?|prompts?|rules?|context)/i,severity:"high"},{name:"role_hijack",pattern:/\b(you\s+are\s+now|act\s+as\s+if|pretend\s+(to\s+be|you\s+are)|from\s+now\s+on\s+you\s+are)\b/i,severity:"medium"},{name:"system_prompt_leak",pattern:/\b(reveal|show|display|print|output|repeat)\s+(your\s+)?(system\s+prompt|instructions?|initial\s+prompt|hidden\s+prompt)/i,severity:"high"},{name:"delimiter_injection",pattern:/(\[SYSTEM\]|\[INST\]|<<SYS>>|<\|im_start\|>|<\|system\|>|<\|user\|>)/i,severity:"high"},{name:"jailbreak_dan",pattern:/\b(DAN|do\s+anything\s+now|jailbreak|developer\s+mode|enable\s+developer)\b/i,severity:"medium"},{name:"encoding_evasion",pattern:/\b(base64\s+decode|rot13|hex\s+decode|unicode\s+escape)\b.*\b(instruction|prompt|command)\b/i,severity:"medium"}],e=[{name:"email",pattern:/\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b/g,replacement:"[EMAIL_REDACTED]"},{name:"cpf",pattern:/\b\d{3}\.\d{3}\.\d{3}-\d{2}\b/g,replacement:"[CPF_REDACTED]"},{name:"cnpj",pattern:/\b\d{2}\.\d{3}\.\d{3}\/\d{4}-\d{2}\b/g,replacement:"[CNPJ_REDACTED]"},{name:"credit_card",pattern:/\b(?:\d{4}[-\s]?){3}\d{4}\b/g,replacement:"[CARD_REDACTED]"},{name:"phone_br",pattern:/\b\(?\d{2}\)?\s?\d{4,5}-?\d{4}\b/g,replacement:"[PHONE_REDACTED]"},{name:"ssn_us",pattern:/\b\d{3}-\d{2}-\d{4}\b/g,replacement:"[SSN_REDACTED]"}];function f(a,b=!1){let c=[],d=a;for(let f of e){let e=a.match(f.pattern);e&&e.length>0&&(c.push({type:f.name,count:e.length}),b&&(d=d.replace(f.pattern,f.replacement)))}return{text:d,detections:c}}function g(a,b=console){let c={enabled:"false"!==process.env.INPUT_SANITIZER_ENABLED,mode:process.env.INPUT_SANITIZER_MODE||"warn",piiRedaction:"true"===process.env.PII_REDACTION_ENABLED},e={blocked:!1,modified:!1,detections:[],piiDetections:[],sanitizedBody:null};if(!c.enabled)return e;let h=(function(a){let b=[];for(let c of a.messages||a.input||[])if("string"==typeof c)b.push(c);else if("string"==typeof c.content)b.push(c.content);else if(Array.isArray(c.content))for(let a of c.content)"string"==typeof a?b.push(a):a.text&&b.push(a.text);if("string"==typeof a.system)b.push(a.system);else if(Array.isArray(a.system))for(let c of a.system)"string"==typeof c?b.push(c):c.text&&b.push(c.text);return b})(a).join("\n"),i=function(a){let b=[];for(let c of d){let d=a.match(c.pattern);d&&b.push({pattern:c.name,severity:c.severity,match:d[0].slice(0,50)})}return b}(h);if(i.length>0){e.detections=i;let a=i.filter(a=>"high"===a.severity),d=a.length>0?"warn":"info";if(b[d]&&b[d](`[SANITIZER] Prompt injection detected: ${i.map(a=>a.pattern).join(", ")}`),"block"===c.mode&&a.length>0)return e.blocked=!0,e}if(c.piiRedaction){let d=f(h,"redact"===c.mode);e.piiDetections=d.detections,d.detections.length>0&&(b.warn?.(`[SANITIZER] PII detected: ${d.detections.map(a=>`${a.type}(${a.count})`).join(", ")}`),"redact"===c.mode&&(e.sanitizedBody=function(a){let b=JSON.parse(JSON.stringify(a));for(let a of b.messages||b.input||[])if("string"==typeof a.content)a.content=f(a.content,!0).text;else if(Array.isArray(a.content))for(let b of a.content)if("string"==typeof b){let c=a.content.indexOf(b);a.content[c]=f(b,!0).text}else b.text&&(b.text=f(b.text,!0).text);return"string"==typeof b.system&&(b.system=f(b.system,!0).text),b}(a),e.modified=!0))}return e}},36362:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{w:()=>A});var e=c(17717),f=c(25970),g=c(19956),h=c(90859),i=c(15575),j=c(67677),k=c(85640),l=c(70718),m=c(29485),n=c(89865),o=c(97271),p=c(2735),q=c(74832),r=c(48400),s=c(20638),t=c(87290),u=c(32757),v=c(24004),w=c(81983),x=c(91563),y=c(79498),z=a([r]);async function A({body:a,modelInfo:b,credentials:c,log:d,onCredentialsRefreshed:z,onRequestSuccess:A,onDisconnect:B,clientRawRequest:C,connectionId:D,apiKeyInfo:E=null,userAgent:F,comboName:G}){let H,I,J,K,L,M,{provider:N,model:O}=b,P=Date.now(),Q=(0,x.xp)(C?.headers),R=(0,x.ic)(Q);if(R)return d?.debug?.("IDEMPOTENCY",`Hit for key=${Q?.slice(0,12)}...`),{success:!0,response:new Response(JSON.stringify(R.response),{status:R.status,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","X-OmniRoute-Idempotent":"true"}})};await (0,v.rh)();let S=(0,e.Tz)(a),T=(C?.endpoint||"").toLowerCase().endsWith("/responses"),U=(0,p.c)(a,O,F);if(U)return U;let V=m.PROVIDER_ID_TO_ALIAS[N]||N,W=(0,m.ux)(V,O)||(0,e.jJ)(N),X=!1!==a.stream;if((0,w.TZ)(a,C?.headers)){let b=(0,w.gR)(O,a.messages,a.temperature,a.top_p),c=(0,w.Cb)(b);if(c)return d?.debug?.("CACHE",`Semantic cache HIT for ${O}`),{success:!0,response:new Response(JSON.stringify(c),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","X-OmniRoute-Cache":"HIT"}})}}let Y=await (0,l.q)(S,W,O);C&&Y.logClientRawRequest(C.endpoint,C.body,C.headers),Y.logRawRequest(a),d?.debug?.("FORMAT",`${S} → ${W} | stream=${X}`);let Z=a;try{Z=(0,f.GH)(S,W,O,a,X,c,N,Y)}catch(f){let a=Number(f?.statusCode),b=Number.isInteger(a)&&a>=400&&a<=599?a:o.gx.SERVER_ERROR,c=f?.message||"Invalid request",e="string"==typeof f?.errorType?f.errorType:null;if(d?.warn?.("TRANSLATE",`Request translation failed: ${c}`),e)return{success:!1,status:b,error:c,response:new Response(JSON.stringify({error:{message:c,type:e,code:e}}),{status:b,headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*"}})};return(0,n.A1)(b,c)}let $=Z._toolNameMap;delete Z._toolNameMap,Z.model=O;let _=(0,r.SB)(N);(0,q.uw)(O,N,D,!0),(0,q.E5)({model:O,provider:N,connectionId:D,status:"PENDING"}).catch(()=>{});let aa=Z.messages?.length||Z.contents?.length||Z.request?.contents?.length||0;d?.debug?.("REQUEST",`${N.toUpperCase()} | ${O} | ${aa} msgs`);let ab=(0,i.jd)({onDisconnect:B,log:d,provider:N,model:O});try{let a=await (0,v.YO)(N,D,O,()=>_.execute({model:O,body:Z,stream:X,credentials:c,signal:ab.signal,log:d}));H=a.response,I=a.url,J=a.headers,K=a.transformedBody,Y.logTargetRequest(I,J,K),(0,v.Kr)(N,D,H.headers,H.status,O)}catch(c){if((0,q.uw)(O,N,D,!1),(0,q.E5)({model:O,provider:N,connectionId:D,status:`FAILED ${"AbortError"===c.name?499:o.gx.BAD_GATEWAY}`}).catch(()=>{}),(0,q.gK)({method:"POST",path:C?.endpoint||"/v1/chat/completions",status:"AbortError"===c.name?499:o.gx.BAD_GATEWAY,model:O,provider:N,connectionId:D,duration:Date.now()-P,requestBody:a,error:c.message,sourceFormat:S,targetFormat:W,comboName:G,apiKeyId:E?.id||null,apiKeyName:E?.name||null}).catch(()=>{}),"AbortError"===c.name)return ab.handleError(c),(0,n.A1)(499,"Request aborted");let b=(0,n.lR)(c,N,O,o.gx.BAD_GATEWAY);return console.log(`${h.lm.red}[ERROR] ${b}${h.lm.reset}`),(0,n.A1)(o.gx.BAD_GATEWAY,b)}if(H.status===o.gx.UNAUTHORIZED||H.status===o.gx.FORBIDDEN){let a=await (0,k.qZ)(()=>_.refreshCredentials(c,d),3,d);if(a?.accessToken||a?.copilotToken){d?.info?.("TOKEN",`${N.toUpperCase()} | refreshed`),Object.assign(c,a),z&&a&&await z(a);try{let a=await _.execute({model:O,body:Z,stream:X,credentials:c,signal:ab.signal,log:d});a.response.ok&&(H=a.response,I=a.url)}catch(a){d?.warn?.("TOKEN",`${N.toUpperCase()} | retry after refresh failed`)}}else d?.warn?.("TOKEN",`${N.toUpperCase()} | refresh failed`)}if(!H.ok){(0,q.uw)(O,N,D,!1);let{statusCode:b,message:c,retryAfterMs:e}=await (0,n.zL)(H,N);(0,q.E5)({model:O,provider:N,connectionId:D,status:`FAILED ${b}`}).catch(()=>{}),(0,q.gK)({method:"POST",path:C?.endpoint||"/v1/chat/completions",status:b,model:O,provider:N,connectionId:D,duration:Date.now()-P,requestBody:a,error:c,sourceFormat:S,targetFormat:W,comboName:G,apiKeyId:E?.id||null,apiKeyName:E?.name||null}).catch(()=>{});let f=(0,n.lR)(Error(c),N,O,b);if(console.log(`${h.lm.red}[ERROR] ${f}${h.lm.reset}`),e&&"antigravity"===N){let a=Math.ceil(e/1e3);d?.debug?.("RETRY",`Antigravity quota reset in ${a}s (${e}ms)`)}return Y.logError(Error(c),K||Z),(0,v.Kr)(N,D,H.headers,b,O),(0,n.A1)(b,f,e)}if(!X){let b;(0,q.uw)(O,N,D,!1);let c=(H.headers.get("content-type")||"").toLowerCase(),e=await H.text();if(c.includes("text/event-stream")||/(^|\n)\s*(event|data):/m.test(e)){let a=W===g.h.OPENAI_RESPONSES?(0,u.B)(e,O):(0,u.F)(e,O);if(!a)return(0,q.E5)({model:O,provider:N,connectionId:D,status:`FAILED ${o.gx.BAD_GATEWAY}`}).catch(()=>{}),(0,n.A1)(o.gx.BAD_GATEWAY,"Invalid SSE response for non-streaming request");b=a}else try{b=e?JSON.parse(e):{}}catch{return(0,q.E5)({model:O,provider:N,connectionId:D,status:`FAILED ${o.gx.BAD_GATEWAY}`}).catch(()=>{}),(0,n.A1)(o.gx.BAD_GATEWAY,"Invalid JSON response from provider")}A&&await A();let i=(0,t.M)(b,N);if((0,q.E5)({model:O,provider:N,connectionId:D,tokens:i,status:"200 OK"}).catch(()=>{}),(0,q.gK)({method:"POST",path:C?.endpoint||"/v1/chat/completions",status:200,model:O,provider:N,connectionId:D,duration:Date.now()-P,tokens:i,requestBody:a,responseBody:b,sourceFormat:S,targetFormat:W,comboName:G,apiKeyId:E?.id||null,apiKeyName:E?.name||null}).catch(()=>{}),i&&"object"==typeof i){let a=`[${new Date().toLocaleTimeString("en-US",{hour12:!1,hour:"2-digit",minute:"2-digit"})}] 📊 [USAGE] ${N.toUpperCase()} | in=${i?.prompt_tokens||0} | out=${i?.completion_tokens||0}${D?` | account=${D.slice(0,8)}...`:""}`;console.log(`${h.lm.green}${a}${h.lm.reset}`),(0,q.sZ)({provider:N||"unknown",model:O||"unknown",tokens:i,timestamp:new Date().toISOString(),connectionId:D||void 0,apiKeyId:E?.id||void 0,apiKeyName:E?.name||void 0}).catch(a=>{console.error("Failed to save usage stats:",a.message)})}let k=(0,f.nZ)(W,S)?(0,s.l)(b,W,S):b;if(k?.usage){let a=(0,j.O9)(k.usage);k.usage=(0,j.WL)(a,S)}else{let b=JSON.stringify(k?.choices?.[0]?.message?.content||"").length;if(b>0){let c=(0,j.OF)(a,b,S);k.usage=(0,j.WL)(c,S)}}if((0,w.TZ)(a,C?.headers)){let b=(0,w.gR)(O,a.messages,a.temperature,a.top_p),c=i?.prompt_tokens+i?.completion_tokens||0;(0,w.yv)(b,O,k,c),d?.debug?.("CACHE",`Stored response for ${O} (${c} tokens)`)}return(0,x.tm)(Q,k,200),{success:!0,response:new Response(JSON.stringify(k),{headers:{"Content-Type":"application/json","Access-Control-Allow-Origin":"*","X-OmniRoute-Cache":"MISS"}})}}A&&await A();let ac={"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive","Access-Control-Allow-Origin":"*"},ad=({status:b,usage:c})=>{(0,q.gK)({method:"POST",path:C?.endpoint||"/v1/chat/completions",status:b||200,model:O,provider:N,connectionId:D,duration:Date.now()-P,tokens:c||{},requestBody:a,sourceFormat:S,targetFormat:W,comboName:G,apiKeyId:E?.id||null,apiKeyName:E?.name||null}).catch(()=>{})},ae=F?.toLowerCase().includes("droid")||F?.toLowerCase().includes("codex-cli");if("codex"!==N||W!==g.h.OPENAI_RESPONSES||S!==g.h.OPENAI||T||ae?(0,f.nZ)(W,S)?(d?.debug?.("STREAM",`Translation mode: ${W} → ${S}`),L=(0,h.i5)(W,S,N,Y,$,O,D,a,ad,E)):(d?.debug?.("STREAM","Standard passthrough mode"),L=(0,h.l2)(N,Y,O,D,a,ad,E)):(d?.debug?.("STREAM",`Codex translation mode: openai-responses → openai`),L=(0,h.i5)("openai-responses","openai",N,Y,$,O,D,a,ad,E)),(0,y.Z)(C?.headers)){let a=(0,y.Y)({signal:ab.signal});M=(0,i.Jb)(H,L,ab).pipeThrough(a),ac["X-OmniRoute-Progress"]="enabled"}else M=(0,i.Jb)(H,L,ab);return{success:!0,response:new Response(M,{headers:ac})}}r=(z.then?(await z)():z)[0],d()}catch(a){d(a)}})},38825:(a,b,c)=>{c.d(b,{$m:()=>g,mA:()=>f});var d=c(30651),e=c(66451);async function f(a){let b=(0,e.Xh)(a);if(!b.isAlias){if(b.provider===b.providerAlias){let a=(await (0,d.Fh)({type:"openai-compatible"})).find(a=>a.prefix===b.providerAlias);if(a)return{provider:a.id,model:b.model};let c=(await (0,d.Fh)({type:"anthropic-compatible"})).find(a=>a.prefix===b.providerAlias);if(c)return{provider:c.id,model:b.model}}return(0,e.js)(a,null)}return(0,e.js)(a,d.OM)}async function g(a){let b=await (0,d.Dj)(a);return b&&b.models&&b.models.length>0?b:null}},44594:(a,b,c)=>{c.d(b,{eU:()=>i,vN:()=>h});var d=c(26262),e=c(30651),f=c(85640);let g=f.oD;async function h(a,b){try{let c={};b.accessToken&&(c.accessToken=b.accessToken),b.refreshToken&&(c.refreshToken=b.refreshToken),b.expiresIn&&(c.expiresAt=new Date(Date.now()+1e3*b.expiresIn).toISOString(),c.expiresIn=b.expiresIn),b.providerSpecificData&&(c.providerSpecificData=b.providerSpecificData);let f=await (0,e.rj)(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 i(a,b){let c={...b};if(c.expiresAt){let b=new Date(c.expiresAt).getTime(),e=Date.now();if(b-e<g){let g;d.info("TOKEN_REFRESH","Token expiring soon, refreshing proactively",{provider:a,expiresIn:Math.round((b-e)/1e3)});let i=await (g=c,(0,f.iD)(a,g,d));i&&i.accessToken&&(await h(c.connectionId,i),c={...c,accessToken:i.accessToken,refreshToken:i.refreshToken||c.refreshToken,expiresAt:i.expiresIn?new Date(Date.now()+1e3*i.expiresIn).toISOString():c.expiresAt})}}if("github"===a&&c.providerSpecificData?.copilotTokenExpiresAt){let b=1e3*c.providerSpecificData.copilotTokenExpiresAt,e=Date.now();if(b-e<g){let g;d.info("TOKEN_REFRESH","Copilot token expiring soon, refreshing proactively",{provider:a,expiresIn:Math.round((b-e)/1e3)});let i=await (g=c.accessToken,(0,f.jR)(g,d));i&&(await h(c.connectionId,{providerSpecificData:{...c.providerSpecificData,copilotToken:i.token,copilotTokenExpiresAt:i.expiresAt}}),c.providerSpecificData={...c.providerSpecificData,copilotToken:i.token,copilotTokenExpiresAt:i.expiresAt})}}return c}},49894:(a,b,c)=>{function d(){return globalThis.__translatorEvents||(globalThis.__translatorEvents=[]),globalThis.__translatorEvents}function e(a){if(!a||"object"!=typeof a)return;let b=d();b.unshift({id:`evt_${Date.now()}_${Math.random().toString(36).slice(2,8)}`,timestamp:new Date().toISOString(),...a}),b.length>200&&(b.length=200)}function f(a=50){let b=Number(a),c=Number.isFinite(b)&&b>0?Math.min(Math.floor(b),200):50,e=d();return{events:e.slice(0,c),total:e.length}}c.d(b,{MR:()=>e,zS:()=>f})},62269:(a,b,c)=>{c.d(b,{N3:()=>g,TT:()=>e,ci:()=>i});let d=["parse","validate","policy","resolve","connect","stream","finalize"];class e{constructor(a){this.requestId=a,this.startTime=Date.now(),this.phases=[],this._currentPhase=null,this._phaseStart=null}startPhase(a){this._currentPhase&&this.endPhase(),this._currentPhase=a,this._phaseStart=Date.now()}endPhase(a={}){if(!this._currentPhase)return;let b=Date.now();this.phases.push({phase:this._currentPhase,startMs:this._phaseStart-this.startTime,endMs:b-this.startTime,durationMs:b-this._phaseStart,...a}),this._currentPhase=null,this._phaseStart=null}async measure(a,b){this.startPhase(a);try{let a=await b();return this.endPhase(),a}catch(a){throw this.endPhase({error:a.message}),a}}getSummary(){return this._currentPhase&&this.endPhase(),{requestId:this.requestId,totalMs:Date.now()-this.startTime,phases:[...this.phases]}}}let f=[];function g(a){let b=a.getSummary();for(b.recordedAt=Date.now(),f.push(b);f.length>1e3;)f.shift()}function h(a,b){if(0===a.length)return 0;let c=Math.ceil(b/100*a.length)-1;return a[Math.max(0,c)]}function i(a=3e5){let b=Date.now()-a,c=f.filter(a=>(a.recordedAt||0)>=b);if(0===c.length)return{count:0,p50:0,p95:0,p99:0,phaseBreakdown:{}};let e=c.map(a=>a.totalMs).sort((a,b)=>a-b),g={};for(let a of d){let b=c.flatMap(b=>b.phases.filter(b=>b.phase===a).map(a=>a.durationMs)).sort((a,b)=>a-b);b.length>0&&(g[a]={count:b.length,p50:h(b,50),p95:h(b,95),avg:Math.round(b.reduce((a,b)=>a+b,0)/b.length)})}return{count:c.length,p50:h(e,50),p95:h(e,95),p99:h(e,99),phaseBreakdown:g}}},65390:(a,b,c)=>{let d;c.d(b,{X:()=>g,q:()=>f});var e=c(77598);class f{#a;#b;#c;#d;#e;constructor(a={}){this.#a=new Map,this.#d=0,this.#e={hits:0,misses:0,evictions:0},this.#b=a.maxSize??100,this.#c=a.defaultTTL??3e5}static generateKey(a){let b=JSON.stringify(a,Object.keys(a).sort());return e.createHash("sha256").update(b).digest("hex").slice(0,16)}get(a){let b=this.#a.get(a);if(!b)return void this.#e.misses++;if(Date.now()-b.createdAt>b.ttl){this.#a.delete(a),this.#d--,this.#e.misses++;return}return this.#a.delete(a),b.hits++,this.#a.set(a,b),this.#e.hits++,b.value}set(a,b,c){for(this.#a.has(a)&&(this.#a.delete(a),this.#d--);this.#d>=this.#b;){let a=this.#a.keys().next().value;this.#a.delete(a),this.#d--,this.#e.evictions++}let d={key:a,value:b,createdAt:Date.now(),ttl:c??this.#c,size:JSON.stringify(b).length,hits:0};this.#a.set(a,d),this.#d++}has(a){let b=this.#a.get(a);return!!b&&(!(Date.now()-b.createdAt>b.ttl)||(this.#a.delete(a),this.#d--,!1))}delete(a){return!!this.#a.has(a)&&(this.#a.delete(a),this.#d--,!0)}clear(){this.#a.clear(),this.#d=0}getStats(){let a=this.#e.hits+this.#e.misses;return{size:this.#d,maxSize:this.#b,...this.#e,hitRate:a>0?this.#e.hits/a*100:0}}}function g(a){return d||(d=new f({maxSize:parseInt(process.env.PROMPT_CACHE_MAX_SIZE||"200",10),defaultTTL:parseInt(process.env.PROMPT_CACHE_TTL_MS||"600000",10),...a})),d}},70718:(a,b,c)=>{c.d(b,{q:()=>m});let d="u">typeof process&&process.versions?.node&&!0,e="u">typeof process&&process.env?.ENABLE_REQUEST_LOGS==="true",f=null,g=null,h=null;async function i(){if(d&&e&&!f)try{f=await Promise.resolve().then(c.t.bind(c,29021,19)),h=(g=await Promise.resolve().then(c.t.bind(c,33873,19))).join("u">typeof process&&process.cwd?process.cwd():".","logs")}catch{}}async function j(a,b,c){if(await i(),!f||!h)return null;try{await f.promises.mkdir(h,{recursive:!0});let d=function(a=new Date){let b=a=>String(a).padStart(2,"0"),c=a.getFullYear(),d=b(a.getMonth()+1),e=b(a.getDate()),f=b(a.getHours()),g=b(a.getMinutes()),h=b(a.getSeconds());return`${c}${d}${e}_${f}${g}${h}`}(),e=(c||"unknown").replace(/[/:]/g,"-"),i=`${a}_${b}_${e}_${d}`,j=g.join(h,i);return await f.promises.mkdir(j,{recursive:!0}),j}catch(a){return console.log("[LOG] Failed to create log session:",a.message),null}}function k(a,b,c){if(!f||!a)return;let d=g.join(a,b);f.promises.writeFile(d,JSON.stringify(c,null,2)).catch(a=>console.log(`[LOG] Failed to write ${b}:`,a.message))}function l(a){if(!a)return{};let b={...a},c=["authorization","x-api-key","cookie","token"];for(let a of Object.keys(b)){let d=a.toLowerCase();if(c.some(a=>d.includes(a))){let c=b[a];c&&c.length>20&&(b[a]=c.slice(0,10)+"..."+c.slice(-5))}}return b}async function m(a,b,c){if(!e)return{sessionPath:null,logClientRawRequest(){},logRawRequest(){},logOpenAIRequest(){},logTargetRequest(){},logProviderResponse(){},appendProviderChunk(){},appendOpenAIChunk(){},logConvertedResponse(){},appendConvertedChunk(){},logError(){}};let d=await j(a,b,c);return{get sessionPath(){return d},logClientRawRequest(a,b,c={}){k(d,"1_req_client.json",{timestamp:new Date().toISOString(),endpoint:a,headers:l(c),body:b})},logRawRequest(a,b={}){k(d,"2_req_source.json",{timestamp:new Date().toISOString(),headers:l(b),body:a})},logOpenAIRequest(a){k(d,"3_req_openai.json",{timestamp:new Date().toISOString(),body:a})},logTargetRequest(a,b,c){k(d,"4_req_target.json",{timestamp:new Date().toISOString(),url:a,headers:l(b),body:c})},logProviderResponse(a,b,c,e){k(d,"5_res_provider.json",{timestamp:new Date().toISOString(),status:a,statusText:b,headers:c?"function"==typeof c.entries?Object.fromEntries(c.entries()):c:{},body:e})},appendProviderChunk(a){if(!f||!d)return;let b=g.join(d,"5_res_provider.txt");f.promises.appendFile(b,a).catch(()=>{})},appendOpenAIChunk(a){if(!f||!d)return;let b=g.join(d,"6_res_openai.txt");f.promises.appendFile(b,a).catch(()=>{})},logConvertedResponse(a){k(d,"7_res_client.json",{timestamp:new Date().toISOString(),body:a})},appendConvertedChunk(a){if(!f||!d)return;let b=g.join(d,"7_res_client.txt");f.promises.appendFile(b,a).catch(()=>{})},logError(a,b=null){k(d,"6_error.json",{timestamp:new Date().toISOString(),error:a?.message||String(a),stack:a?.stack,requestBody:b})}}}},77615:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{P:()=>A});var e=c(15040),f=c(38825),g=c(66451),h=c(17717),i=c(36362),j=c(89865),k=c(57968),l=c(97271),m=c(29485),n=c(89843),o=c(26262),p=c(44594),q=c(30651),r=c(35345),s=c(49894),t=c(35790),u=c(51228),v=c(13396),w=c(62269),x=c(77653),y=c(82182);c(25289);var z=a([i]);async function A(a,b=null){let c,d=(0,x.KZ)(),h=new w.TT(d);try{h.startPhase("parse"),c=await a.json(),h.endPhase()}catch{return o.warn("CHAT","Invalid JSON body"),(0,j.yj)(l.gx.BAD_REQUEST,"Invalid JSON body")}h.startPhase("validate");let i=(0,t.Jh)(c,o);if(i.blocked)return o.warn("SANITIZER","Request blocked due to prompt injection",{detections:i.detections}),(0,j.yj)(l.gx.BAD_REQUEST,"Request rejected: suspicious content detected");i.modified&&i.sanitizedBody&&(c=i.sanitizedBody),h.endPhase(),b||(b={endpoint:new URL(a.url).pathname,body:c,headers:Object.fromEntries(a.headers.entries())});let m=new URL(a.url),n=c.model,p=c.messages?.length||c.input?.length||0,r=c.tools?.length||0,s=c.reasoning_effort||c.reasoning?.effort||null;o.request("POST",`${m.pathname} | ${n} | ${p} msgs${r?` | ${r} tools`:""}${s?` | effort=${s}`:""}`);let u=a.headers.get("Authorization"),z=(0,e.Tr)(a),C=null;if(u&&z){let a=o.maskKey(z);o.debug("AUTH",`API Key: ${a}`);try{C=await (0,q.v9)(z)}catch{C=null}}else o.debug("AUTH","No API key provided (local mode)");if("true"===process.env.REQUIRE_API_KEY){if(!z)return o.warn("AUTH","Missing API key while REQUIRE_API_KEY=true"),(0,j.yj)(l.gx.UNAUTHORIZED,"Missing API key");if(!await (0,e.kI)(z))return o.warn("AUTH","Invalid API key while REQUIRE_API_KEY=true"),(0,j.yj)(l.gx.UNAUTHORIZED,"Invalid API key")}if(!n)return o.warn("CHAT","Missing model"),(0,j.yj)(l.gx.BAD_REQUEST,"Missing model");if(h.startPhase("policy"),C?.id)try{let a=(0,y.Ik)(C.id);if(!a.allowed)return o.warn("BUDGET",`API key ${C.id} exceeded budget: ${a.reason}`),(0,j.yj)(429,a.reason||"Budget limit exceeded")}catch{}h.endPhase(),h.startPhase("resolve");let D=await (0,f.$m)(n);if(D){o.info("CHAT",`Combo "${n}" [${D.strategy||"priority"}] with ${D.models.length} models`);let d=async a=>{let b=(0,g.Xh)(a),c=b.provider;if(!c)return!0;if(!(0,v.fj)(c,b.model||a))return o.debug("AVAILABILITY",`${c}/${b.model} in cooldown, skipping`),!1;let d=await (0,e.c1)(c);return!!d&&!d.allRateLimited},[f,i]=await Promise.all([(0,q.mt)().catch(()=>({})),(0,q.Uv)().catch(()=>[])]);h.endPhase();let j=await (0,k.Pr)({body:c,combo:D,handleSingleModel:(c,d)=>B(c,d,b,a,D.name,C,h),isModelAvailable:d,log:o,settings:f,allCombos:i});return(0,w.N3)(h),j}h.endPhase();let E=await B(c,n,b,a,null,C,h);return(0,w.N3)(h),E}async function B(a,b,c=null,d=null,g=null,k=null,q=null){let t=await (0,f.mA)(b);if(!t.provider){if("ambiguous_model"===t.errorType){let a=t.errorMessage||`Ambiguous model '${b}'. Use provider/model prefix (ex: gh/${b} or cc/${b}).`;return o.warn("CHAT",a,{model:b,candidates:t.candidateAliases||t.candidateProviders||[]}),(0,j.yj)(l.gx.BAD_REQUEST,a)}return o.warn("CHAT","Invalid model format",{model:b}),(0,j.yj)(l.gx.BAD_REQUEST,"Invalid model format")}let{provider:w,model:x}=t,z=(0,h.Tz)(a),A=m.PROVIDER_ID_TO_ALIAS[w]||w,D=(0,m.ux)(A,x)||(0,h.jJ)(w);if(b!==`${w}/${x}`?o.info("ROUTING",`${b} → ${w}/${x}`):o.info("ROUTING",`Provider: ${w}, Model: ${x}`),!(0,v.fj)(w,x))return o.warn("AVAILABILITY",`${w}/${x} is in cooldown, rejecting request`),(0,j.wO)(l.gx.SERVICE_UNAVAILABLE,`Model ${w}/${x} is temporarily unavailable (cooldown)`,30);let E=(0,u.getCircuitBreaker)(w,{failureThreshold:5,resetTimeout:3e4,onStateChange:(a,b,c)=>o.info("CIRCUIT",`${a}: ${b} → ${c}`)});if(!E.canExecute())return o.warn("CIRCUIT",`Circuit breaker OPEN for ${w}, rejecting request`),(0,j.wO)(l.gx.SERVICE_UNAVAILABLE,`Provider ${w} circuit breaker is open`,30);let F=d?.headers?.get("user-agent")||"",G=null,H=null,I=null;for(;;){let b,d=await (0,e.c1)(w,G);if(!d||d.allRateLimited)return function(a,b,c,d,e,f){if(a?.allRateLimited){let b=e||a.lastError||"Unavailable",g=f||Number(a.lastErrorCode)||l.gx.SERVICE_UNAVAILABLE;return o.warn("CHAT",`[${c}/${d}] ${b} (${a.retryAfterHuman})`),(0,j.wO)(g,`[${c}/${d}] ${b}`,a.retryAfter,a.retryAfterHuman)}return b?(o.warn("CHAT","No more accounts available",{provider:c}),(0,j.yj)(f||l.gx.SERVICE_UNAVAILABLE,e||"All accounts unavailable")):(o.error("AUTH",`No credentials for provider: ${c}`),(0,j.yj)(l.gx.BAD_REQUEST,`No credentials for provider: ${c}`))}(d,G,w,x,H,I);let f=d.connectionId.slice(0,8);o.info("AUTH",`Using ${w} account: ${f}...`);let h=await (0,p.eU)(w,d),m=await C(d.connectionId),t=Date.now();q&&q.startPhase("connect");try{b=await E.execute(()=>(0,n.j)(m?.proxy||null,()=>(0,i.w)({body:{...a,model:`${w}/${x}`},modelInfo:{provider:w,model:x},credentials:h,log:o,clientRawRequest:c,connectionId:d.connectionId,apiKeyInfo:k,userAgent:F,comboName:g,onCredentialsRefreshed:async a=>{await (0,p.vN)(d.connectionId,{accessToken:a.accessToken,refreshToken:a.refreshToken,providerSpecificData:a.providerSpecificData,testStatus:"active"})},onRequestSuccess:async()=>{await (0,e.Pt)(d.connectionId,d)}})))}catch(a){if(a instanceof u.ez)return o.warn("CIRCUIT",`${w} circuit open during retry: ${a.message}`),(0,j.wO)(l.gx.SERVICE_UNAVAILABLE,`Provider ${w} circuit breaker is open`,Math.ceil(a.retryAfterMs/1e3));throw a}q&&q.endPhase();let A=Date.now()-t;if(function({result:a,proxyInfo:b,proxyLatency:c,provider:d,model:e,sourceFormat:f,targetFormat:g,credentials:h,comboName:i,clientRawRequest:j}){try{(0,r.pq)({status:a.success?"success":408===a.status||504===a.status?"timeout":"error",proxy:b?.proxy||null,level:b?.level||"direct",levelId:b?.levelId||null,provider:d,targetUrl:`${d}/${e}`,latencyMs:c,error:a.success?null:a.error||null,connectionId:h.connectionId,comboId:i||null,account:h.connectionId?.slice(0,8)||null})}catch{}try{(0,s.MR)({provider:d,model:e,sourceFormat:f,targetFormat:g,status:a.success?"success":"error",statusCode:a.success?200:a.status||500,latency:c,endpoint:j?.endpoint||"/v1/chat/completions",connectionId:h.connectionId||null,comboName:i||null})}catch{}}({result:b,proxyInfo:m,proxyLatency:A,provider:w,model:x,sourceFormat:z,targetFormat:D,credentials:d,comboName:g,clientRawRequest:c}),b.success){if(k?.id)try{let a=b.usage||{},c=((a.prompt_tokens||0)+(a.completion_tokens||0))*1e-6;c>0&&(0,y.n5)(k.id,c)}catch{}return q&&q.startPhase("finalize"),q&&q.endPhase(),b.response}(429===b.status||503===b.status)&&((0,v.gC)(w,x,6e4,`HTTP ${b.status}`),o.info("AVAILABILITY",`${w}/${x} marked unavailable for 60s (HTTP ${b.status})`));let{shouldFallback:B}=await (0,e.vk)(d.connectionId,b.status,b.error,w);if(B){o.warn("AUTH",`Account ${f}... unavailable (${b.status}), trying fallback`),G=d.connectionId,H=b.error,I=b.status;continue}return b.response}}async function C(a){try{return await (0,q.YD)(a)}catch(a){return o.debug("PROXY",`Failed to resolve proxy: ${a.message}`),null}}i=(z.then?(await z)():z)[0],d()}catch(a){d(a)}})},77653:(a,b,c)=>{c.d(b,{KZ:()=>f});var d=c(16698),e=c(77598);function f(){return(0,e.randomUUID)()}new d.AsyncLocalStorage},79498:(a,b,c)=>{function d({intervalMs:a=2e3,signal:b}={}){let c,e,f=0,g=Date.now(),h=new TextEncoder;return new TransformStream({start(d){e=d,g=Date.now(),c=setInterval(()=>{if(b?.aborted)return void clearInterval(c);let a=`event: progress
2
- data: ${JSON.stringify({tokens_generated:f,elapsed_ms:Date.now()-g})}
3
-
4
- `;try{d.enqueue(h.encode(a))}catch{clearInterval(c)}},a),b?.addEventListener("abort",()=>{clearInterval(c)},{once:!0})},transform(a,b){let c=("string"==typeof a?a:new TextDecoder().decode(a)).split("\n").filter(a=>a.startsWith("data: "));f+=c.length,b.enqueue(a)},flush(){if(clearInterval(c),e)try{let a=`event: progress
5
- data: ${JSON.stringify({tokens_generated:f,elapsed_ms:Date.now()-g,done:!0})}
6
-
7
- `;e.enqueue(h.encode(a))}catch{}}})}function e(a){return!!a&&"true"===("function"==typeof a.get?b=>a.get(b):b=>a[b])("x-omniroute-progress")}c.d(b,{Y:()=>d,Z:()=>e})},81983:(a,b,c)=>{let d;c.d(b,{Cb:()=>k,IL:()=>n,QS:()=>o,RE:()=>m,TZ:()=>p,gR:()=>j,yv:()=>l});var e=c(77598),f=c(65390),g=c(14469);let h={hits:0,misses:0,tokensSaved:0};function i(){return d||(d=new f.q({maxSize:parseInt(process.env.SEMANTIC_CACHE_MAX_SIZE||"500",10),defaultTTL:parseInt(process.env.SEMANTIC_CACHE_TTL_MS||"3600000",10)})),d}function j(a,b,c=0,d=1){var f;let g=JSON.stringify({model:a,messages:Array.isArray(f=b)?f.map(a=>({role:a.role||"user",content:"string"==typeof a.content?a.content:JSON.stringify(a.content)})):[],temperature:c,top_p:d});return e.createHash("sha256").update(g).digest("hex")}function k(a){let b=i().get(a);if(b)return h.hits++,h.tokensSaved+=b.tokensSaved||0,b.response;try{let b=(0,g.sm)(),c=b.prepare("SELECT response, tokens_saved FROM semantic_cache WHERE signature = ? AND expires_at > datetime('now')").get(a);if(c){let d=JSON.parse(c.response);return i().set(a,{response:d,tokensSaved:c.tokens_saved}),b.prepare("UPDATE semantic_cache SET hit_count = hit_count + 1 WHERE signature = ?").run(a),h.hits++,h.tokensSaved+=c.tokens_saved||0,d}}catch{}return h.misses++,null}function l(a,b,c,d=0,f=36e5){let h=parseInt(process.env.SEMANTIC_CACHE_TTL_MS||String(f),10);i().set(a,{response:c,tokensSaved:d},h);try{let f=(0,g.sm)(),i=e.randomUUID(),j=a.slice(0,16),k=new Date().toISOString(),l=new Date(Date.now()+h).toISOString();f.prepare(`INSERT OR REPLACE INTO semantic_cache (id, signature, model, prompt_hash, response, tokens_saved, hit_count, created_at, expires_at)
8
- VALUES (?, ?, ?, ?, ?, ?, 0, ?, ?)`).run(i,a,b,j,JSON.stringify(c),d,k,l)}catch{}}function m(){try{return(0,g.sm)().prepare("DELETE FROM semantic_cache WHERE expires_at <= datetime('now')").run().changes}catch{return 0}}function n(){i().clear();try{(0,g.sm)().prepare("DELETE FROM semantic_cache").run()}catch{}h={hits:0,misses:0,tokensSaved:0}}function o(){let a=i().getStats(),b=0;try{let a=(0,g.sm)().prepare("SELECT COUNT(*) as count FROM semantic_cache WHERE expires_at > datetime('now')").get();b=a?.count||0}catch{}let c=h.hits+h.misses;return{memoryEntries:a.size,dbEntries:b,hits:h.hits,misses:h.misses,hitRate:c>0?(h.hits/c*100).toFixed(1):"0.0",tokensSaved:h.tokensSaved}}function p(a,b){return b?.get?.("x-omniroute-no-cache")!=="true"&&!1===a.stream&&(a.temperature??0)===0}},82182:(a,b,c)=>{c.d(b,{Ik:()=>i,n5:()=>h,qV:()=>f,uN:()=>j});var d=c(8809);let e=new Map;function f(a,b){let c={dailyLimitUsd:b.dailyLimitUsd,monthlyLimitUsd:b.monthlyLimitUsd||0,warningThreshold:b.warningThreshold??.8};e.set(a,c);try{(0,d.zd)(a,c)}catch{}}function g(a){if(e.has(a))return e.get(a);try{let b=(0,d.io)(a);if(b)return e.set(a,b),b}catch{}return null}function h(a,b){let c=Date.now();try{(0,d.tv)(a,b,c)}catch{}}function i(a,b=0){let c=g(a);if(!c)return{allowed:!0,dailyUsed:0,dailyLimit:0,warningReached:!1};let e=function(a){let b=new Date;b.setHours(0,0,0,0);let c=b.getTime();try{return(0,d.qA)(a,c).reduce((a,b)=>a+b.cost,0)}catch{return 0}}(a),f=e+b,h=f>=c.dailyLimitUsd*c.warningThreshold;return f>c.dailyLimitUsd?{allowed:!1,reason:`Daily budget exceeded: $${f.toFixed(4)} / $${c.dailyLimitUsd.toFixed(2)}`,dailyUsed:e,dailyLimit:c.dailyLimitUsd,warningReached:!0}:{allowed:!0,dailyUsed:e,dailyLimit:c.dailyLimitUsd,warningReached:h}}function j(a){let b=new Date,c=new Date(b);c.setHours(0,0,0,0);let e=new Date(b.getFullYear(),b.getMonth(),1);try{let b=(0,d.qA)(a,c.getTime()),f=(0,d.qA)(a,e.getTime()),h=b.reduce((a,b)=>a+b.cost,0),i=f.reduce((a,b)=>a+b.cost,0);return{dailyTotal:h,monthlyTotal:i,totalEntries:f.length,budget:g(a)}}catch{return{dailyTotal:0,monthlyTotal:0,totalEntries:0,budget:g(a)}}}},87290:(a,b,c)=>{c.d(b,{M:()=>d});function d(a,b){if(!a||"object"!=typeof a)return null;if(a.usage&&"object"==typeof a.usage&&void 0!==a.usage.prompt_tokens)return{prompt_tokens:a.usage.prompt_tokens||0,completion_tokens:a.usage.completion_tokens||0,cached_tokens:a.usage.prompt_tokens_details?.cached_tokens,reasoning_tokens:a.usage.completion_tokens_details?.reasoning_tokens};let c=a.response?.usage||a.usage;return c&&"object"==typeof c&&(void 0!==c.input_tokens||void 0!==c.output_tokens)?{prompt_tokens:c.input_tokens||0,completion_tokens:c.output_tokens||0,cached_tokens:c.cache_read_input_tokens,cache_creation_input_tokens:c.cache_creation_input_tokens,reasoning_tokens:c.reasoning_tokens||c.output_tokens_details?.reasoning_tokens}:a.usage&&"object"==typeof a.usage&&(void 0!==a.usage.input_tokens||void 0!==a.usage.output_tokens)?{prompt_tokens:a.usage.input_tokens||0,completion_tokens:a.usage.output_tokens||0,cache_read_input_tokens:a.usage.cache_read_input_tokens,cache_creation_input_tokens:a.usage.cache_creation_input_tokens}:a.usageMetadata&&"object"==typeof a.usageMetadata?{prompt_tokens:a.usageMetadata.promptTokenCount||0,completion_tokens:a.usageMetadata.candidatesTokenCount||0,reasoning_tokens:a.usageMetadata.thoughtsTokenCount}:null}},89843:(a,b,c)=>{c.d(b,{j:()=>k});var d=c(16698),e=c(13618);let f="u">typeof caches&&"object"==typeof caches,g=Symbol.for("omniroute.proxyFetch.state"),h=(globalThis[g]||(globalThis[g]={originalFetch:globalThis.fetch,proxyContext:new d.AsyncLocalStorage,isPatched:!1}),globalThis[g]),i=h.originalFetch,j=h.proxyContext;async function k(a,b){if("function"!=typeof b)throw TypeError("runWithProxyContext requires a callback function");let c=a?(0,e.HN)(a):null;return j.run(a||null,async()=>(c&&console.log(`[ProxyFetch] Applied request proxy context: ${(0,e.OK)(c)}`),b()))}async function l(a,b={}){let c;if(b?.dispatcher)return i(a,b);let d="string"==typeof a?a:a&&"string"==typeof a.url?a.url:String(a);try{c=function(a){let b=j.getStore();if(b)return{source:"context",proxyUrl:(0,e.HN)(b)};let c=function(a){let b;if(function(a){let b,c=process.env.NO_PROXY||process.env.no_proxy;if(!c)return!1;try{b=new URL(a)}catch{return!1}let d=b.hostname.toLowerCase(),e=b.port||("https:"===b.protocol?"443":"80");return c.split(",").map(a=>a.trim().toLowerCase()).filter(Boolean).some(a=>{if("*"===a)return!0;let[b,c]=a.split(":");return(!c||c===e)&&!!b&&(b.startsWith(".")?d.endsWith(b)||d===b.slice(1):d===b||d.endsWith(`.${b}`))})}(a))return null;try{b=new URL(a).protocol}catch{return null}let c="https:"===b?process.env.HTTPS_PROXY||process.env.https_proxy||process.env.ALL_PROXY||process.env.all_proxy:process.env.HTTP_PROXY||process.env.http_proxy||process.env.ALL_PROXY||process.env.all_proxy;return c?(0,e.zP)(c,"environment proxy"):null}(a);return c?{source:"env",proxyUrl:c}:{source:"direct",proxyUrl:null}}(d)}catch(b){let a=b instanceof Error?b.message:String(b);throw console.error(`[ProxyFetch] Proxy configuration error: ${a}`),b}let{source:f,proxyUrl:g}=c;if(!g)return i(a,b);try{let c=(0,e.I_)(g);return await i(a,{...b,dispatcher:c})}catch(b){let a=b instanceof Error?b.message:String(b);throw console.error(`[ProxyFetch] Proxy request failed (${f}, fail-closed): ${a}`),b}}f||h.isPatched||(globalThis.fetch=l,h.isPatched=!0)},90859:(a,b,c)=>{c.d(b,{lm:()=>g.lm,l2:()=>p,i5:()=>o,v8:()=>j});var d=c(25970),e=c(19956),f=c(74832),g=c(67677);function h(a){if(!a)return null;let b=a.trimStart();if(!b||100!==b.charCodeAt(0))return null;let c=b.slice(5).trim();if("[DONE]"===c)return{done:!0};try{return JSON.parse(c)}catch(a){return c.length>0&&console.log(`[WARN] Failed to parse SSE line (${c.length} chars): ${c.substring(0,200)}...`),null}}function i(a,b){if(b===e.h.OPENAI&&a.choices?.[0]?.delta){let b=a.choices[0].delta;return b.content&&""!==b.content||b.reasoning_content&&""!==b.reasoning_content||b.tool_calls&&b.tool_calls.length>0||a.choices[0].finish_reason||b.role}if(b===e.h.CLAUDE){let b="content_block_delta"===a.type,c=a.delta?.text&&""!==a.delta.text,d=a.delta?.thinking&&""!==a.delta.thinking,e=a.delta?.partial_json&&""!==a.delta.partial_json;return!b||!!c||!!d||!!e}if(b===e.h.GEMINI&&a.candidates?.[0]){let b=a.candidates[0];if(b.finishReason)return!0;let c=b.content?.parts;return!!c&&0!==c.length&&c.some(a=>a.text&&""!==a.text||a.functionCall||a.executableCode)}return!0}function j(a,b){return null==a?"data: null\n\n":a&&a.done?"data: [DONE]\n\n":a&&a.event&&a.data?`event: ${a.event}
9
- data: ${JSON.stringify(a.data)}
10
-
11
- `:(a=function(a){if(a?.usage&&"object"==typeof a.usage&&null===a.usage.perf_metrics){let{perf_metrics:b,...c}=a.usage;return{...a,usage:c}}return a}(a),b===e.h.CLAUDE&&a&&a.type)?`event: ${a.type}
12
- data: ${JSON.stringify(a)}
13
-
14
- `:`data: ${JSON.stringify(a)}
15
-
16
- `}var k=c(97271);let l="translate",m="passthrough";function n(a={}){let{mode:b=l,targetFormat:c,sourceFormat:o,provider:p=null,reqLogger:q=null,toolNameMap:r=null,model:s=null,connectionId:t=null,apiKeyInfo:u=null,body:v=null,onComplete:w=null}=a,x="",y=null,z=b===l?{...(0,d.Ws)(o),provider:p,toolNameMap:r}:null,A=0,B=!1,C=new TextDecoder,D=new TextEncoder,E=Date.now(),F=null,G=!1;return new TransformStream({start(a){k.TH>0&&(F=setInterval(()=>{if(!G&&Date.now()-E>k.TH){G=!0,clearInterval(F),F=null;let b=`[STREAM] Idle timeout: no data from ${p||"provider"} for ${k.TH}ms (model: ${s||"unknown"})`;console.warn(b),(0,f.uw)(s,p,t,!1),(0,f.E5)({model:s,provider:p,connectionId:t,status:`FAILED ${k.gx.GATEWAY_TIMEOUT}`}).catch(()=>{});let c=Error(b);c.name="StreamIdleTimeoutError",a.error(c)}},1e4))},transform(a,f){if(G)return;E=Date.now();let k=C.decode(a,{stream:!0});x+=k,q?.appendProviderChunk?.(k);let l=x.split("\n");for(let a of(x=l.pop()||"",l)){let k=a.trim();if(b===m){let b,c=!1;if(k.startsWith("data:")&&"[DONE]"!==k.slice(5).trim())try{let a=JSON.parse(k.slice(5).trim()),d=function(a){if(a.id&&("chat"===a.id||"completion"===a.id||a.id.length<8)){let b=a.extend_fields?.requestId||a.extend_fields?.traceId||Date.now().toString(36);return a.id=`chatcmpl-${b}`,!0}return!1}(a);if(!i(a,e.h.OPENAI))continue;let f=a.choices?.[0]?.delta,h=f?.content||f?.reasoning_content;h&&"string"==typeof h&&(A+=h.length);let j=(0,g.f5)(a);j&&(y=j);let l=a.choices?.[0]?.finish_reason;if(l&&!(0,g.Gh)(a.usage)){let d=(0,g.OF)(v,A,e.h.OPENAI);a.usage=(0,g.WL)(d,e.h.OPENAI),b=`data: ${JSON.stringify(a)}
17
- `,y=d,c=!0}else if(l&&y){let d=(0,g.O9)(y);a.usage=(0,g.WL)(d,e.h.OPENAI),b=`data: ${JSON.stringify(a)}
18
- `,c=!0}else d&&(b=`data: ${JSON.stringify(a)}
19
- `,c=!0)}catch{}c||(b=a.startsWith("data:")&&!a.startsWith("data: ")?"data: "+a.slice(5)+"\n":a+"\n"),q?.appendConvertedChunk?.(b),f.enqueue(D.encode(b));continue}if(!k)continue;let l=h(k);if(!l)continue;if(l&&l.done){if(!B){B=!0;let a="data: [DONE]\n\n";q?.appendConvertedChunk?.(a),f.enqueue(D.encode(a))}continue}if(l.delta?.text&&(A+=l.delta.text.length),l.delta?.thinking&&(A+=l.delta.thinking.length),l.choices?.[0]?.delta?.content&&(A+=l.choices[0].delta.content.length),l.choices?.[0]?.delta?.reasoning_content&&(A+=l.choices[0].delta.reasoning_content.length),l.candidates?.[0]?.content?.parts)for(let a of l.candidates[0].content.parts)a.text&&"string"==typeof a.text&&(A+=a.text.length);let n=(0,g.f5)(l);n&&(z.usage=n);let p=(0,d.Y8)(c,o,l,z);if(p?._openaiIntermediate)for(let a of p._openaiIntermediate){let b=j(a,e.h.OPENAI);q?.appendOpenAIChunk?.(b)}if(p?.length>0)for(let a of p){if(!i(a,o))continue;let b="message_delta"===a.type||a.choices?.[0]?.finish_reason;if(z.finishReason&&b&&!(0,g.Gh)(a.usage)&&A>0){let b=(0,g.OF)(v,A,o);a.usage=(0,g.WL)(b,o),z.usage=b}else if(z.finishReason&&b&&z.usage){let b=(0,g.O9)(z.usage);a.usage=(0,g.WL)(b,o)}let c=j(a,o);q?.appendConvertedChunk?.(c),f.enqueue(D.encode(c))}}},flush(a){if(F&&(clearInterval(F),F=null),!G){(0,f.uw)(s,p,t,!1);try{let i=C.decode();if(i&&(x+=i),b===m){if(x){let b=x;x.startsWith("data:")&&!x.startsWith("data: ")&&(b="data: "+x.slice(5)),q?.appendConvertedChunk?.(b),a.enqueue(D.encode(b))}if(!(0,g.Gh)(y)&&A>0&&(y=(0,g.OF)(v,A,e.h.OPENAI)),(0,g.Gh)(y)?(0,g.IF)(p,y,s,t,u):(0,f.E5)({model:s,provider:p,connectionId:t,tokens:null,status:"200 OK"}).catch(()=>{}),w)try{w({status:200,usage:y})}catch{}return}if(x.trim()){let b=h(x.trim());if(b&&!b.done){let f=(0,d.Y8)(c,o,b,z);if(f?._openaiIntermediate)for(let a of f._openaiIntermediate){let b=j(a,e.h.OPENAI);q?.appendOpenAIChunk?.(b)}if(f?.length>0)for(let b of f){let c=j(b,o);q?.appendConvertedChunk?.(c),a.enqueue(D.encode(c))}}}let k=(0,d.Y8)(c,o,null,z);if(k?._openaiIntermediate)for(let a of k._openaiIntermediate){let b=j(a,e.h.OPENAI);q?.appendOpenAIChunk?.(b)}if(k?.length>0)for(let b of k){let c=j(b,o);q?.appendConvertedChunk?.(c),a.enqueue(D.encode(c))}if(!B){B=!0;let b="data: [DONE]\n\n";q?.appendConvertedChunk?.(b),a.enqueue(D.encode(b))}if(!(0,g.Gh)(z?.usage)&&A>0&&(z.usage=(0,g.OF)(v,A,o)),(0,g.Gh)(z?.usage)?(0,g.IF)(z.provider||c,z.usage,s,t,u):(0,f.E5)({model:s,provider:p,connectionId:t,tokens:null,status:"200 OK"}).catch(()=>{}),w)try{w({status:200,usage:z?.usage})}catch{}}catch(a){console.log(`[STREAM] Error in flush (${s||"unknown"}):`,a.message||a)}}}},{highWaterMark:16},{highWaterMark:16})}function o(a,b,c=null,d=null,e=null,f=null,g=null,h=null,i=null,j=null){return n({mode:l,targetFormat:a,sourceFormat:b,provider:c,reqLogger:d,toolNameMap:e,model:f,connectionId:g,apiKeyInfo:j,body:h,onComplete:i})}function p(a=null,b=null,c=null,d=null,e=null,f=null,g=null){return n({mode:m,provider:a,reqLogger:b,model:c,connectionId:d,apiKeyInfo:g,body:e,onComplete:f})}},91563:(a,b,c)=>{let d;c.d(b,{ic:()=>g,ne:()=>i,tm:()=>h,xp:()=>f});let e=new Map;function f(a){if(!a)return null;let b="function"==typeof a.get?b=>a.get(b):b=>a[b];return b("idempotency-key")||b("x-request-id")||null}function g(a){if(!a)return null;let b=e.get(a);return b?Date.now()>=b.expiresAt?(e.delete(a),null):{response:b.response,status:b.status}:null}function h(a,b,c,f=5e3){a&&(!d&&(d=setInterval(()=>{let a=Date.now();for(let[b,c]of e)a>=c.expiresAt&&e.delete(b)},3e4)).unref&&d.unref(),e.set(a,{response:b,status:c,expiresAt:Date.now()+f}))}function i(){return{activeKeys:e.size,windowMs:5e3}}}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=7763,exports.ids=[7763],exports.modules={27763:(a,b,c)=>{c.d(b,{generateApiKeyWithMachine:()=>f});var d=c(55511);process.env.API_KEY_SECRET||console.error("[SECURITY] API_KEY_SECRET is not set. API key CRC will be insecure.");let e=process.env.API_KEY_SECRET;function f(a){let b=function(){let a="abcdefghijklmnopqrstuvwxyz0123456789",b="";for(let c=0;c<6;c++)b+=a.charAt(Math.floor(Math.random()*a.length));return b}(),c=d.createHmac("sha256",e).update(a+b).digest("hex").slice(0,8);return{key:`sk-${a}-${b}-${c}`,keyId:b}}}};
@@ -1 +0,0 @@
1
- exports.id=7802,exports.ids=[7136,7271,7802],exports.modules={19225:(a,b,c)=>{"use strict";a.exports=c(44870)},50122:(a,b,c)=>{"use strict";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()}},62402:(a,b,c)=>{"use strict";c.d(b,{Lb:()=>e,QG:()=>f,zD:()=>g});let d={nebius:{id:"nebius",baseUrl:"https://api.tokenfactory.nebius.com/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"Qwen/Qwen3-Embedding-8B",name:"Qwen3 Embedding 8B",dimensions:4096}]},openai:{id:"openai",baseUrl:"https://api.openai.com/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"text-embedding-3-small",name:"Text Embedding 3 Small",dimensions:1536},{id:"text-embedding-3-large",name:"Text Embedding 3 Large",dimensions:3072},{id:"text-embedding-ada-002",name:"Text Embedding Ada 002",dimensions:1536}]},mistral:{id:"mistral",baseUrl:"https://api.mistral.ai/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"mistral-embed",name:"Mistral Embed",dimensions:1024}]},together:{id:"together",baseUrl:"https://api.together.xyz/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"BAAI/bge-large-en-v1.5",name:"BGE Large EN v1.5",dimensions:1024},{id:"togethercomputer/m2-bert-80M-8k-retrieval",name:"M2 BERT 80M 8K",dimensions:768}]},fireworks:{id:"fireworks",baseUrl:"https://api.fireworks.ai/inference/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"nomic-ai/nomic-embed-text-v1.5",name:"Nomic Embed Text v1.5",dimensions:768}]},nvidia:{id:"nvidia",baseUrl:"https://integrate.api.nvidia.com/v1/embeddings",authType:"apikey",authHeader:"bearer",models:[{id:"nvidia/nv-embedqa-e5-v5",name:"NV EmbedQA E5 v5",dimensions:1024}]}};function e(a){return d[a]||null}function f(a){if(!a)return{provider:null,model:null};let b=a.indexOf("/");if(b>0){for(let[b,c]of Object.entries(d))if(a.startsWith(b+"/"))return{provider:b,model:a.slice(b.length+1)};return{provider:a.slice(0,b),model:a.slice(b+1)}}for(let[b,c]of Object.entries(d))if(c.models.some(b=>b.id===a))return{provider:b,model:a};return{provider:null,model:a}}function g(){let a=[];for(let[b,c]of Object.entries(d))for(let d of c.models)a.push({id:`${b}/${d.id}`,name:d.name,provider:b,dimensions:d.dimensions});return a}},77825:(a,b,c)=>{"use strict";c.d(b,{Q:()=>f});var d=c(62402),e=c(74832);async function f({body:a,credentials:b,log:c}){let{provider:f,model:g}=(0,d.QG)(a.model),h=Date.now(),i={model:a.model,input_count:Array.isArray(a.input)?a.input.length:1,dimensions:a.dimensions||void 0};if(!f)return{success:!1,status:400,error:`Invalid embedding model: ${a.model}. Use format: provider/model`};let j=(0,d.Lb)(f);if(!j)return{success:!1,status:400,error:`Unknown embedding provider: ${f}`};let k={model:g,input:a.input};void 0!==a.dimensions&&(k.dimensions=a.dimensions),void 0!==a.encoding_format&&(k.encoding_format=a.encoding_format);let l={"Content-Type":"application/json"},m=b.apiKey||b.accessToken;"bearer"===j.authHeader?l.Authorization=`Bearer ${m}`:"x-api-key"===j.authHeader&&(l["x-api-key"]=m),c&&c.info("EMBED",`${f}/${g} | input: ${Array.isArray(a.input)?a.input.length+" items":"1 item"}`);try{let a=await fetch(j.baseUrl,{method:"POST",headers:l,body:JSON.stringify(k)});if(!a.ok){let b=await a.text();return c&&c.error("EMBED",`${f} error ${a.status}: ${b.slice(0,200)}`),(0,e.gK)({method:"POST",path:"/v1/embeddings",status:a.status,model:`${f}/${g}`,provider:f,duration:Date.now()-h,error:b.slice(0,500),requestBody:i}).catch(()=>{}),{success:!1,status:a.status,error:b}}let b=await a.json();return(0,e.gK)({method:"POST",path:"/v1/embeddings",status:200,model:`${f}/${g}`,provider:f,duration:Date.now()-h,tokens:{prompt_tokens:b.usage?.prompt_tokens||b.usage?.total_tokens||0,completion_tokens:0},requestBody:i,responseBody:{usage:b.usage||null,object:"list",data_count:b.data?.length||0}}).catch(()=>{}),{success:!0,data:{object:"list",data:b.data||b,model:`${f}/${g}`,usage:b.usage||{prompt_tokens:0,total_tokens:0}}}}catch(a){return c&&c.error("EMBED",`${f} fetch error: ${a.message}`),(0,e.gK)({method:"POST",path:"/v1/embeddings",status:502,model:`${f}/${g}`,provider:f,duration:Date.now()-h,error:a.message,requestBody:i}).catch(()=>{}),{success:!1,status:502,error:`Embedding provider error: ${a.message}`}}}},78335:()=>{},92280:(a,b,c)=>{"use strict";Object.defineProperty(b,"I",{enumerable:!0,get:function(){return g}});let d=c(28208),e=c(47617),f=c(62018);async function g(a,b,c,g){if((0,d.isNodeNextResponse)(b)){var h;b.statusCode=c.status,b.statusMessage=c.statusText;let d=["set-cookie","www-authenticate","proxy-authenticate","vary"];null==(h=c.headers)||h.forEach((a,c)=>{if("x-middleware-set-cookie"!==c.toLowerCase())if("set-cookie"===c.toLowerCase())for(let d of(0,f.splitCookiesString)(a))b.appendHeader(c,d);else{let e=void 0!==b.getHeader(c);(d.includes(c.toLowerCase())||!e)&&b.appendHeader(c,a)}});let{originalResponse:i}=b;c.body&&"HEAD"!==a.method?await (0,e.pipeToNodeResponse)(c.body,i,g):i.end()}}},94755:(a,b,c)=>{"use strict";c.d(b,{A:()=>i});var d=c(77598);let e={randomUUID:d.randomUUID},f=new Uint8Array(256),g=f.length;var h=c(50122);let i=function(a,b,c){if(e.randomUUID&&!b&&!a)return e.randomUUID();var i=a,j=c;let k=(i=i||{}).random??i.rng?.()??(g>f.length-16&&((0,d.randomFillSync)(f),g=0),f.slice(g,g+=16));if(k.length<16)throw Error("Random bytes length must be >= 16");if(k[6]=15&k[6]|64,k[8]=63&k[8]|128,b){if((j=j||0)<0||j+16>b.length)throw RangeError(`UUID byte range ${j}:${j+15} is out of buffer bounds`);for(let a=0;a<16;++a)b[j+a]=k[a];return b}return(0,h.k)(k)}},96487:()=>{},97271:(a,b,c)=>{"use strict";c.d(b,{$V:()=>n,EQ:()=>u,Co:()=>m,Bm:()=>w,DEFAULT_API_LIMITS:()=>y,O:()=>t,Uc:()=>p,eo:()=>q,LY:()=>s,MT:()=>j,gx:()=>r,NA:()=>o,xq:()=>l,PROVIDER_PROFILES:()=>x,QS:()=>v,C8:()=>z,TH:()=>k});var d=c(29021),e=c(33873);let f=["clientId","clientSecret","tokenUrl","authUrl","refreshUrl"],g=0,h=null;var i=c(28108);let j=parseInt(process.env.FETCH_TIMEOUT_MS||"120000",10),k=parseInt(process.env.STREAM_IDLE_TIMEOUT_MS||"60000",10),l=(0,i.Z0)();!function(a){let b;if(h&&Date.now()-g<6e4)return;let c=(b=process.env.DATA_DIR||(0,e.join)(process.cwd(),"data"),(0,e.join)(b,"provider-credentials.json"));if(!(0,d.existsSync)(c))return h||console.log("[CREDENTIALS] No external credentials file found, using defaults."),h=a,g=Date.now();try{let b=(0,d.readFileSync)(c,"utf-8"),e=JSON.parse(b),g=0;for(let[b,c]of Object.entries(e)){if(!a[b]){console.log(`[CREDENTIALS] Warning: unknown provider "${b}" in credentials file, skipping.`);continue}if(!c||"object"!=typeof c){console.log(`[CREDENTIALS] Warning: provider "${b}" value must be an object, got ${typeof c}. Skipping.`);continue}for(let d of f)void 0!==c[d]&&(a[b][d]=c[d],g++)}let i=null!==h;console.log(`[CREDENTIALS] ${i?"Reloaded":"Loaded"} external credentials: ${g} field(s) from ${c}`)}catch(a){console.log(`[CREDENTIALS] Error reading credentials file: ${a.message}. Using defaults.`)}h=a,g=Date.now()}(l);let m="You are Claude Code, Anthropic's official CLI for Claude.",n="Please ignore the following [ignore]You are Antigravity, a powerful agentic AI coding assistant designed by the Google Deepmind team working on Advanced Agentic Coding.You are pair programming with a USER to solve their coding task. The task may require creating a new codebase, modifying or debugging an existing codebase, or simply answering a question.**Absolute paths only****Proactiveness**[/ignore]",o={google:{token:"https://oauth2.googleapis.com/token",auth:"https://accounts.google.com/o/oauth2/auth"},openai:{token:"https://auth.openai.com/oauth/token",auth:"https://auth.openai.com/oauth/authorize"},anthropic:{token:"https://console.anthropic.com/v1/oauth/token",auth:"https://console.anthropic.com/v1/oauth/authorize"},qwen:{token:"https://chat.qwen.ai/api/v1/oauth2/token",auth:"https://chat.qwen.ai/api/v1/oauth2/device/code"},iflow:{token:"https://iflow.cn/oauth/token",auth:"https://iflow.cn/oauth"},github:{token:"https://github.com/login/oauth/access_token",auth:"https://github.com/login/oauth/authorize",deviceCode:"https://github.com/login/device/code"}},p=64e3,q=32e3,r={BAD_REQUEST:400,UNAUTHORIZED:401,PAYMENT_REQUIRED:402,FORBIDDEN:403,NOT_FOUND:404,NOT_ACCEPTABLE:406,REQUEST_TIMEOUT:408,RATE_LIMITED:429,SERVER_ERROR:500,BAD_GATEWAY:502,SERVICE_UNAVAILABLE:503,GATEWAY_TIMEOUT:504},s={[r.BAD_REQUEST]:{type:"invalid_request_error",code:"bad_request"},[r.UNAUTHORIZED]:{type:"authentication_error",code:"invalid_api_key"},[r.FORBIDDEN]:{type:"permission_error",code:"insufficient_quota"},[r.NOT_FOUND]:{type:"invalid_request_error",code:"model_not_found"},[r.RATE_LIMITED]:{type:"rate_limit_error",code:"rate_limit_exceeded"},[r.SERVER_ERROR]:{type:"server_error",code:"internal_server_error"},[r.BAD_GATEWAY]:{type:"server_error",code:"bad_gateway"},[r.SERVICE_UNAVAILABLE]:{type:"server_error",code:"service_unavailable"},[r.GATEWAY_TIMEOUT]:{type:"server_error",code:"gateway_timeout"}},t={[r.BAD_REQUEST]:"Bad request",[r.UNAUTHORIZED]:"Invalid API key provided",[r.FORBIDDEN]:"You exceeded your current quota",[r.NOT_FOUND]:"Model not found",[r.RATE_LIMITED]:"Rate limit exceeded",[r.SERVER_ERROR]:"Internal server error",[r.BAD_GATEWAY]:"Bad gateway - upstream provider error",[r.SERVICE_UNAVAILABLE]:"Service temporarily unavailable",[r.GATEWAY_TIMEOUT]:"Gateway timeout"},u={base:1e3,max:12e4,maxLevel:15},v={QUOTA_EXHAUSTED:"quota_exhausted",RATE_LIMIT_EXCEEDED:"rate_limit_exceeded",MODEL_CAPACITY:"model_capacity",SERVER_ERROR:"server_error",AUTH_ERROR:"auth_error",UNKNOWN:"unknown"},w={unauthorized:12e4,paymentRequired:12e4,notFound:12e4,transientInitial:5e3,transientMax:6e4,transient:5e3,requestNotAllowed:5e3,rateLimit:12e4,serviceUnavailable:2e3,authExpired:12e4},x={oauth:{transientCooldown:5e3,rateLimitCooldown:6e4,maxBackoffLevel:8,circuitBreakerThreshold:3,circuitBreakerReset:6e4},apikey:{transientCooldown:3e3,rateLimitCooldown:0,maxBackoffLevel:5,circuitBreakerThreshold:5,circuitBreakerReset:3e4}},y={requestsPerMinute:100,minTimeBetweenRequests:200,concurrentRequests:10},z=["Please write a 5-10 word title for the following conversation:"]}};